blob: 70a60672becc5b96d8029829215923a06a6db85c [file] [log] [blame]
Jerry Yu6a9beba2022-07-31 12:45:25 +08001#!/bin/sh
2
3# tls13-kex-modes.sh
4#
5# Copyright The Mbed TLS Contributors
6# SPDX-License-Identifier: Apache-2.0
7#
8# Licensed under the Apache License, Version 2.0 (the "License"); you may
9# not use this file except in compliance with the License.
10# You may obtain a copy of the License at
11#
12# http://www.apache.org/licenses/LICENSE-2.0
13#
14# Unless required by applicable law or agreed to in writing, software
15# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
16# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17# See the License for the specific language governing permissions and
18# limitations under the License.
19#
20
Jerry Yu66f35f22022-08-22 17:27:41 +080021requires_gnutls_tls1_3
Jerry Yu6a9beba2022-07-31 12:45:25 +080022requires_config_enabled MBEDTLS_SSL_PROTO_TLS1_3
23requires_config_enabled MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE
24requires_config_enabled MBEDTLS_SSL_SRV_C
25requires_config_enabled MBEDTLS_DEBUG_C
Jerry Yu9b83fa12022-07-31 13:13:51 +080026# SOME_ECDHE_ENABLED?
27requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED \
28 MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu3e06fce2022-08-25 17:51:57 +080029run_test "TLS 1.3: PSK: No valid ciphersuite. G->m" \
Jerry Yu2185c0f2022-08-23 16:12:43 +080030 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
31 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-CIPHER-ALL:+AES-256-GCM:+AEAD:+SHA384:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
32 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
33 localhost" \
34 1 \
35 -s "found psk key exchange modes extension" \
36 -s "found pre_shared_key extension" \
37 -s "Found PSK_EPHEMERAL KEX MODE" \
38 -s "Found PSK KEX MODE" \
Jerry Yu3e06fce2022-08-25 17:51:57 +080039 -s "No matched ciphersuite"
Jerry Yu2185c0f2022-08-23 16:12:43 +080040
41requires_openssl_tls1_3
42requires_config_enabled MBEDTLS_SSL_PROTO_TLS1_3
43requires_config_enabled MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE
44requires_config_enabled MBEDTLS_SSL_SRV_C
45requires_config_enabled MBEDTLS_DEBUG_C
46# SOME_ECDHE_ENABLED?
47requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED \
48 MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu3e06fce2022-08-25 17:51:57 +080049run_test "TLS 1.3: PSK: No valid ciphersuite. O->m" \
Jerry Yu2185c0f2022-08-23 16:12:43 +080050 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
51 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex -ciphersuites TLS_AES_256_GCM_SHA384\
52 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f70" \
53 1 \
54 -s "found psk key exchange modes extension" \
55 -s "found pre_shared_key extension" \
56 -s "Found PSK_EPHEMERAL KEX MODE" \
57 -s "Found PSK KEX MODE" \
Jerry Yue7b4b582022-08-25 17:53:13 +080058 -s "No matched ciphersuite"
59
60
61requires_gnutls_tls1_3
62requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
63requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +080064run_test "TLS 1.3: G->m: ephemeral_all/psk, fail, no common kex mode" \
Jerry Yue7b4b582022-08-25 17:53:13 +080065 "$P_SRV force_version=tls13 tls13_kex_modes=psk debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
66 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:-PSK:+VERS-TLS1.3 \
67 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
68 localhost" \
69 1 \
70 -s "found psk key exchange modes extension" \
71 -s "found pre_shared_key extension" \
72 -s "Found PSK_EPHEMERAL KEX MODE" \
73 -S "Found PSK KEX MODE" \
74 -S "key exchange mode: psk$" \
75 -S "key exchange mode: psk_ephemeral" \
76 -S "key exchange mode: ephemeral"
77
78requires_gnutls_tls1_3
79requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
80requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +080081run_test "TLS 1.3: G->m: all/psk, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +080082 "$P_SRV force_version=tls13 tls13_kex_modes=psk debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
83 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
84 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
85 localhost" \
86 0 \
87 -s "found psk key exchange modes extension" \
88 -s "found pre_shared_key extension" \
89 -s "Found PSK_EPHEMERAL KEX MODE" \
90 -s "Found PSK KEX MODE" \
91 -s "Pre shared key found" \
92 -S "No matched PSK or ticket" \
93 -s "key exchange mode: psk$" \
94 -S "key exchange mode: psk_ephemeral" \
95 -S "key exchange mode: ephemeral"
96
97requires_gnutls_tls1_3
98requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
99requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800100run_test "TLS 1.3: G->m: all/psk, fail, key id mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800101 "$P_SRV force_version=tls13 tls13_kex_modes=psk debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
102 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
103 --pskusername wrong_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
104 localhost" \
105 1 \
106 -s "found psk key exchange modes extension" \
107 -s "found pre_shared_key extension" \
108 -s "Found PSK_EPHEMERAL KEX MODE" \
109 -s "Found PSK KEX MODE" \
110 -s "No matched PSK or ticket" \
111 -S "key exchange mode: psk$" \
112 -S "key exchange mode: psk_ephemeral" \
113 -S "key exchange mode: ephemeral"
114
115requires_gnutls_tls1_3
116requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
117requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800118run_test "TLS 1.3: G->m: all/psk, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800119 "$P_SRV force_version=tls13 tls13_kex_modes=psk debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
120 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
121 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f71 \
122 localhost" \
123 1 \
124 -s "found psk key exchange modes extension" \
125 -s "found pre_shared_key extension" \
126 -s "Found PSK_EPHEMERAL KEX MODE" \
127 -s "Found PSK KEX MODE" \
128 -s "Invalid binder." \
129 -S "key exchange mode: psk$" \
130 -S "key exchange mode: psk_ephemeral" \
131 -S "key exchange mode: ephemeral"
132
133requires_gnutls_tls1_3
134requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
135requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu66886692022-08-31 17:08:34 +0800136run_test "TLS 1.3: G->m: psk_or_ephemeral/psk, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800137 "$P_SRV force_version=tls13 tls13_kex_modes=psk debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
138 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:-ECDHE-PSK:-DHE-PSK:+PSK:+VERS-TLS1.3 \
139 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
140 localhost" \
141 0 \
142 -s "found psk key exchange modes extension" \
143 -s "found pre_shared_key extension" \
144 -S "Found PSK_EPHEMERAL KEX MODE" \
145 -s "Found PSK KEX MODE" \
146 -s "Pre shared key found" \
147 -S "No matched PSK or ticket" \
148 -s "key exchange mode: psk$" \
149 -S "key exchange mode: psk_ephemeral" \
150 -S "key exchange mode: ephemeral"
151
152requires_gnutls_tls1_3
153requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
154requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu66886692022-08-31 17:08:34 +0800155run_test "TLS 1.3: G->m: psk_or_ephemeral/psk, fail, key id mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800156 "$P_SRV force_version=tls13 tls13_kex_modes=psk debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
157 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:-ECDHE-PSK:-DHE-PSK:+PSK:+VERS-TLS1.3 \
158 --pskusername wrong_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
159 localhost" \
160 1 \
161 -s "found psk key exchange modes extension" \
162 -s "found pre_shared_key extension" \
163 -S "Found PSK_EPHEMERAL KEX MODE" \
164 -s "Found PSK KEX MODE" \
165 -s "No matched PSK or ticket" \
166 -S "key exchange mode: psk$" \
167 -S "key exchange mode: psk_ephemeral" \
168 -S "key exchange mode: ephemeral"
169
170requires_gnutls_tls1_3
171requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
172requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu66886692022-08-31 17:08:34 +0800173run_test "TLS 1.3: G->m: psk_or_ephemeral/psk, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800174 "$P_SRV force_version=tls13 tls13_kex_modes=psk debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
175 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:-ECDHE-PSK:-DHE-PSK:+PSK:+VERS-TLS1.3 \
176 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f71 \
177 localhost" \
178 1 \
179 -s "found psk key exchange modes extension" \
180 -s "found pre_shared_key extension" \
181 -S "Found PSK_EPHEMERAL KEX MODE" \
182 -s "Found PSK KEX MODE" \
183 -s "Invalid binder." \
184 -S "key exchange mode: psk$" \
185 -S "key exchange mode: psk_ephemeral" \
186 -S "key exchange mode: ephemeral"
187
188requires_gnutls_tls1_3
189requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
190requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
191requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800192run_test "TLS 1.3: G->m: ephemeral_all/psk_ephemeral, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800193 "$P_SRV force_version=tls13 tls13_kex_modes=psk_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
194 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:-PSK:+VERS-TLS1.3 \
195 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
196 localhost" \
197 0 \
198 -s "found psk key exchange modes extension" \
199 -s "found pre_shared_key extension" \
200 -s "Found PSK_EPHEMERAL KEX MODE" \
201 -S "Found PSK KEX MODE" \
202 -s "Pre shared key found" \
203 -S "No matched PSK or ticket" \
204 -S "key exchange mode: psk$" \
205 -s "key exchange mode: psk_ephemeral" \
206 -S "key exchange mode: ephemeral"
207
208requires_gnutls_tls1_3
209requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
210requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
211requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800212run_test "TLS 1.3: G->m: ephemeral_all/psk_ephemeral, fail, key id mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800213 "$P_SRV force_version=tls13 tls13_kex_modes=psk_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
214 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:-PSK:+VERS-TLS1.3 \
215 --pskusername wrong_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
216 localhost" \
217 1 \
218 -s "found psk key exchange modes extension" \
219 -s "found pre_shared_key extension" \
220 -s "Found PSK_EPHEMERAL KEX MODE" \
221 -S "Found PSK KEX MODE" \
222 -s "No matched PSK or ticket" \
223 -S "key exchange mode: psk$" \
224 -S "key exchange mode: psk_ephemeral" \
225 -S "key exchange mode: ephemeral"
226
227requires_gnutls_tls1_3
228requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
229requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
230requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800231run_test "TLS 1.3: G->m: ephemeral_all/psk_ephemeral, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800232 "$P_SRV force_version=tls13 tls13_kex_modes=psk_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
233 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:-PSK:+VERS-TLS1.3 \
234 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f71 \
235 localhost" \
236 1 \
237 -s "found psk key exchange modes extension" \
238 -s "found pre_shared_key extension" \
239 -s "Found PSK_EPHEMERAL KEX MODE" \
240 -S "Found PSK KEX MODE" \
241 -s "Invalid binder." \
242 -S "key exchange mode: psk$" \
243 -S "key exchange mode: psk_ephemeral" \
244 -S "key exchange mode: ephemeral"
245
246requires_gnutls_tls1_3
247requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
248requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
249requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800250run_test "TLS 1.3: G->m: all/psk_ephemeral, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800251 "$P_SRV force_version=tls13 tls13_kex_modes=psk_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
252 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
253 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
254 localhost" \
255 0 \
256 -s "found psk key exchange modes extension" \
257 -s "found pre_shared_key extension" \
258 -s "Found PSK_EPHEMERAL KEX MODE" \
259 -s "Found PSK KEX MODE" \
260 -s "Pre shared key found" \
261 -S "No matched PSK or ticket" \
262 -S "key exchange mode: psk$" \
263 -s "key exchange mode: psk_ephemeral" \
264 -S "key exchange mode: ephemeral"
265
266requires_gnutls_tls1_3
267requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
268requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
269requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800270run_test "TLS 1.3: G->m: all/psk_ephemeral, fail, key id mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800271 "$P_SRV force_version=tls13 tls13_kex_modes=psk_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
272 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
273 --pskusername wrong_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
274 localhost" \
275 1 \
276 -s "found psk key exchange modes extension" \
277 -s "found pre_shared_key extension" \
278 -s "Found PSK_EPHEMERAL KEX MODE" \
279 -s "Found PSK KEX MODE" \
280 -s "No matched PSK or ticket" \
281 -S "key exchange mode: psk$" \
282 -S "key exchange mode: psk_ephemeral" \
283 -S "key exchange mode: ephemeral"
284
285requires_gnutls_tls1_3
286requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
287requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
288requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800289run_test "TLS 1.3: G->m: all/psk_ephemeral, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800290 "$P_SRV force_version=tls13 tls13_kex_modes=psk_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
291 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
292 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f71 \
293 localhost" \
294 1 \
295 -s "found psk key exchange modes extension" \
296 -s "found pre_shared_key extension" \
297 -s "Found PSK_EPHEMERAL KEX MODE" \
298 -s "Found PSK KEX MODE" \
299 -s "Invalid binder." \
300 -S "key exchange mode: psk$" \
301 -S "key exchange mode: psk_ephemeral" \
302 -S "key exchange mode: ephemeral"
303
304requires_gnutls_tls1_3
305requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
306requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
307requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu66886692022-08-31 17:08:34 +0800308run_test "TLS 1.3: G->m: psk_or_ephemeral/psk_ephemeral, fail, no common kex mode" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800309 "$P_SRV force_version=tls13 tls13_kex_modes=psk_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
310 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:-ECDHE-PSK:-DHE-PSK:+PSK:+VERS-TLS1.3 \
311 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
312 localhost" \
313 1 \
314 -s "found psk key exchange modes extension" \
315 -s "found pre_shared_key extension" \
316 -S "Found PSK_EPHEMERAL KEX MODE" \
317 -s "Found PSK KEX MODE" \
318 -S "key exchange mode: psk$" \
319 -S "key exchange mode: psk_ephemeral" \
320 -S "key exchange mode: ephemeral"
321
322requires_gnutls_tls1_3
323requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
324requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
325requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800326run_test "TLS 1.3: G->m: ephemeral_all/psk_all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800327 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
328 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:-PSK:+VERS-TLS1.3 \
329 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
330 localhost" \
331 0 \
332 -s "found psk key exchange modes extension" \
333 -s "found pre_shared_key extension" \
334 -s "Found PSK_EPHEMERAL KEX MODE" \
335 -S "Found PSK KEX MODE" \
336 -s "Pre shared key found" \
337 -S "No matched PSK or ticket" \
338 -S "key exchange mode: psk$" \
339 -s "key exchange mode: psk_ephemeral" \
340 -S "key exchange mode: ephemeral"
341
342requires_gnutls_tls1_3
343requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
344requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
345requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800346run_test "TLS 1.3: G->m: ephemeral_all/psk_all, fail, key id mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800347 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
348 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:-PSK:+VERS-TLS1.3 \
349 --pskusername wrong_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
350 localhost" \
351 1 \
352 -s "found psk key exchange modes extension" \
353 -s "found pre_shared_key extension" \
354 -s "Found PSK_EPHEMERAL KEX MODE" \
355 -S "Found PSK KEX MODE" \
356 -s "No matched PSK or ticket" \
357 -S "key exchange mode: psk$" \
358 -S "key exchange mode: psk_ephemeral" \
359 -S "key exchange mode: ephemeral"
360
361requires_gnutls_tls1_3
362requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
363requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
364requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800365run_test "TLS 1.3: G->m: ephemeral_all/psk_all, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800366 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
367 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:-PSK:+VERS-TLS1.3 \
368 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f71 \
369 localhost" \
370 1 \
371 -s "found psk key exchange modes extension" \
372 -s "found pre_shared_key extension" \
373 -s "Found PSK_EPHEMERAL KEX MODE" \
374 -S "Found PSK KEX MODE" \
375 -s "Invalid binder." \
376 -S "key exchange mode: psk$" \
377 -S "key exchange mode: psk_ephemeral" \
378 -S "key exchange mode: ephemeral"
379
380requires_gnutls_tls1_3
381requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
382requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
383requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800384run_test "TLS 1.3: G->m: all/psk_all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800385 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
386 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
387 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
388 localhost" \
389 0 \
390 -s "found psk key exchange modes extension" \
391 -s "found pre_shared_key extension" \
392 -s "Found PSK_EPHEMERAL KEX MODE" \
393 -s "Found PSK KEX MODE" \
394 -s "Pre shared key found" \
395 -S "No matched PSK or ticket" \
396 -S "key exchange mode: psk$" \
397 -s "key exchange mode: psk_ephemeral" \
398 -S "key exchange mode: ephemeral"
399
400requires_gnutls_tls1_3
401requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
402requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
403requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800404run_test "TLS 1.3: G->m: all/psk_all, fail, key id mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800405 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
406 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
407 --pskusername wrong_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
408 localhost" \
409 1 \
410 -s "found psk key exchange modes extension" \
411 -s "found pre_shared_key extension" \
412 -s "Found PSK_EPHEMERAL KEX MODE" \
413 -s "Found PSK KEX MODE" \
414 -s "No matched PSK or ticket" \
415 -S "key exchange mode: psk$" \
416 -S "key exchange mode: psk_ephemeral" \
417 -S "key exchange mode: ephemeral"
418
419requires_gnutls_tls1_3
420requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
421requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
422requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800423run_test "TLS 1.3: G->m: all/psk_all, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800424 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
425 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
426 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f71 \
427 localhost" \
428 1 \
429 -s "found psk key exchange modes extension" \
430 -s "found pre_shared_key extension" \
431 -s "Found PSK_EPHEMERAL KEX MODE" \
432 -s "Found PSK KEX MODE" \
433 -s "Invalid binder." \
434 -S "key exchange mode: psk$" \
435 -S "key exchange mode: psk_ephemeral" \
436 -S "key exchange mode: ephemeral"
437
438requires_gnutls_tls1_3
439requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
440requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
441requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu66886692022-08-31 17:08:34 +0800442run_test "TLS 1.3: G->m: psk_or_ephemeral/psk_all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800443 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
444 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:-ECDHE-PSK:-DHE-PSK:+PSK:+VERS-TLS1.3 \
445 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
446 localhost" \
447 0 \
448 -s "found psk key exchange modes extension" \
449 -s "found pre_shared_key extension" \
450 -S "Found PSK_EPHEMERAL KEX MODE" \
451 -s "Found PSK KEX MODE" \
452 -s "Pre shared key found" \
453 -S "No matched PSK or ticket" \
454 -s "key exchange mode: psk$" \
455 -S "key exchange mode: psk_ephemeral" \
456 -S "key exchange mode: ephemeral"
457
458requires_gnutls_tls1_3
459requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
460requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
461requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu66886692022-08-31 17:08:34 +0800462run_test "TLS 1.3: G->m: psk_or_ephemeral/psk_all, fail, key id mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800463 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
464 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:-ECDHE-PSK:-DHE-PSK:+PSK:+VERS-TLS1.3 \
465 --pskusername wrong_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
466 localhost" \
467 1 \
468 -s "found psk key exchange modes extension" \
469 -s "found pre_shared_key extension" \
470 -S "Found PSK_EPHEMERAL KEX MODE" \
471 -s "Found PSK KEX MODE" \
472 -s "No matched PSK or ticket" \
473 -S "key exchange mode: psk$" \
474 -S "key exchange mode: psk_ephemeral" \
475 -S "key exchange mode: ephemeral"
476
477requires_gnutls_tls1_3
478requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
479requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
480requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu66886692022-08-31 17:08:34 +0800481run_test "TLS 1.3: G->m: psk_or_ephemeral/psk_all, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800482 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
483 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:-ECDHE-PSK:-DHE-PSK:+PSK:+VERS-TLS1.3 \
484 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f71 \
485 localhost" \
486 1 \
487 -s "found psk key exchange modes extension" \
488 -s "found pre_shared_key extension" \
489 -S "Found PSK_EPHEMERAL KEX MODE" \
490 -s "Found PSK KEX MODE" \
491 -s "Invalid binder." \
492 -S "key exchange mode: psk$" \
493 -S "key exchange mode: psk_ephemeral" \
494 -S "key exchange mode: ephemeral"
495
496requires_gnutls_tls1_3
497requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
498requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
499requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800500run_test "TLS 1.3: G->m: ephemeral_all/ephemeral_all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800501 "$P_SRV force_version=tls13 tls13_kex_modes=ephemeral_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
502 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:-PSK:+VERS-TLS1.3 \
503 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
504 localhost" \
505 0 \
506 -s "found psk key exchange modes extension" \
507 -s "found pre_shared_key extension" \
508 -s "Found PSK_EPHEMERAL KEX MODE" \
509 -S "Found PSK KEX MODE" \
510 -s "Pre shared key found" \
511 -S "No matched PSK or ticket" \
512 -S "key exchange mode: psk$" \
513 -s "key exchange mode: psk_ephemeral" \
514 -S "key exchange mode: ephemeral"
515
516requires_gnutls_tls1_3
517requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
518requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
519requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800520run_test "TLS 1.3: G->m: ephemeral_all/ephemeral_all, good, key id mismatch, dhe." \
Jerry Yue7b4b582022-08-25 17:53:13 +0800521 "$P_SRV force_version=tls13 tls13_kex_modes=ephemeral_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
522 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:-PSK:+VERS-TLS1.3 \
523 --pskusername wrong_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
524 localhost" \
525 0 \
526 -s "found psk key exchange modes extension" \
527 -s "found pre_shared_key extension" \
528 -s "Found PSK_EPHEMERAL KEX MODE" \
529 -S "Found PSK KEX MODE" \
530 -s "No matched PSK or ticket" \
531 -S "key exchange mode: psk$" \
532 -S "key exchange mode: psk_ephemeral" \
533 -s "key exchange mode: ephemeral"
534
535requires_gnutls_tls1_3
536requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
537requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
538requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800539run_test "TLS 1.3: G->m: ephemeral_all/ephemeral_all, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800540 "$P_SRV force_version=tls13 tls13_kex_modes=ephemeral_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
541 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:-PSK:+VERS-TLS1.3 \
542 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f71 \
543 localhost" \
544 1 \
545 -s "found psk key exchange modes extension" \
546 -s "found pre_shared_key extension" \
547 -s "Found PSK_EPHEMERAL KEX MODE" \
548 -S "Found PSK KEX MODE" \
549 -s "Invalid binder." \
550 -S "key exchange mode: psk$" \
551 -S "key exchange mode: psk_ephemeral" \
552 -S "key exchange mode: ephemeral"
553
554requires_gnutls_tls1_3
555requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
556requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
557requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800558run_test "TLS 1.3: G->m: all/ephemeral_all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800559 "$P_SRV force_version=tls13 tls13_kex_modes=ephemeral_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
560 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
561 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
562 localhost" \
563 0 \
564 -s "found psk key exchange modes extension" \
565 -s "found pre_shared_key extension" \
566 -s "Found PSK_EPHEMERAL KEX MODE" \
567 -s "Found PSK KEX MODE" \
568 -s "Pre shared key found" \
569 -S "No matched PSK or ticket" \
570 -S "key exchange mode: psk$" \
571 -s "key exchange mode: psk_ephemeral" \
572 -S "key exchange mode: ephemeral"
573
574requires_gnutls_tls1_3
575requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
576requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
577requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800578run_test "TLS 1.3: G->m: all/ephemeral_all, good, key id mismatch, dhe." \
Jerry Yue7b4b582022-08-25 17:53:13 +0800579 "$P_SRV force_version=tls13 tls13_kex_modes=ephemeral_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
580 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
581 --pskusername wrong_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
582 localhost" \
583 0 \
584 -s "found psk key exchange modes extension" \
585 -s "found pre_shared_key extension" \
586 -s "Found PSK_EPHEMERAL KEX MODE" \
587 -s "Found PSK KEX MODE" \
588 -s "No matched PSK or ticket" \
589 -S "key exchange mode: psk$" \
590 -S "key exchange mode: psk_ephemeral" \
591 -s "key exchange mode: ephemeral"
592
593requires_gnutls_tls1_3
594requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
595requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
596requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800597run_test "TLS 1.3: G->m: all/ephemeral_all, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800598 "$P_SRV force_version=tls13 tls13_kex_modes=ephemeral_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
599 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
600 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f71 \
601 localhost" \
602 1 \
603 -s "found psk key exchange modes extension" \
604 -s "found pre_shared_key extension" \
605 -s "Found PSK_EPHEMERAL KEX MODE" \
606 -s "Found PSK KEX MODE" \
607 -s "Invalid binder." \
608 -S "key exchange mode: psk$" \
609 -S "key exchange mode: psk_ephemeral" \
610 -S "key exchange mode: ephemeral"
611
612requires_gnutls_tls1_3
613requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
614requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
615requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu66886692022-08-31 17:08:34 +0800616run_test "TLS 1.3: G->m: psk_or_ephemeral/ephemeral_all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800617 "$P_SRV force_version=tls13 tls13_kex_modes=ephemeral_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
618 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:-ECDHE-PSK:-DHE-PSK:+PSK:+VERS-TLS1.3 \
619 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
620 localhost" \
621 0 \
622 -s "found psk key exchange modes extension" \
623 -s "found pre_shared_key extension" \
624 -S "Found PSK_EPHEMERAL KEX MODE" \
625 -s "Found PSK KEX MODE" \
626 -s "Pre shared key found" \
627 -S "No matched PSK or ticket" \
628 -S "key exchange mode: psk$" \
629 -S "key exchange mode: psk_ephemeral" \
630 -s "key exchange mode: ephemeral"
631
632requires_gnutls_tls1_3
633requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
634requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
635requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800636run_test "TLS 1.3: G->m: ephemeral_all/all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800637 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
638 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:-PSK:+VERS-TLS1.3 \
639 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
640 localhost" \
641 0 \
642 -s "found psk key exchange modes extension" \
643 -s "found pre_shared_key extension" \
644 -s "Found PSK_EPHEMERAL KEX MODE" \
645 -S "Found PSK KEX MODE" \
646 -s "Pre shared key found" \
647 -S "No matched PSK or ticket" \
648 -S "key exchange mode: psk$" \
649 -s "key exchange mode: psk_ephemeral" \
650 -S "key exchange mode: ephemeral"
651
652requires_gnutls_tls1_3
653requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
654requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
655requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800656run_test "TLS 1.3: G->m: ephemeral_all/all, good, key id mismatch, dhe." \
Jerry Yue7b4b582022-08-25 17:53:13 +0800657 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
658 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:-PSK:+VERS-TLS1.3 \
659 --pskusername wrong_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
660 localhost" \
661 0 \
662 -s "found psk key exchange modes extension" \
663 -s "found pre_shared_key extension" \
664 -s "Found PSK_EPHEMERAL KEX MODE" \
665 -S "Found PSK KEX MODE" \
666 -s "No matched PSK or ticket" \
667 -S "key exchange mode: psk$" \
668 -S "key exchange mode: psk_ephemeral" \
669 -s "key exchange mode: ephemeral"
670
671requires_gnutls_tls1_3
672requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
673requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
674requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800675run_test "TLS 1.3: G->m: ephemeral_all/all, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800676 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
677 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:-PSK:+VERS-TLS1.3 \
678 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f71 \
679 localhost" \
680 1 \
681 -s "found psk key exchange modes extension" \
682 -s "found pre_shared_key extension" \
683 -s "Found PSK_EPHEMERAL KEX MODE" \
684 -S "Found PSK KEX MODE" \
685 -s "Invalid binder." \
686 -S "key exchange mode: psk$" \
687 -S "key exchange mode: psk_ephemeral" \
688 -S "key exchange mode: ephemeral"
689
690requires_gnutls_tls1_3
691requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
692requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
693requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800694run_test "TLS 1.3: G->m: all/all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800695 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
696 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
697 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
698 localhost" \
699 0 \
700 -s "found psk key exchange modes extension" \
701 -s "found pre_shared_key extension" \
702 -s "Found PSK_EPHEMERAL KEX MODE" \
703 -s "Found PSK KEX MODE" \
704 -s "Pre shared key found" \
705 -S "No matched PSK or ticket" \
706 -S "key exchange mode: psk$" \
707 -s "key exchange mode: psk_ephemeral" \
708 -S "key exchange mode: ephemeral"
709
710requires_gnutls_tls1_3
711requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
712requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
713requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800714run_test "TLS 1.3: G->m: all/all, good, key id mismatch, dhe." \
Jerry Yue7b4b582022-08-25 17:53:13 +0800715 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
716 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
717 --pskusername wrong_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
718 localhost" \
719 0 \
720 -s "found psk key exchange modes extension" \
721 -s "found pre_shared_key extension" \
722 -s "Found PSK_EPHEMERAL KEX MODE" \
723 -s "Found PSK KEX MODE" \
724 -s "No matched PSK or ticket" \
725 -S "key exchange mode: psk$" \
726 -S "key exchange mode: psk_ephemeral" \
727 -s "key exchange mode: ephemeral"
728
729requires_gnutls_tls1_3
730requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
731requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
732requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800733run_test "TLS 1.3: G->m: all/all, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800734 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
735 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
736 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f71 \
737 localhost" \
738 1 \
739 -s "found psk key exchange modes extension" \
740 -s "found pre_shared_key extension" \
741 -s "Found PSK_EPHEMERAL KEX MODE" \
742 -s "Found PSK KEX MODE" \
743 -s "Invalid binder." \
744 -S "key exchange mode: psk$" \
745 -S "key exchange mode: psk_ephemeral" \
746 -S "key exchange mode: ephemeral"
747
748requires_gnutls_tls1_3
749requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
750requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
751requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu66886692022-08-31 17:08:34 +0800752run_test "TLS 1.3: G->m: psk_or_ephemeral/all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800753 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
754 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:-ECDHE-PSK:-DHE-PSK:+PSK:+VERS-TLS1.3 \
755 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
756 localhost" \
757 0 \
758 -s "found psk key exchange modes extension" \
759 -s "found pre_shared_key extension" \
760 -S "Found PSK_EPHEMERAL KEX MODE" \
761 -s "Found PSK KEX MODE" \
762 -s "Pre shared key found" \
763 -S "No matched PSK or ticket" \
764 -S "key exchange mode: psk$" \
765 -S "key exchange mode: psk_ephemeral" \
766 -s "key exchange mode: ephemeral"
767
768requires_gnutls_tls1_3
769requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
770requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
771requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu66886692022-08-31 17:08:34 +0800772run_test "TLS 1.3: G->m: psk_or_ephemeral/all, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800773 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
774 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:-ECDHE-PSK:-DHE-PSK:+PSK:+VERS-TLS1.3 \
775 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f71 \
776 localhost" \
777 1 \
778 -s "found psk key exchange modes extension" \
779 -s "found pre_shared_key extension" \
780 -S "Found PSK_EPHEMERAL KEX MODE" \
781 -s "Found PSK KEX MODE" \
782 -s "Invalid binder." \
783 -S "key exchange mode: psk$" \
784 -S "key exchange mode: psk_ephemeral" \
785 -S "key exchange mode: ephemeral"
786
787requires_gnutls_tls1_3
788requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
789requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
790requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800791run_test "TLS 1.3: G->m: ephemeral_all/psk_or_ephemeral, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800792 "$P_SRV force_version=tls13 tls13_kex_modes=psk_or_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
793 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:-PSK:+VERS-TLS1.3 \
794 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
795 localhost" \
796 0 \
797 -s "found psk key exchange modes extension" \
798 -s "found pre_shared_key extension" \
799 -s "Found PSK_EPHEMERAL KEX MODE" \
800 -S "Found PSK KEX MODE" \
801 -s "Pre shared key found" \
802 -S "No matched PSK or ticket" \
803 -S "key exchange mode: psk$" \
804 -S "key exchange mode: psk_ephemeral" \
805 -s "key exchange mode: ephemeral"
806
807requires_gnutls_tls1_3
808requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
809requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
810requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800811run_test "TLS 1.3: G->m: all/psk_or_ephemeral, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800812 "$P_SRV force_version=tls13 tls13_kex_modes=psk_or_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
813 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
814 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
815 localhost" \
816 0 \
817 -s "found psk key exchange modes extension" \
818 -s "found pre_shared_key extension" \
819 -s "Found PSK_EPHEMERAL KEX MODE" \
820 -s "Found PSK KEX MODE" \
821 -s "Pre shared key found" \
822 -S "No matched PSK or ticket" \
823 -S "key exchange mode: psk$" \
824 -S "key exchange mode: psk_ephemeral" \
825 -s "key exchange mode: ephemeral"
826
827requires_gnutls_tls1_3
828requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
829requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
830requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800831run_test "TLS 1.3: G->m: all/psk_or_ephemeral, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800832 "$P_SRV force_version=tls13 tls13_kex_modes=psk_or_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
833 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:+ECDHE-PSK:+DHE-PSK:+PSK:+VERS-TLS1.3 \
834 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f71 \
835 localhost" \
836 1 \
837 -s "found psk key exchange modes extension" \
838 -s "found pre_shared_key extension" \
839 -s "Found PSK_EPHEMERAL KEX MODE" \
840 -s "Found PSK KEX MODE" \
841 -s "Invalid binder." \
842 -S "key exchange mode: psk$" \
843 -S "key exchange mode: psk_ephemeral" \
844 -S "key exchange mode: ephemeral"
845
846requires_gnutls_tls1_3
847requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
848requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
849requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu66886692022-08-31 17:08:34 +0800850run_test "TLS 1.3: G->m: psk_or_ephemeral/psk_or_ephemeral, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800851 "$P_SRV force_version=tls13 tls13_kex_modes=psk_or_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
852 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:-ECDHE-PSK:-DHE-PSK:+PSK:+VERS-TLS1.3 \
853 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f70 \
854 localhost" \
855 0 \
856 -s "found psk key exchange modes extension" \
857 -s "found pre_shared_key extension" \
858 -S "Found PSK_EPHEMERAL KEX MODE" \
859 -s "Found PSK KEX MODE" \
860 -s "Pre shared key found" \
861 -S "No matched PSK or ticket" \
862 -S "key exchange mode: psk$" \
863 -S "key exchange mode: psk_ephemeral" \
864 -s "key exchange mode: ephemeral"
865
866requires_gnutls_tls1_3
867requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
868requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
869requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu66886692022-08-31 17:08:34 +0800870run_test "TLS 1.3: G->m: psk_or_ephemeral/psk_or_ephemeral, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800871 "$P_SRV force_version=tls13 tls13_kex_modes=psk_or_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
872 "$G_NEXT_CLI -d 10 --priority NORMAL:-VERS-ALL:-KX-ALL:-ECDHE-PSK:-DHE-PSK:+PSK:+VERS-TLS1.3 \
873 --pskusername Client_identity --pskkey=6162636465666768696a6b6c6d6e6f71 \
874 localhost" \
875 1 \
876 -s "found psk key exchange modes extension" \
877 -s "found pre_shared_key extension" \
878 -S "Found PSK_EPHEMERAL KEX MODE" \
879 -s "Found PSK KEX MODE" \
880 -s "Invalid binder." \
881 -S "key exchange mode: psk$" \
882 -S "key exchange mode: psk_ephemeral" \
883 -S "key exchange mode: ephemeral"
884
885requires_openssl_tls1_3
886requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
887requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800888run_test "TLS 1.3: O->m: ephemeral_all/psk, fail, no common kex mode" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800889 "$P_SRV force_version=tls13 tls13_kex_modes=psk debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
890 "$O_NEXT_CLI -tls1_3 -msg \
891 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f70" \
892 1 \
893 -s "found psk key exchange modes extension" \
894 -s "found pre_shared_key extension" \
895 -s "Found PSK_EPHEMERAL KEX MODE" \
896 -S "Found PSK KEX MODE" \
897 -S "key exchange mode: psk$" \
898 -S "key exchange mode: psk_ephemeral" \
899 -S "key exchange mode: ephemeral"
900
901requires_openssl_tls1_3
902requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
903requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800904run_test "TLS 1.3: O->m: all/psk, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800905 "$P_SRV force_version=tls13 tls13_kex_modes=psk debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
906 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
907 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f70" \
908 0 \
909 -s "found psk key exchange modes extension" \
910 -s "found pre_shared_key extension" \
911 -s "Found PSK_EPHEMERAL KEX MODE" \
912 -s "Found PSK KEX MODE" \
913 -s "Pre shared key found" \
914 -S "No matched PSK or ticket" \
915 -s "key exchange mode: psk$" \
916 -S "key exchange mode: psk_ephemeral" \
917 -S "key exchange mode: ephemeral"
918
919requires_openssl_tls1_3
920requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
921requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800922run_test "TLS 1.3: O->m: all/psk, fail, key id mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800923 "$P_SRV force_version=tls13 tls13_kex_modes=psk debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
924 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
925 -psk_identity wrong_identity -psk 6162636465666768696a6b6c6d6e6f70" \
926 1 \
927 -s "found psk key exchange modes extension" \
928 -s "found pre_shared_key extension" \
929 -s "Found PSK_EPHEMERAL KEX MODE" \
930 -s "Found PSK KEX MODE" \
931 -s "No matched PSK or ticket" \
932 -S "key exchange mode: psk$" \
933 -S "key exchange mode: psk_ephemeral" \
934 -S "key exchange mode: ephemeral"
935
936requires_openssl_tls1_3
937requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
938requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +0800939run_test "TLS 1.3: O->m: all/psk, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800940 "$P_SRV force_version=tls13 tls13_kex_modes=psk debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
941 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
942 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f71" \
943 1 \
944 -s "found psk key exchange modes extension" \
945 -s "found pre_shared_key extension" \
946 -s "Found PSK_EPHEMERAL KEX MODE" \
947 -s "Found PSK KEX MODE" \
948 -s "Invalid binder." \
949 -S "key exchange mode: psk$" \
950 -S "key exchange mode: psk_ephemeral" \
951 -S "key exchange mode: ephemeral"
952
953requires_openssl_tls1_3
954requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
955requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
956requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800957run_test "TLS 1.3: O->m: ephemeral_all/psk_ephemeral, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800958 "$P_SRV force_version=tls13 tls13_kex_modes=psk_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
959 "$O_NEXT_CLI -tls1_3 -msg \
960 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f70" \
961 0 \
962 -s "found psk key exchange modes extension" \
963 -s "found pre_shared_key extension" \
964 -s "Found PSK_EPHEMERAL KEX MODE" \
965 -S "Found PSK KEX MODE" \
966 -s "Pre shared key found" \
967 -S "No matched PSK or ticket" \
968 -S "key exchange mode: psk$" \
969 -s "key exchange mode: psk_ephemeral" \
970 -S "key exchange mode: ephemeral"
971
972requires_openssl_tls1_3
973requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
974requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
975requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800976run_test "TLS 1.3: O->m: ephemeral_all/psk_ephemeral, fail, key id mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800977 "$P_SRV force_version=tls13 tls13_kex_modes=psk_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
978 "$O_NEXT_CLI -tls1_3 -msg \
979 -psk_identity wrong_identity -psk 6162636465666768696a6b6c6d6e6f70" \
980 1 \
981 -s "found psk key exchange modes extension" \
982 -s "found pre_shared_key extension" \
983 -s "Found PSK_EPHEMERAL KEX MODE" \
984 -S "Found PSK KEX MODE" \
985 -s "No matched PSK or ticket" \
986 -S "key exchange mode: psk$" \
987 -S "key exchange mode: psk_ephemeral" \
988 -S "key exchange mode: ephemeral"
989
990requires_openssl_tls1_3
991requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
992requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
993requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +0800994run_test "TLS 1.3: O->m: ephemeral_all/psk_ephemeral, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +0800995 "$P_SRV force_version=tls13 tls13_kex_modes=psk_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
996 "$O_NEXT_CLI -tls1_3 -msg \
997 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f71" \
998 1 \
999 -s "found psk key exchange modes extension" \
1000 -s "found pre_shared_key extension" \
1001 -s "Found PSK_EPHEMERAL KEX MODE" \
1002 -S "Found PSK KEX MODE" \
1003 -s "Invalid binder." \
1004 -S "key exchange mode: psk$" \
1005 -S "key exchange mode: psk_ephemeral" \
1006 -S "key exchange mode: ephemeral"
1007
1008requires_openssl_tls1_3
1009requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1010requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1011requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +08001012run_test "TLS 1.3: O->m: all/psk_ephemeral, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001013 "$P_SRV force_version=tls13 tls13_kex_modes=psk_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1014 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
1015 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1016 0 \
1017 -s "found psk key exchange modes extension" \
1018 -s "found pre_shared_key extension" \
1019 -s "Found PSK_EPHEMERAL KEX MODE" \
1020 -s "Found PSK KEX MODE" \
1021 -s "Pre shared key found" \
1022 -S "No matched PSK or ticket" \
1023 -S "key exchange mode: psk$" \
1024 -s "key exchange mode: psk_ephemeral" \
1025 -S "key exchange mode: ephemeral"
1026
1027requires_openssl_tls1_3
1028requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1029requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1030requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +08001031run_test "TLS 1.3: O->m: all/psk_ephemeral, fail, key id mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001032 "$P_SRV force_version=tls13 tls13_kex_modes=psk_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1033 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
1034 -psk_identity wrong_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1035 1 \
1036 -s "found psk key exchange modes extension" \
1037 -s "found pre_shared_key extension" \
1038 -s "Found PSK_EPHEMERAL KEX MODE" \
1039 -s "Found PSK KEX MODE" \
1040 -s "No matched PSK or ticket" \
1041 -S "key exchange mode: psk$" \
1042 -S "key exchange mode: psk_ephemeral" \
1043 -S "key exchange mode: ephemeral"
1044
1045requires_openssl_tls1_3
1046requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1047requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1048requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +08001049run_test "TLS 1.3: O->m: all/psk_ephemeral, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001050 "$P_SRV force_version=tls13 tls13_kex_modes=psk_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1051 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
1052 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f71" \
1053 1 \
1054 -s "found psk key exchange modes extension" \
1055 -s "found pre_shared_key extension" \
1056 -s "Found PSK_EPHEMERAL KEX MODE" \
1057 -s "Found PSK KEX MODE" \
1058 -s "Invalid binder." \
1059 -S "key exchange mode: psk$" \
1060 -S "key exchange mode: psk_ephemeral" \
1061 -S "key exchange mode: ephemeral"
1062
1063requires_openssl_tls1_3
1064requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1065requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1066requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +08001067run_test "TLS 1.3: O->m: ephemeral_all/psk_all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001068 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1069 "$O_NEXT_CLI -tls1_3 -msg \
1070 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1071 0 \
1072 -s "found psk key exchange modes extension" \
1073 -s "found pre_shared_key extension" \
1074 -s "Found PSK_EPHEMERAL KEX MODE" \
1075 -S "Found PSK KEX MODE" \
1076 -s "Pre shared key found" \
1077 -S "No matched PSK or ticket" \
1078 -S "key exchange mode: psk$" \
1079 -s "key exchange mode: psk_ephemeral" \
1080 -S "key exchange mode: ephemeral"
1081
1082requires_openssl_tls1_3
1083requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1084requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1085requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +08001086run_test "TLS 1.3: O->m: ephemeral_all/psk_all, fail, key id mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001087 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1088 "$O_NEXT_CLI -tls1_3 -msg \
1089 -psk_identity wrong_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1090 1 \
1091 -s "found psk key exchange modes extension" \
1092 -s "found pre_shared_key extension" \
1093 -s "Found PSK_EPHEMERAL KEX MODE" \
1094 -S "Found PSK KEX MODE" \
1095 -s "No matched PSK or ticket" \
1096 -S "key exchange mode: psk$" \
1097 -S "key exchange mode: psk_ephemeral" \
1098 -S "key exchange mode: ephemeral"
1099
1100requires_openssl_tls1_3
1101requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1102requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1103requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +08001104run_test "TLS 1.3: O->m: ephemeral_all/psk_all, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001105 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1106 "$O_NEXT_CLI -tls1_3 -msg \
1107 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f71" \
1108 1 \
1109 -s "found psk key exchange modes extension" \
1110 -s "found pre_shared_key extension" \
1111 -s "Found PSK_EPHEMERAL KEX MODE" \
1112 -S "Found PSK KEX MODE" \
1113 -s "Invalid binder." \
1114 -S "key exchange mode: psk$" \
1115 -S "key exchange mode: psk_ephemeral" \
1116 -S "key exchange mode: ephemeral"
1117
1118requires_openssl_tls1_3
1119requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1120requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1121requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +08001122run_test "TLS 1.3: O->m: all/psk_all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001123 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1124 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
1125 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1126 0 \
1127 -s "found psk key exchange modes extension" \
1128 -s "found pre_shared_key extension" \
1129 -s "Found PSK_EPHEMERAL KEX MODE" \
1130 -s "Found PSK KEX MODE" \
1131 -s "Pre shared key found" \
1132 -S "No matched PSK or ticket" \
1133 -S "key exchange mode: psk$" \
1134 -s "key exchange mode: psk_ephemeral" \
1135 -S "key exchange mode: ephemeral"
1136
1137requires_openssl_tls1_3
1138requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1139requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1140requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +08001141run_test "TLS 1.3: O->m: all/psk_all, fail, key id mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001142 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1143 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
1144 -psk_identity wrong_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1145 1 \
1146 -s "found psk key exchange modes extension" \
1147 -s "found pre_shared_key extension" \
1148 -s "Found PSK_EPHEMERAL KEX MODE" \
1149 -s "Found PSK KEX MODE" \
1150 -s "No matched PSK or ticket" \
1151 -S "key exchange mode: psk$" \
1152 -S "key exchange mode: psk_ephemeral" \
1153 -S "key exchange mode: ephemeral"
1154
1155requires_openssl_tls1_3
1156requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1157requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1158requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +08001159run_test "TLS 1.3: O->m: all/psk_all, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001160 "$P_SRV force_version=tls13 tls13_kex_modes=psk_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1161 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
1162 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f71" \
1163 1 \
1164 -s "found psk key exchange modes extension" \
1165 -s "found pre_shared_key extension" \
1166 -s "Found PSK_EPHEMERAL KEX MODE" \
1167 -s "Found PSK KEX MODE" \
1168 -s "Invalid binder." \
1169 -S "key exchange mode: psk$" \
1170 -S "key exchange mode: psk_ephemeral" \
1171 -S "key exchange mode: ephemeral"
1172
1173requires_openssl_tls1_3
1174requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1175requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1176requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +08001177run_test "TLS 1.3: O->m: ephemeral_all/ephemeral_all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001178 "$P_SRV force_version=tls13 tls13_kex_modes=ephemeral_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1179 "$O_NEXT_CLI -tls1_3 -msg \
1180 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1181 0 \
1182 -s "found psk key exchange modes extension" \
1183 -s "found pre_shared_key extension" \
1184 -s "Found PSK_EPHEMERAL KEX MODE" \
1185 -S "Found PSK KEX MODE" \
1186 -s "Pre shared key found" \
1187 -S "No matched PSK or ticket" \
1188 -S "key exchange mode: psk$" \
1189 -s "key exchange mode: psk_ephemeral" \
1190 -S "key exchange mode: ephemeral"
1191
1192requires_openssl_tls1_3
1193requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1194requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1195requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +08001196run_test "TLS 1.3: O->m: ephemeral_all/ephemeral_all, good, key id mismatch, dhe." \
Jerry Yue7b4b582022-08-25 17:53:13 +08001197 "$P_SRV force_version=tls13 tls13_kex_modes=ephemeral_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1198 "$O_NEXT_CLI -tls1_3 -msg \
1199 -psk_identity wrong_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1200 0 \
1201 -s "found psk key exchange modes extension" \
1202 -s "found pre_shared_key extension" \
1203 -s "Found PSK_EPHEMERAL KEX MODE" \
1204 -S "Found PSK KEX MODE" \
1205 -s "No matched PSK or ticket" \
1206 -S "key exchange mode: psk$" \
1207 -S "key exchange mode: psk_ephemeral" \
1208 -s "key exchange mode: ephemeral"
1209
1210requires_openssl_tls1_3
1211requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1212requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1213requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +08001214run_test "TLS 1.3: O->m: ephemeral_all/ephemeral_all, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001215 "$P_SRV force_version=tls13 tls13_kex_modes=ephemeral_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1216 "$O_NEXT_CLI -tls1_3 -msg \
1217 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f71" \
1218 1 \
1219 -s "found psk key exchange modes extension" \
1220 -s "found pre_shared_key extension" \
1221 -s "Found PSK_EPHEMERAL KEX MODE" \
1222 -S "Found PSK KEX MODE" \
1223 -s "Invalid binder." \
1224 -S "key exchange mode: psk$" \
1225 -S "key exchange mode: psk_ephemeral" \
1226 -S "key exchange mode: ephemeral"
1227
1228requires_openssl_tls1_3
1229requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1230requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1231requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +08001232run_test "TLS 1.3: O->m: all/ephemeral_all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001233 "$P_SRV force_version=tls13 tls13_kex_modes=ephemeral_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1234 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
1235 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1236 0 \
1237 -s "found psk key exchange modes extension" \
1238 -s "found pre_shared_key extension" \
1239 -s "Found PSK_EPHEMERAL KEX MODE" \
1240 -s "Found PSK KEX MODE" \
1241 -s "Pre shared key found" \
1242 -S "No matched PSK or ticket" \
1243 -S "key exchange mode: psk$" \
1244 -s "key exchange mode: psk_ephemeral" \
1245 -S "key exchange mode: ephemeral"
1246
1247requires_openssl_tls1_3
1248requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1249requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1250requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +08001251run_test "TLS 1.3: O->m: all/ephemeral_all, good, key id mismatch, dhe." \
Jerry Yue7b4b582022-08-25 17:53:13 +08001252 "$P_SRV force_version=tls13 tls13_kex_modes=ephemeral_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1253 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
1254 -psk_identity wrong_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1255 0 \
1256 -s "found psk key exchange modes extension" \
1257 -s "found pre_shared_key extension" \
1258 -s "Found PSK_EPHEMERAL KEX MODE" \
1259 -s "Found PSK KEX MODE" \
1260 -s "No matched PSK or ticket" \
1261 -S "key exchange mode: psk$" \
1262 -S "key exchange mode: psk_ephemeral" \
1263 -s "key exchange mode: ephemeral"
1264
1265requires_openssl_tls1_3
1266requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1267requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1268requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +08001269run_test "TLS 1.3: O->m: all/ephemeral_all, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001270 "$P_SRV force_version=tls13 tls13_kex_modes=ephemeral_all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1271 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
1272 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f71" \
1273 1 \
1274 -s "found psk key exchange modes extension" \
1275 -s "found pre_shared_key extension" \
1276 -s "Found PSK_EPHEMERAL KEX MODE" \
1277 -s "Found PSK KEX MODE" \
1278 -s "Invalid binder." \
1279 -S "key exchange mode: psk$" \
1280 -S "key exchange mode: psk_ephemeral" \
1281 -S "key exchange mode: ephemeral"
1282
1283requires_openssl_tls1_3
1284requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1285requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1286requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +08001287run_test "TLS 1.3: O->m: ephemeral_all/all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001288 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1289 "$O_NEXT_CLI -tls1_3 -msg \
1290 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1291 0 \
1292 -s "found psk key exchange modes extension" \
1293 -s "found pre_shared_key extension" \
1294 -s "Found PSK_EPHEMERAL KEX MODE" \
1295 -S "Found PSK KEX MODE" \
1296 -s "Pre shared key found" \
1297 -S "No matched PSK or ticket" \
1298 -S "key exchange mode: psk$" \
1299 -s "key exchange mode: psk_ephemeral" \
1300 -S "key exchange mode: ephemeral"
1301
1302requires_openssl_tls1_3
1303requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1304requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1305requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +08001306run_test "TLS 1.3: O->m: ephemeral_all/all, good, key id mismatch, dhe." \
Jerry Yue7b4b582022-08-25 17:53:13 +08001307 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1308 "$O_NEXT_CLI -tls1_3 -msg \
1309 -psk_identity wrong_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1310 0 \
1311 -s "found psk key exchange modes extension" \
1312 -s "found pre_shared_key extension" \
1313 -s "Found PSK_EPHEMERAL KEX MODE" \
1314 -S "Found PSK KEX MODE" \
1315 -s "No matched PSK or ticket" \
1316 -S "key exchange mode: psk$" \
1317 -S "key exchange mode: psk_ephemeral" \
1318 -s "key exchange mode: ephemeral"
1319
1320requires_openssl_tls1_3
1321requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1322requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1323requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +08001324run_test "TLS 1.3: O->m: ephemeral_all/all, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001325 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1326 "$O_NEXT_CLI -tls1_3 -msg \
1327 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f71" \
1328 1 \
1329 -s "found psk key exchange modes extension" \
1330 -s "found pre_shared_key extension" \
1331 -s "Found PSK_EPHEMERAL KEX MODE" \
1332 -S "Found PSK KEX MODE" \
1333 -s "Invalid binder." \
1334 -S "key exchange mode: psk$" \
1335 -S "key exchange mode: psk_ephemeral" \
1336 -S "key exchange mode: ephemeral"
1337
1338requires_openssl_tls1_3
1339requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1340requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1341requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +08001342run_test "TLS 1.3: O->m: all/all, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001343 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1344 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
1345 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1346 0 \
1347 -s "found psk key exchange modes extension" \
1348 -s "found pre_shared_key extension" \
1349 -s "Found PSK_EPHEMERAL KEX MODE" \
1350 -s "Found PSK KEX MODE" \
1351 -s "Pre shared key found" \
1352 -S "No matched PSK or ticket" \
1353 -S "key exchange mode: psk$" \
1354 -s "key exchange mode: psk_ephemeral" \
1355 -S "key exchange mode: ephemeral"
1356
1357requires_openssl_tls1_3
1358requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1359requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1360requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +08001361run_test "TLS 1.3: O->m: all/all, good, key id mismatch, dhe." \
Jerry Yue7b4b582022-08-25 17:53:13 +08001362 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1363 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
1364 -psk_identity wrong_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1365 0 \
1366 -s "found psk key exchange modes extension" \
1367 -s "found pre_shared_key extension" \
1368 -s "Found PSK_EPHEMERAL KEX MODE" \
1369 -s "Found PSK KEX MODE" \
1370 -s "No matched PSK or ticket" \
1371 -S "key exchange mode: psk$" \
1372 -S "key exchange mode: psk_ephemeral" \
1373 -s "key exchange mode: ephemeral"
1374
1375requires_openssl_tls1_3
1376requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1377requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1378requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +08001379run_test "TLS 1.3: O->m: all/all, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001380 "$P_SRV force_version=tls13 tls13_kex_modes=all debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1381 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
1382 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f71" \
1383 1 \
1384 -s "found psk key exchange modes extension" \
1385 -s "found pre_shared_key extension" \
1386 -s "Found PSK_EPHEMERAL KEX MODE" \
1387 -s "Found PSK KEX MODE" \
1388 -s "Invalid binder." \
1389 -S "key exchange mode: psk$" \
1390 -S "key exchange mode: psk_ephemeral" \
1391 -S "key exchange mode: ephemeral"
1392
1393requires_openssl_tls1_3
1394requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1395requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1396requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu7101b872022-08-31 14:15:23 +08001397run_test "TLS 1.3: O->m: ephemeral_all/psk_or_ephemeral, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001398 "$P_SRV force_version=tls13 tls13_kex_modes=psk_or_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1399 "$O_NEXT_CLI -tls1_3 -msg \
1400 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1401 0 \
1402 -s "found psk key exchange modes extension" \
1403 -s "found pre_shared_key extension" \
1404 -s "Found PSK_EPHEMERAL KEX MODE" \
1405 -S "Found PSK KEX MODE" \
1406 -s "Pre shared key found" \
1407 -S "No matched PSK or ticket" \
1408 -S "key exchange mode: psk$" \
1409 -S "key exchange mode: psk_ephemeral" \
1410 -s "key exchange mode: ephemeral"
1411
1412requires_openssl_tls1_3
1413requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1414requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1415requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +08001416run_test "TLS 1.3: O->m: all/psk_or_ephemeral, good" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001417 "$P_SRV force_version=tls13 tls13_kex_modes=psk_or_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1418 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
1419 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f70" \
1420 0 \
1421 -s "found psk key exchange modes extension" \
1422 -s "found pre_shared_key extension" \
1423 -s "Found PSK_EPHEMERAL KEX MODE" \
1424 -s "Found PSK KEX MODE" \
1425 -s "Pre shared key found" \
1426 -S "No matched PSK or ticket" \
1427 -S "key exchange mode: psk$" \
1428 -S "key exchange mode: psk_ephemeral" \
1429 -s "key exchange mode: ephemeral"
1430
1431requires_openssl_tls1_3
1432requires_all_configs_enabled MBEDTLS_SSL_PROTO_TLS1_3 MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE MBEDTLS_SSL_SRV_C MBEDTLS_DEBUG_C
1433requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
1434requires_any_configs_enabled MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
Jerry Yu63d40e62022-08-29 20:38:39 +08001435run_test "TLS 1.3: O->m: all/psk_or_ephemeral, fail, key material mismatch" \
Jerry Yue7b4b582022-08-25 17:53:13 +08001436 "$P_SRV force_version=tls13 tls13_kex_modes=psk_or_ephemeral debug_level=5 psk_identity=Client_identity psk=6162636465666768696a6b6c6d6e6f70" \
1437 "$O_NEXT_CLI -tls1_3 -msg -allow_no_dhe_kex \
1438 -psk_identity Client_identity -psk 6162636465666768696a6b6c6d6e6f71" \
1439 1 \
1440 -s "found psk key exchange modes extension" \
1441 -s "found pre_shared_key extension" \
1442 -s "Found PSK_EPHEMERAL KEX MODE" \
1443 -s "Found PSK KEX MODE" \
1444 -s "Invalid binder." \
1445 -S "key exchange mode: psk$" \
1446 -S "key exchange mode: psk_ephemeral" \
1447 -S "key exchange mode: ephemeral"