From: Michael Kerrisk Date: Fri, 21 Jul 2006 14:41:30 +0000 (+0000) Subject: New page for readlinkat(2). X-Git-Tag: man-pages-2.37~27 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c07981e7167a26b31a7fb76f5da97e399645c4cd;p=thirdparty%2Fman-pages.git New page for readlinkat(2). --- diff --git a/man2/readlinkat.2 b/man2/readlinkat.2 new file mode 100644 index 0000000000..e819b5b307 --- /dev/null +++ b/man2/readlinkat.2 @@ -0,0 +1,108 @@ +.\" Hey Emacs! This file is -*- nroff -*- source. +.\" +.\" This manpage is Copyright (C) 2006, Michael Kerrisk +.\" +.\" Permission is granted to make and distribute verbatim copies of this +.\" manual provided the copyright notice and this permission notice are +.\" preserved on all copies. +.\" +.\" Permission is granted to copy and distribute modified versions of this +.\" manual under the conditions for verbatim copying, provided that the +.\" entire resulting derived work is distributed under the terms of a +.\" permission notice identical to this one. +.\" +.\" Since the Linux kernel and libraries are constantly changing, this +.\" manual page may be incorrect or out-of-date. The author(s) assume no +.\" responsibility for errors or omissions, or for damages resulting from +.\" the use of the information contained herein. The author(s) may not +.\" have taken the same level of care in the production of this manual, +.\" which is licensed free of charge, as they might when working +.\" professionally. +.\" +.\" Formatted or processed versions of this manual, if unaccompanied by +.\" the source, must acknowledge the copyright and authors of this work. +.\" +.\" +.TH READLINKAT 2 2006-07-21 "Linux 2.6.16" "Linux Programmer's Manual" +.SH NAME +readlinkat \- read value of a symbolic link relative to a directory file descriptor +.SH SYNOPSIS +.nf +.B #include +.sp +.BI "int readlinkat(int " dirfd ", const char *" path \ +", char *" buf ", size_t " bufsiz ); +.fi +.SH DESCRIPTION +The +.BR readlinkat () +system call operates in exactly the same way as +.BR readlink (2), +except for the differences described in this manual page. + +If the pathname given in +.I path +is relative, then it is interpreted relative to the directory +referred to by the file descriptor +.IR dirfd +(rather than relative to the current working directory of +the calling process, as is done by +.BR readlink (2) +for a relative pathname). + +If the pathname given in +.I path +is relative and +.I dirfd +is the special value +.BR AT_FDCWD , +then +.I path +is interpreted relative to the current working +directory of the calling process (like +.BR readlink (2)). + +If the pathname given in +.IR path +is absolute, then +.I dirfd +is ignored. +.SH "RETURN VALUE" +On success, +.BR readlinkat () +returns 0. +On error, \-1 is returned and +.I errno +is set to indicate the error. +.SH ERRORS +The same errors that occur for +.BR readlink (2) +can also occur for +.BR readlinkat (). +The following additional errors can occur for +.BR readlinkat (): +.TP +.B EBADF +.I dirfd +is not a valid file descriptor. +.TP +.B ENOTDIR +.I path +is a relative path and +.I dirfd +is a file descriptor referring to a file other than a directory. +.SH NOTES +See +.BR openat (2) +for an explanation of the need for +.BR readlinkat (). +.SH "CONFORMING TO" +This system call is non-standard but is proposed +for inclusion in a future revision of POSIX.1. +.SH VERSIONS +.BR readlinkat () +was added to Linux in kernel 2.6.16. +.SH "SEE ALSO" +.BR openat (2), +.BR path_resolution (2), +.BR readlink (2)