Nmap Development mailing list archives

Re: [libdnet-stripped] svn version does not compile because of config.h


From: nmap-bug-tmp () hushmail com
Date: Thu, 14 Jan 2010 11:13:29 +0100

The commited change has fixed one thing but ... :

gmake[1]: Entering directory `/root/swap/nmap/libdnet-stripped/src'
/bin/sh ../libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -
I. -I../include  -I../include   -g -O2 -Wall -c -o addr-util.lo 
addr-util.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../include -
I../include -g -O2 -Wall -c addr-util.c  -fPIC -DPIC -o .libs/addr-
util.o
In file included from addr-util.c:12:
../include/config.h:305: error: conflicting types for `socklen_t'
/usr/include/sys/types.h:163: error: previous declaration of 
`socklen_t

sys/types.h line 163 => typedef __socklen_t     socklen_t;

My dirty hack was dirty, but it worked :) (I mean the #define).
By the way, I don't see why you bother redefine socklen_t which is 
(at least on my system) in sys/types.h.
If you remove that from config.h then everything is ok for me.


Regards.

// user.

..
On Thu, 14 Jan 2010 04:38:48 +0100 David Fifield 
<david () bamsoftware com> wrote:
On Wed, Jan 13, 2010 at 09:44:39PM -0500, Michael Pattrick wrote:
The correct syntax with typedef should be:
typedef int socklen_t;

not:
typedef socklen_t int

Checking the latest svn, I see that line 304 of
"libdnet-stripped/include/config.h.in" is erroneous. But this 
file
claims to be auto-generated and I'm not confident enough with 
the
automake system to know how to fix it.

You're right Michael. I committed your fix. The right place to do 
it is
in acconfig.h; that's included at the bottom of config.h.in by
autoheader. I introduced that typedef when I added checks for 
socklen_t
to avoid some compiler warnings. I guess I never exercised the
no-socklen_t case.

David Fifield

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


Current thread: