diff options
author | Phil Sutter <phil@nwl.cc> | 2018-07-19 18:32:01 +0200 |
---|---|---|
committer | Florian Westphal <fw@strlen.de> | 2018-07-19 23:08:55 +0200 |
commit | de782e891c0988cd38c78df32574d617ed65321f (patch) | |
tree | 7a5b687beefabd8a8373d8024c8db5f8479cc1f0 | |
parent | ae8eece4489b9267be2a82197908d80db73ffd0b (diff) |
xtables: merge nft_ipv{4,6}_parse_target()
Both functions are identical, replace them by a common one in
nft-shared.c.
Signed-off-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: Florian Westphal <fw@strlen.de>
-rw-r--r-- | iptables/nft-ipv4.c | 9 | ||||
-rw-r--r-- | iptables/nft-ipv6.c | 9 | ||||
-rw-r--r-- | iptables/nft-shared.c | 7 | ||||
-rw-r--r-- | iptables/nft-shared.h | 1 |
4 files changed, 10 insertions, 16 deletions
diff --git a/iptables/nft-ipv4.c b/iptables/nft-ipv4.c index 9db82817..2afb1453 100644 --- a/iptables/nft-ipv4.c +++ b/iptables/nft-ipv4.c @@ -414,13 +414,6 @@ static void nft_ipv4_post_parse(int command, " source or destination IP addresses"); } -static void nft_ipv4_parse_target(struct xtables_target *t, void *data) -{ - struct iptables_command_state *cs = data; - - cs->target = t; -} - static bool nft_ipv4_rule_find(struct nft_family_ops *ops, struct nftnl_rule *r, void *data) { @@ -510,7 +503,7 @@ struct nft_family_ops nft_family_ops_ipv4 = { .save_counters = nft_ipv4_save_counters, .proto_parse = nft_ipv4_proto_parse, .post_parse = nft_ipv4_post_parse, - .parse_target = nft_ipv4_parse_target, + .parse_target = nft_ipv46_parse_target, .rule_to_cs = nft_rule_to_iptables_command_state, .clear_cs = nft_clear_iptables_command_state, .rule_find = nft_ipv4_rule_find, diff --git a/iptables/nft-ipv6.c b/iptables/nft-ipv6.c index 018f1d3f..ddaeb2b4 100644 --- a/iptables/nft-ipv6.c +++ b/iptables/nft-ipv6.c @@ -367,13 +367,6 @@ static void nft_ipv6_post_parse(int command, struct iptables_command_state *cs, " source or destination IP addresses"); } -static void nft_ipv6_parse_target(struct xtables_target *t, void *data) -{ - struct iptables_command_state *cs = data; - - cs->target = t; -} - static bool nft_ipv6_rule_find(struct nft_family_ops *ops, struct nftnl_rule *r, void *data) { @@ -465,7 +458,7 @@ struct nft_family_ops nft_family_ops_ipv6 = { .save_counters = nft_ipv6_save_counters, .proto_parse = nft_ipv6_proto_parse, .post_parse = nft_ipv6_post_parse, - .parse_target = nft_ipv6_parse_target, + .parse_target = nft_ipv46_parse_target, .rule_to_cs = nft_rule_to_iptables_command_state, .clear_cs = nft_clear_iptables_command_state, .rule_find = nft_ipv6_rule_find, diff --git a/iptables/nft-shared.c b/iptables/nft-shared.c index 24287e97..7abe158b 100644 --- a/iptables/nft-shared.c +++ b/iptables/nft-shared.c @@ -924,6 +924,13 @@ bool compare_targets(struct xtables_target *tg1, struct xtables_target *tg2) return true; } +void nft_ipv46_parse_target(struct xtables_target *t, void *data) +{ + struct iptables_command_state *cs = data; + + cs->target = t; +} + bool nft_ipv46_rule_find(struct nft_family_ops *ops, struct nftnl_rule *r, struct iptables_command_state *cs) { diff --git a/iptables/nft-shared.h b/iptables/nft-shared.h index 8172c873..deded06b 100644 --- a/iptables/nft-shared.h +++ b/iptables/nft-shared.h @@ -174,6 +174,7 @@ void save_matches_and_target(struct xtables_rule_match *m, struct nft_family_ops *nft_family_ops_lookup(int family); struct nft_handle; +void nft_ipv46_parse_target(struct xtables_target *t, void *data); bool nft_ipv46_rule_find(struct nft_family_ops *ops, struct nftnl_rule *r, struct iptables_command_state *cs); |