diff options
author | Edward Tomasz Napierala <trasz@FreeBSD.org> | 2009-07-08 15:23:18 +0000 |
---|---|---|
committer | Edward Tomasz Napierala <trasz@FreeBSD.org> | 2009-07-08 15:23:18 +0000 |
commit | c38898116a2737ea168993b9419c4370e7280303 (patch) | |
tree | e525a39d82e8f09edff07a5f34dbc91455121d99 /include/unistd.h | |
parent | 6b53d5c0e71582ff79b1490b71c13fcdb9a1680b (diff) | |
download | src-test-c38898116a2737ea168993b9419c4370e7280303.tar.gz src-test-c38898116a2737ea168993b9419c4370e7280303.zip |
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)
Notes
Notes:
svn path=/head/; revision=195458
Diffstat (limited to 'include/unistd.h')
-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 aa027c21ae72b..b4b7516bc6acc 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 |