From: Lennart Poettering Date: Thu, 23 Apr 2020 12:50:53 +0000 (+0200) Subject: stat-util: no need to open a file to check fs type X-Git-Tag: v246-rc1~495^2~2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=6d965610bde404f60c43accb12f570ab75d4195e;p=thirdparty%2Fsystemd.git stat-util: no need to open a file to check fs type --- diff --git a/src/basic/stat-util.c b/src/basic/stat-util.c index 5412ccbf7df..6a48af23ae6 100644 --- a/src/basic/stat-util.c +++ b/src/basic/stat-util.c @@ -178,13 +178,12 @@ int fd_is_fs_type(int fd, statfs_f_type_t magic_value) { } int path_is_fs_type(const char *path, statfs_f_type_t magic_value) { - _cleanup_close_ int fd = -1; + struct statfs s; - fd = open(path, O_RDONLY|O_CLOEXEC|O_NOCTTY|O_PATH); - if (fd < 0) + if (statfs(path, &s) < 0) return -errno; - return fd_is_fs_type(fd, magic_value); + return is_fs_type(&s, magic_value); } bool is_temporary_fs(const struct statfs *s) {