X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=plugins%2Fsudoers%2Fdefaults.c;h=6cab7e44e1a36bdb7dfcce66fc5bff826486d044;hb=2e444a5714593fb7659157cee2e7037577c0bdcd;hp=5046ec2e70ebfefebdf826af4813b0ec8ff69498;hpb=ca5f7615983706c51b50ac5a8bfc4e123263df0e;p=debian%2Fsudo diff --git a/plugins/sudoers/defaults.c b/plugins/sudoers/defaults.c index 5046ec2..6cab7e4 100644 --- a/plugins/sudoers/defaults.c +++ b/plugins/sudoers/defaults.c @@ -790,10 +790,8 @@ list_op(char *val, size_t len, struct sudo_defs_types *def, enum list_ops op) /* Add new node to the head of the list. */ if (op == add) { - cur = emalloc(sizeof(struct list_member)); - cur->value = emalloc(len + 1); - (void) memcpy(cur->value, val, len); - cur->value[len] = '\0'; + cur = ecalloc(1, sizeof(struct list_member)); + cur->value = estrndup(val, len); cur->next = def->sd_un.list; def->sd_un.list = cur; }