Lines Matching defs:replay_esn

15 	struct xfrm_replay_state_esn *replay_esn = x->replay_esn;
21 seq_hi = replay_esn->seq_hi;
22 bottom = replay_esn->seq - replay_esn->replay_window + 1;
24 if (likely(replay_esn->seq >= replay_esn->replay_window - 1)) {
192 struct xfrm_replay_state_esn *replay_esn = x->replay_esn;
196 XFRM_SKB_CB(skb)->seq.output.low = ++replay_esn->oseq;
198 if (unlikely(replay_esn->oseq == 0) &&
200 replay_esn->oseq--;
217 struct xfrm_replay_state_esn *replay_esn = x->replay_esn;
220 u32 diff = replay_esn->seq - seq;
222 if (!replay_esn->replay_window)
228 if (likely(seq > replay_esn->seq))
231 if (diff >= replay_esn->replay_window) {
236 pos = (replay_esn->seq - 1) % replay_esn->replay_window;
239 bitnr = (pos - diff) % replay_esn->replay_window;
241 bitnr = replay_esn->replay_window - (diff - pos);
245 if (replay_esn->bmp[nr] & (1U << bitnr))
261 struct xfrm_replay_state_esn *replay_esn = x->replay_esn;
265 if (!replay_esn->replay_window)
268 pos = (replay_esn->seq - 1) % replay_esn->replay_window;
270 if (seq > replay_esn->seq) {
271 diff = seq - replay_esn->seq;
273 if (diff < replay_esn->replay_window) {
275 bitnr = (pos + i) % replay_esn->replay_window;
278 replay_esn->bmp[nr] &= ~(1U << bitnr);
281 nr = (replay_esn->replay_window - 1) >> 5;
283 replay_esn->bmp[i] = 0;
286 bitnr = (pos + diff) % replay_esn->replay_window;
287 replay_esn->seq = seq;
289 diff = replay_esn->seq - seq;
292 bitnr = (pos - diff) % replay_esn->replay_window;
294 bitnr = replay_esn->replay_window - (diff - pos);
299 replay_esn->bmp[nr] |= (1U << bitnr);
308 struct xfrm_replay_state_esn *replay_esn = x->replay_esn;
324 ((replay_esn->seq - preplay_esn->seq < x->replay_maxdiff) &&
325 (replay_esn->oseq - preplay_esn->oseq
336 if (memcmp(x->replay_esn, x->preplay_esn,
337 xfrm_replay_state_esn_len(replay_esn)) == 0) {
345 memcpy(x->preplay_esn, x->replay_esn,
346 xfrm_replay_state_esn_len(replay_esn));
360 struct xfrm_replay_state_esn *replay_esn = x->replay_esn;
376 if (replay_esn->seq_hi == preplay_esn->seq_hi)
377 seq_diff = replay_esn->seq - preplay_esn->seq;
379 seq_diff = ~preplay_esn->seq + replay_esn->seq
382 if (replay_esn->oseq_hi == preplay_esn->oseq_hi)
383 oseq_diff = replay_esn->oseq
387 + replay_esn->oseq + 1;
402 if (memcmp(x->replay_esn, x->preplay_esn,
403 xfrm_replay_state_esn_len(replay_esn)) == 0) {
411 memcpy(x->preplay_esn, x->replay_esn,
412 xfrm_replay_state_esn_len(replay_esn));
425 struct xfrm_replay_state_esn *replay_esn = x->replay_esn;
429 XFRM_SKB_CB(skb)->seq.output.low = ++replay_esn->oseq;
430 XFRM_SKB_CB(skb)->seq.output.hi = replay_esn->oseq_hi;
432 if (unlikely(replay_esn->oseq == 0)) {
433 XFRM_SKB_CB(skb)->seq.output.hi = ++replay_esn->oseq_hi;
435 if (replay_esn->oseq_hi == 0) {
436 replay_esn->oseq--;
437 replay_esn->oseq_hi--;
456 struct xfrm_replay_state_esn *replay_esn = x->replay_esn;
459 u32 wsize = replay_esn->replay_window;
460 u32 top = replay_esn->seq;
466 if (unlikely(seq == 0 && replay_esn->seq_hi == 0 &&
467 (replay_esn->seq < replay_esn->replay_window - 1)))
484 if (diff >= replay_esn->replay_window) {
489 pos = (replay_esn->seq - 1) % replay_esn->replay_window;
492 bitnr = (pos - diff) % replay_esn->replay_window;
494 bitnr = replay_esn->replay_window - (diff - pos);
498 if (replay_esn->bmp[nr] & (1U << bitnr))
558 struct xfrm_replay_state_esn *replay_esn = x->replay_esn;
560 if (!replay_esn->replay_window)
564 pos = (replay_esn->seq - 1) % replay_esn->replay_window;
566 wrap = seq_hi - replay_esn->seq_hi;
568 if ((!wrap && seq > replay_esn->seq) || wrap > 0) {
570 diff = seq - replay_esn->seq;
572 diff = ~replay_esn->seq + seq + 1;
574 if (diff < replay_esn->replay_window) {
576 bitnr = (pos + i) % replay_esn->replay_window;
579 replay_esn->bmp[nr] &= ~(1U << bitnr);
582 nr = (replay_esn->replay_window - 1) >> 5;
584 replay_esn->bmp[i] = 0;
587 bitnr = (pos + diff) % replay_esn->replay_window;
588 replay_esn->seq = seq;
591 replay_esn->seq_hi++;
593 diff = replay_esn->seq - seq;
596 bitnr = (pos - diff) % replay_esn->replay_window;
598 bitnr = replay_esn->replay_window - (diff - pos);
605 replay_esn->bmp[nr] |= (1U << bitnr);
655 struct xfrm_replay_state_esn *replay_esn = x->replay_esn;
657 __u32 oseq = replay_esn->oseq;
674 if (unlikely(oseq < replay_esn->oseq) &&
681 replay_esn->oseq = oseq;
695 struct xfrm_replay_state_esn *replay_esn = x->replay_esn;
697 __u32 oseq = replay_esn->oseq;
698 __u32 oseq_hi = replay_esn->oseq_hi;
717 if (unlikely(xo->seq.low < replay_esn->oseq)) {
720 replay_esn->oseq_hi = oseq_hi;
721 if (replay_esn->oseq_hi == 0) {
722 replay_esn->oseq--;
723 replay_esn->oseq_hi--;
731 replay_esn->oseq = oseq;
771 struct xfrm_replay_state_esn *replay_esn = x->replay_esn;
773 if (replay_esn) {
774 if (replay_esn->replay_window >
775 replay_esn->bmp_len * sizeof(__u32) * 8) {
781 if (replay_esn->replay_window == 0) {