diff options
author | Arturo Borrero <arturo.borrero.glez@gmail.com> | 2014-08-18 11:19:47 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2014-08-18 14:19:45 +0200 |
commit | 5355eff8e3b30994bd1b084d2a660e05e3858106 (patch) | |
tree | ec55604ce182852bbdf2f240917726b78587f5ab /examples/nft-chain-del.c | |
parent | ec2a503d774a983d009b32f9a2455f36da68da52 (diff) |
examples: nft-chain-del: add chain_del_parse()
This function parses the command line options and creates the nft_chain
object.
Signed-off-by: Arturo Borrero Gonzalez <arturo.borrero.glez@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'examples/nft-chain-del.c')
-rw-r--r-- | examples/nft-chain-del.c | 25 |
1 files changed, 19 insertions, 6 deletions
diff --git a/examples/nft-chain-del.c b/examples/nft-chain-del.c index c87ab92..833bce0 100644 --- a/examples/nft-chain-del.c +++ b/examples/nft-chain-del.c @@ -20,6 +20,22 @@ #include <libmnl/libmnl.h> #include <libnftnl/chain.h> +static struct nft_chain *chain_del_parse(int argc, char *argv[]) +{ + struct nft_chain *t; + + t = nft_chain_alloc(); + if (t == NULL) { + perror("OOM"); + return NULL; + } + + nft_chain_attr_set(t, NFT_CHAIN_ATTR_TABLE, argv[2]); + nft_chain_attr_set(t, NFT_CHAIN_ATTR_NAME, argv[3]); + + return t; +} + int main(int argc, char *argv[]) { struct mnl_socket *nl; @@ -48,16 +64,13 @@ int main(int argc, char *argv[]) exit(EXIT_FAILURE); } - t = nft_chain_alloc(); - if (t == NULL) { - perror("OOM"); + t = chain_del_parse(argc, argv); + if (t == NULL) exit(EXIT_FAILURE); - } + seq = time(NULL); nlh = nft_chain_nlmsg_build_hdr(buf, NFT_MSG_DELCHAIN, family, NLM_F_ACK, seq); - nft_chain_attr_set(t, NFT_CHAIN_ATTR_TABLE, argv[2]); - nft_chain_attr_set(t, NFT_CHAIN_ATTR_NAME, argv[3]); nft_chain_nlmsg_build_payload(nlh, t); nft_chain_free(t); |