diff --git a/net/ipv6/output_core.c b/net/ipv6/output_core.c index 1d4156ddf355..1e987e68e510 100644 --- a/net/ipv6/output_core.c +++ b/net/ipv6/output_core.c @@ -114,6 +114,8 @@ int __ip6_local_out(struct sk_buff *skb) ipv6_hdr(skb)->payload_len = htons(len); IP6CB(skb)->nhoff = offsetof(struct ipv6hdr, nexthdr); + skb->protocol = htons(ETH_P_IPV6); + return nf_hook(NFPROTO_IPV6, NF_INET_LOCAL_OUT, skb, NULL, skb_dst(skb)->dev, dst_output); }