From 290843c3852c5d2fda6bef8f3214b23c7d6120ab Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Mon, 10 Jul 2017 21:36:59 +0200 Subject: [PATCH] mount: fix potential bad memory access when /proc/self/mountinfo is empty It's unlikely this can ever be triggered, but let's be safe rather than sorry, and handle the case where the list of mount points is zero, and the "l" array thus NULL. let's ensure we allocate at least one entry. --- src/mount/mount-tool.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/mount/mount-tool.c b/src/mount/mount-tool.c index 0ab06ac3b9d..9d56b407000 100644 --- a/src/mount/mount-tool.c +++ b/src/mount/mount-tool.c @@ -736,13 +736,13 @@ static int find_mount_points(const char *what, char ***list) { if (!GREEDY_REALLOC(l, bufsize, n + 2)) return log_oom(); - l[n] = strdup(where); - if (!l[n]) - return log_oom(); - - n++; + l[n++] = where; + where = NULL; } + if (!GREEDY_REALLOC(l, bufsize, n + 1)) + return log_oom(); + l[n] = NULL; *list = l; l = NULL; /* avoid freeing */ -- 2.47.3