aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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 65bcf09251ef..b4a13178fb40 100644
--- a/net/xfrm/xfrm_input.c
+++ b/net/xfrm/xfrm_input.c
@@ -167,6 +167,11 @@ int xfrm_input(struct sk_buff *skb, int nexthdr, __be32 spi, int encap_type)
167 goto drop_unlock; 167 goto drop_unlock;
168 } 168 }
169 169
170 if ((x->encap ? x->encap->encap_type : 0) != encap_type) {
171 XFRM_INC_STATS(net, LINUX_MIB_XFRMINSTATEMISMATCH);
172 goto drop_unlock;
173 }
174
170 if (x->props.replay_window && xfrm_replay_check(x, skb, seq)) { 175 if (x->props.replay_window && xfrm_replay_check(x, skb, seq)) {
171 XFRM_INC_STATS(net, LINUX_MIB_XFRMINSTATESEQERROR); 176 XFRM_INC_STATS(net, LINUX_MIB_XFRMINSTATESEQERROR);
172 goto drop_unlock; 177 goto drop_unlock;