diff options
author | Pablo M. Bermudo Garay <pablombg@gmail.com> | 2016-05-31 12:37:07 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2016-05-31 12:42:13 +0200 |
commit | abbb6a0dd4c8e39944bb4655c00945e3d24f2e60 (patch) | |
tree | e049f92bb7b98dfa218eda2b9b6f14506238abf2 /src/evaluate.c | |
parent | 69da3095ea38b42e068bab063b046a5016409d6a (diff) |
src: add support for display maps content
This commit adds a new command that displays the definition of a single
map:
# nft list map [family] <table> <map>
If no family is specified, ip is assumed.
Example:
# nft list map ip6 filter test
table ip6 filter {
map test {
type ipv6_addr : inet_service
elements = { 2001:db8::ff00:42:8329 : http}
}
}
Signed-off-by: Pablo M. Bermudo Garay <pablombg@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/evaluate.c')
-rw-r--r-- | src/evaluate.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/evaluate.c b/src/evaluate.c index ea1a63dc..423523fe 100644 --- a/src/evaluate.c +++ b/src/evaluate.c @@ -2688,6 +2688,16 @@ static int cmd_evaluate_list(struct eval_ctx *ctx, struct cmd *cmd) return cmd_error(ctx, "Could not process rule: Flow table '%s' does not exist", cmd->handle.set); return 0; + case CMD_OBJ_MAP: + table = table_lookup(&cmd->handle); + if (table == NULL) + return cmd_error(ctx, "Could not process rule: Table '%s' does not exist", + cmd->handle.table); + set = set_lookup(table, cmd->handle.set); + if (set == NULL || !(set->flags & SET_F_MAP)) + return cmd_error(ctx, "Could not process rule: Map '%s' does not exist", + cmd->handle.set); + return 0; case CMD_OBJ_CHAIN: table = table_lookup(&cmd->handle); if (table == NULL) |