ID: 38091
User updated by: danb1974 at gmail dot com
Reported By: danb1974 at gmail dot com
Status: Bogus
Bug Type: Mail related
Operating System: windows xp pro
PHP Version: 5.1.4
New Comment:
It seems it's not enough to just gethostname. You have to do something
like this (this is not actual production code):
hostent *hent;
gethostname(hname, sizeof(hname));
hent = gethostbyname(hname);
strcpy(hostname, hent->h_name); // h_name is the official name
according to winsock api
Previous Comments:
------------------------------------------------------------------------
[2006-07-14 06:45:35] ronabop@php.net
Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to
report
a bug at http://bugs.php.net/how-to-report.php
The windows XP "feature" for domain name resolution
apparently gives out a bogus answer. This is an XP bug,
not a PHP bug. Additionally, "trashcan2.intranet" is not
a FQDN. See: <http://en.wikipedia.org/wiki/FQDN>.
------------------------------------------------------------------------
[2006-07-14 06:23:35] danb1974 at gmail dot com
Ok now I'm confuzed.
* smtp requires helo to send fqdn and not just the hostname (it's
stated somewhere in the rfc's)
* windows xp fqdn is what the computer reports as "full computer name"
(at least so does some say, see
http://www.ima.com/support/regprob.html)
* a windows xp joined to a domain (a) does not give you any choice
about the hostname, it's the computer name which is obviously not fqdn
and (b) does report the correct name as "full computer name"
* on linux it works correctly (not using hostname but hostname -f value
which is the fqdn)
So at this point it's basically "I cannot send mail from xp to an
unforgiving mail server and yes it's a feature so I have to live with
it"
------------------------------------------------------------------------
[2006-07-13 14:32:50] iliaa@php.net
Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to
report
a bug at http://bugs.php.net/how-to-report.php
The host name use is the same one as your machine will report
if you run ipconfig /all (Host Name value).
------------------------------------------------------------------------
[2006-07-13 09:28:43] danb1974 at gmail dot com
Description:
------------
Computer reports "Full computer name: trashcan2.intranet" in my
computer properties, computer name tab.
Sending mail using mail() functions generates a "helo trashcan2"
instead of "helo trashcan2.intranet", which is rejected by a
unforgiving smtp server (helo requires fqdn).
Reproduce code:
---------------
mail('danb1974@gmail.com', 'test', 'message')
Actual result:
--------------
Warning: mail(): SMTP server response: 504 <trashcan2>: Helo command
rejected: need fully-qualified hostname in C:\Temp\php\test.php on line
6
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=38091&edit=1