diff options
Diffstat (limited to 'net/ipv4/ipcomp.c')
| -rw-r--r-- | net/ipv4/ipcomp.c | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/net/ipv4/ipcomp.c b/net/ipv4/ipcomp.c index d3ab47e19a89..9a46daed2f3c 100644 --- a/net/ipv4/ipcomp.c +++ b/net/ipv4/ipcomp.c @@ -47,9 +47,12 @@ static void ipcomp4_err(struct sk_buff *skb, u32 info)  	if (!x)  		return; -	if (icmp_hdr(skb)->type == ICMP_DEST_UNREACH) +	if (icmp_hdr(skb)->type == ICMP_DEST_UNREACH) { +		atomic_inc(&flow_cache_genid); +		rt_genid_bump(net); +  		ipv4_update_pmtu(skb, net, info, 0, 0, IPPROTO_COMP, 0); -	else +	} else  		ipv4_redirect(skb, net, 0, 0, IPPROTO_COMP, 0);  	xfrm_state_put(x);  }  |