aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4/ip_sockglue.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/ipv4/ip_sockglue.c')
-rw-r--r--net/ipv4/ip_sockglue.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/net/ipv4/ip_sockglue.c b/net/ipv4/ip_sockglue.c
index c5e41644c80..f8ab654b6a3 100644
--- a/net/ipv4/ip_sockglue.c
+++ b/net/ipv4/ip_sockglue.c
@@ -296,8 +296,9 @@ void ip_local_error(struct sock *sk, int err, __be32 daddr, __be16 port, u32 inf
296 if (!skb) 296 if (!skb)
297 return; 297 return;
298 298
299 iph = (struct iphdr*)skb_put(skb, sizeof(struct iphdr)); 299 skb_put(skb, sizeof(struct iphdr));
300 skb->nh.iph = iph; 300 skb_reset_network_header(skb);
301 iph = skb->nh.iph;
301 iph->daddr = daddr; 302 iph->daddr = daddr;
302 303
303 serr = SKB_EXT_ERR(skb); 304 serr = SKB_EXT_ERR(skb);