avoid a race condition. "make all" would make nsock and ncat, and ncat
would in turn make nsock. If the timing was right, the two simultaneous
builds would trample each other.
It may seem inefficient to have all these recursive makes calling down
the dependency tree all the time, but GNU Make at least remembers which
targets were already completed so for example only one descent into
nbase_build will be done per "make all".
XML file, do "nmap 0 -oX -", not "nmap nonexistent -oX -". The first is an
invalid host specification, the second is just a name resolution error. The
original recipe was wrong in the log of the commit that fixed the problem.
exception message rather than the whole exception tuple. This changes
./ndiff: ('option --foo not recognized', 'foo')
to
./ndiff: option --foo not recognized
definition causes GCC to add extra security checks to compiled source
code. See http://gcc.gnu.org/ml/gcc-patches/2004-09/msg02055.html.
-D_FORTIFY_SOURCE=1 adds only those checks that are not supposed to
cause any "conforming" program to fail. (Conforming to what I'm not
sure, probably one of the C standards.) -D_FORTIFY_SOURCE=2 adds extra
checks above that. Some light testing hasn't shown any obvious problems.
happens when a host was scanned in the A scan but wasn't scanned in the B scan.
I previously had it ignore such changes using the logic that the diff should be
like scan aggregation: no new information means no state change. But I think
it's more useful to see those changes in which hosts were scanned.
This is analogous to r10263, which did the same thing for port state changes.
increases the scan dealy with an increase in max_successful_tryno. When I
reverted a bunch of changes in r11651, I removed the moved code, leaving the
scan delay increase nowhere. This puts it back in ultrascan_port_probe_update
where it was before.
Don't make a host the global ping host until it moves to the completed
hosts list, and only change the global ping probe if the new probe is no
worse than the old (according to pingprobe_is_better).
Restore the ping magnifier for host congestion window updates.
Ignore the timing of certain ICMP errors that are likely to be rate
limited and don't change the port or host state. Avoid making timing
pings out of probes that elicit such errors. This used to be done only
for port scans and only at -T4 and above (and didn't prohibit the
creation of timing pings). Now it is done for host discovery too, and at
all timing levels.
Gracefully handle updates from the recent past in RateMeter. Doesn't
affect performance, but avoids a rare assertion failure.