diff options
Diffstat (limited to 'net/ipv4/raw.c')
-rw-r--r-- | net/ipv4/raw.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/ipv4/raw.c b/net/ipv4/raw.c index 87e9c1618100..67e5e3c035c1 100644 --- a/net/ipv4/raw.c +++ b/net/ipv4/raw.c | |||
@@ -291,7 +291,9 @@ static int raw_send_hdrinc(struct sock *sk, void *from, size_t length, | |||
291 | skb->priority = sk->sk_priority; | 291 | skb->priority = sk->sk_priority; |
292 | skb->dst = dst_clone(&rt->u.dst); | 292 | skb->dst = dst_clone(&rt->u.dst); |
293 | 293 | ||
294 | skb->nh.iph = iph = (struct iphdr *)skb_put(skb, length); | 294 | skb_reset_network_header(skb); |
295 | iph = skb->nh.iph; | ||
296 | skb_put(skb, length); | ||
295 | 297 | ||
296 | skb->ip_summed = CHECKSUM_NONE; | 298 | skb->ip_summed = CHECKSUM_NONE; |
297 | 299 | ||