|
@@ -238,6 +238,7 @@ int ip6_xmit(struct sock *sk, struct sk_buff *skb, struct flowi6 *fl6,
|
|
|
hdr->saddr = fl6->saddr;
|
|
|
hdr->daddr = *first_hop;
|
|
|
|
|
|
+ skb->protocol = htons(ETH_P_IPV6);
|
|
|
skb->priority = sk->sk_priority;
|
|
|
skb->mark = sk->sk_mark;
|
|
|
|
|
@@ -1057,6 +1058,7 @@ static inline int ip6_ufo_append_data(struct sock *sk,
|
|
|
/* initialize protocol header pointer */
|
|
|
skb->transport_header = skb->network_header + fragheaderlen;
|
|
|
|
|
|
+ skb->protocol = htons(ETH_P_IPV6);
|
|
|
skb->ip_summed = CHECKSUM_PARTIAL;
|
|
|
skb->csum = 0;
|
|
|
}
|
|
@@ -1359,6 +1361,7 @@ alloc_new_skb:
|
|
|
/*
|
|
|
* Fill in the control structures
|
|
|
*/
|
|
|
+ skb->protocol = htons(ETH_P_IPV6);
|
|
|
skb->ip_summed = CHECKSUM_NONE;
|
|
|
skb->csum = 0;
|
|
|
/* reserve for fragmentation and ipsec header */
|