From 8be204df2b70773d23695e01550c42f1b7c3c92f Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 17 Jul 2025 07:56:57 +0200 Subject: [PATCH] stat-util: add fd_verify_symlink() helper --- src/basic/stat-util.c | 4 ++++ src/basic/stat-util.h | 1 + 2 files changed, 5 insertions(+) diff --git a/src/basic/stat-util.c b/src/basic/stat-util.c index 5582c59037..9f2587fadd 100644 --- a/src/basic/stat-util.c +++ b/src/basic/stat-util.c @@ -108,6 +108,10 @@ int stat_verify_symlink(const struct stat *st) { return 0; } +int fd_verify_symlink(int fd) { + return verify_stat_at(fd, /* path= */ NULL, /* follow= */ false, stat_verify_symlink, /* verify= */ true); +} + int is_symlink(const char *path) { assert(!isempty(path)); return verify_stat_at(AT_FDCWD, path, false, stat_verify_symlink, false); diff --git a/src/basic/stat-util.h b/src/basic/stat-util.h index 17e712200a..a3c60e43c6 100644 --- a/src/basic/stat-util.h +++ b/src/basic/stat-util.h @@ -16,6 +16,7 @@ int is_dir_at(int fd, const char *path, bool follow); int is_dir(const char *path, bool follow); int stat_verify_symlink(const struct stat *st); +int fd_verify_symlink(int fd); int is_symlink(const char *path); int stat_verify_linked(const struct stat *st);