X-Git-Url: http://rtime.felk.cvut.cz/gitweb/lisovros/iproute2_canprio.git/blobdiff_plain/49b730d7b237a3c0b2361e77877228199f32cf9c..ff24746cca1ef0c92d46614158e6672acd6b63d3:/tc/f_flow.c diff --git a/tc/f_flow.c b/tc/f_flow.c index 574253d..7d4bb7a 100644 --- a/tc/f_flow.c +++ b/tc/f_flow.c @@ -282,7 +282,7 @@ static int flow_print_opt(struct filter_util *fu, FILE *f, struct rtattr *opt, fprintf(f, "handle 0x%x ", handle); if (tb[TCA_FLOW_MODE]) { - __u32 mode = *(__u32 *)RTA_DATA(tb[TCA_FLOW_MODE]); + __u32 mode = rta_getattr_u32(tb[TCA_FLOW_MODE]); switch (mode) { case FLOW_MODE_MAP: @@ -295,7 +295,7 @@ static int flow_print_opt(struct filter_util *fu, FILE *f, struct rtattr *opt, } if (tb[TCA_FLOW_KEYS]) { - __u32 keymask = *(__u32 *)RTA_DATA(tb[TCA_FLOW_KEYS]); + __u32 keymask = rta_getattr_u32(tb[TCA_FLOW_KEYS]); char *sep = ""; fprintf(f, "keys "); @@ -309,9 +309,9 @@ static int flow_print_opt(struct filter_util *fu, FILE *f, struct rtattr *opt, } if (tb[TCA_FLOW_MASK]) - mask = *(__u32 *)RTA_DATA(tb[TCA_FLOW_MASK]); + mask = rta_getattr_u32(tb[TCA_FLOW_MASK]); if (tb[TCA_FLOW_XOR]) - val = *(__u32 *)RTA_DATA(tb[TCA_FLOW_XOR]); + val = rta_getattr_u32(tb[TCA_FLOW_XOR]); if (mask != ~0 || val != 0) { __u32 or = (mask & val) ^ val; @@ -327,21 +327,21 @@ static int flow_print_opt(struct filter_util *fu, FILE *f, struct rtattr *opt, if (tb[TCA_FLOW_RSHIFT]) fprintf(f, "rshift %u ", - *(__u32 *)RTA_DATA(tb[TCA_FLOW_RSHIFT])); + rta_getattr_u32(tb[TCA_FLOW_RSHIFT])); if (tb[TCA_FLOW_ADDEND]) fprintf(f, "addend 0x%x ", - *(__u32 *)RTA_DATA(tb[TCA_FLOW_ADDEND])); + rta_getattr_u32(tb[TCA_FLOW_ADDEND])); if (tb[TCA_FLOW_DIVISOR]) fprintf(f, "divisor %u ", - *(__u32 *)RTA_DATA(tb[TCA_FLOW_DIVISOR])); + rta_getattr_u32(tb[TCA_FLOW_DIVISOR])); if (tb[TCA_FLOW_BASECLASS]) fprintf(f, "baseclass %s ", - sprint_tc_classid(*(__u32 *)RTA_DATA(tb[TCA_FLOW_BASECLASS]), b1)); + sprint_tc_classid(rta_getattr_u32(tb[TCA_FLOW_BASECLASS]), b1)); if (tb[TCA_FLOW_PERTURB]) fprintf(f, "perturb %usec ", - *(__u32 *)RTA_DATA(tb[TCA_FLOW_PERTURB])); + rta_getattr_u32(tb[TCA_FLOW_PERTURB])); if (tb[TCA_FLOW_EMATCHES]) print_ematch(f, tb[TCA_FLOW_EMATCHES]);