2 # SPDX-License-Identifier: BSD-3-Clause
4 # usage: /bin/bash linux_test6.sh <ipsec_mode>
5 # for list of available modes please refer to run_test.sh.
6 # ipsec-secgw (IPv6 mode) functional test script.
8 # Note that for most of them you required appropriate crypto PMD/device
10 # Also user has to setup properly the following environment variables:
11 # SGW_PATH - path to the ipsec-secgw binary to test
12 # REMOTE_HOST - ip/hostname of the DUT
13 # REMOTE_IFACE - iface name for the test-port on DUT
14 # ETH_DEV - ethernet device to be used on SUT by DPDK ('-w <pci-id>')
15 # Also user can optonally setup:
16 # SGW_LCORE - lcore to run ipsec-secgw on (default value is 0)
17 # CRYPTO_DEV - crypto device to be used ('-w <pci-id>')
18 # if none specified appropriate vdevs will be created by the scrit
19 # MULTI_SEG_TEST - ipsec-secgw option to enable reassembly support and
20 # specify size of reassembly table (i.e. MULTI_SEG_TEST="--reassemble 128")
22 # The purpose of the script is to automate ipsec-secgw testing
23 # using another system running linux as a DUT.
24 # It expects that SUT and DUT are connected through at least 2 NICs.
25 # One NIC is expected to be managed by linux both machines,
26 # and will be used as a control path.
27 # Make sure user from SUT can ssh to DUT without entering password,
28 # also make sure that sshd over ipv6 is enabled.
29 # Second NIC (test-port) should be reserved for DPDK on SUT,
30 # and should be managed by linux on DUT.
31 # The script starts ipsec-secgw with 2 NIC devices: test-port and tap vdev.
32 # Then configures local tap iface and remote iface and ipsec policies
33 # in the following way:
34 # traffic going over test-port in both directions has to be
36 # raffic going over TAP in both directions doesn't have to be protected.
38 # DUT OS(NIC1)--(ipsec)-->(NIC1)ipsec-secgw(TAP)--(plain)-->(TAP)SUT OS
39 # SUT OS(TAP)--(plain)-->(TAP)psec-secgw(NIC1)--(ipsec)-->(NIC1)DUT OS
40 # Then tries to perorm some data transfer using the scheme decribed above.
46 . ${DIR}/common_defs.sh
47 . ${DIR}/${MODE}_defs.sh
61 set_local_mtu ${MTU_LEN}
62 ping6_test1 ${REMOTE_IPV6} 0 ${PING_LEN}
64 if [[ $st -eq 0 ]]; then
65 set_local_mtu ${DEF_MTU_LEN}
66 scp_test1 ${REMOTE_IPV6}