summaryrefslogtreecommitdiffstats
path: root/contrib
diff options
context:
space:
mode:
Diffstat (limited to 'contrib')
-rw-r--r--contrib/pam_zfs_key/pam_zfs_key.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/contrib/pam_zfs_key/pam_zfs_key.c b/contrib/pam_zfs_key/pam_zfs_key.c
index 4cafc37b9..0856c7534 100644
--- a/contrib/pam_zfs_key/pam_zfs_key.c
+++ b/contrib/pam_zfs_key/pam_zfs_key.c
@@ -82,7 +82,11 @@ alloc_pw_size(size_t len)
return (NULL);
}
pw->len = len;
- pw->value = malloc(len);
+ /*
+ * The use of malloc() triggers a spurious gcc 11 -Wmaybe-uninitialized
+ * warning in the mlock() function call below, so use calloc().
+ */
+ pw->value = calloc(len, 1);
if (!pw->value) {
free(pw);
return (NULL);
@@ -99,7 +103,11 @@ alloc_pw_string(const char *source)
return (NULL);
}
pw->len = strlen(source) + 1;
- pw->value = malloc(pw->len);
+ /*
+ * The use of malloc() triggers a spurious gcc 11 -Wmaybe-uninitialized
+ * warning in the mlock() function call below, so use calloc().
+ */
+ pw->value = calloc(pw->len, 1);
if (!pw->value) {
free(pw);
return (NULL);