Home page logo

nmap-dev logo Nmap Development mailing list archives

Re: SIGSEGV signal on Darwin OS X (Intel) when using version matching (nmap 4.01)
From: "Kurt Grutzmacher" <grutz () jingojango net>
Date: Fri, 10 Mar 2006 11:12:50 -0800

I've been able to track this down to the Mac's GCC compiler and the
optimization "-fthread-jumps"

           Perform optimizations where we check to see if a jump branches to
           location where another comparison subsumed by the first is found.
           If so, the first branch is redirected to either the destination
           the second branch or a point immediately following it, depending
           whether the condition is known to be true or false.

           Enabled at levels -O2, -O3, -Os, -Oz (APPLE ONLY).

Process of elimination finally gave it away. I set CFLAGS to -O1 and
manually set each -f that -O2 enables and plucked my way through them until
I found the flag(s) that caused nmap to SIGSEV. No matter what
-fthread-jumps always caused a SIGSEV.

Fixing this is way beyond my knowledge. Seems like it's a problem with
Apple's Xcode:

Using built-in specs.
Target: i686-apple-darwin8
Configured with:
-enable-werror --prefix=/usr --mandir=/share/man
--with-gxx-include-dir=/include/c++/4.0.0 --build=powerpc-apple-darwin8
--with-arch=pentium-m --with-tune=prescott --program-prefix=
--host=i686-apple-darwin8 --target=i686-apple-darwin8
Thread model: posix
gcc version 4.0.1 (Apple Computer, Inc. build 5250)

Sent through the nmap-dev mailing list

  By Date           By Thread  

Current thread:
[ Nmap | Sec Tools | Mailing Lists | Site News | About/Contact | Advertising | Privacy ]