]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
psktool: tighten allocation check
authorDaiki Ueno <ueno@gnu.org>
Tue, 11 May 2021 12:08:33 +0000 (14:08 +0200)
committerDaiki Ueno <ueno@gnu.org>
Tue, 11 May 2021 12:10:25 +0000 (14:10 +0200)
Spotted by gcc analyzer:
  psk.c:275:21: warning: use of possibly-NULL '_username.data' where non-null expected [CWE-690] [-Wanalyzer-possible-null-argument]
    275 |                 if (strncmp(p, (const char *) _username.data,
        |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Daiki Ueno <ueno@gnu.org>
src/psk.c

index 4b8a62957aac67542dacdc48b4354669b5541a83..58499bd08792c7ba3b54de9d5b4327c629cfd264 100644 (file)
--- a/src/psk.c
+++ b/src/psk.c
@@ -247,7 +247,11 @@ write_key(const char *username, const unsigned char *key, size_t key_size,
                _username.data = (void *)new_data;
                _username.size = new_size - 1;
        } else {
-               _username.data = (void *)strdup(username);
+               _username.data = (void *)gnutls_strdup(username);
+               if (!_username.data) {
+                       ret = -1;
+                       goto out;
+               }
                _username.size = strlen(username);
        }