diff options
Diffstat (limited to 'ext/standard/mail.c')
-rw-r--r-- | ext/standard/mail.c | 41 |
1 files changed, 2 insertions, 39 deletions
diff --git a/ext/standard/mail.c b/ext/standard/mail.c index a9b6457889..1f2d470d74 100644 --- a/ext/standard/mail.c +++ b/ext/standard/mail.c @@ -31,12 +31,6 @@ #include <sys/sysexits.h> #endif -#if PHP_SIGCHILD -#if HAVE_SIGNAL_H -#include <signal.h> -#endif -#endif - #include "php_mail.h" #include "php_ini.h" #include "safe_mode.h" @@ -95,8 +89,8 @@ PHP_FUNCTION(mail) { char *to=NULL, *message=NULL, *headers=NULL; char *subject=NULL, *extra_cmd=NULL; - int to_len, message_len, headers_len = 0; - int subject_len, extra_cmd_len = 0, i; + int to_len, message_len, headers_len; + int subject_len, extra_cmd_len, i; char *force_extra_parameters = INI_STR("mail.force_extra_parameters"); char *to_r, *subject_r; char *p, *e; @@ -199,9 +193,6 @@ PHPAPI int php_mail(char *to, char *subject, char *message, char *headers, char int ret; char *sendmail_path = INI_STR("sendmail_path"); char *sendmail_cmd = NULL; -#if PHP_SIGCHILD - void (*sig_handler)() = NULL; -#endif if (!sendmail_path) { #if (defined PHP_WIN32 || defined NETWARE) @@ -226,16 +217,6 @@ PHPAPI int php_mail(char *to, char *subject, char *message, char *headers, char sendmail_cmd = sendmail_path; } -#if PHP_SIGCHILD - /* Set signal handler of SIGCHLD to default to prevent other signal handlers - * from being called and reaping the return code when our child exits. - * The original handler needs to be restored after pclose() */ - sig_handler = (void *)signal(SIGCHLD, SIG_DFL); - if (sig_handler == SIG_ERR) { - sig_handler = NULL; - } -#endif - #ifdef PHP_WIN32 sendmail = popen(sendmail_cmd, "wb"); #else @@ -254,13 +235,6 @@ PHPAPI int php_mail(char *to, char *subject, char *message, char *headers, char if (EACCES == errno) { php_error_docref(NULL TSRMLS_CC, E_WARNING, "Permission denied: unable to execute shell to run mail delivery binary '%s'", sendmail_path); pclose(sendmail); -#if PHP_SIGCHILD - /* Restore handler in case of error on Windows - Not sure if this applicable on Win but just in case. */ - if (sig_handler) { - signal(SIGCHLD, sig_handler); - } -#endif return 0; } #endif @@ -272,12 +246,6 @@ PHPAPI int php_mail(char *to, char *subject, char *message, char *headers, char fprintf(sendmail, "\n%s\n", message); ret = pclose(sendmail); -#if PHP_SIGCHILD - if (sig_handler) { - signal(SIGCHLD, sig_handler); - } -#endif - #ifdef PHP_WIN32 if (ret == -1) #else @@ -296,11 +264,6 @@ PHPAPI int php_mail(char *to, char *subject, char *message, char *headers, char } } else { php_error_docref(NULL TSRMLS_CC, E_WARNING, "Could not execute mail delivery program '%s'", sendmail_path); -#if PHP_SIGCHILD - if (sig_handler) { - signal(SIGCHLD, sig_handler); - } -#endif return 0; } |