1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
9 "Project-Id-Version: PACKAGE VERSION\n"
10 "POT-Creation-Date: 2012-04-25 05:36+0900\n"
11 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13 "Language-Team: LANGUAGE <LL@li.org>\n"
16 "Content-Type: text/plain; charset=CHARSET\n"
17 "Content-Transfer-Encoding: 8bit\n"
20 #: build/C/man2/faccessat.2:26
26 #: build/C/man2/faccessat.2:26
32 #: build/C/man2/faccessat.2:26 build/C/man2/fchmodat.2:26 build/C/man2/fchownat.2:26 build/C/man2/fstatat.2:25 build/C/man2/futimesat.2:26 build/C/man2/linkat.2:27 build/C/man2/mkdirat.2:26 build/C/man3/mkfifoat.3:26 build/C/man2/mknodat.2:26 build/C/man2/openat.2:26 build/C/man2/readlinkat.2:26 build/C/man2/renameat.2:26 build/C/man2/symlinkat.2:26 build/C/man2/unlinkat.2:26
38 #: build/C/man2/faccessat.2:26 build/C/man2/fchmodat.2:26 build/C/man2/fchownat.2:26 build/C/man2/fstatat.2:25 build/C/man2/futimesat.2:26 build/C/man2/linkat.2:27 build/C/man2/mkdirat.2:26 build/C/man3/mkfifoat.3:26 build/C/man2/mknodat.2:26 build/C/man2/openat.2:26 build/C/man2/readlinkat.2:26 build/C/man2/renameat.2:26 build/C/man2/symlinkat.2:26 build/C/man2/unlinkat.2:26
40 msgid "Linux Programmer's Manual"
44 #: build/C/man2/faccessat.2:27 build/C/man2/fchmodat.2:27 build/C/man2/fchownat.2:27 build/C/man2/fstatat.2:26 build/C/man2/futimesat.2:27 build/C/man2/linkat.2:28 build/C/man2/mkdirat.2:27 build/C/man3/mkfifoat.3:27 build/C/man2/mknodat.2:27 build/C/man2/openat.2:27 build/C/man2/readlinkat.2:27 build/C/man2/renameat.2:27 build/C/man2/symlinkat.2:27 build/C/man2/unlinkat.2:27
50 #: build/C/man2/faccessat.2:30
52 "faccessat - check user's permissions of a file relative to a directory file "
57 #: build/C/man2/faccessat.2:30 build/C/man2/fchmodat.2:30 build/C/man2/fchownat.2:30 build/C/man2/fstatat.2:28 build/C/man2/futimesat.2:30 build/C/man2/linkat.2:30 build/C/man2/mkdirat.2:29 build/C/man3/mkfifoat.3:29 build/C/man2/mknodat.2:30 build/C/man2/openat.2:29 build/C/man2/readlinkat.2:30 build/C/man2/renameat.2:29 build/C/man2/symlinkat.2:29 build/C/man2/unlinkat.2:29
63 #: build/C/man2/faccessat.2:34 build/C/man2/fchownat.2:34 build/C/man2/linkat.2:34 build/C/man2/readlinkat.2:34 build/C/man2/symlinkat.2:33 build/C/man2/unlinkat.2:33
66 "B<#include E<lt>fcntl.hE<gt> /* Definition of AT_* constants */>\n"
67 "B<#include E<lt>unistd.hE<gt>>\n"
71 #: build/C/man2/faccessat.2:37
74 "B<int faccessat(int >I<dirfd>B<, const char *>I<pathname>B<, int >I<mode>B<, "
75 "int >I<flags>B<);>\n"
79 #: build/C/man2/faccessat.2:42 build/C/man2/fchmodat.2:42 build/C/man2/fchownat.2:42 build/C/man2/fstatat.2:41 build/C/man2/futimesat.2:42 build/C/man2/linkat.2:42 build/C/man2/mkdirat.2:40 build/C/man3/mkfifoat.3:40 build/C/man2/mknodat.2:42 build/C/man2/openat.2:41 build/C/man2/readlinkat.2:42 build/C/man2/renameat.2:41 build/C/man2/symlinkat.2:41 build/C/man2/unlinkat.2:40
80 msgid "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
84 #: build/C/man2/faccessat.2:45
85 msgid "B<faccessat>():"
89 #: build/C/man2/faccessat.2:48 build/C/man2/fchmodat.2:48 build/C/man2/fchownat.2:48 build/C/man2/fstatat.2:47 build/C/man2/linkat.2:48 build/C/man2/mkdirat.2:46 build/C/man3/mkfifoat.3:46 build/C/man2/mknodat.2:48 build/C/man2/openat.2:47 build/C/man2/readlinkat.2:48 build/C/man2/renameat.2:47 build/C/man2/symlinkat.2:47 build/C/man2/unlinkat.2:46
91 msgid "Since glibc 2.10:"
95 #: build/C/man2/faccessat.2:51 build/C/man2/fchmodat.2:51 build/C/man2/fchownat.2:51 build/C/man2/fstatat.2:50 build/C/man2/linkat.2:51 build/C/man2/mkdirat.2:49 build/C/man3/mkfifoat.3:49 build/C/man2/openat.2:50 build/C/man2/readlinkat.2:51 build/C/man2/renameat.2:50 build/C/man2/symlinkat.2:50 build/C/man2/unlinkat.2:49
96 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
100 #: build/C/man2/faccessat.2:51 build/C/man2/fchmodat.2:51 build/C/man2/fchownat.2:51 build/C/man2/fstatat.2:50 build/C/man2/linkat.2:51 build/C/man2/mkdirat.2:49 build/C/man3/mkfifoat.3:49 build/C/man2/mknodat.2:53 build/C/man2/openat.2:50 build/C/man2/readlinkat.2:51 build/C/man2/renameat.2:50 build/C/man2/symlinkat.2:50 build/C/man2/unlinkat.2:49
102 msgid "Before glibc 2.10:"
106 #: build/C/man2/faccessat.2:54 build/C/man2/fchmodat.2:54 build/C/man2/fchownat.2:54 build/C/man2/fstatat.2:53 build/C/man2/linkat.2:54 build/C/man2/mkdirat.2:52 build/C/man3/mkfifoat.3:52 build/C/man2/mknodat.2:56 build/C/man2/openat.2:53 build/C/man2/readlinkat.2:54 build/C/man2/renameat.2:53 build/C/man2/symlinkat.2:53 build/C/man2/unlinkat.2:52
107 msgid "_ATFILE_SOURCE"
111 #: build/C/man2/faccessat.2:57 build/C/man2/fchmodat.2:57 build/C/man2/fchownat.2:57 build/C/man2/fstatat.2:56 build/C/man2/futimesat.2:46 build/C/man2/linkat.2:57 build/C/man2/mkdirat.2:55 build/C/man3/mkfifoat.3:55 build/C/man2/mknodat.2:59 build/C/man2/openat.2:56 build/C/man2/readlinkat.2:57 build/C/man2/renameat.2:56 build/C/man2/symlinkat.2:56 build/C/man2/unlinkat.2:55
117 #: build/C/man2/faccessat.2:63
119 "The B<faccessat>() system call operates in exactly the same way as "
120 "B<access>(2), except for the differences described in this manual page."
124 #: build/C/man2/faccessat.2:73
126 "If the pathname given in I<pathname> is relative, then it is interpreted "
127 "relative to the directory referred to by the file descriptor I<dirfd> "
128 "(rather than relative to the current working directory of the calling "
129 "process, as is done by B<access>(2) for a relative pathname)."
133 #: build/C/man2/faccessat.2:85
135 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
136 "then I<pathname> is interpreted relative to the current working directory of "
137 "the calling process (like B<access>(2))."
141 #: build/C/man2/faccessat.2:91 build/C/man2/fchmodat.2:91 build/C/man2/fchownat.2:91 build/C/man2/fstatat.2:90 build/C/man2/futimesat.2:85 build/C/man2/mkdirat.2:89 build/C/man3/mkfifoat.3:89 build/C/man2/mknodat.2:93 build/C/man2/openat.2:90 build/C/man2/readlinkat.2:91
142 msgid "If I<pathname> is absolute, then I<dirfd> is ignored."
146 #: build/C/man2/faccessat.2:94
148 "I<flags> is constructed by ORing together zero or more of the following "
153 #: build/C/man2/faccessat.2:94
155 msgid "B<AT_EACCESS>"
159 #: build/C/man2/faccessat.2:101
161 "Perform access checks using the effective user and group IDs. By default, "
162 "B<faccessat>() uses the real IDs (like B<access>(2))."
166 #: build/C/man2/faccessat.2:101 build/C/man2/fchmodat.2:94 build/C/man2/fchownat.2:94 build/C/man2/fstatat.2:105
168 msgid "B<AT_SYMLINK_NOFOLLOW>"
172 #: build/C/man2/faccessat.2:107
174 "If I<pathname> is a symbolic link, do not dereference it: instead return "
175 "information about the link itself."
179 #: build/C/man2/faccessat.2:107 build/C/man2/fchmodat.2:101 build/C/man2/fchownat.2:105 build/C/man2/fstatat.2:116 build/C/man2/futimesat.2:85 build/C/man2/linkat.2:116 build/C/man2/mkdirat.2:89 build/C/man3/mkfifoat.3:89 build/C/man2/mknodat.2:93 build/C/man2/openat.2:90 build/C/man2/readlinkat.2:91 build/C/man2/renameat.2:98 build/C/man2/symlinkat.2:90 build/C/man2/unlinkat.2:121
185 #: build/C/man2/faccessat.2:114
187 "On success, (all requested permissions granted) B<faccessat>() returns 0. "
188 "On error, -1 is returned and I<errno> is set to indicate the error."
192 #: build/C/man2/faccessat.2:114 build/C/man2/fchmodat.2:108 build/C/man2/fchownat.2:112 build/C/man2/fstatat.2:123 build/C/man2/futimesat.2:92 build/C/man2/linkat.2:123 build/C/man2/mkdirat.2:96 build/C/man3/mkfifoat.3:96 build/C/man2/mknodat.2:100 build/C/man2/openat.2:97 build/C/man2/readlinkat.2:99 build/C/man2/renameat.2:105 build/C/man2/symlinkat.2:97 build/C/man2/unlinkat.2:128
198 #: build/C/man2/faccessat.2:121
200 "The same errors that occur for B<access>(2) can also occur for "
201 "B<faccessat>(). The following additional errors can occur for "
206 #: build/C/man2/faccessat.2:121 build/C/man2/fchmodat.2:115 build/C/man2/fchownat.2:119 build/C/man2/fstatat.2:130 build/C/man2/futimesat.2:99 build/C/man2/linkat.2:130 build/C/man2/mkdirat.2:103 build/C/man3/mkfifoat.3:103 build/C/man2/mknodat.2:107 build/C/man2/openat.2:104 build/C/man2/readlinkat.2:106 build/C/man2/renameat.2:112 build/C/man2/symlinkat.2:104 build/C/man2/unlinkat.2:137
212 #: build/C/man2/faccessat.2:125 build/C/man2/fchmodat.2:119 build/C/man2/fchownat.2:123 build/C/man2/fstatat.2:134 build/C/man2/futimesat.2:103 build/C/man2/mkdirat.2:107 build/C/man3/mkfifoat.3:107 build/C/man2/mknodat.2:111 build/C/man2/openat.2:108 build/C/man2/readlinkat.2:110 build/C/man2/unlinkat.2:141
213 msgid "I<dirfd> is not a valid file descriptor."
217 #: build/C/man2/faccessat.2:125 build/C/man2/fchmodat.2:119 build/C/man2/fchownat.2:123 build/C/man2/fstatat.2:134 build/C/man2/unlinkat.2:141
223 #: build/C/man2/faccessat.2:129 build/C/man2/fchmodat.2:123 build/C/man2/fchownat.2:127 build/C/man2/fstatat.2:138
224 msgid "Invalid flag specified in I<flags>."
228 #: build/C/man2/faccessat.2:129 build/C/man2/fchmodat.2:123 build/C/man2/fchownat.2:127 build/C/man2/fstatat.2:138 build/C/man2/futimesat.2:103 build/C/man2/linkat.2:136 build/C/man2/mkdirat.2:107 build/C/man3/mkfifoat.3:107 build/C/man2/mknodat.2:111 build/C/man2/openat.2:108 build/C/man2/readlinkat.2:110 build/C/man2/renameat.2:118 build/C/man2/symlinkat.2:108 build/C/man2/unlinkat.2:145
234 #: build/C/man2/faccessat.2:135 build/C/man2/fchmodat.2:129 build/C/man2/fchownat.2:133 build/C/man2/fstatat.2:144 build/C/man2/futimesat.2:109 build/C/man2/mkdirat.2:113 build/C/man2/mknodat.2:117 build/C/man2/openat.2:114 build/C/man2/readlinkat.2:116 build/C/man2/unlinkat.2:151
236 "I<pathname> is relative and I<dirfd> is a file descriptor referring to a "
237 "file other than a directory."
241 #: build/C/man2/faccessat.2:135 build/C/man2/fchmodat.2:135 build/C/man2/fchownat.2:133 build/C/man2/fstatat.2:144 build/C/man2/futimesat.2:109 build/C/man2/linkat.2:146 build/C/man2/mkdirat.2:113 build/C/man3/mkfifoat.3:113 build/C/man2/mknodat.2:117 build/C/man2/openat.2:114 build/C/man2/readlinkat.2:116 build/C/man2/renameat.2:128 build/C/man2/symlinkat.2:114 build/C/man2/unlinkat.2:151
247 #: build/C/man2/faccessat.2:138
248 msgid "B<faccessat>() was added to Linux in kernel 2.6.16."
252 #: build/C/man2/faccessat.2:138 build/C/man2/fchmodat.2:138 build/C/man2/fchownat.2:136 build/C/man2/fstatat.2:147 build/C/man2/futimesat.2:112 build/C/man2/linkat.2:149 build/C/man2/mkdirat.2:116 build/C/man3/mkfifoat.3:119 build/C/man2/mknodat.2:120 build/C/man2/openat.2:117 build/C/man2/readlinkat.2:119 build/C/man2/renameat.2:131 build/C/man2/symlinkat.2:117 build/C/man2/unlinkat.2:154
254 msgid "CONFORMING TO"
258 #: build/C/man2/faccessat.2:140 build/C/man2/fchmodat.2:140 build/C/man2/linkat.2:151 build/C/man2/mkdirat.2:118 build/C/man3/mkfifoat.3:121 build/C/man2/mknodat.2:122 build/C/man2/readlinkat.2:121 build/C/man2/renameat.2:133 build/C/man2/symlinkat.2:119
259 msgid "POSIX.1-2008."
263 #: build/C/man2/faccessat.2:140 build/C/man2/fchmodat.2:140 build/C/man2/fchownat.2:139 build/C/man2/fstatat.2:150 build/C/man2/futimesat.2:119 build/C/man2/linkat.2:151 build/C/man2/mkdirat.2:118 build/C/man3/mkfifoat.3:121 build/C/man2/mknodat.2:122 build/C/man2/openat.2:132 build/C/man2/readlinkat.2:121 build/C/man2/renameat.2:133 build/C/man2/symlinkat.2:119 build/C/man2/unlinkat.2:157
269 #: build/C/man2/faccessat.2:145
270 msgid "See B<openat>(2) for an explanation of the need for B<faccessat>()."
274 #: build/C/man2/faccessat.2:152
276 "I<Warning>: B<faccessat>() is subject to the same kinds of races as "
277 "B<access>(2) and B<euidaccess>(3)."
281 #: build/C/man2/faccessat.2:152 build/C/man2/futimesat.2:120
287 #: build/C/man2/faccessat.2:162
289 "The B<AT_EACCESS> and B<AT_SYMLINK_NOFOLLOW> flags are actually implemented "
290 "within the glibc wrapper function for B<faccessat>(). If either of these "
291 "flags are specified, then the wrapper function employs B<fstatat>(2) to "
292 "determine access permissions."
296 #: build/C/man2/faccessat.2:162 build/C/man2/fchmodat.2:154 build/C/man2/fchownat.2:144 build/C/man2/fstatat.2:160 build/C/man2/futimesat.2:128 build/C/man2/linkat.2:156 build/C/man2/mkdirat.2:123 build/C/man3/mkfifoat.3:126 build/C/man2/mknodat.2:127 build/C/man2/openat.2:163 build/C/man2/readlinkat.2:126 build/C/man2/renameat.2:138 build/C/man2/symlinkat.2:124 build/C/man2/unlinkat.2:162
302 #: build/C/man2/faccessat.2:168
304 "B<access>(2), B<openat>(2), B<euidaccess>(3), B<credentials>(7), "
305 "B<path_resolution>(7), B<symlink>(7)"
309 #: build/C/man2/fchmodat.2:26
315 #: build/C/man2/fchmodat.2:26
321 #: build/C/man2/fchmodat.2:30
323 "fchmodat - change permissions of a file relative to a directory file "
328 #: build/C/man2/fchmodat.2:34
331 "B<#include>E<lt>fcntl.hE<gt>B< /* Definition of AT_* constants "
333 "B<#include E<lt>sys/stat.hE<gt>>\n"
337 #: build/C/man2/fchmodat.2:37
340 "B<int fchmodat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t "
341 ">I<mode>B<, int >I<flags>B<);>\n"
345 #: build/C/man2/fchmodat.2:45
346 msgid "B<fchmodat>():"
350 #: build/C/man2/fchmodat.2:63
352 "The B<fchmodat>() system call operates in exactly the same way as "
353 "B<chmod>(2), except for the differences described in this manual page."
357 #: build/C/man2/fchmodat.2:73
359 "If the pathname given in I<pathname> is relative, then it is interpreted "
360 "relative to the directory referred to by the file descriptor I<dirfd> "
361 "(rather than relative to the current working directory of the calling "
362 "process, as is done by B<chmod>(2) for a relative pathname)."
366 #: build/C/man2/fchmodat.2:85
368 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
369 "then I<pathname> is interpreted relative to the current working directory of "
370 "the calling process (like B<chmod>(2))."
374 #: build/C/man2/fchmodat.2:94 build/C/man2/fchownat.2:94
375 msgid "I<flags> can either be 0, or include the following flag:"
379 #: build/C/man2/fchmodat.2:101
381 "If I<pathname> is a symbolic link, do not dereference it: instead operate on "
382 "the link itself. This flag is not currently implemented."
386 #: build/C/man2/fchmodat.2:108
388 "On success, B<fchmodat>() returns 0. On error, -1 is returned and I<errno> "
389 "is set to indicate the error."
393 #: build/C/man2/fchmodat.2:115
395 "The same errors that occur for B<chmod>(2) can also occur for "
396 "B<fchmodat>(). The following additional errors can occur for B<fchmodat>():"
400 #: build/C/man2/fchmodat.2:129
406 #: build/C/man2/fchmodat.2:135
407 msgid "I<flags> specified B<AT_SYMLINK_NOFOLLOW>, which is not supported."
411 #: build/C/man2/fchmodat.2:138
412 msgid "B<fchmodat>() was added to Linux in kernel 2.6.16."
416 #: build/C/man2/fchmodat.2:144
417 msgid "See B<openat>(2) for an explanation of the need for"
421 #: build/C/man2/fchmodat.2:154
423 "This page documents the interface provided by the glibc wrapper function for "
424 "the B<fchmodat>() system call. The underlying system call does I<not> have "
425 "a I<flags> argument."
429 #: build/C/man2/fchmodat.2:158
430 msgid "B<chmod>(2), B<openat>(2), B<path_resolution>(7), B<symlink>(7)"
434 #: build/C/man2/fchownat.2:26
440 #: build/C/man2/fchownat.2:26 build/C/man2/linkat.2:27 build/C/man2/mkdirat.2:26 build/C/man3/mkfifoat.3:26 build/C/man2/openat.2:26 build/C/man2/readlinkat.2:26 build/C/man2/renameat.2:26
446 #: build/C/man2/fchownat.2:30
448 "fchownat - change ownership of a file relative to a directory file "
453 #: build/C/man2/fchownat.2:37
456 "B<int fchownat(int >I<dirfd>B<, const char *>I<pathname>B<,>\n"
457 "B< uid_t >I<owner>B<, gid_t >I<group>B<, int >I<flags>B<);>\n"
461 #: build/C/man2/fchownat.2:45
462 msgid "B<fchownat>():"
466 #: build/C/man2/fchownat.2:63
468 "The B<fchownat>() system call operates in exactly the same way as "
469 "B<chown>(2), except for the differences described in this manual page."
473 #: build/C/man2/fchownat.2:73
475 "If the pathname given in I<pathname> is relative, then it is interpreted "
476 "relative to the directory referred to by the file descriptor I<dirfd> "
477 "(rather than relative to the current working directory of the calling "
478 "process, as is done by B<chown>(2) for a relative pathname)."
482 #: build/C/man2/fchownat.2:85
484 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
485 "then I<pathname> is interpreted relative to the current working directory of "
486 "the calling process (like B<chown>(2))."
490 #: build/C/man2/fchownat.2:105
492 "If I<pathname> is a symbolic link, do not dereference it: instead operate on "
493 "the link itself, like B<lchown>(2). (By default, B<fchownat>() "
494 "dereferences symbolic links, like B<chown>(2).)"
498 #: build/C/man2/fchownat.2:112
500 "On success, B<fchownat>() returns 0. On error, -1 is returned and I<errno> "
501 "is set to indicate the error."
505 #: build/C/man2/fchownat.2:119
507 "The same errors that occur for B<chown>(2) can also occur for "
508 "B<fchownat>(). The following additional errors can occur for B<fchownat>():"
512 #: build/C/man2/fchownat.2:136
513 msgid "B<fchownat>() was added to Linux in kernel 2.6.16."
517 #: build/C/man2/fchownat.2:139 build/C/man2/fstatat.2:150 build/C/man2/openat.2:132 build/C/man2/unlinkat.2:157
518 msgid "POSIX.1-2008. A similar system call exists on Solaris."
522 #: build/C/man2/fchownat.2:144
523 msgid "See B<openat>(2) for an explanation of the need for B<fchownat>()."
527 #: build/C/man2/fchownat.2:148
528 msgid "B<chown>(2), B<openat>(2), B<path_resolution>(7), B<symlink>(7)"
532 #: build/C/man2/fstatat.2:25
538 #: build/C/man2/fstatat.2:25
544 #: build/C/man2/fstatat.2:28
545 msgid "fstatat - get file status relative to a directory file descriptor"
549 #: build/C/man2/fstatat.2:32 build/C/man2/mkdirat.2:33 build/C/man3/mkfifoat.3:33 build/C/man2/mknodat.2:34
552 "B<#include E<lt>fcntl.hE<gt> /* Definition of AT_* constants */>\n"
553 "B<#include E<lt>sys/stat.hE<gt>>\n"
557 #: build/C/man2/fstatat.2:36
560 "B<int fstatat(int >I<dirfd>B<, const char *>I<pathname>B<, struct stat "
562 "B< int >I<flags>B<);>\n"
566 #: build/C/man2/fstatat.2:44
567 msgid "B<fstatat>():"
571 #: build/C/man2/fstatat.2:62
573 "The B<fstatat>() system call operates in exactly the same way as "
574 "B<stat>(2), except for the differences described in this manual page."
578 #: build/C/man2/fstatat.2:72
580 "If the pathname given in I<pathname> is relative, then it is interpreted "
581 "relative to the directory referred to by the file descriptor I<dirfd> "
582 "(rather than relative to the current working directory of the calling "
583 "process, as is done by B<stat>(2) for a relative pathname)."
587 #: build/C/man2/fstatat.2:84
589 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
590 "then I<pathname> is interpreted relative to the current working directory of "
591 "the calling process (like B<stat>(2))."
595 #: build/C/man2/fstatat.2:93
597 "I<flags> can either be 0, or include one or more of the following flags "
602 #: build/C/man2/fstatat.2:93
604 msgid "B<AT_NO_AUTOMOUNT> (since Linux 2.6.38)"
608 #: build/C/man2/fstatat.2:105
610 "Don't automount the terminal (\"basename\") component of I<pathname> if it "
611 "is a directory that is an automount point. This allows the caller to gather "
612 "attributes of an automount point (rather than the location it would mount). "
613 "This flag can be used in tools that scan directories to prevent "
614 "mass-automounting of a directory of automount points. The "
615 "B<AT_NO_AUTOMOUNT> flag has no effect if the mount point has already been "
620 #: build/C/man2/fstatat.2:116
622 "If I<pathname> is a symbolic link, do not dereference it: instead return "
623 "information about the link itself, like B<lstat>(2). (By default, "
624 "B<fstatat>() dereferences symbolic links, like B<stat>(2).)"
628 #: build/C/man2/fstatat.2:123
630 "On success, B<fstatat>() returns 0. On error, -1 is returned and I<errno> "
631 "is set to indicate the error."
635 #: build/C/man2/fstatat.2:130
637 "The same errors that occur for B<stat>(2) can also occur for B<fstatat>(). "
638 "The following additional errors can occur for B<fstatat>():"
642 #: build/C/man2/fstatat.2:147
643 msgid "B<fstatat>() was added to Linux in kernel 2.6.16."
647 #: build/C/man2/fstatat.2:155
648 msgid "See B<openat>(2) for an explanation of the need for B<fstatat>()."
652 #: build/C/man2/fstatat.2:160
654 "The underlying system call employed by the glibc B<fstatat>() wrapper "
655 "function is actually called B<fstatat64>()."
659 #: build/C/man2/fstatat.2:164
660 msgid "B<openat>(2), B<stat>(2), B<path_resolution>(7), B<symlink>(7)"
664 #: build/C/man2/futimesat.2:26
670 #: build/C/man2/futimesat.2:26 build/C/man2/symlinkat.2:26 build/C/man2/unlinkat.2:26
676 #: build/C/man2/futimesat.2:30
678 "futimesat - change timestamps of a file relative to a directory file "
683 #: build/C/man2/futimesat.2:34
686 "B<#include E<lt>fcntl.hE<gt> /* Definition of AT_* constants */>\n"
687 "B<#include E<lt>sys/time.hE<gt>>\n"
691 #: build/C/man2/futimesat.2:37
694 "B<int futimesat(int >I<dirfd>B<, const char *>I<pathname>B<,>\n"
695 "B< const struct timeval >I<times>B<[2]);>\n"
699 #: build/C/man2/futimesat.2:46
700 msgid "B<futimesat>(): _GNU_SOURCE"
704 #: build/C/man2/futimesat.2:51
705 msgid "This system call is obsolete. Use B<utimensat>(2) instead."
709 #: build/C/man2/futimesat.2:57
711 "The B<futimesat>() system call operates in exactly the same way as "
712 "B<utimes>(2), except for the differences described in this manual page."
716 #: build/C/man2/futimesat.2:67
718 "If the pathname given in I<pathname> is relative, then it is interpreted "
719 "relative to the directory referred to by the file descriptor I<dirfd> "
720 "(rather than relative to the current working directory of the calling "
721 "process, as is done by B<utimes>(2) for a relative pathname)."
725 #: build/C/man2/futimesat.2:79
727 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
728 "then I<pathname> is interpreted relative to the current working directory of "
729 "the calling process (like B<utimes>(2))."
733 #: build/C/man2/futimesat.2:92
735 "On success, B<futimesat>() returns a 0. On error, -1 is returned and "
736 "I<errno> is set to indicate the error."
740 #: build/C/man2/futimesat.2:99
742 "The same errors that occur for B<utimes>(2) can also occur for "
743 "B<futimesat>(). The following additional errors can occur for "
748 #: build/C/man2/futimesat.2:112
749 msgid "B<futimesat>() was added to Linux in kernel 2.6.16."
753 #: build/C/man2/futimesat.2:117
755 "This system call is nonstandard. It was implemented from a specification "
756 "that was proposed for POSIX.1, but that specification was replaced by the "
757 "one for B<utimensat>(2)."
761 #: build/C/man2/futimesat.2:119
762 msgid "A similar system call exists on Solaris."
765 #. The Solaris futimesat() also has this strangeness.
767 #: build/C/man2/futimesat.2:128
769 "If I<pathname> is NULL, then the glibc B<futimesat>() wrapper function "
770 "updates the times for the file referred to by I<dirfd>."
774 #: build/C/man2/futimesat.2:133
776 "B<stat>(2), B<utimensat>(2), B<utimes>(2), B<futimes>(3), "
777 "B<path_resolution>(7)"
781 #: build/C/man2/linkat.2:27
787 #: build/C/man2/linkat.2:30
788 msgid "linkat - create a file link relative to directory file descriptors"
792 #: build/C/man2/linkat.2:37
795 "B<int linkat(int >I<olddirfd>B<, const char *>I<oldpath>B<,>\n"
796 "B< int >I<newdirfd>B<, const char *>I<newpath>B<, int "
801 #: build/C/man2/linkat.2:45
806 #: build/C/man2/linkat.2:63
808 "The B<linkat>() system call operates in exactly the same way as B<link>(2), "
809 "except for the differences described in this manual page."
813 #: build/C/man2/linkat.2:73
815 "If the pathname given in I<oldpath> is relative, then it is interpreted "
816 "relative to the directory referred to by the file descriptor I<olddirfd> "
817 "(rather than relative to the current working directory of the calling "
818 "process, as is done by B<link>(2) for a relative pathname)."
822 #: build/C/man2/linkat.2:85
824 "If I<oldpath> is relative and I<olddirfd> is the special value B<AT_FDCWD>, "
825 "then I<oldpath> is interpreted relative to the current working directory of "
826 "the calling process (like B<link>(2))."
830 #: build/C/man2/linkat.2:91 build/C/man2/renameat.2:90
831 msgid "If I<oldpath> is absolute, then I<olddirfd> is ignored."
835 #: build/C/man2/linkat.2:99 build/C/man2/renameat.2:98
837 "The interpretation of I<newpath> is as for I<oldpath>, except that a "
838 "relative pathname is interpreted relative to the directory referred to by "
839 "the file descriptor I<newdirfd>."
843 #: build/C/man2/linkat.2:116
845 "By default, B<linkat>(), does not dereference I<oldpath> if it is a symbolic "
846 "link (like B<link>(2)). Since Linux 2.6.18, the flag B<AT_SYMLINK_FOLLOW> "
847 "can be specified in I<flags> to cause I<oldpath> to be dereferenced if it is "
848 "a symbolic link. Before kernel 2.6.18, the I<flags> argument was unused, "
849 "and had to be specified as 0."
853 #: build/C/man2/linkat.2:123
855 "On success, B<linkat>() returns 0. On error, -1 is returned and I<errno> "
856 "is set to indicate the error."
860 #: build/C/man2/linkat.2:130
862 "The same errors that occur for B<link>(2) can also occur for B<linkat>(). "
863 "The following additional errors can occur for B<linkat>():"
867 #: build/C/man2/linkat.2:136 build/C/man2/renameat.2:118
868 msgid "I<olddirfd> or I<newdirfd> is not a valid file descriptor."
872 #: build/C/man2/linkat.2:146 build/C/man2/renameat.2:128
874 "I<oldpath> is relative and I<olddirfd> is a file descriptor referring to a "
875 "file other than a directory; or similar for I<newpath> and I<newdirfd>"
879 #: build/C/man2/linkat.2:149
880 msgid "B<linkat>() was added to Linux in kernel 2.6.16."
884 #: build/C/man2/linkat.2:156
885 msgid "See B<openat>(2) for an explanation of the need for B<linkat>()."
889 #: build/C/man2/linkat.2:160
890 msgid "B<link>(2), B<openat>(2), B<path_resolution>(7), B<symlink>(7)"
894 #: build/C/man2/mkdirat.2:26
900 #: build/C/man2/mkdirat.2:29
901 msgid "mkdirat - create a directory relative to a directory file descriptor"
905 #: build/C/man2/mkdirat.2:35
908 "B<int mkdirat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t "
913 #: build/C/man2/mkdirat.2:43
914 msgid "B<mkdirat>():"
918 #: build/C/man2/mkdirat.2:61
920 "The B<mkdirat>() system call operates in exactly the same way as "
921 "B<mkdir>(2), except for the differences described in this manual page."
925 #: build/C/man2/mkdirat.2:71
927 "If the pathname given in I<pathname> is relative, then it is interpreted "
928 "relative to the directory referred to by the file descriptor I<dirfd> "
929 "(rather than relative to the current working directory of the calling "
930 "process, as is done by B<mkdir>(2) for a relative pathname)."
934 #: build/C/man2/mkdirat.2:83
936 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
937 "then I<pathname> is interpreted relative to the current working directory of "
938 "the calling process (like B<mkdir>(2))."
942 #: build/C/man2/mkdirat.2:96
944 "On success, B<mkdirat>() returns 0. On error, -1 is returned and I<errno> "
945 "is set to indicate the error."
949 #: build/C/man2/mkdirat.2:103
951 "The same errors that occur for B<mkdir>(2) can also occur for "
952 "B<mkdirat>(). The following additional errors can occur for B<mkdirat>():"
956 #: build/C/man2/mkdirat.2:116
957 msgid "B<mkdirat>() was added to Linux in kernel 2.6.16."
961 #: build/C/man2/mkdirat.2:123
962 msgid "See B<openat>(2) for an explanation of the need for B<mkdirat>()."
966 #: build/C/man2/mkdirat.2:126
967 msgid "B<mkdir>(2), B<openat>(2), B<path_resolution>(7)"
971 #: build/C/man3/mkfifoat.3:26
977 #: build/C/man3/mkfifoat.3:29
978 msgid "mkfifoat - make a FIFO (named pipe) relative to a directory file descriptor"
982 #: build/C/man3/mkfifoat.3:35
985 "B<int mkfifoat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t "
990 #: build/C/man3/mkfifoat.3:43
991 msgid "B<mkfifoat>():"
995 #: build/C/man3/mkfifoat.3:61
997 "The B<mkfifoat>() system call operates in exactly the same way as "
998 "B<mkfifo>(3), except for the differences described in this manual page."
1002 #: build/C/man3/mkfifoat.3:71
1004 "If the pathname given in I<pathname> is relative, then it is interpreted "
1005 "relative to the directory referred to by the file descriptor I<dirfd> "
1006 "(rather than relative to the current working directory of the calling "
1007 "process, as is done by B<mkfifo>(3) for a relative pathname)."
1011 #: build/C/man3/mkfifoat.3:83
1013 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
1014 "then I<pathname> is interpreted relative to the current working directory of "
1015 "the calling process (like B<mkfifo>(3))."
1019 #: build/C/man3/mkfifoat.3:96
1021 "On success, B<mkfifoat>() returns 0. On error, -1 is returned and I<errno> "
1022 "is set to indicate the error."
1026 #: build/C/man3/mkfifoat.3:103
1028 "The same errors that occur for B<mkfifo>(3) can also occur for "
1029 "B<mkfifoat>(). The following additional errors can occur for B<mkfifoat>():"
1033 #: build/C/man3/mkfifoat.3:113
1035 "I<pathname> is a relative path and I<dirfd> is a file descriptor referring "
1036 "to a file other than a directory."
1040 #: build/C/man3/mkfifoat.3:119
1042 "B<mkfifoat>() was added to glibc in version 2.4. It is implemented using "
1043 "B<mknod>(2), available on Linux since kernel 2.6.16."
1047 #: build/C/man3/mkfifoat.3:126
1048 msgid "See B<openat>(2) for an explanation of the need for B<mkfifoat>()."
1052 #: build/C/man3/mkfifoat.3:129
1053 msgid "B<openat>(2), B<mkfifo>(3), B<path_resolution>(7)"
1057 #: build/C/man2/mknodat.2:26
1063 #: build/C/man2/mknodat.2:26
1069 #: build/C/man2/mknodat.2:30
1071 "mknodat - create a special or ordinary file relative to a directory file "
1076 #: build/C/man2/mknodat.2:37
1079 "B<int mknodat(int >I<dirfd>B<, const char *>I<pathname>B<, mode_t "
1080 ">I<mode>B<, dev_t >I<dev>B<);>\n"
1084 #: build/C/man2/mknodat.2:45
1085 msgid "B<mknodat>():"
1088 #. Other FTM combinations will also expose mknodat(), but this function was
1089 #. added in SUSv4, marked XSI, so we'll just document what the standard says.
1091 #: build/C/man2/mknodat.2:53
1093 msgid " _XOPEN_SOURCE\\ E<gt>=\\ 700\n"
1097 #: build/C/man2/mknodat.2:65
1099 "The B<mknodat>() system call operates in exactly the same way as "
1100 "B<mknod>(2), except for the differences described in this manual page."
1104 #: build/C/man2/mknodat.2:75
1106 "If the pathname given in I<pathname> is relative, then it is interpreted "
1107 "relative to the directory referred to by the file descriptor I<dirfd> "
1108 "(rather than relative to the current working directory of the calling "
1109 "process, as is done by B<mknod>(2) for a relative pathname)."
1113 #: build/C/man2/mknodat.2:87
1115 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
1116 "then I<pathname> is interpreted relative to the current working directory of "
1117 "the calling process (like B<mknod>(2))."
1121 #: build/C/man2/mknodat.2:100
1123 "On success, B<mknodat>() returns 0. On error, -1 is returned and I<errno> "
1124 "is set to indicate the error."
1128 #: build/C/man2/mknodat.2:107
1130 "The same errors that occur for B<mknod>(2) can also occur for "
1131 "B<mknodat>(). The following additional errors can occur for B<mknodat>():"
1135 #: build/C/man2/mknodat.2:120
1136 msgid "B<mknodat>() was added to Linux in kernel 2.6.16."
1140 #: build/C/man2/mknodat.2:127
1141 msgid "See B<openat>(2) for an explanation of the need for B<mknodat>()."
1145 #: build/C/man2/mknodat.2:130
1146 msgid "B<mknod>(2), B<openat>(2), B<path_resolution>(7)"
1150 #: build/C/man2/openat.2:26
1156 #: build/C/man2/openat.2:29
1157 msgid "openat - open a file relative to a directory file descriptor"
1161 #: build/C/man2/openat.2:32
1163 msgid "B<#include E<lt>fcntl.hE<gt>>\n"
1167 #: build/C/man2/openat.2:36
1170 "B<int openat(int >I<dirfd>B<, const char *>I<pathname>B<, int "
1172 "B<int openat(int >I<dirfd>B<, const char *>I<pathname>B<, int >I<flags>B<, "
1173 "mode_t >I<mode>B<);>\n"
1177 #: build/C/man2/openat.2:44
1178 msgid "B<openat>():"
1182 #: build/C/man2/openat.2:62
1184 "The B<openat>() system call operates in exactly the same way as B<open>(2), "
1185 "except for the differences described in this manual page."
1189 #: build/C/man2/openat.2:72
1191 "If the pathname given in I<pathname> is relative, then it is interpreted "
1192 "relative to the directory referred to by the file descriptor I<dirfd> "
1193 "(rather than relative to the current working directory of the calling "
1194 "process, as is done by B<open>(2) for a relative pathname)."
1198 #: build/C/man2/openat.2:84
1200 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
1201 "then I<pathname> is interpreted relative to the current working directory of "
1202 "the calling process (like B<open>(2))."
1206 #: build/C/man2/openat.2:97
1208 "On success, B<openat>() returns a new file descriptor. On error, -1 is "
1209 "returned and I<errno> is set to indicate the error."
1213 #: build/C/man2/openat.2:104
1215 "The same errors that occur for B<open>(2) can also occur for B<openat>(). "
1216 "The following additional errors can occur for B<openat>():"
1220 #: build/C/man2/openat.2:117
1221 msgid "B<openat>() was added to Linux in kernel 2.6.16."
1225 #: build/C/man2/openat.2:136
1227 "B<openat>() and other similar system calls suffixed \"at\" are supported "
1232 #: build/C/man2/openat.2:154
1234 "First, B<openat>() allows an application to avoid race conditions that "
1235 "could occur when using B<open>(2) to open files in directories other than "
1236 "the current working directory. These race conditions result from the fact "
1237 "that some component of the directory prefix given to B<open>(2) could be "
1238 "changed in parallel with the call to B<open>(2). Such races can be avoided "
1239 "by opening a file descriptor for the target directory, and then specifying "
1240 "that file descriptor as the I<dirfd> argument of B<openat>()."
1244 #: build/C/man2/openat.2:163
1246 "Second, B<openat>() allows the implementation of a per-thread \"current "
1247 "working directory\", via file descriptor(s) maintained by the application. "
1248 "(This functionality can also be obtained by tricks based on the use of "
1249 "I</proc/self/fd/>dirfd, but less efficiently.)"
1253 #: build/C/man2/openat.2:179
1255 "B<faccessat>(2), B<fchmodat>(2), B<fchownat>(2), B<fstatat>(2), "
1256 "B<futimesat>(2), B<linkat>(2), B<mkdirat>(2), B<mknodat>(2), B<open>(2), "
1257 "B<readlinkat>(2), B<renameat>(2), B<symlinkat>(2), B<unlinkat>(2), "
1258 "B<utimensat>(2), B<mkfifoat>(3), B<path_resolution>(7)"
1262 #: build/C/man2/readlinkat.2:26
1268 #: build/C/man2/readlinkat.2:30
1270 "readlinkat - read value of a symbolic link relative to a directory file "
1275 #: build/C/man2/readlinkat.2:37
1278 "B<int readlinkat(int >I<dirfd>B<, const char *>I<pathname>B<,>\n"
1279 "B< char *>I<buf>B<, size_t >I<bufsiz>B<);>\n"
1283 #: build/C/man2/readlinkat.2:45
1284 msgid "B<readlinkat>():"
1288 #: build/C/man2/readlinkat.2:63
1290 "The B<readlinkat>() system call operates in exactly the same way as "
1291 "B<readlink>(2), except for the differences described in this manual page."
1295 #: build/C/man2/readlinkat.2:73
1297 "If the pathname given in I<pathname> is relative, then it is interpreted "
1298 "relative to the directory referred to by the file descriptor I<dirfd> "
1299 "(rather than relative to the current working directory of the calling "
1300 "process, as is done by B<readlink>(2) for a relative pathname)."
1304 #: build/C/man2/readlinkat.2:85
1306 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
1307 "then I<pathname> is interpreted relative to the current working directory of "
1308 "the calling process (like B<readlink>(2))."
1312 #: build/C/man2/readlinkat.2:99
1314 "On success, B<readlinkat>() returns the number of bytes placed in I<buf>. "
1315 "On error, -1 is returned and I<errno> is set to indicate the error."
1319 #: build/C/man2/readlinkat.2:106
1321 "The same errors that occur for B<readlink>(2) can also occur for "
1322 "B<readlinkat>(). The following additional errors can occur for "
1327 #: build/C/man2/readlinkat.2:119
1328 msgid "B<readlinkat>() was added to Linux in kernel 2.6.16."
1332 #: build/C/man2/readlinkat.2:126
1333 msgid "See B<openat>(2) for an explanation of the need for B<readlinkat>()."
1337 #: build/C/man2/readlinkat.2:129
1338 msgid "B<openat>(2), B<readlink>(2), B<path_resolution>(7)"
1342 #: build/C/man2/renameat.2:26
1348 #: build/C/man2/renameat.2:29
1349 msgid "renameat - rename a file relative to directory file descriptors"
1353 #: build/C/man2/renameat.2:33
1356 "B<#include E<lt>fcntl.hE<gt> /* Definition of AT_* constants */>\n"
1357 "B<#include E<lt>stdio.hE<gt>>\n"
1361 #: build/C/man2/renameat.2:36
1364 "B<int renameat(int >I<olddirfd>B<, const char *>I<oldpath>B<,>\n"
1365 "B< int >I<newdirfd>B<, const char *>I<newpath>B<);>\n"
1369 #: build/C/man2/renameat.2:44
1370 msgid "B<renameat>():"
1374 #: build/C/man2/renameat.2:62
1376 "The B<renameat>() system call operates in exactly the same way as "
1377 "B<rename>(2), except for the differences described in this manual page."
1381 #: build/C/man2/renameat.2:72
1383 "If the pathname given in I<oldpath> is relative, then it is interpreted "
1384 "relative to the directory referred to by the file descriptor I<olddirfd> "
1385 "(rather than relative to the current working directory of the calling "
1386 "process, as is done by B<rename>(2) for a relative pathname)."
1390 #: build/C/man2/renameat.2:84
1392 "If I<oldpath> is relative and I<olddirfd> is the special value B<AT_FDCWD>, "
1393 "then I<oldpath> is interpreted relative to the current working directory of "
1394 "the calling process (like B<rename>(2))."
1398 #: build/C/man2/renameat.2:105
1400 "On success, B<renameat>() returns 0. On error, -1 is returned and I<errno> "
1401 "is set to indicate the error."
1405 #: build/C/man2/renameat.2:112
1407 "The same errors that occur for B<rename>(2) can also occur for "
1408 "B<renameat>(). The following additional errors can occur for B<renameat>():"
1412 #: build/C/man2/renameat.2:131
1413 msgid "B<renameat>() was added to Linux in kernel 2.6.16."
1417 #: build/C/man2/renameat.2:138
1418 msgid "See B<openat>(2) for an explanation of the need for B<renameat>()."
1422 #: build/C/man2/renameat.2:141
1423 msgid "B<openat>(2), B<rename>(2), B<path_resolution>(7)"
1427 #: build/C/man2/symlinkat.2:26
1433 #: build/C/man2/symlinkat.2:29
1434 msgid "symlinkat - create a symbolic link relative to a directory file descriptor"
1438 #: build/C/man2/symlinkat.2:36
1441 "B<int symlinkat(const char *>I<oldpath>B<, int >I<newdirfd>B<, const char "
1442 "*>I<newpath>B<);>\n"
1446 #: build/C/man2/symlinkat.2:44
1447 msgid "B<symlinkat>():"
1451 #: build/C/man2/symlinkat.2:62
1453 "The B<symlinkat>() system call operates in exactly the same way as "
1454 "B<symlink>(2), except for the differences described in this manual page."
1458 #: build/C/man2/symlinkat.2:72
1460 "If the pathname given in I<newpath> is relative, then it is interpreted "
1461 "relative to the directory referred to by the file descriptor I<newdirfd> "
1462 "(rather than relative to the current working directory of the calling "
1463 "process, as is done by B<symlink>(2) for a relative pathname)."
1467 #: build/C/man2/symlinkat.2:84
1469 "If I<newpath> is relative and I<newdirfd> is the special value B<AT_FDCWD>, "
1470 "then I<newpath> is interpreted relative to the current working directory of "
1471 "the calling process (like B<symlink>(2))."
1475 #: build/C/man2/symlinkat.2:90
1476 msgid "If I<newpath> is absolute, then I<newdirfd> is ignored."
1480 #: build/C/man2/symlinkat.2:97
1482 "On success, B<symlinkat>() returns 0. On error, -1 is returned and "
1483 "I<errno> is set to indicate the error."
1487 #: build/C/man2/symlinkat.2:104
1489 "The same errors that occur for B<symlink>(2) can also occur for "
1490 "B<symlinkat>(). The following additional errors can occur for "
1495 #: build/C/man2/symlinkat.2:108
1496 msgid "I<newdirfd> is not a valid file descriptor."
1500 #: build/C/man2/symlinkat.2:114
1502 "I<newpath> is relative and I<newdirfd> is a file descriptor referring to a "
1503 "file other than a directory."
1507 #: build/C/man2/symlinkat.2:117
1508 msgid "B<symlinkat>() was added to Linux in kernel 2.6.16."
1512 #: build/C/man2/symlinkat.2:124
1513 msgid "See B<openat>(2) for an explanation of the need for B<symlinkat>()."
1517 #: build/C/man2/symlinkat.2:128
1518 msgid "B<openat>(2), B<symlink>(2), B<path_resolution>(7), B<symlink>(7)"
1522 #: build/C/man2/unlinkat.2:26
1528 #: build/C/man2/unlinkat.2:29
1529 msgid "unlinkat - remove a directory entry relative to a directory file descriptor"
1533 #: build/C/man2/unlinkat.2:35
1536 "B<int unlinkat(int >I<dirfd>B<, const char *>I<pathname>B<, int "
1541 #: build/C/man2/unlinkat.2:43
1542 msgid "B<unlinkat>():"
1546 #: build/C/man2/unlinkat.2:68
1548 "The B<unlinkat>() system call operates in exactly the same way as either "
1549 "B<unlink>(2) or B<rmdir>(2) (depending on whether or not I<flags> includes "
1550 "the B<AT_REMOVEDIR> flag) except for the differences described in this "
1555 #: build/C/man2/unlinkat.2:80
1557 "If the pathname given in I<pathname> is relative, then it is interpreted "
1558 "relative to the directory referred to by the file descriptor I<dirfd> "
1559 "(rather than relative to the current working directory of the calling "
1560 "process, as is done by B<unlink>(2) and B<rmdir>(2) for a relative "
1565 #: build/C/man2/unlinkat.2:94
1567 "If the pathname given in I<pathname> is relative and I<dirfd> is the special "
1568 "value B<AT_FDCWD>, then I<pathname> is interpreted relative to the current "
1569 "working directory of the calling process (like B<unlink>(2) and "
1574 #: build/C/man2/unlinkat.2:100
1575 msgid "If the pathname given in I<pathname> is absolute, then I<dirfd> is ignored."
1579 #: build/C/man2/unlinkat.2:106
1581 "I<flags> is a bit mask that can either be specified as 0, or by ORing "
1582 "together flag values that control the operation of B<unlinkat>(). Currently "
1583 "only one such flags is defined:"
1587 #: build/C/man2/unlinkat.2:106
1589 msgid "B<AT_REMOVEDIR>"
1593 #: build/C/man2/unlinkat.2:121
1595 "By default, B<unlinkat>() performs the equivalent of B<unlink>(2) on "
1596 "I<pathname>. If the B<AT_REMOVEDIR> flag is specified, then performs the "
1597 "equivalent of B<rmdir>(2) on I<pathname>."
1601 #: build/C/man2/unlinkat.2:128
1603 "On success, B<unlinkat>() returns 0. On error, -1 is returned and I<errno> "
1604 "is set to indicate the error."
1608 #: build/C/man2/unlinkat.2:137
1610 "The same errors that occur for B<unlink>(2) and B<rmdir>(2) can also occur "
1611 "for B<unlinkat>(). The following additional errors can occur for "
1616 #: build/C/man2/unlinkat.2:145
1617 msgid "An invalid flag value was specified in I<flags>."
1621 #: build/C/man2/unlinkat.2:154
1622 msgid "B<unlinkat>() was added to Linux in kernel 2.6.16."
1626 #: build/C/man2/unlinkat.2:162
1627 msgid "See B<openat>(2) for an explanation of the need for B<unlinkat>()."
1631 #: build/C/man2/unlinkat.2:166
1632 msgid "B<openat>(2), B<rmdir>(2), B<unlink>(2), B<path_resolution>(7)"