Thomas Graf wrote:
> @@ -242,10 +239,10 @@ static int fib4_rule_compare(struct fib_
>               return 0;
>  #endif
>  
> -     if (tb[FRA_SRC] && (rule4->src != nla_get_be32(tb[FRA_SRC])))
> +     if (frh->src_len && (rule4->src != nla_get_be32(tb[FRA_SRC])))
>               return 0;
>  
> -     if (tb[FRA_DST] && (rule4->dst != nla_get_be32(tb[FRA_DST])))
> +     if (frh->dst_len && (rule4->dst != nla_get_be32(tb[FRA_DST])))
>               return 0;
>  


The presence of the attributes when src_len/dst_len is non-zero
is only verified in fib_newrule, so this looks like it might crash
when something broken sets src_len/dst_len to a non-zero value
without actually adding the attributes.

Other than that it looks fine.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to