Nmap Development mailing list archives

Re: Nmap 5.36TEST3 test release


From: Fyodor <fyodor () insecure org>
Date: Mon, 10 Jan 2011 01:22:00 -0800

On Sun, Jan 09, 2011 at 11:45:19PM +0000, nmap-dev () the-jedi co uk wrote:
This RPM (on 64-Bit Fedora 14) still seems to have the same problem as
5.21 did, as reported earlier:

      http://seclists.org/nmap-dev/2010/q1/308

Thanks for the reminder.  I am able to reproduce this on my Fedora 14
x86-64 machine too.  I think we do need to address this before the
next release.

I think we decided back then it was due to being built on an old CentOS
release.

The Nmap builds use the latest version of CentOS (5.5) with all
available patches.  The problem is that CentOS itself (like RHEL 5
itself) uses a much older base of software than bleeding edge Fedora.

Redhat has finally released RHEL6 (in November), but a CentOS 6
release is still (at least) weeks away.  And even if we upgrade to
RHEL 6 for the build VMs, that might break the RPMs for the
RHEL/CentOS 5 users.

When Nmap is compiled statically (for RPMs) on the CentOS 5.5 boxes,
it gives this warning:

nmap.o: In function `nmap_main(int, char**)':
/home/fyodor/rpm/BUILD/nmap-5.36TEST3/nmap.cc:1453: warning: Using 'gethostbyname' in statically linked applications 
requires at runtime the shared libraries from the glibc version used for linking

The other functions which give me that warning are getpwuid(),
getaddrinfo(), getnetbyname(), getprotobyname(), and getservbyname().

The CentOS 5.5 build system uses glibc-2.5-49.el5_5.7, while my Fedora
14 system has glibc-2.12.90-21.

Possible solutions include:

* Figure out a code or compilation workaround so that the Nmap static
  RPM binaries work in both versions of glibc.  Switching from
  gethostbyname() to getaddrinfo() might do the trick.  Ncat uses
  getaddrinfo() and still seems to work, though it does give the same
  compile-time warning message as gethostbyname.

* Stop distributing RPMs

* Buld Nmap on a newer distribution and document that the RPMs won't
  work on older ones (assuming we verify that this is the case).

* Continue building Nmap on CentOS 5.5 and document which
  distributions the RPMs won't work on.

Note that installing the 32-bit RPMs on my 64-bit system doesn't solve
the problem.  I still get the "Failed to resolve given hostname/IP"
error for each hostname I try.

I'm not sure of the best solution, so I'll just add a note to the TODO
for now.  If anyone wants to work on it, be my guest!

Cheers,
Fyodor
_______________________________________________
Sent through the nmap-dev mailing list
http://cgi.insecure.org/mailman/listinfo/nmap-dev
Archived at http://seclists.org/nmap-dev/


Current thread: