From 4955ae1a81b73f9a61b7fbf1a73e11544513548e Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Fri, 15 Dec 2023 01:10:39 +0100 Subject: Add support for table's persist flag Bison parser lacked support for passing multiple flags, JSON parser did not support table flags at all. Document also 'owner' flag (and describe their relationship in nft.8. Signed-off-by: Phil Sutter --- src/rule.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/rule.c') diff --git a/src/rule.c b/src/rule.c index 45289cc0..65ff0fbb 100644 --- a/src/rule.c +++ b/src/rule.c @@ -1215,6 +1215,7 @@ struct table *table_lookup_fuzzy(const struct handle *h, static const char *table_flags_name[TABLE_FLAGS_MAX] = { "dormant", "owner", + "persist", }; const char *table_flag_name(uint32_t flag) @@ -1225,6 +1226,17 @@ const char *table_flag_name(uint32_t flag) return table_flags_name[flag]; } +unsigned int parse_table_flag(const char *name) +{ + int i; + + for (i = 0; i < TABLE_FLAGS_MAX; i++) { + if (!strcmp(name, table_flags_name[i])) + return 1 << i; + } + return 0; +} + static void table_print_flags(const struct table *table, const char **delim, struct output_ctx *octx) { -- cgit v1.2.3