" source or destination IP addresses");
}
-static void nft_ipv4_save_counters(const void *data)
-{
- const struct iptables_command_state *cs = data;
-
- save_counters(cs->counters.pcnt, cs->counters.bcnt);
-}
-
static int nft_ipv4_xlate(const void *data, struct xt_xlate *xl)
{
const struct iptables_command_state *cs = data;
.print_header = print_header,
.print_firewall = nft_ipv4_print_firewall,
.save_firewall = nft_ipv4_save_firewall,
- .save_counters = nft_ipv4_save_counters,
+ .save_counters = save_counters,
.proto_parse = nft_ipv4_proto_parse,
.post_parse = nft_ipv4_post_parse,
.parse_target = nft_ipv46_parse_target,
" source or destination IP addresses");
}
-static void nft_ipv6_save_counters(const void *data)
-{
- const struct iptables_command_state *cs = data;
-
- save_counters(cs->counters.pcnt, cs->counters.bcnt);
-}
-
static void xlate_ipv6_addr(const char *selector, const struct in6_addr *addr,
const struct in6_addr *mask,
int invert, struct xt_xlate *xl)
.print_header = print_header,
.print_firewall = nft_ipv6_print_firewall,
.save_firewall = nft_ipv6_save_firewall,
- .save_counters = nft_ipv6_save_counters,
+ .save_counters = save_counters,
.proto_parse = nft_ipv6_proto_parse,
.post_parse = nft_ipv6_post_parse,
.parse_target = nft_ipv46_parse_target,
}
}
-void save_counters(uint64_t pcnt, uint64_t bcnt)
+void save_counters(const void *data)
{
- printf("[%llu:%llu] ", (unsigned long long)pcnt,
- (unsigned long long)bcnt);
+ const struct iptables_command_state *cs = data;
+
+ printf("[%llu:%llu] ", (unsigned long long)cs->counters.pcnt,
+ (unsigned long long)cs->counters.bcnt);
}
void save_matches_and_target(struct xtables_rule_match *m,
unsigned const char *iniface_mask,
const char *outiface,
unsigned const char *outiface_mask);
-void save_counters(uint64_t pcnt, uint64_t bcnt);
+void save_counters(const void *data);
void save_matches_and_target(struct xtables_rule_match *m,
struct xtables_target *target,
const char *jumpto,