aboutsummaryrefslogtreecommitdiffstats
path: root/net/xfrm
diff options
context:
space:
mode:
Diffstat (limited to 'net/xfrm')
-rw-r--r--net/xfrm/xfrm_input.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/net/xfrm/xfrm_input.c b/net/xfrm/xfrm_input.c
index 99e3a9e5285e..4218164f4f5e 100644
--- a/net/xfrm/xfrm_input.c
+++ b/net/xfrm/xfrm_input.c
@@ -163,6 +163,11 @@ int xfrm_input(struct sk_buff *skb, int nexthdr, __be32 spi, int encap_type)
163 163
164 skb->sp->xvec[skb->sp->len++] = x; 164 skb->sp->xvec[skb->sp->len++] = x;
165 165
166 if (xfrm_tunnel_check(skb, x, family)) {
167 XFRM_INC_STATS(net, LINUX_MIB_XFRMINSTATEMODEERROR);
168 goto drop;
169 }
170
166 spin_lock(&x->lock); 171 spin_lock(&x->lock);
167 if (unlikely(x->km.state == XFRM_STATE_ACQ)) { 172 if (unlikely(x->km.state == XFRM_STATE_ACQ)) {
168 XFRM_INC_STATS(net, LINUX_MIB_XFRMACQUIREERROR); 173 XFRM_INC_STATS(net, LINUX_MIB_XFRMACQUIREERROR);