1
0
mirror of https://github.com/nmap/nmap.git synced 2025-12-07 05:01:29 +00:00

Move some functions from traceroute.h into traceroute.cc so they can be

easily referenced while looking at the code that uses them.
This commit is contained in:
david
2009-08-19 21:04:40 +00:00
parent 43acb0eab8
commit 5371550a75
2 changed files with 32 additions and 4 deletions

View File

@@ -1207,6 +1207,34 @@ void TraceGroup::consolidateHops() {
TraceProbes.erase(++ttl_count); TraceProbes.erase(++ttl_count);
} }
/* This is the function that gives the traceroute its "up and down" nature.
gotReply is true if we've gotten a reply from the target (finished counting
up). */
void TraceGroup::nextTTL() {
if (gotReply) {
ttl--;
} else {
ttl++;
hopDistance++;
}
}
void TraceGroup::incRemaining() {
if (remaining < 255)
++remaining;
}
void TraceGroup::decRemaining() {
if (remaining > 0)
--remaining;
}
char *TraceGroup::IPStr() {
struct in_addr s;
s.s_addr = ipdst;
return inet_ntoa (s);
}
u8 u8
TraceGroup::setState(u8 state) { TraceGroup::setState(u8 state) {
if (state <= G_FINISH && state >= G_OK) if (state <= G_FINISH && state >= G_OK)

View File

@@ -251,11 +251,11 @@ class TraceGroup {
void consolidateHops (); void consolidateHops ();
/* the next ttl to send, if the destination has replied /* the next ttl to send, if the destination has replied
* the ttl is decremented, if it hasn't it is incremented */ * the ttl is decremented, if it hasn't it is incremented */
void nextTTL () { if (gotReply) ttl--; else { ttl++; hopDistance++;}} void nextTTL();
/* number of probes currently waiting for replies */ /* number of probes currently waiting for replies */
void incRemaining () { if (remaining < 255) ++remaining; } void incRemaining();
void decRemaining () { if (remaining > 0) --remaining; } void decRemaining();
char *IPStr () { struct in_addr s; s.s_addr = ipdst; return inet_ntoa (s);} char *IPStr();
u8 getRemaining () { return remaining;} u8 getRemaining () { return remaining;}
u8 getState () { return state; } u8 getState () { return state; }
u8 setState (u8 state); u8 setState (u8 state);