Blame SOURCES/0187-mount-point-honour-AT_SYMLINK_FOLLOW-correctly.patch
|
|
ff6046 |
From 24e6a5d1deac8aae11a6a3a22fb9b71cb77fdb33 Mon Sep 17 00:00:00 2001
|
|
|
ff6046 |
From: Lennart Poettering <lennart@poettering.net>
|
|
|
ff6046 |
Date: Sat, 8 Dec 2018 20:21:43 +0100
|
|
|
ff6046 |
Subject: [PATCH] mount-point: honour AT_SYMLINK_FOLLOW correctly
|
|
|
ff6046 |
|
|
|
ff6046 |
Fixes: #11092
|
|
|
ff6046 |
(cherry picked from commit be24321f3dae91a166166b239954032727439942)
|
|
|
ff6046 |
|
|
|
ff6046 |
Resolves: #1683319
|
|
|
ff6046 |
---
|
|
|
ff6046 |
src/basic/mount-util.c | 2 +-
|
|
|
ff6046 |
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
ff6046 |
|
|
|
ff6046 |
diff --git a/src/basic/mount-util.c b/src/basic/mount-util.c
|
|
|
ff6046 |
index ebe41a4c6c..3670b7f591 100644
|
|
|
ff6046 |
--- a/src/basic/mount-util.c
|
|
|
ff6046 |
+++ b/src/basic/mount-util.c
|
|
|
ff6046 |
@@ -109,7 +109,7 @@ static int fd_fdinfo_mnt_id(int fd, const char *filename, int flags, int *mnt_id
|
|
|
ff6046 |
if ((flags & AT_EMPTY_PATH) && isempty(filename))
|
|
|
ff6046 |
xsprintf(path, "/proc/self/fdinfo/%i", fd);
|
|
|
ff6046 |
else {
|
|
|
ff6046 |
- subfd = openat(fd, filename, O_CLOEXEC|O_PATH);
|
|
|
ff6046 |
+ subfd = openat(fd, filename, O_CLOEXEC|O_PATH|(flags & AT_SYMLINK_FOLLOW ? 0 : O_NOFOLLOW));
|
|
|
ff6046 |
if (subfd < 0)
|
|
|
ff6046 |
return -errno;
|
|
|
ff6046 |
|