diff options
author | luigi <luigi@FreeBSD.org> | 2003-07-12 08:35:25 +0000 |
---|---|---|
committer | luigi <luigi@FreeBSD.org> | 2003-07-12 08:35:25 +0000 |
commit | 043fe49d632271f6d3cdc39b84baa093dc4cbd60 (patch) | |
tree | b24acb6c3124e38091818b018d992d404a6a3807 /sbin/ipfw | |
parent | 8fc7089ee76279dd6387ef817c991d92cf7a9391 (diff) | |
download | FreeBSD-src-043fe49d632271f6d3cdc39b84baa093dc4cbd60.zip FreeBSD-src-043fe49d632271f6d3cdc39b84baa093dc4cbd60.tar.gz |
Add a '-T' flag to print the timestamp as numeric value instead
of converting it with ctime(). This is a lot more convenient for
postprocessing.
Submitted by: "Jacob S. Barrett" <jbarrett@amduat.net>
Diffstat (limited to 'sbin/ipfw')
-rw-r--r-- | sbin/ipfw/ipfw.8 | 9 | ||||
-rw-r--r-- | sbin/ipfw/ipfw2.c | 10 |
2 files changed, 14 insertions, 5 deletions
diff --git a/sbin/ipfw/ipfw.8 b/sbin/ipfw/ipfw.8 index 542724b..39dc69e 100644 --- a/sbin/ipfw/ipfw.8 +++ b/sbin/ipfw/ipfw.8 @@ -13,7 +13,7 @@ .Cm add .Ar rule .Nm -.Op Fl acdeftnNS +.Op Fl acdefnNStT .Brq Cm list | show .Op Ar rule | first-last ... .Nm @@ -54,7 +54,7 @@ .Op Ar number ... .Pp .Nm -.Op Fl cNnqS +.Op Fl cnNqS .Oo .Fl p Ar preproc .Oo @@ -261,7 +261,10 @@ listed. While listing pipes, sort according to one of the four counters (total or current packets or bytes). .It Fl t -While listing, show last match timestamp. +While listing, show last match timestamp (converted with ctime()). +.It Fl T +While listing, show last match timestamp (as seconds from the epoch). +This form can be more convenient for postprocessing by scripts. .El .Pp To ease configuration, rules can be put into a file which is diff --git a/sbin/ipfw/ipfw2.c b/sbin/ipfw/ipfw2.c index 71009db..1c6f94e 100644 --- a/sbin/ipfw/ipfw2.c +++ b/sbin/ipfw/ipfw2.c @@ -902,7 +902,9 @@ show_ipfw(struct ip_fw *rule, int pcwidth, int bcwidth) printf("%*llu %*llu ", pcwidth, align_uint64(&rule->pcnt), bcwidth, align_uint64(&rule->bcnt)); - if (do_time) { + if (do_time == 2) + printf("%10u ", rule->timestamp); + else if (do_time == 1) { char timestr[30]; time_t t = (time_t)0; @@ -3667,7 +3669,7 @@ ipfw_main(int oldac, char **oldav) save_av = av; optind = optreset = 0; - while ((ch = getopt(ac, av, "acdefhnNqs:Stv")) != -1) + while ((ch = getopt(ac, av, "acdefhnNqs:STtv")) != -1) switch (ch) { case 'a': do_acct = 1; @@ -3717,6 +3719,10 @@ ipfw_main(int oldac, char **oldav) do_time = 1; break; + case 'T': + do_time = 2; /* numeric timestamp */ + break; + case 'v': /* verbose */ verbose = 1; break; |