diff options
author | trasz <trasz@FreeBSD.org> | 2009-07-08 15:23:18 +0000 |
---|---|---|
committer | trasz <trasz@FreeBSD.org> | 2009-07-08 15:23:18 +0000 |
commit | 09784497a28d12cd83a37f13a040e4ad325ef692 (patch) | |
tree | e525a39d82e8f09edff07a5f34dbc91455121d99 /include | |
parent | 82187ebf4442997e887a1eb21292f91962a323e1 (diff) | |
download | FreeBSD-src-09784497a28d12cd83a37f13a040e4ad325ef692.zip FreeBSD-src-09784497a28d12cd83a37f13a040e4ad325ef692.tar.gz |
There is an optimization in chmod(1), that makes it not to call chmod(2)
if the new file mode is the same as it was before; however, this
optimization must be disabled for filesystems that support NFSv4 ACLs.
Chmod uses pathconf(2) to determine whether this is the case - however,
pathconf(2) always follows symbolic links, while the 'chmod -h' doesn't.
This change adds lpathconf(3) to make it possible to solve that problem
in a clean way.
Reviewed by: rwatson (earlier version)
Approved by: re (kib)
Diffstat (limited to 'include')
-rw-r--r-- | include/unistd.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/unistd.h b/include/unistd.h index aa027c2..b4b7516 100644 --- a/include/unistd.h +++ b/include/unistd.h @@ -513,6 +513,7 @@ int initgroups(const char *, gid_t); int iruserok(unsigned long, int, const char *, const char *); int iruserok_sa(const void *, int, int, const char *, const char *); int issetugid(void); +long lpathconf(const char *, int); #ifndef _MKDTEMP_DECLARED char *mkdtemp(char *); #define _MKDTEMP_DECLARED |