]> git.ipfire.org Git - thirdparty/nftables.git/commitdiff
datatype: time_print() ignores -T
authorPablo Neira Ayuso <pablo@netfilter.org>
Fri, 3 Sep 2021 08:12:11 +0000 (10:12 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 6 Sep 2021 07:31:34 +0000 (09:31 +0200)
Honor NFT_CTX_OUTPUT_NUMERIC_TIME.

 # nft list ruleset
 table ip x {
        set y {
                type ipv4_addr
                flags timeout
                elements = { 1.1.1.1 timeout 5m expires 1m49s40ms }
        }
 }
 # sudo nft -T list ruleset
 table ip x {
        set y {
                type ipv4_addr
                flags timeout
                elements = { 1.1.1.1 timeout 300s expires 108s }
        }
 }

Closes: https://bugzilla.netfilter.org/show_bug.cgi?id=1561
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/datatype.c

index 7267d60895d8464e98619aa705024ccd857b500a..b849f70833c7beae44c55592db5384d1f16c4bc5 100644 (file)
@@ -911,6 +911,11 @@ void time_print(uint64_t ms, struct output_ctx *octx)
 {
        uint64_t days, hours, minutes, seconds;
 
+       if (nft_output_seconds(octx)) {
+               nft_print(octx, "%" PRIu64 "s", ms / 1000);
+               return;
+       }
+
        days = ms / 86400000;
        ms %= 86400000;