]> rtime.felk.cvut.cz Git - lisovros/iproute2_canprio.git/blobdiff - tc/f_flow.c
Convert to use rta_getattr_ functions
[lisovros/iproute2_canprio.git] / tc / f_flow.c
index 574253d92bf37b1aedc0ccb8e744b119ab8b598b..7d4bb7aff65dee96c008650bb1c353f5257e6dd9 100644 (file)
@@ -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]);