From d5ca067c7bb47081c169ff8b0213c73418f0525e Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Thu, 17 Feb 2011 23:13:46 -0500 Subject: [PATCH] add portable lchown (trivial to support and a few ancient things want it..) --- include/sys/stat.h | 3 +++ src/stat/lchmod.c | 7 +++++++ 2 files changed, 10 insertions(+) create mode 100644 src/stat/lchmod.c diff --git a/include/sys/stat.h b/include/sys/stat.h index 627890f4..25c199f9 100644 --- a/include/sys/stat.h +++ b/include/sys/stat.h @@ -86,6 +86,9 @@ int mkdirat(int, const char *, mode_t); int mknodat(int, const char *, mode_t, dev_t); int mkfifoat(int, const char *, mode_t); +#ifdef _BSD_SOURCE +int lchmod(const char *, mode_t); +#endif #ifdef __cplusplus } diff --git a/src/stat/lchmod.c b/src/stat/lchmod.c new file mode 100644 index 00000000..c35f5861 --- /dev/null +++ b/src/stat/lchmod.c @@ -0,0 +1,7 @@ +#include +#include + +int lchmod(const char *path, mode_t mode) +{ + return fchmodat(AT_FDCWD, path, mode, AT_SYMLINK_NOFOLLOW); +} -- 2.25.1