Lines Matching +full:counter +full:- +full:2
1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (C) 2015-2019 Jason A. Donenfeld <Jason@zx2c4.com>. All Rights Reserved.
9 struct noise_replay_counter *counter; in wg_packet_counter_selftest() local
13 counter = kmalloc(sizeof(*counter), GFP_KERNEL); in wg_packet_counter_selftest()
14 if (unlikely(!counter)) { in wg_packet_counter_selftest()
15 pr_err("nonce counter self-test malloc: FAIL\n"); in wg_packet_counter_selftest()
20 memset(counter, 0, sizeof(*counter)); \ in wg_packet_counter_selftest()
21 spin_lock_init(&counter->lock); \ in wg_packet_counter_selftest()
26 if (counter_validate(counter, n) != (v)) { \ in wg_packet_counter_selftest()
27 pr_err("nonce counter self-test %u: FAIL\n", \ in wg_packet_counter_selftest()
35 /* 2 */ T(1, true); in wg_packet_counter_selftest()
42 /* 9 */ T(T_LIM - 1, true); in wg_packet_counter_selftest()
43 /* 10 */ T(T_LIM - 1, false); in wg_packet_counter_selftest()
44 /* 11 */ T(T_LIM - 2, true); in wg_packet_counter_selftest()
45 /* 12 */ T(2, true); in wg_packet_counter_selftest()
46 /* 13 */ T(2, false); in wg_packet_counter_selftest()
51 /* 18 */ T(T_LIM * 4 - (T_LIM - 1), true); in wg_packet_counter_selftest()
53 /* 20 */ T(T_LIM * 4 - T_LIM, false); in wg_packet_counter_selftest()
54 /* 21 */ T(T_LIM * 4 - (T_LIM + 1), false); in wg_packet_counter_selftest()
55 /* 22 */ T(T_LIM * 4 - (T_LIM - 2), true); in wg_packet_counter_selftest()
56 /* 23 */ T(T_LIM * 4 + 1 - T_LIM, false); in wg_packet_counter_selftest()
59 /* 26 */ T(REJECT_AFTER_MESSAGES - 1, true); in wg_packet_counter_selftest()
61 /* 28 */ T(REJECT_AFTER_MESSAGES - 1, false); in wg_packet_counter_selftest()
62 /* 29 */ T(REJECT_AFTER_MESSAGES - 2, true); in wg_packet_counter_selftest()
64 /* 31 */ T(REJECT_AFTER_MESSAGES + 2, false); in wg_packet_counter_selftest()
65 /* 32 */ T(REJECT_AFTER_MESSAGES - 2, false); in wg_packet_counter_selftest()
66 /* 33 */ T(REJECT_AFTER_MESSAGES - 3, true); in wg_packet_counter_selftest()
76 for (i = 2; i <= COUNTER_WINDOW_SIZE + 1; ++i) in wg_packet_counter_selftest()
82 for (i = COUNTER_WINDOW_SIZE + 1; i-- > 0;) in wg_packet_counter_selftest()
86 for (i = COUNTER_WINDOW_SIZE + 2; i-- > 1;) in wg_packet_counter_selftest()
91 for (i = COUNTER_WINDOW_SIZE + 1; i-- > 1;) in wg_packet_counter_selftest()
97 for (i = COUNTER_WINDOW_SIZE + 1; i-- > 1;) in wg_packet_counter_selftest()
107 pr_info("nonce counter self-tests: pass\n"); in wg_packet_counter_selftest()
108 kfree(counter); in wg_packet_counter_selftest()