From: Andre Noll Date: Sun, 10 Jul 2016 18:59:34 +0000 (+0200) Subject: gcrypt: Always initialize result pointer. X-Git-Tag: v0.5.7~29 X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=commitdiff_plain;h=c998e827328c7989986e4fb91048e7f427f722a8 gcrypt: Always initialize result pointer. If the call to mmap_full_file() at the beginning of decode_key() fails, we return without initializing the result pointer to NULL. This does not matter now, because the only caller of decode_key() does not look at the pointer value in the error case. Let's be defensive here and initialize the pointer anyway. --- diff --git a/gcrypt.c b/gcrypt.c index 45a1c67d..63f8fff3 100644 --- a/gcrypt.c +++ b/gcrypt.c @@ -212,7 +212,7 @@ static int decode_key(const char *key_file, const char *header_str, ret = mmap_full_file(key_file, O_RDONLY, &map, &map_size, NULL); if (ret < 0) - return ret; + goto out; ret = -E_KEY_MARKER; if (strncmp(map, header_str, strlen(header_str))) goto unmap; @@ -257,6 +257,7 @@ unmap: free(blob); blob = NULL; } +out: *result = blob; return ret; }