]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
tools: check output of called functions
authorNikos Mavrogiannopoulos <nmav@gnutls.org>
Mon, 13 Aug 2018 18:22:48 +0000 (20:22 +0200)
committerNikos Mavrogiannopoulos <nmav@gnutls.org>
Mon, 13 Aug 2018 19:50:32 +0000 (21:50 +0200)
Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
src/benchmark-tls.c
src/certtool-common.c
src/certtool.c
src/common.c
src/danetool.c
src/pkcs11.c

index 285010ae1fa4dd9e023b2ced345ec0db2b530567..b0004cf1afb3bda487614434110c2fe1a1dbc459 100644 (file)
@@ -301,7 +301,11 @@ static void test_ciphersuite(const char *cipher_prio, int size)
                gnutls_protocol_get_version(server)));
        fflush(stdout);
 
-       gnutls_rnd(GNUTLS_RND_NONCE, buffer, sizeof(buffer));
+       ret = gnutls_rnd(GNUTLS_RND_NONCE, buffer, sizeof(buffer));
+       if (ret < 0) {
+               fprintf(stderr, "Error in %s\n", str);
+               exit(1);
+       }
 
        start_benchmark(&st);
 
index d6f668b61fe56dbcd69e0c6ba43146b317bc63fe..e44ed5d5aa807026bd7514247ba67f11afe2cca5 100644 (file)
@@ -809,14 +809,20 @@ static void print_head(FILE * out, const char *txt, unsigned int size,
 {
        unsigned i;
        char *p, *ntxt;
+       int ret;
 
        if (cprint != 0) {
                if (size > 0)
-                       asprintf(&ntxt, "const unsigned char %s[%u] =",
-                                txt, size);
+                       ret = asprintf(&ntxt, "const unsigned char %s[%u] =",
+                                      txt, size);
                else
-                       asprintf(&ntxt, "const unsigned char %s[] =\n",
-                                txt);
+                       ret = asprintf(&ntxt, "const unsigned char %s[] =\n",
+                                      txt);
+
+               if (ret == -1) {
+                       fprintf(stderr, "memory error\n");
+                       app_exit(1);
+               }
 
                p = strstr(ntxt, "char");
                p += 5;
index 382765e78a6210bc6a398489e60cbbe187acf477..908cff37221bef5d9d18b82cc8982a21e1985cc7 100644 (file)
@@ -884,7 +884,11 @@ static gnutls_digest_algorithm_t get_dig(gnutls_x509_crt_t crt, common_info_st *
        gnutls_pubkey_t pubkey;
        int result;
 
-       gnutls_pubkey_init(&pubkey);
+       result = gnutls_pubkey_init(&pubkey);
+       if (result < 0) {
+               fprintf(stderr, "memory error\n");
+               app_exit(1);
+       }
 
        result = gnutls_pubkey_import_x509(pubkey, crt, 0);
        if (result < 0) {
@@ -1682,7 +1686,11 @@ void privkey_info(common_info_st * cinfo)
        size = fread(lbuffer, 1, lbuffer_size - 1, infile);
        lbuffer[size] = 0;
 
-       gnutls_x509_privkey_init(&key);
+       ret = gnutls_x509_privkey_init(&key);
+       if (ret < 0) {
+               fprintf(stderr, "privkey_init: %s", gnutls_strerror(ret));
+               app_exit(1);
+       }
 
        pem.data = lbuffer;
        pem.size = size;
@@ -1736,7 +1744,11 @@ static void privkey_to_rsa(common_info_st * cinfo)
        size = fread(lbuffer, 1, lbuffer_size - 1, infile);
        lbuffer[size] = 0;
 
-       gnutls_x509_privkey_init(&key);
+       ret = gnutls_x509_privkey_init(&key);
+       if (ret < 0) {
+               fprintf(stderr, "privkey_init: %s", gnutls_strerror(ret));
+               app_exit(1);
+       }
 
        pem.data = lbuffer;
        pem.size = size;
index ee6c47e01cd7663271b1b909336940304b63cdc4..a376fdacd8542701535c8bbf0829a5ef1724aab8 100644 (file)
@@ -1113,7 +1113,10 @@ token_callback(void *user, const char *label, const unsigned retry)
        }
        printf("Please insert token '%s' in slot and press enter\n",
               label);
-       fgets(buf, sizeof(buf), stdin);
+       if (fgets(buf, sizeof(buf), stdin) == NULL) {
+               fprintf(stderr, "error reading input\n");
+               return -1;
+       }
 
        return 0;
 }
index 3b4fe6046b2e2b46ee02af0dfd2d9348302703f4..b04d92b70eb70788289968a3340b100b965fb694 100644 (file)
@@ -645,7 +645,13 @@ gnutls_session_t init_tls_session(const char *hostname)
        }
        gnutls_session_set_ptr(session, &priv);
 
-       gnutls_set_default_priority(session);
+       ret = gnutls_set_default_priority(session);
+       if (ret < 0) {
+               fprintf(stderr, "error[%d]: %s\n", __LINE__,
+                       gnutls_strerror(ret));
+               app_exit(1);
+       }
+
        if (hostname && is_ip(hostname)==0) {
                gnutls_server_name_set(session, GNUTLS_NAME_DNS, hostname, strlen(hostname));
        }
index 30c188dda1d171a42bc09a15313f5d6eab696d75..0dc2c563fe360b9b92a11d8b0a058a6a9f5a9d21 100644 (file)
@@ -127,7 +127,10 @@ const char *get_key_algo_type(gnutls_pkcs11_obj_type_t otype, const char *objurl
 
        switch (otype) {
                case GNUTLS_PKCS11_OBJ_X509_CRT:
-                       gnutls_x509_crt_init(&crt);
+                       ret = gnutls_x509_crt_init(&crt);
+                       if (ret < 0)
+                               goto fail;
+
                        ret = gnutls_x509_crt_import_url(crt, objurl, flags);
                        if (ret < 0)
                                goto fail;
@@ -153,7 +156,10 @@ const char *get_key_algo_type(gnutls_pkcs11_obj_type_t otype, const char *objurl
                        gnutls_x509_crt_deinit(crt);
                        return p;
                case GNUTLS_PKCS11_OBJ_PUBKEY:
-                       gnutls_pubkey_init(&pubkey);
+                       ret = gnutls_pubkey_init(&pubkey);
+                       if (ret < 0)
+                               goto fail;
+
                        ret = gnutls_pubkey_import_url(pubkey, objurl, flags);
                        if (ret < 0)
                                goto fail;
@@ -176,7 +182,10 @@ const char *get_key_algo_type(gnutls_pkcs11_obj_type_t otype, const char *objurl
                        gnutls_pubkey_deinit(pubkey);
                        return p;
                case GNUTLS_PKCS11_OBJ_PRIVKEY:
-                       gnutls_privkey_init(&privkey);
+                       ret = gnutls_privkey_init(&privkey);
+                       if (ret < 0)
+                               goto fail;
+
                        ret = gnutls_privkey_import_url(privkey, objurl, flags);
                        if (ret < 0)
                                goto fail;
@@ -230,7 +239,11 @@ pkcs11_list(FILE * outfile, const char *url, int type, unsigned int flags,
 
        FIX(url, outfile, detailed, info);
 
-       gnutls_pkcs11_token_get_flags(url, &flags);
+       ret = gnutls_pkcs11_token_get_flags(url, &flags);
+       if (ret < 0) {
+               flags = 0;
+       }
+
        if (flags & GNUTLS_PKCS11_TOKEN_TRUSTED)
                print_exts = 1;