diff options
Diffstat (limited to 'security')
-rw-r--r-- | security/lsm_audit.c | 3 | ||||
-rw-r--r-- | security/selinux/hooks.c | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/security/lsm_audit.c b/security/lsm_audit.c index 199616bb68d3..7bd6f138236b 100644 --- a/security/lsm_audit.c +++ b/security/lsm_audit.c | |||
@@ -114,6 +114,7 @@ int ipv6_skb_to_auditdata(struct sk_buff *skb, | |||
114 | int offset, ret = 0; | 114 | int offset, ret = 0; |
115 | struct ipv6hdr *ip6; | 115 | struct ipv6hdr *ip6; |
116 | u8 nexthdr; | 116 | u8 nexthdr; |
117 | __be16 frag_off; | ||
117 | 118 | ||
118 | ip6 = ipv6_hdr(skb); | 119 | ip6 = ipv6_hdr(skb); |
119 | if (ip6 == NULL) | 120 | if (ip6 == NULL) |
@@ -126,7 +127,7 @@ int ipv6_skb_to_auditdata(struct sk_buff *skb, | |||
126 | offset = skb_network_offset(skb); | 127 | offset = skb_network_offset(skb); |
127 | offset += sizeof(*ip6); | 128 | offset += sizeof(*ip6); |
128 | nexthdr = ip6->nexthdr; | 129 | nexthdr = ip6->nexthdr; |
129 | offset = ipv6_skip_exthdr(skb, offset, &nexthdr); | 130 | offset = ipv6_skip_exthdr(skb, offset, &nexthdr, &frag_off); |
130 | if (offset < 0) | 131 | if (offset < 0) |
131 | return 0; | 132 | return 0; |
132 | if (proto) | 133 | if (proto) |
diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c index 7e6c2564e741..cca09bb46502 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 | ||