diff options
Diffstat (limited to 'net/ipv4/icmp.c')
| -rw-r--r-- | net/ipv4/icmp.c | 6 | 
1 files changed, 4 insertions, 2 deletions
diff --git a/net/ipv4/icmp.c b/net/ipv4/icmp.c index 4b4c2bcd15d..f3d339f728b 100644 --- a/net/ipv4/icmp.c +++ b/net/ipv4/icmp.c @@ -74,6 +74,7 @@  #include <linux/netdevice.h>  #include <linux/string.h>  #include <linux/netfilter_ipv4.h> +#include <linux/slab.h>  #include <net/snmp.h>  #include <net/ip.h>  #include <net/route.h> @@ -330,9 +331,10 @@ static void icmp_push_reply(struct icmp_bxm *icmp_param,  	if (ip_append_data(sk, icmp_glue_bits, icmp_param,  			   icmp_param->data_len+icmp_param->head_len,  			   icmp_param->head_len, -			   ipc, rt, MSG_DONTWAIT) < 0) +			   ipc, rt, MSG_DONTWAIT) < 0) { +		ICMP_INC_STATS_BH(sock_net(sk), ICMP_MIB_OUTERRORS);  		ip_flush_pending_frames(sk); -	else if ((skb = skb_peek(&sk->sk_write_queue)) != NULL) { +	} else if ((skb = skb_peek(&sk->sk_write_queue)) != NULL) {  		struct icmphdr *icmph = icmp_hdr(skb);  		__wsum csum = 0;  		struct sk_buff *skb1;  |