Bug #12335 Updated: mail() function returns false but the email was sent.
| From: | sascha dot winkler at ks dot sel dot alcatel dot de | Date: | Wed, 01 Aug 2001 09:20:37 +0000 |
| Subject: | Bug #12335 Updated: mail() function returns false but the email was sent. | ||
| References: | 1 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-61735@lists.php.net to get a copy of this message | ||
ID: 12335
User updated by: sascha.winkler@ks.sel.alcatel.de
Reported By: sascha.winkler@ks.sel.alcatel.de
Status: Open
Bug Type: Mail related
Operating System: Sun Solaris 2.6
PHP Version: 4.0.6
New Comment:
I had a look on the mail.c sourcecode and I made a change. So I found the part where the error
appears.
But I do not know why, in version 4.0.4pl1 it is the same code and with this version it works.
This is the extract from mail.c where the error appears:
ret = pclose(sendmail);
#if definded (EX_TEMPFAIL)
if ((ret != EX_OK)&&(ret != EX_TEMPFAIL)) {
#else
if (ret != EX_OK) {
#endif
return 0;
} else {
return 1;
}
If I change the 0 to 1 than I get true as response of the mail() function.
So what could be the problem with EX_OK and EX_TEMPFAIL that the same if query is working in
4.0.4pl1 and not
in 4.0.6? Who is EX_OK and EX_TEMPFAIL defined?
Previous Comments:
------------------------------------------------------------------------
[2001-07-30 01:42:49] sascha.winkler@ks.sel.alcatel.de
This was a misunderstanding.
I have the problems with version 4.0.6.
But this machine is not on the internet. Because it's our testmachine.
Our livesystem thats on the internet has version 4.0.4 and we want to update this machine to 4.0.6
but we can't do
that as long as we have the problem with the mail function. The both systems are exactly the same.
I wrote this only to explain why I can't put the test script on the internet.
------------------------------------------------------------------------
[2001-07-27 13:27:28] sniper@php.net
So which version of PHP are you using? In your comments
you say 4.0.4 but in the headers there is 4.0.6??
------------------------------------------------------------------------
[2001-07-25 02:55:32] sascha.winkler@ks.sel.alcatel.de
I can't put this script to the internet, because I test it only on a fallback server that is
currently not avaliable via the internet. On our live system that is in the internet we still use an
older version (4.0.4), because of the problem with the mail() function in version 4.0.4.
Some more information:
I use the sendmail wrapper from qmail.
In the php.ini file the I have made the following entry:
sendmail_path = "/usr/lib/sendmail -t"
To update apache to the new php version I replaced only the libphp4.so file.
------------------------------------------------------------------------
[2001-07-24 17:41:53] andy@php.net
Since everybody else that has tried this says it works fine,
can you put this script on the internet so that I can see
this happen?
------------------------------------------------------------------------
[2001-07-24 08:49:13] andy@php.net
works fine on RH Linux 7. Can anybody with Solaris reproduce this?
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=12335
Edit this bug report at http://bugs.php.net/?id=12335&edit=1