]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
psk: added checks to satisfy static analyzers
authorNikos Mavrogiannopoulos <nmav@gnutls.org>
Mon, 30 Mar 2020 06:23:03 +0000 (08:23 +0200)
committerNikos Mavrogiannopoulos <nmav@gnutls.org>
Mon, 30 Mar 2020 06:23:05 +0000 (08:23 +0200)
Added null checks in legacy callbacks to avoid warnings from
static analyzers. The issues do not appear to be reproducible
in real-world use.

Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
lib/psk.c

index aa5220c27cbbc01a2a42247c100ab6861fa7045d..6ea3adb63c44f656582a2ef9a836f4d47891b41f 100644 (file)
--- a/lib/psk.c
+++ b/lib/psk.c
@@ -294,6 +294,9 @@ static int call_server_callback_legacy(gnutls_session_t session,
        gnutls_psk_server_credentials_t cred =
                        (gnutls_psk_server_credentials_t)
                                _gnutls_get_cred(session, GNUTLS_CRD_PSK);
+       if (unlikely(cred == NULL))
+         return gnutls_assert_val(-1);
+
        return cred->pwd_callback_legacy(session, (const char *) username->data, key);
 }
 
@@ -367,6 +370,9 @@ static int call_client_callback_legacy(gnutls_session_t session,
        gnutls_psk_client_credentials_t cred =
                        (gnutls_psk_client_credentials_t)
                                _gnutls_get_cred(session, GNUTLS_CRD_PSK);
+       if (unlikely(cred == NULL))
+         return gnutls_assert_val(-1);
+
 
        ret = cred->get_function_legacy(session, &user_p, key);