From: Lennart Poettering Date: Thu, 8 Dec 2016 18:39:50 +0000 (+0100) Subject: util-lib: add new path_is_temporary_fs() API X-Git-Tag: v233~237^2~36 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ffeb828596ebc9e5b20333c72862569b8b0875ad;p=thirdparty%2Fsystemd.git util-lib: add new path_is_temporary_fs() API As simple wrapper around fd_is_temporary_fs(). --- diff --git a/src/basic/stat-util.c b/src/basic/stat-util.c index 848572687e2..ac5db710229 100644 --- a/src/basic/stat-util.c +++ b/src/basic/stat-util.c @@ -224,3 +224,13 @@ int fd_is_temporary_fs(int fd) { return is_temporary_fs(&s); } + +int path_is_temporary_fs(const char *path) { + _cleanup_close_ int fd = -1; + + fd = open(path, O_RDONLY|O_CLOEXEC|O_NOCTTY); + if (fd < 0) + return -errno; + + return fd_is_temporary_fs(fd); +} diff --git a/src/basic/stat-util.h b/src/basic/stat-util.h index 56d28f791e3..5d571efe186 100644 --- a/src/basic/stat-util.h +++ b/src/basic/stat-util.h @@ -61,6 +61,7 @@ int path_check_fstype(const char *path, statfs_f_type_t magic_value); bool is_temporary_fs(const struct statfs *s) _pure_; int fd_is_temporary_fs(int fd); +int path_is_temporary_fs(const char *path); /* Because statfs.t_type can be int on some architectures, we have to cast * the const magic to the type, otherwise the compiler warns about