diff --git a/tc/m_bpf.c b/tc/m_bpf.c index e247da8d..e8d704b5 100644 --- a/tc/m_bpf.c +++ b/tc/m_bpf.c @@ -167,7 +167,7 @@ static int bpf_print_opt(struct action_util *au, FILE *f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_ACT_BPF_MAX, arg); if (!tb[TCA_ACT_BPF_PARMS]) { - fprintf(f, "[NULL bpf parameters]"); + fprintf(stderr, "Missing bpf parameters\n"); return -1; } diff --git a/tc/m_connmark.c b/tc/m_connmark.c index af5ebfc4..eac23489 100644 --- a/tc/m_connmark.c +++ b/tc/m_connmark.c @@ -115,7 +115,7 @@ static int print_connmark(struct action_util *au, FILE *f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_CONNMARK_MAX, arg); if (tb[TCA_CONNMARK_PARMS] == NULL) { - print_string(PRINT_FP, NULL, "%s", "[NULL connmark parameters]"); + fprintf(stderr, "Missing connmark parameters\n"); return -1; } diff --git a/tc/m_csum.c b/tc/m_csum.c index 84396d6a..3e3dc251 100644 --- a/tc/m_csum.c +++ b/tc/m_csum.c @@ -172,7 +172,7 @@ print_csum(struct action_util *au, FILE *f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_CSUM_MAX, arg); if (tb[TCA_CSUM_PARMS] == NULL) { - fprintf(f, "[NULL csum parameters]"); + fprintf(stderr, "Missing csum parameters\n"); return -1; } sel = RTA_DATA(tb[TCA_CSUM_PARMS]); diff --git a/tc/m_gact.c b/tc/m_gact.c index 32617d4c..dca2a2f9 100644 --- a/tc/m_gact.c +++ b/tc/m_gact.c @@ -177,7 +177,7 @@ print_gact(struct action_util *au, FILE *f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_GACT_MAX, arg); if (tb[TCA_GACT_PARMS] == NULL) { - print_string(PRINT_FP, NULL, "%s", "[NULL gact parameters]"); + fprintf(stderr, "Missing gact parameters\n"); return -1; } p = RTA_DATA(tb[TCA_GACT_PARMS]); diff --git a/tc/m_ife.c b/tc/m_ife.c index 67c1df75..7c612c02 100644 --- a/tc/m_ife.c +++ b/tc/m_ife.c @@ -218,7 +218,7 @@ skip_encode: static int print_ife(struct action_util *au, FILE *f, struct rtattr *arg) { - struct tc_ife *p = NULL; + struct tc_ife *p; struct rtattr *tb[TCA_IFE_MAX + 1]; __u16 ife_type = 0; __u32 mmark = 0; @@ -233,7 +233,7 @@ static int print_ife(struct action_util *au, FILE *f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_IFE_MAX, arg); if (tb[TCA_IFE_PARMS] == NULL) { - print_string(PRINT_FP, NULL, "%s", "[NULL ife parameters]"); + fprintf(stderr, "Missing ife parameters\n"); return -1; } p = RTA_DATA(tb[TCA_IFE_PARMS]); diff --git a/tc/m_ipt.c b/tc/m_ipt.c index 1d73cb98..cc95eab7 100644 --- a/tc/m_ipt.c +++ b/tc/m_ipt.c @@ -429,6 +429,8 @@ print_ipt(struct action_util *au, FILE * f, struct rtattr *arg) { struct rtattr *tb[TCA_IPT_MAX + 1]; struct ipt_entry_target *t = NULL; + struct xtables_target *m; + __u32 hook; if (arg == NULL) return -1; @@ -440,70 +442,68 @@ print_ipt(struct action_util *au, FILE * f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_IPT_MAX, arg); if (tb[TCA_IPT_TABLE] == NULL) { - fprintf(f, "[NULL ipt table name ] assuming mangle "); + fprintf(stderr, "Missing ipt table name, assuming mangle\n"); } else { fprintf(f, "tablename: %s ", rta_getattr_str(tb[TCA_IPT_TABLE])); } if (tb[TCA_IPT_HOOK] == NULL) { - fprintf(f, "[NULL ipt hook name ]\n "); + fprintf(stderr, "Missing ipt hook name\n "); return -1; - } else { - __u32 hook; - - hook = rta_getattr_u32(tb[TCA_IPT_HOOK]); - fprintf(f, " hook: %s\n", ipthooks[hook]); } + hook = rta_getattr_u32(tb[TCA_IPT_HOOK]); + fprintf(f, " hook: %s\n", ipthooks[hook]); + if (tb[TCA_IPT_TARG] == NULL) { - fprintf(f, "\t[NULL ipt target parameters ]\n"); + fprintf(stderr, "Missing ipt target parameters\n"); return -1; - } else { - struct xtables_target *m = NULL; + } - t = RTA_DATA(tb[TCA_IPT_TARG]); - m = get_target_name(t->u.user.name); - if (m != NULL) { - if (build_st(m, t) < 0) { - fprintf(stderr, " %s error\n", m->name); - return -1; - } - opts = - merge_options(opts, m->extra_opts, - &m->option_offset); - } else { - fprintf(stderr, " failed to find target %s\n\n", - t->u.user.name); + t = RTA_DATA(tb[TCA_IPT_TARG]); + m = get_target_name(t->u.user.name); + if (m != NULL) { + if (build_st(m, t) < 0) { + fprintf(stderr, " %s error\n", m->name); return -1; } - fprintf(f, "\ttarget "); - m->print(NULL, m->t, 0); - if (tb[TCA_IPT_INDEX] == NULL) { - fprintf(f, " [NULL ipt target index ]\n"); - } else { - __u32 index; - - index = rta_getattr_u32(tb[TCA_IPT_INDEX]); - fprintf(f, "\n\tindex %u", index); - } - - if (tb[TCA_IPT_CNT]) { - struct tc_cnt *c = RTA_DATA(tb[TCA_IPT_CNT]); - - fprintf(f, " ref %d bind %d", c->refcnt, c->bindcnt); - } - if (show_stats) { - if (tb[TCA_IPT_TM]) { - struct tcf_t *tm = RTA_DATA(tb[TCA_IPT_TM]); - - print_tm(f, tm); - } - } - fprintf(f, "\n"); + opts = + merge_options(opts, m->extra_opts, + &m->option_offset); + } else { + fprintf(stderr, " failed to find target %s\n\n", + t->u.user.name); + return -1; } + + fprintf(f, "\ttarget "); + m->print(NULL, m->t, 0); + if (tb[TCA_IPT_INDEX] == NULL) { + fprintf(stderr, "Missing ipt target index\n"); + } else { + __u32 index; + + index = rta_getattr_u32(tb[TCA_IPT_INDEX]); + fprintf(f, "\n\tindex %u", index); + } + + if (tb[TCA_IPT_CNT]) { + struct tc_cnt *c = RTA_DATA(tb[TCA_IPT_CNT]); + + fprintf(f, " ref %d bind %d", c->refcnt, c->bindcnt); + } + if (show_stats) { + if (tb[TCA_IPT_TM]) { + struct tcf_t *tm = RTA_DATA(tb[TCA_IPT_TM]); + + print_tm(f, tm); + } + } + fprintf(f, "\n"); + free_opts(opts); return 0; diff --git a/tc/m_mirred.c b/tc/m_mirred.c index 23ba638a..13209523 100644 --- a/tc/m_mirred.c +++ b/tc/m_mirred.c @@ -287,7 +287,7 @@ print_mirred(struct action_util *au, FILE *f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_MIRRED_MAX, arg); if (tb[TCA_MIRRED_PARMS] == NULL) { - print_string(PRINT_FP, NULL, "%s", "[NULL mirred parameters]"); + fprintf(stderr, "Missing mirred parameters\n"); return -1; } p = RTA_DATA(tb[TCA_MIRRED_PARMS]); diff --git a/tc/m_nat.c b/tc/m_nat.c index ee0b7520..c4b02a83 100644 --- a/tc/m_nat.c +++ b/tc/m_nat.c @@ -152,7 +152,7 @@ print_nat(struct action_util *au, FILE * f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_NAT_MAX, arg); if (tb[TCA_NAT_PARMS] == NULL) { - print_string(PRINT_FP, NULL, "%s", "[NULL nat parameters]"); + fprintf(stderr, "Missing nat parameters\n"); return -1; } sel = RTA_DATA(tb[TCA_NAT_PARMS]); diff --git a/tc/m_pedit.c b/tc/m_pedit.c index 8eb15f4b..1cd2d162 100644 --- a/tc/m_pedit.c +++ b/tc/m_pedit.c @@ -742,7 +742,7 @@ static int print_pedit(struct action_util *au, FILE *f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_PEDIT_MAX, arg); if (!tb[TCA_PEDIT_PARMS] && !tb[TCA_PEDIT_PARMS_EX]) { - fprintf(f, "[NULL pedit parameters]"); + fprintf(stderr, "Missing pedit parameters\n"); return -1; } diff --git a/tc/m_sample.c b/tc/m_sample.c index 3c840d3f..c068e632 100644 --- a/tc/m_sample.c +++ b/tc/m_sample.c @@ -150,7 +150,7 @@ static int print_sample(struct action_util *au, FILE *f, struct rtattr *arg) if (!tb[TCA_SAMPLE_PARMS] || !tb[TCA_SAMPLE_RATE] || !tb[TCA_SAMPLE_PSAMPLE_GROUP]) { - print_string(PRINT_FP, NULL, "%s", "[NULL sample parameters]"); + fprintf(stderr, "Missing sample parameters\n"); return -1; } p = RTA_DATA(tb[TCA_SAMPLE_PARMS]); diff --git a/tc/m_simple.c b/tc/m_simple.c index 34d1bab4..49e25047 100644 --- a/tc/m_simple.c +++ b/tc/m_simple.c @@ -171,13 +171,13 @@ static int print_simple(struct action_util *au, FILE *f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_DEF_MAX, arg); if (tb[TCA_DEF_PARMS] == NULL) { - fprintf(f, "[NULL simple parameters]"); + fprintf(stderr, "Missing simple parameters\n"); return -1; } sel = RTA_DATA(tb[TCA_DEF_PARMS]); if (tb[TCA_DEF_DATA] == NULL) { - fprintf(f, "[missing simple string]"); + fprintf(stderr, "Missing simple string\n"); return -1; } diff --git a/tc/m_skbedit.c b/tc/m_skbedit.c index 70e3a2e4..761cad58 100644 --- a/tc/m_skbedit.c +++ b/tc/m_skbedit.c @@ -196,7 +196,7 @@ static int print_skbedit(struct action_util *au, FILE *f, struct rtattr *arg) SPRINT_BUF(b1); __u32 priority; __u16 ptype; - struct tc_skbedit *p = NULL; + struct tc_skbedit *p; if (arg == NULL) return -1; @@ -204,7 +204,7 @@ static int print_skbedit(struct action_util *au, FILE *f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_SKBEDIT_MAX, arg); if (tb[TCA_SKBEDIT_PARMS] == NULL) { - print_string(PRINT_FP, NULL, "%s", "[NULL skbedit parameters]"); + fprintf(stderr, "Missing skbedit parameters\n"); return -1; } p = RTA_DATA(tb[TCA_SKBEDIT_PARMS]); diff --git a/tc/m_skbmod.c b/tc/m_skbmod.c index 2dd1bb7e..d38a5c19 100644 --- a/tc/m_skbmod.c +++ b/tc/m_skbmod.c @@ -161,7 +161,7 @@ static int parse_skbmod(struct action_util *a, int *argc_p, char ***argv_p, static int print_skbmod(struct action_util *au, FILE *f, struct rtattr *arg) { - struct tc_skbmod *p = NULL; + struct tc_skbmod *p; struct rtattr *tb[TCA_SKBMOD_MAX + 1]; __u16 skbmod_etype = 0; int has_optional = 0; @@ -174,7 +174,7 @@ static int print_skbmod(struct action_util *au, FILE *f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_SKBMOD_MAX, arg); if (tb[TCA_SKBMOD_PARMS] == NULL) { - fprintf(f, "[NULL skbmod parameters]"); + fprintf(stderr, "Missing skbmod parameters\n"); return -1; } diff --git a/tc/m_tunnel_key.c b/tc/m_tunnel_key.c index fd699017..4e65e444 100644 --- a/tc/m_tunnel_key.c +++ b/tc/m_tunnel_key.c @@ -493,8 +493,7 @@ static int print_tunnel_key(struct action_util *au, FILE *f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_TUNNEL_KEY_MAX, arg); if (!tb[TCA_TUNNEL_KEY_PARMS]) { - print_string(PRINT_FP, NULL, "%s", - "[NULL tunnel_key parameters]"); + fprintf(stderr, "Missing tunnel_key parameters\n"); return -1; } parm = RTA_DATA(tb[TCA_TUNNEL_KEY_PARMS]); diff --git a/tc/m_vlan.c b/tc/m_vlan.c index 412f6aa1..9c8071e9 100644 --- a/tc/m_vlan.c +++ b/tc/m_vlan.c @@ -188,7 +188,7 @@ static int print_vlan(struct action_util *au, FILE *f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_VLAN_MAX, arg); if (!tb[TCA_VLAN_PARMS]) { - print_string(PRINT_FP, NULL, "%s", "[NULL vlan parameters]"); + fprintf(stderr, "Missing vlanparameters\n"); return -1; } parm = RTA_DATA(tb[TCA_VLAN_PARMS]); diff --git a/tc/m_xt.c b/tc/m_xt.c index 29574bd4..bf0db2be 100644 --- a/tc/m_xt.c +++ b/tc/m_xt.c @@ -317,6 +317,7 @@ print_ipt(struct action_util *au, FILE *f, struct rtattr *arg) struct xtables_target *m; struct rtattr *tb[TCA_IPT_MAX + 1]; struct xt_entry_target *t = NULL; + __u32 hook; if (arg == NULL) return -1; @@ -330,27 +331,25 @@ print_ipt(struct action_util *au, FILE *f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_IPT_MAX, arg); if (tb[TCA_IPT_TABLE] == NULL) { - fprintf(f, "[NULL ipt table name ] assuming mangle "); + fprintf(stderr, "Missing ipt table name, assuming mangle\n"); } else { fprintf(f, "tablename: %s ", rta_getattr_str(tb[TCA_IPT_TABLE])); } if (tb[TCA_IPT_HOOK] == NULL) { - fprintf(f, "[NULL ipt hook name ]\n "); + fprintf(stderr, "Missing ipt hook name\n "); return -1; - } else { - __u32 hook; - - hook = rta_getattr_u32(tb[TCA_IPT_HOOK]); - fprintf(f, " hook: %s\n", ipthooks[hook]); } if (tb[TCA_IPT_TARG] == NULL) { - fprintf(f, "\t[NULL ipt target parameters ]\n"); + fprintf(stderr, "Missing ipt target parameters\n"); return -1; } + hook = rta_getattr_u32(tb[TCA_IPT_HOOK]); + fprintf(f, " hook: %s\n", ipthooks[hook]); + t = RTA_DATA(tb[TCA_IPT_TARG]); m = xtables_find_target(t->u.user.name, XTF_TRY_LOAD); if (!m) { diff --git a/tc/m_xt_old.c b/tc/m_xt_old.c index 25d36778..6a4509a9 100644 --- a/tc/m_xt_old.c +++ b/tc/m_xt_old.c @@ -354,6 +354,8 @@ print_ipt(struct action_util *au, FILE * f, struct rtattr *arg) { struct rtattr *tb[TCA_IPT_MAX + 1]; struct xt_entry_target *t = NULL; + struct xtables_target *m; + __u32 hook; if (arg == NULL) return -1; @@ -363,70 +365,66 @@ print_ipt(struct action_util *au, FILE * f, struct rtattr *arg) parse_rtattr_nested(tb, TCA_IPT_MAX, arg); if (tb[TCA_IPT_TABLE] == NULL) { - fprintf(f, "[NULL ipt table name ] assuming mangle "); + fprintf(stderr, "Missing ipt table name, assuming mangle\n"); } else { fprintf(f, "tablename: %s ", rta_getattr_str(tb[TCA_IPT_TABLE])); } if (tb[TCA_IPT_HOOK] == NULL) { - fprintf(f, "[NULL ipt hook name ]\n "); + fprintf(stderr, "Missing ipt hook name\n"); return -1; - } else { - __u32 hook; - - hook = rta_getattr_u32(tb[TCA_IPT_HOOK]); - fprintf(f, " hook: %s\n", ipthooks[hook]); } if (tb[TCA_IPT_TARG] == NULL) { - fprintf(f, "\t[NULL ipt target parameters ]\n"); + fprintf(stderr, "Missing ipt target parameters\n"); return -1; - } else { - struct xtables_target *m = NULL; + } - t = RTA_DATA(tb[TCA_IPT_TARG]); - m = find_target(t->u.user.name, TRY_LOAD); - if (m != NULL) { - if (build_st(m, t) < 0) { - fprintf(stderr, " %s error\n", m->name); - return -1; - } + hook = rta_getattr_u32(tb[TCA_IPT_HOOK]); + fprintf(f, " hook: %s\n", ipthooks[hook]); - opts = - merge_options(opts, m->extra_opts, - &m->option_offset); - } else { - fprintf(stderr, " failed to find target %s\n\n", - t->u.user.name); + t = RTA_DATA(tb[TCA_IPT_TARG]); + m = find_target(t->u.user.name, TRY_LOAD); + if (m != NULL) { + if (build_st(m, t) < 0) { + fprintf(stderr, " %s error\n", m->name); return -1; } - fprintf(f, "\ttarget "); - m->print(NULL, m->t, 0); - if (tb[TCA_IPT_INDEX] == NULL) { - fprintf(f, " [NULL ipt target index ]\n"); - } else { - __u32 index; - - index = rta_getattr_u32(tb[TCA_IPT_INDEX]); - fprintf(f, "\n\tindex %u", index); - } - - if (tb[TCA_IPT_CNT]) { - struct tc_cnt *c = RTA_DATA(tb[TCA_IPT_CNT]); - - fprintf(f, " ref %d bind %d", c->refcnt, c->bindcnt); - } - if (show_stats) { - if (tb[TCA_IPT_TM]) { - struct tcf_t *tm = RTA_DATA(tb[TCA_IPT_TM]); - - print_tm(f, tm); - } - } - fprintf(f, "\n"); + opts = + merge_options(opts, m->extra_opts, + &m->option_offset); + } else { + fprintf(stderr, " failed to find target %s\n\n", + t->u.user.name); + return -1; } + fprintf(f, "\ttarget "); + m->print(NULL, m->t, 0); + if (tb[TCA_IPT_INDEX] == NULL) { + fprintf(f, " [NULL ipt target index ]\n"); + } else { + __u32 index; + + index = rta_getattr_u32(tb[TCA_IPT_INDEX]); + fprintf(f, "\n\tindex %u", index); + } + + if (tb[TCA_IPT_CNT]) { + struct tc_cnt *c = RTA_DATA(tb[TCA_IPT_CNT]); + + fprintf(f, " ref %d bind %d", c->refcnt, c->bindcnt); + } + if (show_stats) { + if (tb[TCA_IPT_TM]) { + struct tcf_t *tm = RTA_DATA(tb[TCA_IPT_TM]); + + print_tm(f, tm); + } + } + fprintf(f, "\n"); + free_opts(opts); return 0; diff --git a/tc/tc_filter.c b/tc/tc_filter.c index e5c7bc46..cd78c244 100644 --- a/tc/tc_filter.c +++ b/tc/tc_filter.c @@ -375,8 +375,7 @@ int print_filter(struct nlmsghdr *n, void *arg) if (q) q->print_fopt(q, fp, tb[TCA_OPTIONS], t->tcm_handle); else - print_string(PRINT_FP, NULL, - "[cannot parse parameters]", NULL); + fprintf(stderr, "cannot parse option parameters\n"); close_json_object(); } } diff --git a/tc/tc_qdisc.c b/tc/tc_qdisc.c index e573a1df..17e39983 100644 --- a/tc/tc_qdisc.c +++ b/tc/tc_qdisc.c @@ -313,8 +313,7 @@ int print_qdisc(struct nlmsghdr *n, void *arg) if (q) q->print_qopt(q, fp, tb[TCA_OPTIONS]); else - print_string(PRINT_FP, NULL, - "[cannot parse qdisc parameters]", NULL); + fprintf(stderr, "Cannot parse qdisc parameters\n"); } close_json_object();