X-Git-Url: https://unix4lyfe.org/gitweb/darkstat-debian/blobdiff_plain/85d7d6e7b81dff84df8ddc87815ce77b8d82bc07..3c6b3682c70be84db86e70c191016913a9836c31:/hosts_db.c diff --git a/hosts_db.c b/hosts_db.c index c2d7ae4..3058d65 100644 --- a/hosts_db.c +++ b/hosts_db.c @@ -1,5 +1,5 @@ /* darkstat 3 - * copyright (c) 2001-2011 Emil Mikulic. + * copyright (c) 2001-2014 Emil Mikulic. * * hosts_db.c: database of hosts, ports, protocols. * @@ -20,7 +20,7 @@ #include "opt.h" #include "str.h" -#include /* struct addrinfo */ +#include /* struct addrinfo */ #include #include #include @@ -342,10 +342,12 @@ format_row_host(struct str *buf, const struct bucket *b, " %'qu\n" " %'qu\n" " %'qu\n", - b->in, b->out, b->total); + (qu)b->in, + (qu)b->out, + (qu)b->total); if (opt_want_lastseen) { - long last = b->u.host.last_seen_mono; + time_t last = b->u.host.last_seen_mono; struct str *last_str = NULL; if ((now_mono() >= last) && (last > 0)) @@ -356,7 +358,9 @@ format_row_host(struct str *buf, const struct bucket *b, if (last == 0) str_append(buf, "(never)"); else - str_append(buf, "(clock error)"); + str_appendf(buf, "(clock error: now = %qu, last = %qu)", + (qu)now_mono(), + (qu)last); } else { str_appendstr(buf, last_str); str_free(last_str); @@ -403,7 +407,12 @@ format_row_port_tcp(struct str *buf, const struct bucket *b, " %'qu\n" "\n", css_class, - p->port, getservtcp(p->port), b->in, b->out, b->total, p->syn + p->port, + getservtcp(p->port), + (qu)b->in, + (qu)b->out, + (qu)b->total, + (qu)p->syn ); } @@ -437,7 +446,11 @@ format_row_port_udp(struct str *buf, const struct bucket *b, " %'qu\n" "\n", css_class, - p->port, getservudp(p->port), b->in, b->out, b->total + p->port, + getservudp(p->port), + (qu)b->in, + (qu)b->out, + (qu)b->total ); } @@ -471,8 +484,11 @@ format_row_ip_proto(struct str *buf, const struct bucket *b, " %'qu\n" "\n", css_class, - p->proto, getproto(p->proto), - b->in, b->out, b->total + p->proto, + getproto(p->proto), + (qu)b->in, + (qu)b->out, + (qu)b->total ); } @@ -1027,7 +1043,7 @@ static struct str *html_hosts_detail(const char *ip) { struct str *buf, *ls_len; char ls_when[100]; const char *canonical; - time_t last_real; + time_t last_seen_real; h = host_search(ip); if (h == NULL) @@ -1065,9 +1081,9 @@ static struct str *html_hosts_detail(const char *ip) { "

\n" "Last seen: "); - last_real = mono_to_real(h->u.host.last_seen_mono); + last_seen_real = mono_to_real(h->u.host.last_seen_mono); if (strftime(ls_when, sizeof(ls_when), - "%Y-%m-%d %H:%M:%S %Z%z", localtime(&last_real)) != 0) + "%Y-%m-%d %H:%M:%S %Z%z", localtime(&last_seen_real)) != 0) str_append(buf, ls_when); if (h->u.host.last_seen_mono <= now_mono()) { @@ -1087,7 +1103,9 @@ static struct str *html_hosts_detail(const char *ip) { " Out: %'qu
\n" " Total: %'qu
\n" "

\n", - h->in, h->out, h->total); + (qu)h->in, + (qu)h->out, + (qu)h->total); str_append(buf, "

TCP ports

\n"); format_table(buf, h->u.host.ports_tcp, 0,TOTAL,0);