Author: Hans Morten Kind Date: To: exim-users Subject: [Exim] gethostbyaddr() in 3.35
We should of course upgrade to 4.0 but that will take some time ...
and we were very happy with our patched 3.16! However, after
exim was mentioned on bugtraq, I felt I _had to_ upgrade
despite the assuring statements from Hazel.
The upgrading went well, but with 3.35 I have experienced some
trouble when parsing mainlog and looking up hostnames from the
"H=". The IP-name from H= was always sane before, but after
upgrading quite a lot of these names seem to be unresolved.
Of course names written as H=(stupid) are not tested.
The 3.35 source of host_name_lookup() in host.c states that
At this point we used to verify that a forward lookup did
indeed correspond to the address we first had, but it seems
that gethostbyaddr() does this check itself. So rather than
waste time checking the name and all its aliases, we now rely
on that.
The code no longer checks the looked up name but always returns
TRUE when some name is found.
As far as I can see, this is not right on my Solaris-7 and -8
boxes. gethostbyaddr() returns non-valid names and a lot of the
names written to mainlog as H= dont resolve.
The IP-number resolves to a name which does not resolve back
to a valid IP-number. Is this a problem with libresolv on my
Solaris-servers only?
Hans Morten Kind
IT-dep, Univ of Bergen
gratefully running exim since -97