d846aace55d20be008e47393163990b3cb427191
[dpdk.git] / examples / ipsec-secgw / test / tun_aesgcm_common_defs.sh
1 #! /bin/bash
2 # SPDX-License-Identifier: BSD-3-Clause
3
4 CRYPTO_DEV=${CRYPTO_DEV:-'--vdev="crypto_aesni_gcm0"'}
5
6 #generate cfg file for ipsec-secgw
7 config_secgw()
8 {
9         cat <<EOF > ${SGW_CFG_FILE}
10 #sp in IPv4 rules
11 sp ipv4 in esp protect 7 pri 2 src ${REMOTE_IPV4}/32 dst ${LOCAL_IPV4}/32 \
12 sport 0:65535 dport 0:65535
13 sp ipv4 in esp bypass pri 1 sport 0:65535 dport 0:65535
14
15 #SP out IPv4 rules
16 sp ipv4 out esp protect 7 pri 2 src ${LOCAL_IPV4}/32 dst ${REMOTE_IPV4}/32 \
17 sport 0:65535 dport 0:65535
18 sp ipv4 out esp bypass pri 1 sport 0:65535 dport 0:65535
19
20 #sp in IPv6 rules
21 sp ipv6 in esp protect 9 pri 2 src ${REMOTE_IPV6}/128 dst ${LOCAL_IPV6}/128 \
22 sport 0:65535 dport 0:65535
23 sp ipv6 in esp bypass pri 1 sport 0:65535 dport 0:65535
24
25 #SP out IPv6 rules
26 sp ipv6 out esp protect 9 pri 2 src ${LOCAL_IPV6}/128 dst ${REMOTE_IPV6}/128 \
27 sport 0:65535 dport 0:65535
28 sp ipv6 out esp bypass pri 1 sport 0:65535 dport 0:65535
29
30 #SA in rules
31 sa in 7 aead_algo aes-128-gcm \
32 aead_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
33 mode ipv4-tunnel src ${REMOTE_IPV4} dst ${LOCAL_IPV4} ${SGW_CFG_XPRM} \
34 ${SGW_CFG_XPRM_IN}
35
36 sa in 9 aead_algo aes-128-gcm \
37 aead_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
38 mode ipv6-tunnel src ${REMOTE_IPV6} dst ${LOCAL_IPV6} ${SGW_CFG_XPRM} \
39 ${SGW_CFG_XPRM_IN}
40
41 #SA out rules
42 sa out 7 aead_algo aes-128-gcm \
43 aead_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
44 mode ipv4-tunnel src ${LOCAL_IPV4} dst ${REMOTE_IPV4} ${SGW_CFG_XPRM}
45
46 sa out 9 aead_algo aes-128-gcm \
47 aead_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
48 mode ipv6-tunnel src ${LOCAL_IPV6} dst ${REMOTE_IPV6} ${SGW_CFG_XPRM}
49
50 #Routing rules
51 rt ipv4 dst ${REMOTE_IPV4}/32 port 0
52 rt ipv4 dst ${LOCAL_IPV4}/32 port 1
53
54 rt ipv6 dst ${REMOTE_IPV6}/128 port 0
55 rt ipv6 dst ${LOCAL_IPV6}/128 port 1
56
57 #neighbours
58 neigh port 0 ${REMOTE_MAC}
59 neigh port 1 ${LOCAL_MAC}
60 EOF
61
62         cat ${SGW_CFG_FILE}
63 }