diff options
Diffstat (limited to 'net/ipv6/seg6_local.c')
-rw-r--r-- | net/ipv6/seg6_local.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/ipv6/seg6_local.c b/net/ipv6/seg6_local.c index 60325dbfe88b..607709a8847c 100644 --- a/net/ipv6/seg6_local.c +++ b/net/ipv6/seg6_local.c | |||
@@ -28,6 +28,7 @@ | |||
28 | #include <net/addrconf.h> | 28 | #include <net/addrconf.h> |
29 | #include <net/ip6_route.h> | 29 | #include <net/ip6_route.h> |
30 | #include <net/dst_cache.h> | 30 | #include <net/dst_cache.h> |
31 | #include <net/ip_tunnels.h> | ||
31 | #ifdef CONFIG_IPV6_SEG6_HMAC | 32 | #ifdef CONFIG_IPV6_SEG6_HMAC |
32 | #include <net/seg6_hmac.h> | 33 | #include <net/seg6_hmac.h> |
33 | #endif | 34 | #endif |
@@ -135,7 +136,8 @@ static bool decap_and_validate(struct sk_buff *skb, int proto) | |||
135 | 136 | ||
136 | skb_reset_network_header(skb); | 137 | skb_reset_network_header(skb); |
137 | skb_reset_transport_header(skb); | 138 | skb_reset_transport_header(skb); |
138 | skb->encapsulation = 0; | 139 | if (iptunnel_pull_offloads(skb)) |
140 | return false; | ||
139 | 141 | ||
140 | return true; | 142 | return true; |
141 | } | 143 | } |