mirror of
https://github.com/nmap/nmap.git
synced 2025-12-14 19:59:02 +00:00
Show TTL in default output if "--reason -v" is asked for.
This commit is contained in:
@@ -347,6 +347,7 @@ void NmapOps::Initialize() {
|
||||
gettimeofday(&start_time, NULL);
|
||||
pTrace = vTrace = false;
|
||||
reason = false;
|
||||
show_ttl = false;
|
||||
adler32 = false;
|
||||
if (datadir) free(datadir);
|
||||
datadir = NULL;
|
||||
|
||||
@@ -367,6 +367,7 @@ class NmapOps {
|
||||
|
||||
bool traceroute;
|
||||
bool reason;
|
||||
bool show_ttl;
|
||||
bool adler32;
|
||||
FILE *excludefd;
|
||||
char *exclude_spec;
|
||||
|
||||
3
nmap.cc
3
nmap.cc
@@ -1465,6 +1465,9 @@ void apply_delayed_options() {
|
||||
if (o.verbose > 1)
|
||||
o.reason = true;
|
||||
|
||||
if (o.verbose && o.reason)
|
||||
o.show_ttl = true;
|
||||
|
||||
// ISO 8601 date/time -- http://www.cl.cam.ac.uk/~mgk25/iso-time.html
|
||||
if (strftime(tbuf, sizeof(tbuf), "%Y-%m-%d %H:%M %Z", local_time) <= 0)
|
||||
fatal("Unable to properly format time");
|
||||
|
||||
11
output.cc
11
output.cc
@@ -554,6 +554,7 @@ void printportoutput(Target *currenths, PortList *plist) {
|
||||
int servicecol = -1; // service or protocol name
|
||||
int versioncol = -1;
|
||||
int reasoncol = -1;
|
||||
int ttlcol = -1;
|
||||
int colno = 0;
|
||||
unsigned int rowno;
|
||||
int numrows;
|
||||
@@ -666,6 +667,8 @@ void printportoutput(Target *currenths, PortList *plist) {
|
||||
servicecol = colno++;
|
||||
if (o.reason)
|
||||
reasoncol = colno++;
|
||||
if (o.show_ttl)
|
||||
ttlcol = colno++;
|
||||
if (o.servicescan)
|
||||
versioncol = colno++;
|
||||
|
||||
@@ -694,6 +697,8 @@ void printportoutput(Target *currenths, PortList *plist) {
|
||||
Tbl->addItem(0, versioncol, false, "VERSION", 7);
|
||||
if (reasoncol > 0)
|
||||
Tbl->addItem(0, reasoncol, false, "REASON", 6);
|
||||
if (ttlcol > 0)
|
||||
Tbl->addItem(0, ttlcol, false, "TTL", 3);
|
||||
|
||||
log_write(LOG_MACHINE, "\t%s: ", (o.ipprotscan) ? "Protocols" : "Ports");
|
||||
|
||||
@@ -708,6 +713,8 @@ void printportoutput(Target *currenths, PortList *plist) {
|
||||
first = 0;
|
||||
if (o.reason)
|
||||
Tbl->addItem(rowno, reasoncol, true, port_reason_str(current->reason));
|
||||
if (o.show_ttl)
|
||||
Tbl->addItemFormatted(rowno, ttlcol, false, "%d", current->reason.ttl);
|
||||
state = statenum2str(current->state);
|
||||
proto = nmap_getprotbynum(current->portno);
|
||||
Snprintf(portinfo, sizeof(portinfo), "%s", proto ? proto->p_name : "unknown");
|
||||
@@ -768,6 +775,8 @@ void printportoutput(Target *currenths, PortList *plist) {
|
||||
Tbl->addItem(rowno, servicecol, true, serviceinfo);
|
||||
if (o.reason)
|
||||
Tbl->addItem(rowno, reasoncol, true, port_reason_str(current->reason));
|
||||
if (o.show_ttl)
|
||||
Tbl->addItemFormatted(rowno, ttlcol, false, "%d", current->reason.ttl);
|
||||
|
||||
sd.populateFullVersionString(fullversion, sizeof(fullversion));
|
||||
if (*fullversion && versioncol > 0)
|
||||
@@ -1476,6 +1485,8 @@ void write_host_status(Target *currenths) {
|
||||
log_write(LOG_PLAIN, "Host is up");
|
||||
if (o.reason)
|
||||
log_write(LOG_PLAIN, ", %s", target_reason_str(currenths));
|
||||
if (o.show_ttl)
|
||||
log_write(LOG_PLAIN, " TTL %d", currenths->reason.ttl);
|
||||
if (currenths->to.srtt != -1)
|
||||
log_write(LOG_PLAIN, " (%ss latency)",
|
||||
num_to_string_sigdigits(currenths->to.srtt / 1000000.0, 2));
|
||||
|
||||
Reference in New Issue
Block a user