diff options
author | Daiki Ueno <dueno@redhat.com> | 2018-05-03 09:39:15 +0200 |
---|---|---|
committer | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2018-05-26 04:12:03 +0000 |
commit | 0bf47b3ca36d951ddbc9d493fa4189aab2b95075 (patch) | |
tree | cc990e4d1a784a556a0120bcac54cf2a69e1e3a1 /tests/psk-file.c | |
parent | 300791196b170b51037f22ba9915b4587fb89bd7 (diff) | |
download | gnutls-0bf47b3ca36d951ddbc9d493fa4189aab2b95075.tar.gz |
ext/pre_shared_key: fix binder calculation when HRR is sent
In that case, ClientHello1 and HelloRetryRequest are included in the
PSK binder computation, not only the truncated ClientHello2.
Signed-off-by: Daiki Ueno <dueno@redhat.com>
Diffstat (limited to 'tests/psk-file.c')
-rw-r--r-- | tests/psk-file.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/tests/psk-file.c b/tests/psk-file.c index a73031193f..e1e058ffe9 100644 --- a/tests/psk-file.c +++ b/tests/psk-file.c @@ -87,7 +87,7 @@ static void client(int sd, const char *prio, const char *user, const gnutls_datu /* Initialize TLS session */ - gnutls_init(&session, GNUTLS_CLIENT); + gnutls_init(&session, GNUTLS_CLIENT|GNUTLS_KEY_SHARE_TOP); /* Use default priorities */ assert(gnutls_priority_set_direct(session, prio, NULL)>=0); @@ -392,6 +392,9 @@ void doit(void) run_test2("NORMAL:-VERS-ALL:+VERS-TLS1.3:+PSK:+DHE-PSK", NULL, "non-hex", &key, 0, 0, GNUTLS_E_FATAL_ALERT_RECEIVED, GNUTLS_E_KEYFILE_ERROR); run_test2("NORMAL:-VERS-ALL:+VERS-TLS1.3:+PSK:+DHE-PSK", NULL, "unknown", &key, 0, 0, GNUTLS_E_FATAL_ALERT_RECEIVED, GNUTLS_E_RECEIVED_ILLEGAL_PARAMETER); run_test2("NORMAL:-VERS-ALL:+VERS-TLS1.3:+PSK:+DHE-PSK", NULL, "jas", &wrong_key, 0, 0, GNUTLS_E_FATAL_ALERT_RECEIVED, GNUTLS_E_RECEIVED_ILLEGAL_PARAMETER); + + /* try with HelloRetryRequest and PSK */ + run_test2("NORMAL:-VERS-ALL:+VERS-TLS1.3:+DHE-PSK:-GROUP-ALL:+GROUP-FFDHE2048:+GROUP-FFDHE4096", "NORMAL:-VERS-ALL:+VERS-TLS1.3:+DHE-PSK:-GROUP-ALL:+GROUP-FFDHE4096", "jas", &key, 0, GNUTLS_KX_DHE_PSK, 0, 0); } #endif /* _WIN32 */ |