diff options
Diffstat (limited to 'kernel/net/ipv6/exthdrs_core.c')
-rw-r--r-- | kernel/net/ipv6/exthdrs_core.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/kernel/net/ipv6/exthdrs_core.c b/kernel/net/ipv6/exthdrs_core.c index 5c5d23e59..9508a20fb 100644 --- a/kernel/net/ipv6/exthdrs_core.c +++ b/kernel/net/ipv6/exthdrs_core.c @@ -257,7 +257,11 @@ int ipv6_find_hdr(const struct sk_buff *skb, unsigned int *offset, *fragoff = _frag_off; return hp->nexthdr; } - return -ENOENT; + if (!found) + return -ENOENT; + if (fragoff) + *fragoff = _frag_off; + break; } hdrlen = 8; } else if (nexthdr == NEXTHDR_AUTH) { |