iliaa Mon Sep 8 16:15:44 2003 EDT
Modified files: (Branch: PHP_4_3)
/php-src/ext/standard mail.c
Log:
MFH: Re-enable sendmail binary check, now with parameter detection.
Index: php-src/ext/standard/mail.c
diff -u php-src/ext/standard/mail.c:1.66.2.7 php-src/ext/standard/mail.c:1.66.2.8
--- php-src/ext/standard/mail.c:1.66.2.7 Mon Sep 1 04:18:31 2003
+++ php-src/ext/standard/mail.c Mon Sep 8 16:15:43 2003
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: mail.c,v 1.66.2.7 2003/09/01 08:18:31 stas Exp $ */
+/* $Id: mail.c,v 1.66.2.8 2003/09/08 20:15:43 iliaa Exp $ */
#include <stdlib.h>
#include <ctype.h>
@@ -197,11 +197,24 @@
#else
/* make sure that sendmail_path contains a valid executable, failure to do
* would make PHP abruptly exit without a useful error message. */
-/* if (access(sendmail_path, X_OK)) {
- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Permission denied: unable
to execute shell to run mail delivery binary '%s'", sendmail_path);
- return 0;
+ {
+ char *s=NULL, p;
+
+ if ((s = strchr(sendmail_path, ' '))) {
+ p = *s;
+ *s = '\0';
+ }
+ if (access(sendmail_path, X_OK)) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Permission
denied: unable to execute shell to run mail delivery binary '%s'", sendmail_path);
+ if (s) {
+ *s = p;
+ }
+ return 0;
+ }
+ if (s) {
+ *s = p;
+ }
}
-*/
/* Since popen() doesn't indicate if the internal fork() doesn't work
* (e.g. the shell can't be executed) we explicitely set it to 0 to be
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php