diff options
Diffstat (limited to 'security/selinux')
-rw-r--r-- | security/selinux/hooks.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c index 7e6c2564e74..cca09bb4650 100644 --- a/security/selinux/hooks.c +++ b/security/selinux/hooks.c | |||
@@ -3561,6 +3561,7 @@ static int selinux_parse_skb_ipv6(struct sk_buff *skb, | |||
3561 | u8 nexthdr; | 3561 | u8 nexthdr; |
3562 | int ret = -EINVAL, offset; | 3562 | int ret = -EINVAL, offset; |
3563 | struct ipv6hdr _ipv6h, *ip6; | 3563 | struct ipv6hdr _ipv6h, *ip6; |
3564 | __be16 frag_off; | ||
3564 | 3565 | ||
3565 | offset = skb_network_offset(skb); | 3566 | offset = skb_network_offset(skb); |
3566 | ip6 = skb_header_pointer(skb, offset, sizeof(_ipv6h), &_ipv6h); | 3567 | ip6 = skb_header_pointer(skb, offset, sizeof(_ipv6h), &_ipv6h); |
@@ -3573,7 +3574,7 @@ static int selinux_parse_skb_ipv6(struct sk_buff *skb, | |||
3573 | 3574 | ||
3574 | nexthdr = ip6->nexthdr; | 3575 | nexthdr = ip6->nexthdr; |
3575 | offset += sizeof(_ipv6h); | 3576 | offset += sizeof(_ipv6h); |
3576 | offset = ipv6_skip_exthdr(skb, offset, &nexthdr); | 3577 | offset = ipv6_skip_exthdr(skb, offset, &nexthdr, &frag_off); |
3577 | if (offset < 0) | 3578 | if (offset < 0) |
3578 | goto out; | 3579 | goto out; |
3579 | 3580 | ||