From: Lennart Poettering Date: Tue, 20 Dec 2016 18:09:27 +0000 (+0100) Subject: util-lib: rework path_check_fstype() and path_is_temporary_fs() to use O_PATH X-Git-Tag: v233.3~105 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=ce18349eedcec2ed6074c89e5ce9e7bee0770ec0 util-lib: rework path_check_fstype() and path_is_temporary_fs() to use O_PATH Also, add tests to make sure this actually works as intended. --- diff --git a/src/basic/stat-util.c b/src/basic/stat-util.c index 0c3fbc8e1..9dbdae0a0 100644 --- a/src/basic/stat-util.c +++ b/src/basic/stat-util.c @@ -212,7 +212,7 @@ int fd_check_fstype(int fd, statfs_f_type_t magic_value) { int path_check_fstype(const char *path, statfs_f_type_t magic_value) { _cleanup_close_ int fd = -1; - fd = open(path, O_RDONLY|O_CLOEXEC|O_NOCTTY); + fd = open(path, O_RDONLY|O_CLOEXEC|O_NOCTTY|O_PATH); if (fd < 0) return -errno; @@ -237,7 +237,7 @@ int fd_is_temporary_fs(int fd) { int path_is_temporary_fs(const char *path) { _cleanup_close_ int fd = -1; - fd = open(path, O_RDONLY|O_CLOEXEC|O_NOCTTY); + fd = open(path, O_RDONLY|O_CLOEXEC|O_NOCTTY|O_PATH); if (fd < 0) return -errno;