X-Git-Url: http://git.osdn.net/view?p=linuxjm%2FLDP_man-pages.git;a=blobdiff_plain;f=original%2Fman2%2Flinkat.2;h=a7d6da56835a34208837f2fb379566a9dacfe1e9;hp=b5f8d28674edb30c7fb2f929988fbdecf89909e0;hb=83f9e5d087c3464d5131604d3c9893479e6228eb;hpb=c03a7a882c608ebf399d1b044ce7a6daa922351a diff --git a/original/man2/linkat.2 b/original/man2/linkat.2 index b5f8d286..a7d6da56 100644 --- a/original/man2/linkat.2 +++ b/original/man2/linkat.2 @@ -1,159 +1 @@ -.\" 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 LINKAT 2 2009-12-13 "Linux" "Linux Programmer's Manual" -.SH NAME -linkat \- create a file link relative to directory file descriptors -.SH SYNOPSIS -.nf -.B #include /* Definition of AT_* constants */ -.B #include -.sp -.BI "int linkat(int " olddirfd ", const char *" oldpath , -.BI " int " newdirfd ", const char *" newpath ", int " flags ); -.fi -.sp -.in -4n -Feature Test Macro Requirements for glibc (see -.BR feature_test_macros (7)): -.in -.sp -.BR linkat (): -.PD 0 -.ad l -.RS 4 -.TP 4 -Since glibc 2.10: -_XOPEN_SOURCE\ >=\ 700 || _POSIX_C_SOURCE\ >=\ 200809L -.TP -Before glibc 2.10: -_ATFILE_SOURCE -.RE -.ad -.PD -.SH DESCRIPTION -The -.BR linkat () -system call operates in exactly the same way as -.BR link (2), -except for the differences described in this manual page. - -If the pathname given in -.I oldpath -is relative, then it is interpreted relative to the directory -referred to by the file descriptor -.I olddirfd -(rather than relative to the current working directory of -the calling process, as is done by -.BR link (2) -for a relative pathname). - -If -.I oldpath -is relative and -.I olddirfd -is the special value -.BR AT_FDCWD , -then -.I oldpath -is interpreted relative to the current working -directory of the calling process (like -.BR link (2)). - -If -.I oldpath -is absolute, then -.I olddirfd -is ignored. - -The interpretation of -.I newpath -is as for -.IR oldpath , -except that a relative pathname is interpreted relative -to the directory referred to by the file descriptor -.IR newdirfd . - -By default, -.BR linkat (), -does not dereference -.I oldpath -if it is a symbolic link (like -.BR link (2)). -Since Linux 2.6.18, the flag -.B AT_SYMLINK_FOLLOW -can be specified in -.I flags -to cause -.I oldpath -to be dereferenced if it is a symbolic link. -Before kernel 2.6.18, the -.I flags -argument was unused, and had to be specified as 0. -.SH "RETURN VALUE" -On success, -.BR linkat () -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 link (2) -can also occur for -.BR linkat (). -The following additional errors can occur for -.BR linkat (): -.TP -.B EBADF -.I olddirfd -or -.I newdirfd -is not a valid file descriptor. -.TP -.B ENOTDIR -.I oldpath -is relative and -.I olddirfd -is a file descriptor referring to a file other than a directory; -or similar for -.I newpath -and -.I newdirfd -.SH VERSIONS -.BR linkat () -was added to Linux in kernel 2.6.16. -.SH "CONFORMING TO" -POSIX.1-2008. -.SH NOTES -See -.BR openat (2) -for an explanation of the need for -.BR linkat (). -.SH "SEE ALSO" -.BR link (2), -.BR openat (2), -.BR path_resolution (7), -.BR symlink (7) +.so man2/link.2