#ifndef _NFT_CMD_H_ #define _NFT_CMD_H_ #include #include #include "nft.h" struct nftnl_rule; struct nft_cmd { struct list_head head; int command; const char *table; const char *chain; const char *jumpto; int rulenum; bool verbose; unsigned int format; struct { struct nftnl_rule *rule; struct nftnl_set *set; } obj; const char *policy; struct xt_counters counters; const char *rename; int counters_save; }; struct nft_cmd *nft_cmd_new(struct nft_handle *h, int command, const char *table, const char *chain, struct iptables_command_state *state, int rulenum, bool verbose); void nft_cmd_free(struct nft_cmd *cmd); int nft_cmd_rule_append(struct nft_handle *h, const char *chain, const char *table, struct iptables_command_state *state, void *ref, bool verbose); int nft_cmd_rule_insert(struct nft_handle *h, const char *chain, const char *table, struct iptables_command_state *state, int rulenum, bool verbose); int nft_cmd_rule_delete(struct nft_handle *h, const char *chain, const char *table, struct iptables_command_state *state, bool verbose); int nft_cmd_rule_delete_num(struct nft_handle *h, const char *chain, const char *table, int rulenum, bool verbose); int nft_cmd_rule_flush(struct nft_handle *h, const char *chain, const char *table, bool verbose); int nft_cmd_zero_counters(struct nft_handle *h, const char *chain, const char *table, bool verbose); int nft_cmd_chain_user_add(struct nft_handle *h, const char *chain, const char *table); int nft_cmd_chain_user_del(struct nft_handle *h, const char *chain, const char *table, bool verbose); int nft_cmd_chain_zero_counters(struct nft_handle *h, const char *chain, const char *table, bool verbose); int nft_cmd_rule_list(struct nft_handle *h, const char *chain, const char *table, int rulenum, unsigned int format); int nft_cmd_rule_check(struct nft_handle *h, const char *chain, const char *table, void *data, bool verbose); int nft_cmd_chain_set(struct nft_handle *h, const char *table, const char *chain, const char *policy, const struct xt_counters *counters); int nft_cmd_chain_user_rename(struct nft_handle *h,const char *chain, const char *table, const char *newname); int nft_cmd_rule_replace(struct nft_handle *h, const char *chain, const char *table, void *data, int rulenum, bool verbose); int nft_cmd_table_flush(struct nft_handle *h, const char *table); int nft_cmd_chain_restore(struct nft_handle *h, const char *chain, const char *table); int nft_cmd_rule_zero_counters(struct nft_handle *h, const char *chain, const char *table, int rulenum); int nft_cmd_rule_list_save(struct nft_handle *h, const char *chain, const char *table, int rulenum, int counters); int ebt_cmd_user_chain_policy(struct nft_handle *h, const char *table, const char *chain, const char *policy); void nft_cmd_table_new(struct nft_handle *h, const char *table); #endif /* _NFT_CMD_H_ */