extern void netlink_dump_rule(const struct nftnl_rule *nlr,
unsigned int debug_mask);
extern void netlink_dump_expr(const struct nftnl_expr *nle,
- unsigned int debug_mask);
+ FILE *fp, unsigned int debug_mask);
extern void netlink_dump_set(const struct nftnl_set *nls,
unsigned int debug_mask);
extern void netlink_dump_obj(struct nftnl_obj *nlo, unsigned int debug_mask);
fprintf(f, "%s\n", erec->msg);
for (l = 0; l < (int)erec->num_locations; l++) {
loc = &erec->locations[l];
- netlink_dump_expr(loc->nle, debug_mask);
+ netlink_dump_expr(loc->nle, f, debug_mask);
}
fprintf(f, "\n");
} else {
fprintf(stdout, "%s\n", buf);
}
-void netlink_dump_expr(const struct nftnl_expr *nle, unsigned int debug_mask)
+void netlink_dump_expr(const struct nftnl_expr *nle,
+ FILE *fp, unsigned int debug_mask)
{
char buf[4096];
return;
nftnl_expr_snprintf(buf, sizeof(buf), nle, 0, 0);
- fprintf(stdout, "%s\n", buf);
+ fprintf(fp, "%s\n", buf);
}
static int list_rule_cb(struct nftnl_rule *nlr, void *arg)