diff --git a/net/ipv6/output_core.c b/net/ipv6/output_core.c index 7cca8ac66fe9b07a9f91559667c057113ccc3c19..cd4252346a32d90e8e133bd985811b6241e4bcd7 100644 --- a/net/ipv6/output_core.c +++ b/net/ipv6/output_core.c @@ -155,6 +155,8 @@ int __ip6_local_out(struct net *net, struct sock *sk, struct sk_buff *skb) if (unlikely(!skb)) return 0; + skb->protocol = htons(ETH_P_IPV6); + return nf_hook(NFPROTO_IPV6, NF_INET_LOCAL_OUT, net, sk, skb, NULL, skb_dst(skb)->dev, dst_output);