summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjilles <jilles@FreeBSD.org>2010-04-25 13:29:59 +0000
committerjilles <jilles@FreeBSD.org>2010-04-25 13:29:59 +0000
commitae7b50400b7f017ee665112105621796561bd7cc (patch)
treea68fb8ca2213b3c01ef488ca63ad67aff2383bc1
parent92afafdbaea12577c2cf577b4a7e54fb2c7fa263 (diff)
downloadFreeBSD-src-ae7b50400b7f017ee665112105621796561bd7cc.zip
FreeBSD-src-ae7b50400b7f017ee665112105621796561bd7cc.tar.gz
symlink(7): Add lpathconf(2) and *at system calls.
MFC after: 1 week
-rw-r--r--bin/ln/symlink.729
1 files changed, 27 insertions, 2 deletions
diff --git a/bin/ln/symlink.7 b/bin/ln/symlink.7
index 93bb27b..8c09f28 100644
--- a/bin/ln/symlink.7
+++ b/bin/ln/symlink.7
@@ -103,19 +103,23 @@ the system call
would return a file descriptor to the file
.Dq afile .
.Pp
-There are nine system calls that do not follow links, and which operate
+There are thirteen system calls that do not follow links, and which operate
on the symbolic link itself.
They are:
.Xr lchflags 2 ,
.Xr lchmod 2 ,
.Xr lchown 2 ,
+.Xr lpathconf 2 ,
.Xr lstat 2 ,
.Xr lutimes 2 ,
.Xr readlink 2 ,
+.Xr readlinkat 2 ,
.Xr rename 2 ,
+.Xr renameat 2 ,
.Xr rmdir 2 ,
+.Xr unlink 2 ,
and
-.Xr unlink 2 .
+.Xr unlinkat 2 .
Because
.Xr remove 3
is an alias for
@@ -123,9 +127,30 @@ is an alias for
it also does not follow symbolic links.
When
.Xr rmdir 2
+or
+.Xr unlinkat 2
+with the
+.Dv AT_REMOVEDIR
+flag
is applied to a symbolic link, it fails with the error
.Er ENOTDIR .
.Pp
+The
+.Xr linkat 2
+system call does not follow symbolic links
+unless given the
+.Dv AT_SYMLINK_FOLLOW
+flag.
+.Pp
+The following system calls follow symbolic links
+unless given the
+.Dv AT_SYMLINK_NOFOLLOW
+flag:
+.Xr fchmodat 2 ,
+.Xr fchownat 2
+and
+.Xr fstatat 2 .
+.Pp
The owner and group of an existing symbolic link can be changed by
means of the
.Xr lchown 2
OpenPOWER on IntegriCloud