From a49424af6a430bb2e83e606ee94c2549e1df0e1c Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 17 Jan 2018 12:00:12 +0100 Subject: [PATCH] fs-util: extra chase_symlink() safety check on "path" parameter It's not clear what an empty "path" is even supposed to mean, hence refuse. --- src/basic/fs-util.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/basic/fs-util.c b/src/basic/fs-util.c index 15f9958c05..f0df79d8ff 100644 --- a/src/basic/fs-util.c +++ b/src/basic/fs-util.c @@ -637,6 +637,9 @@ int chase_symlinks(const char *path, const char *original_root, unsigned flags, if ((flags & (CHASE_NONEXISTENT|CHASE_OPEN)) == (CHASE_NONEXISTENT|CHASE_OPEN)) return -EINVAL; + if (isempty(path)) + return -EINVAL; + /* This is a lot like canonicalize_file_name(), but takes an additional "root" parameter, that allows following * symlinks relative to a root directory, instead of the root of the host. *