Skip to contentSkip to conversation

src: do not print limit keyword inside object definition

PATCH Applied Pablo M. Bermudo Garay 2 participants 2 messages Dec 22, 2017 netfilter

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 src: do not print limit keyword inside object definition

table ip limits {
    limit foo {
        limit rate 5/second
        ^^^^^
    }
}

This behaviour is inconsistent and breaks the restoration of saved rule-sets with "nft -f".

Fixes c0697eabe832 ("src: add stateful object support for limit")
---
 src/rule.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
src/rule.c +2 -2
index cbc40e2..bb9add0 100644
@@ -1316,7 +1316,7 @@ static void obj_print_data(const struct obj *obj,
 			  opts->nl, opts->tab, opts->tab);
 		switch (obj->limit.type) {
 		case NFT_LIMIT_PKTS:
-			nft_print(octx, "limit rate %s%" PRIu64 "/%s",
+			nft_print(octx, "rate %s%" PRIu64 "/%s",
 				  inv ? "over " : "", obj->limit.rate,
 				  get_unit(obj->limit.unit));
 			if (obj->limit.burst > 0)
@@ -1326,7 +1326,7 @@ static void obj_print_data(const struct obj *obj,
 		case NFT_LIMIT_PKT_BYTES:
 			data_unit = get_rate(obj->limit.rate, &rate);
 
-			nft_print(octx, "limit rate %s%" PRIu64 " %s/%s",
+			nft_print(octx, "rate %s%" PRIu64 " %s/%s",
 				  inv ? "over " : "", rate, data_unit,
 				  get_unit(obj->limit.unit));
 			if (obj->limit.burst > 0) {
Signature · 1 line
2.15.1
maintainer Applied
#1 lore raw
Quoted 9 lines · Pablo M. Bermudo Garay
table ip limits {
    limit foo {
        limit rate 5/second
        ^^^^^
    }
}

This behaviour is inconsistent and breaks the restoration of saved rule-sets with "nft -f".

Applied.

Could you also send a patch to add a test for this to tests/shell/ ?

Thanks a lot!