diff --git a/CHANGELOG b/CHANGELOG index 86facdd1f..95e9cd7b5 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,4 +1,4 @@ -# Nmap Changelog ($Id$); -*-text-*- +# Nmap Changelog ($Id$); -*-text-*- o Made a number of performance tweaks, such as: o increase host group sizes in many cases, so Nmap will now commonly @@ -97,6 +97,9 @@ o Nmap's makefile will now install menu items for launching zenmap as effect people who install nmap and zenmap directly from the source code. [Michael] +o Nmap will no longer misreport a localhost-responce during -PN scans + [Michael] + Nmap 4.68 [2008-6-28] o Doug integrated all of your version detection submissions and diff --git a/portreasons.cc b/portreasons.cc index 8c9459d8e..b53f86ebf 100644 --- a/portreasons.cc +++ b/portreasons.cc @@ -122,7 +122,7 @@ const char *reason_text[ER_MAX+1]={ "unknown", "admin-prohibited", "unknown", "time-exceeded", "unknown", "unknown", "timestamp-reply", "unknown", "unknown", "unknown", "addressmask-reply", "no-ipid-change", "ipid-change", "arp-response", "tcp-response", - "no-response", "localhost-response", "script-set", "unknown-response" + "no-response", "localhost-response", "script-set", "unknown-response","user-set" }; const char *reason_pl_text[ER_MAX+1]={ diff --git a/portreasons.h b/portreasons.h index 3bc3935b8..3e1192932 100644 --- a/portreasons.h +++ b/portreasons.h @@ -148,7 +148,7 @@ enum reason_codes { ER_ADDRESSMASKREPLY=29, ER_NOIPIDCHANGE, ER_IPIDCHANGE, ER_ARPRESPONSE, ER_TCPRESPONSE, ER_NORESPONSE, - ER_LOCALHOST, ER_SCRIPT, ER_UNKNOWN, ER_MAX=ER_UNKNOWN /* 38 */ + ER_LOCALHOST, ER_SCRIPT, ER_UNKNOWN, ER_USER, ER_MAX=ER_USER /* 39 */ }; /* Be careful to update these values if any ICMP diff --git a/targets.cc b/targets.cc index 0768da682..78d6ce281 100644 --- a/targets.cc +++ b/targets.cc @@ -606,7 +606,10 @@ if (hs->randomize) { if (!hs->hostbatch[i]->timedOut(&now)) { initialize_timeout_info(&hs->hostbatch[i]->to); hs->hostbatch[i]->flags |= HOST_UP; /*hostbatch[i].up = 1;*/ - hs->hostbatch[i]->reason.reason_id = ER_LOCALHOST; + if(pingtype == PINGTYPE_NONE && !arpping_done) + hs->hostbatch[i]->reason.reason_id = ER_USER; + else + hs->hostbatch[i]->reason.reason_id = ER_LOCALHOST; } } } else if (!arpping_done) {