1#!/usr/bin/env bash
2# Copyright 2024 Nordic Semiconductor
3# SPDX-License-Identifier: Apache-2.0
4
5source $(dirname "${BASH_SOURCE[0]}")/../../_mesh_test.sh
6
7## Test persistence of Proxy Solicitation replay protection list
8
9# Test procedure:
10# 1. Initialize and configure tester and IUT instances.
11# 2. Tester scans for beacons for a few seconds to verify that none are
12#    currently advertised from the IUT.
13# 3. Tester sends a modified solicitation PDU with a fixed sequence number.
14# 4. Tester scans for beacons and expects to receive at least one private net ID advertisement.
15# 5. IUT stops all ongoing advertisements (timeout).
16# 6. Tester re-sends the same fixed solicitation PDU, and scans to verify that
17#    no beacons are received.
18# 7. The IUT is rebooted.
19# 8. Tester re-sends the same fixed solicitation PDU, and scans to verify that no
20#    beacons are received.
21# 9. Tester sends a new solicitation PDU, with a new and unique sequence number,
22#    and scans to verify that a beacon is received.
23overlay="overlay_pst_conf_overlay_gatt_conf"
24RunTest mesh_srpl_replay_attack \
25	proxy_sol_tester_immediate_replay_attack \
26	proxy_sol_iut_immediate_replay_attack \
27	-flash=../results/mesh_srpl_replay_attack/flash.bin -flash_erase
28
29overlay="overlay_pst_conf_overlay_gatt_conf"
30RunTest mesh_srpl_replay_attack \
31	proxy_sol_tester_power_replay_attack \
32	proxy_sol_iut_power_replay_attack \
33	-flash=../results/mesh_srpl_replay_attack/flash.bin -flash_rm
34
35overlay="overlay_pst_conf_overlay_gatt_conf_overlay_workq_sys_conf"
36RunTest mesh_srpl_replay_attack_workq \
37	proxy_sol_tester_immediate_replay_attack \
38	proxy_sol_iut_immediate_replay_attack \
39	-flash=../results/mesh_srpl_replay_attack/flash.bin -flash_erase
40
41overlay="overlay_pst_conf_overlay_gatt_conf_overlay_workq_sys_conf"
42RunTest mesh_srpl_replay_attack_workq \
43	proxy_sol_tester_power_replay_attack \
44	proxy_sol_iut_power_replay_attack \
45	-flash=../results/mesh_srpl_replay_attack/flash.bin -flash_rm
46
47overlay="overlay_pst_conf_overlay_gatt_conf_overlay_psa_conf"
48RunTest mesh_srpl_replay_attack_psa \
49	proxy_sol_tester_immediate_replay_attack \
50	proxy_sol_iut_immediate_replay_attack \
51	-flash=../results/mesh_srpl_replay_attack_psa/flash.bin -flash_erase
52
53overlay="overlay_pst_conf_overlay_gatt_conf_overlay_psa_conf"
54RunTest mesh_srpl_replay_attack_psa \
55	proxy_sol_tester_power_replay_attack \
56	proxy_sol_iut_power_replay_attack \
57	-flash=../results/mesh_srpl_replay_attack_psa/flash.bin -flash_rm
58