aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/xfrm/xfrm_output.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/net/xfrm/xfrm_output.c b/net/xfrm/xfrm_output.c
index 09514449fe8a..d73003cb2c0e 100644
--- a/net/xfrm/xfrm_output.c
+++ b/net/xfrm/xfrm_output.c
@@ -57,8 +57,11 @@ static int xfrm_output_one(struct sk_buff *skb, int err)
57 57
58 if (x->type->flags & XFRM_TYPE_REPLAY_PROT) { 58 if (x->type->flags & XFRM_TYPE_REPLAY_PROT) {
59 XFRM_SKB_CB(skb)->seq = ++x->replay.oseq; 59 XFRM_SKB_CB(skb)->seq = ++x->replay.oseq;
60 if (unlikely(x->replay.oseq == 0)) 60 if (unlikely(x->replay.oseq == 0)) {
61 x->replay.oseq--;
61 xfrm_audit_state_replay_overflow(x, skb); 62 xfrm_audit_state_replay_overflow(x, skb);
63 goto error;
64 }
62 if (xfrm_aevent_is_on()) 65 if (xfrm_aevent_is_on())
63 xfrm_replay_notify(x, XFRM_REPLAY_UPDATE); 66 xfrm_replay_notify(x, XFRM_REPLAY_UPDATE);
64 } 67 }