@@ -1042,6 +1042,13 @@ static int do_list_tables(struct netlink_ctx *ctx, struct cmd *cmd)
return 0;
}
+static void table_print_declaration(struct table *table)
+{
+ printf("table %s %s {\n",
+ family2str(table->handle.family),
+ table->handle.table);
+}
+
static int do_list_chains(struct netlink_ctx *ctx, struct cmd *cmd)
{
struct table *table;
@@ -1052,9 +1059,7 @@ static int do_list_chains(struct netlink_ctx *ctx, struct cmd *cmd)
cmd->handle.family != table->handle.family)
continue;
- printf("table %s %s {\n",
- family2str(table->handle.family),
- table->handle.table);
+ table_print_declaration(table);
list_for_each_entry(chain, &table->chains, list) {
chain_print_declaration(chain);
@@ -1075,7 +1080,10 @@ static int do_list_set(struct netlink_ctx *ctx, struct cmd *cmd,
if (set == NULL)
return -1;
+ table_print_declaration(table);
set_print(set);
+ printf("}\n");
+
return 0;
}
After: # nft list set ip6 test foo table ip6 test { set foo { type ipv4_addr } } Before: # nft list set ip6 test foo set foo { type ipv4_addr } Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org> --- src/rule.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-)