From 9efe8cc9bb8d0f33a2ee6851889a9e121a46224b Mon Sep 17 00:00:00 2001 From: Lukas Slebodnik Date: Oct 13 2018 16:29:00 +0000 Subject: p11_child: Fix warnings may be used uninitialized The variable modules can be uninitialized in done section in case of failure p11_kit_uri_parse(uri_str, P11_KIT_URI_FOR_ANY, uri). And compiler can expect the variable "s" to be uninitialized in case of always matching condition for "Skip modules which do not match the PKCS#11 URI" src/p11_child/p11_child_openssl.c: In function ‘do_card’: src/p11_child/p11_child_openssl.c:1046:5: error: ‘modules’ may be used uninitialized in this function [-Werror=maybe-uninitialized] p11_kit_modules_finalize_and_release(modules); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/p11_child/p11_child_openssl.c:830:20: error: ‘s’ may be used uninitialized in this function [-Werror=maybe-uninitialized] slot_id = slots[s]; ~~~~~^~~ Merges: https://pagure.io/SSSD/sssd/pull-request/3853 --- diff --git a/src/p11_child/p11_child_openssl.c b/src/p11_child/p11_child_openssl.c index 000e1c9..cca5af2 100644 --- a/src/p11_child/p11_child_openssl.c +++ b/src/p11_child/p11_child_openssl.c @@ -666,8 +666,8 @@ errno_t do_card(TALLOC_CTX *mem_ctx, struct p11_ctx *p11_ctx, { int ret; size_t c; - size_t s; - CK_FUNCTION_LIST **modules; + size_t s = 0; + CK_FUNCTION_LIST **modules = NULL; CK_FUNCTION_LIST *module = NULL; char *mod_name; char *mod_file_name;