summaryrefslogtreecommitdiff
path: root/lib/session.c
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2019-06-28 21:08:32 +0200
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2019-06-29 20:36:18 +0200
commit3489f2f6c927605a1a3e2ef9d4e5b09f1aba6714 (patch)
tree33547fb5f07e6e0a8b4b955efdf9497028664005 /lib/session.c
parent687626edcdef4d391f6f19e23947c037f3bee1b9 (diff)
downloadgnutls-3489f2f6c927605a1a3e2ef9d4e5b09f1aba6714.tar.gz
gnutls_session_get_desc: avoid printing a NULL valuetmp-fix-desc
When gnutls_session_set_premaster() is used (under openconnect), it is possible that gnutls_session_get_desc will print a string like this: "(DTLS1.2)-(ECDHE-(null))-(AES-256-GCM)" With this change we ensure that we do not print null values. Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
Diffstat (limited to 'lib/session.c')
-rw-r--r--lib/session.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/session.c b/lib/session.c
index 68d1cebe5c..6deda99c07 100644
--- a/lib/session.c
+++ b/lib/session.c
@@ -413,16 +413,16 @@ char *gnutls_session_get_desc(gnutls_session_t session)
return NULL;
}
- if (kx == GNUTLS_KX_ECDHE_ECDSA || kx == GNUTLS_KX_ECDHE_RSA ||
- kx == GNUTLS_KX_ECDHE_PSK) {
+ if ((kx == GNUTLS_KX_ECDHE_ECDSA || kx == GNUTLS_KX_ECDHE_RSA ||
+ kx == GNUTLS_KX_ECDHE_PSK) && group_name) {
if (sign_str)
snprintf(kx_name, sizeof(kx_name), "(ECDHE-%s)-(%s)",
group_name, sign_str);
else
snprintf(kx_name, sizeof(kx_name), "(ECDHE-%s)",
group_name);
- } else if (kx == GNUTLS_KX_DHE_DSS || kx == GNUTLS_KX_DHE_RSA ||
- kx == GNUTLS_KX_DHE_PSK) {
+ } else if ((kx == GNUTLS_KX_DHE_DSS || kx == GNUTLS_KX_DHE_RSA ||
+ kx == GNUTLS_KX_DHE_PSK) && group_name) {
if (sign_str)
snprintf(kx_name, sizeof(kx_name), "(DHE-%s)-(%s)", group_name, sign_str);
else