examples/ipsec-secgw: clean up test scripts
[dpdk.git] / examples / ipsec-secgw / test / tun_aescbc_sha1_common_defs.sh
1 #! /bin/bash
2 # SPDX-License-Identifier: BSD-3-Clause
3
4 CRYPTO_DEV=${CRYPTO_DEV:-'--vdev="crypto_aesni_mb0"'}
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 cipher_algo aes-128-cbc \
32 cipher_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
33 auth_algo sha1-hmac \
34 auth_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
35 mode ipv4-tunnel src ${REMOTE_IPV4} dst ${LOCAL_IPV4} ${SGW_CFG_XPRM_IN}
36
37 sa in 9 cipher_algo aes-128-cbc \
38 cipher_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
39 auth_algo sha1-hmac \
40 auth_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
41 mode ipv6-tunnel src ${REMOTE_IPV6} dst ${LOCAL_IPV6} ${SGW_CFG_XPRM_IN}
42
43 #SA out rules
44 sa out 7 cipher_algo aes-128-cbc \
45 cipher_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
46 auth_algo sha1-hmac \
47 auth_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
48 mode ipv4-tunnel src ${LOCAL_IPV4} dst ${REMOTE_IPV4} ${SGW_CFG_XPRM_OUT}
49
50 sa out 9 cipher_algo aes-128-cbc \
51 cipher_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
52 auth_algo sha1-hmac \
53 auth_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
54 mode ipv6-tunnel src ${LOCAL_IPV6} dst ${REMOTE_IPV6} ${SGW_CFG_XPRM_OUT}
55
56 #Routing rules
57 rt ipv4 dst ${REMOTE_IPV4}/32 port 0
58 rt ipv4 dst ${LOCAL_IPV4}/32 port 1
59
60 rt ipv6 dst ${REMOTE_IPV6}/128 port 0
61 rt ipv6 dst ${LOCAL_IPV6}/128 port 1
62
63 #neighbours
64 neigh port 0 ${REMOTE_MAC}
65 neigh port 1 ${LOCAL_MAC}
66 EOF
67
68         cat ${SGW_CFG_FILE}
69 }
70
71 config_secgw_mixed()
72 {
73         cat <<EOF > ${SGW_CFG_FILE}
74 #sp in IPv4 rules
75 sp ipv4 in esp protect 6 pri 2 src ${REMOTE_IPV4}/32 dst ${LOCAL_IPV4}/32 \
76 sport 0:65535 dport 0:65535
77 sp ipv4 in esp bypass pri 1 sport 0:65535 dport 0:65535
78
79 #SP out IPv4 rules
80 sp ipv4 out esp protect 6 pri 2 src ${LOCAL_IPV4}/32 dst ${REMOTE_IPV4}/32 \
81 sport 0:65535 dport 0:65535
82 sp ipv4 out esp bypass pri 1 sport 0:65535 dport 0:65535
83
84 #sp in IPv6 rules
85 sp ipv6 in esp protect 8 pri 2 src ${REMOTE_IPV6}/128 dst ${LOCAL_IPV6}/128 \
86 sport 0:65535 dport 0:65535
87 sp ipv6 in esp bypass pri 1 sport 0:65535 dport 0:65535
88
89 #SP out IPv6 rules
90 sp ipv6 out esp protect 8 pri 2 src ${LOCAL_IPV6}/128 dst ${REMOTE_IPV6}/128 \
91 sport 0:65535 dport 0:65535
92 sp ipv6 out esp bypass pri 1 sport 0:65535 dport 0:65535
93
94 #SA in rules
95 sa in 8 cipher_algo aes-128-cbc \
96 cipher_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
97 auth_algo sha1-hmac \
98 auth_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
99 mode ipv4-tunnel src ${REMOTE_IPV4} dst ${LOCAL_IPV4}
100
101 sa in 6 cipher_algo aes-128-cbc \
102 cipher_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
103 auth_algo sha1-hmac \
104 auth_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
105 mode ipv6-tunnel src ${REMOTE_IPV6} dst ${LOCAL_IPV6}
106
107 #SA out rules
108 sa out 8 cipher_algo aes-128-cbc \
109 cipher_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
110 auth_algo sha1-hmac \
111 auth_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
112 mode ipv4-tunnel src ${LOCAL_IPV4} dst ${REMOTE_IPV4}
113
114 sa out 6 cipher_algo aes-128-cbc \
115 cipher_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
116 auth_algo sha1-hmac \
117 auth_key de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef:de:ad:be:ef \
118 mode ipv6-tunnel src ${LOCAL_IPV6} dst ${REMOTE_IPV6}
119
120 #Routing rules
121 rt ipv4 dst ${REMOTE_IPV4}/32 port 0
122 rt ipv4 dst ${LOCAL_IPV4}/32 port 1
123
124 rt ipv6 dst ${REMOTE_IPV6}/128 port 0
125 rt ipv6 dst ${LOCAL_IPV6}/128 port 1
126
127 #neighbours
128 neigh port 0 ${REMOTE_MAC}
129 neigh port 1 ${LOCAL_MAC}
130 EOF
131
132         cat ${SGW_CFG_FILE}
133 }