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.
This commit is contained in:
Lennart Poettering
2016-12-21 19:09:32 +01:00
parent fc2288f0be
commit 436e916eae
2 changed files with 21 additions and 2 deletions
+2 -2
View File
@@ -204,7 +204,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;
@@ -228,7 +228,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;