加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
backport-stat-util-specify-O_DIRECTORY-when-reopening-dir-in-.patch 1.25 KB
一键复制 编辑 原始数据 按行查看 历史
From e1e32516f98a1f39ce763545de9a8664526d0b8a Mon Sep 17 00:00:00 2001
From: Lennart Poettering <lennart@poettering.net>
Date: Thu, 21 Oct 2021 18:07:06 +0200
Subject: [PATCH] stat-util: specify O_DIRECTORY when reopening dir in
dir_is_empty_at()
That way we can fail earlier if the specified fd is not actually a
directory.
(Also, it's not exactly according to standards to open things without
either O_RDONLY/O_RDWR...)
(cherry picked from commit b9d06522631a22d242374dc44a74c3b6459e3cb3)
Conflict:NA
Reference:https://github.com/systemd/systemd/commit/e1e32516f98a1f39ce763545de9a8664526d0b8a
---
src/basic/stat-util.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/basic/stat-util.c b/src/basic/stat-util.c
index 72a7e4a48b..56f7652cec 100644
--- a/src/basic/stat-util.c
+++ b/src/basic/stat-util.c
@@ -79,7 +79,7 @@ int dir_is_empty_at(int dir_fd, const char *path) {
} else {
/* Note that DUPing is not enough, as the internal pointer
* would still be shared and moved by FOREACH_DIRENT. */
- fd = fd_reopen(dir_fd, O_CLOEXEC);
+ fd = fd_reopen(dir_fd, O_RDONLY|O_DIRECTORY|O_CLOEXEC);
if (fd < 0)
return fd;
}
--
2.33.0
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化