summaryrefslogtreecommitdiff
path: root/lib/auth/dhe_psk.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/auth/dhe_psk.c')
-rw-r--r--lib/auth/dhe_psk.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/lib/auth/dhe_psk.c b/lib/auth/dhe_psk.c
index 6d66a6bb8b..a98ef9c9ef 100644
--- a/lib/auth/dhe_psk.c
+++ b/lib/auth/dhe_psk.c
@@ -316,14 +316,13 @@ proc_dhe_psk_client_kx(gnutls_session_t session, uint8_t * data,
return GNUTLS_E_ILLEGAL_SRP_USERNAME;
}
- memcpy(info->username, username.data, username.size);
- info->username[username.size] = 0;
+ _gnutls_copy_psk_username(info, &username);
/* Adjust the data */
data += username.size + 2;
ret =
- _gnutls_psk_pwd_find_entry(session, info->username, &psk_key);
+ _gnutls_psk_pwd_find_entry(session, info->username, info->username_len, &psk_key);
if (ret < 0)
return gnutls_assert_val(ret);
@@ -383,8 +382,7 @@ proc_ecdhe_psk_client_kx(gnutls_session_t session, uint8_t * data,
return GNUTLS_E_ILLEGAL_SRP_USERNAME;
}
- memcpy(info->username, username.data, username.size);
- info->username[username.size] = 0;
+ _gnutls_copy_psk_username(info, &username);
/* Adjust the data */
data += username.size + 2;
@@ -392,7 +390,7 @@ proc_ecdhe_psk_client_kx(gnutls_session_t session, uint8_t * data,
/* should never fail. It will always return a key even if it is
* a random one */
ret =
- _gnutls_psk_pwd_find_entry(session, info->username, &psk_key);
+ _gnutls_psk_pwd_find_entry(session, info->username, info->username_len, &psk_key);
if (ret < 0)
return gnutls_assert_val(ret);