flow_dissector: fix ipv6 dst, hop-by-hop and routing ext hdrs
authorEric Dumazet <edumazet@google.com>
Sat, 13 Jun 2015 02:31:32 +0000 (19:31 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sat, 13 Jun 2015 04:58:49 +0000 (21:58 -0700)
commit1e98a0f08abddde87f0f93237f10629ecb4880ef
treed076e4b8b38b5cc82e865986ceb736585dca2374
parent5b173cf92729b02ff8207abd85bfcbbef3443b94
flow_dissector: fix ipv6 dst, hop-by-hop and routing ext hdrs

__skb_header_pointer() returns a pointer that must be checked.

Fixes infinite loop reported by Alexei, and add __must_check to
catch these errors earlier.

Fixes: 6a74fcf426f5 ("flow_dissector: add support for dst, hop-by-hop and routing ext hdrs")
Reported-by: Alexei Starovoitov <alexei.starovoitov@gmail.com>
Tested-by: Alexei Starovoitov <alexei.starovoitov@gmail.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Acked-by: Tom Herbert <tom@herbertland.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/skbuff.h
net/core/flow_dissector.c