msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2012-05-28 07:16+0900\n"
+"POT-Creation-Date: 2013-03-22 01:04+0900\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Content-Transfer-Encoding: 8bit\n"
#. type: TH
-#: build/C/man3/closedir.3:29
+#: build/C/man3/closedir.3:31
#, no-wrap
msgid "CLOSEDIR"
msgstr ""
#. type: TH
-#: build/C/man3/closedir.3:29
+#: build/C/man3/closedir.3:31
#, no-wrap
msgid "2008-09-23"
msgstr ""
#. type: TH
-#: build/C/man3/closedir.3:29 build/C/man3/dirfd.3:23 build/C/man2/getdents.2:27 build/C/man3/getdirentries.3:27 build/C/man3/opendir.3:30 build/C/man2/readdir.2:28 build/C/man3/readdir.3:34 build/C/man3/rewinddir.3:29 build/C/man3/scandir.3:34 build/C/man3/scandirat.3:26 build/C/man3/seekdir.3:28 build/C/man3/telldir.3:28
+#: build/C/man3/closedir.3:31 build/C/man3/dirfd.3:25 build/C/man2/getdents.2:30 build/C/man3/getdirentries.3:27 build/C/man3/opendir.3:32 build/C/man2/readdir.2:30 build/C/man3/readdir.3:36 build/C/man3/rewinddir.3:31 build/C/man3/scandir.3:36 build/C/man3/scandirat.3:25 build/C/man3/seekdir.3:30 build/C/man3/telldir.3:30
#, no-wrap
msgid "Linux Programmer's Manual"
msgstr ""
#. type: SH
-#: build/C/man3/closedir.3:30 build/C/man3/dirfd.3:24 build/C/man2/getdents.2:28 build/C/man3/getdirentries.3:28 build/C/man3/opendir.3:31 build/C/man2/readdir.2:29 build/C/man3/readdir.3:35 build/C/man3/rewinddir.3:30 build/C/man3/scandir.3:35 build/C/man3/scandirat.3:27 build/C/man3/seekdir.3:29 build/C/man3/telldir.3:29
+#: build/C/man3/closedir.3:32 build/C/man3/dirfd.3:26 build/C/man2/getdents.2:31 build/C/man3/getdirentries.3:28 build/C/man3/opendir.3:33 build/C/man2/readdir.2:31 build/C/man3/readdir.3:37 build/C/man3/rewinddir.3:32 build/C/man3/scandir.3:37 build/C/man3/scandirat.3:26 build/C/man3/seekdir.3:31 build/C/man3/telldir.3:31
#, no-wrap
msgid "NAME"
msgstr ""
#. type: Plain text
-#: build/C/man3/closedir.3:32
+#: build/C/man3/closedir.3:34
msgid "closedir - close a directory"
msgstr ""
#. type: SH
-#: build/C/man3/closedir.3:32 build/C/man3/dirfd.3:26 build/C/man2/getdents.2:30 build/C/man3/getdirentries.3:30 build/C/man3/opendir.3:33 build/C/man2/readdir.2:31 build/C/man3/readdir.3:37 build/C/man3/rewinddir.3:32 build/C/man3/scandir.3:37 build/C/man3/scandirat.3:29 build/C/man3/seekdir.3:32 build/C/man3/telldir.3:31
+#: build/C/man3/closedir.3:34 build/C/man3/dirfd.3:28 build/C/man2/getdents.2:33 build/C/man3/getdirentries.3:30 build/C/man3/opendir.3:35 build/C/man2/readdir.2:33 build/C/man3/readdir.3:39 build/C/man3/rewinddir.3:34 build/C/man3/scandir.3:39 build/C/man3/scandirat.3:28 build/C/man3/seekdir.3:34 build/C/man3/telldir.3:33
#, no-wrap
msgid "SYNOPSIS"
msgstr ""
#. type: Plain text
-#: build/C/man3/closedir.3:35 build/C/man3/opendir.3:36 build/C/man3/rewinddir.3:35
+#: build/C/man3/closedir.3:37 build/C/man3/opendir.3:38 build/C/man3/rewinddir.3:37
#, no-wrap
msgid "B<#include E<lt>sys/types.hE<gt>>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/closedir.3:37 build/C/man3/opendir.3:38 build/C/man3/readdir.3:40 build/C/man3/rewinddir.3:37 build/C/man3/scandir.3:40 build/C/man3/seekdir.3:35 build/C/man3/telldir.3:34
+#: build/C/man3/closedir.3:39 build/C/man3/opendir.3:40 build/C/man3/readdir.3:42 build/C/man3/rewinddir.3:39 build/C/man3/scandir.3:42 build/C/man3/seekdir.3:37 build/C/man3/telldir.3:36
#, no-wrap
msgid "B<#include E<lt>dirent.hE<gt>>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/closedir.3:39
+#: build/C/man3/closedir.3:41
#, no-wrap
msgid "B<int closedir(DIR *>I<dirp>B<);>\n"
msgstr ""
#. type: SH
-#: build/C/man3/closedir.3:40 build/C/man3/dirfd.3:52 build/C/man2/getdents.2:35 build/C/man3/getdirentries.3:43 build/C/man3/opendir.3:61 build/C/man2/readdir.2:37 build/C/man3/readdir.3:59 build/C/man3/rewinddir.3:40 build/C/man3/scandir.3:63 build/C/man3/scandirat.3:45 build/C/man3/seekdir.3:46 build/C/man3/telldir.3:45
+#: build/C/man3/closedir.3:42 build/C/man3/dirfd.3:54 build/C/man2/getdents.2:41 build/C/man3/getdirentries.3:43 build/C/man3/opendir.3:63 build/C/man2/readdir.2:42 build/C/man3/readdir.3:61 build/C/man3/rewinddir.3:42 build/C/man3/scandir.3:65 build/C/man3/scandirat.3:44 build/C/man3/seekdir.3:48 build/C/man3/telldir.3:47
#, no-wrap
msgid "DESCRIPTION"
msgstr ""
#. type: Plain text
-#: build/C/man3/closedir.3:51
+#: build/C/man3/closedir.3:53
msgid ""
"The B<closedir>() function closes the directory stream associated with "
"I<dirp>. A successful call to B<closedir>() also closes the underlying "
msgstr ""
#. type: SH
-#: build/C/man3/closedir.3:51 build/C/man3/dirfd.3:67 build/C/man2/getdents.2:136 build/C/man3/getdirentries.3:56 build/C/man3/opendir.3:81 build/C/man2/readdir.2:86 build/C/man3/readdir.3:117 build/C/man3/rewinddir.3:45 build/C/man3/scandir.3:90 build/C/man3/scandirat.3:79 build/C/man3/seekdir.3:58 build/C/man3/telldir.3:50
+#: build/C/man3/closedir.3:53 build/C/man3/dirfd.3:69 build/C/man2/getdents.2:142 build/C/man3/getdirentries.3:56 build/C/man3/opendir.3:83 build/C/man2/readdir.2:91 build/C/man3/readdir.3:119 build/C/man3/rewinddir.3:47 build/C/man3/scandir.3:92 build/C/man3/scandirat.3:78 build/C/man3/seekdir.3:60 build/C/man3/telldir.3:52
#, no-wrap
msgid "RETURN VALUE"
msgstr ""
#. type: Plain text
-#: build/C/man3/closedir.3:58
+#: build/C/man3/closedir.3:60
msgid ""
"The B<closedir>() function returns 0 on success. On error, -1 is returned, "
"and I<errno> is set appropriately."
msgstr ""
#. type: SH
-#: build/C/man3/closedir.3:58 build/C/man3/dirfd.3:70 build/C/man2/getdents.2:142 build/C/man3/getdirentries.3:62 build/C/man3/opendir.3:90 build/C/man2/readdir.2:92 build/C/man3/readdir.3:141 build/C/man3/scandir.3:103 build/C/man3/scandirat.3:86 build/C/man3/telldir.3:58
+#: build/C/man3/closedir.3:60 build/C/man3/dirfd.3:72 build/C/man2/getdents.2:148 build/C/man3/getdirentries.3:62 build/C/man3/opendir.3:92 build/C/man2/readdir.2:97 build/C/man3/readdir.3:143 build/C/man3/scandir.3:105 build/C/man3/scandirat.3:85 build/C/man3/telldir.3:60
#, no-wrap
msgid "ERRORS"
msgstr ""
#. type: TP
-#: build/C/man3/closedir.3:59 build/C/man2/getdents.2:143 build/C/man3/opendir.3:94 build/C/man2/readdir.2:93 build/C/man3/readdir.3:142 build/C/man3/scandirat.3:93 build/C/man3/telldir.3:59
+#: build/C/man3/closedir.3:61 build/C/man2/getdents.2:149 build/C/man3/opendir.3:96 build/C/man2/readdir.2:98 build/C/man3/readdir.3:144 build/C/man3/scandirat.3:92 build/C/man3/telldir.3:61
#, no-wrap
msgid "B<EBADF>"
msgstr ""
#. type: Plain text
-#: build/C/man3/closedir.3:62 build/C/man3/readdir.3:145 build/C/man3/telldir.3:62
+#: build/C/man3/closedir.3:64 build/C/man3/readdir.3:147 build/C/man3/telldir.3:64
msgid "Invalid directory stream descriptor I<dirp>."
msgstr ""
#. type: SH
-#: build/C/man3/closedir.3:62 build/C/man3/dirfd.3:83 build/C/man2/getdents.2:159 build/C/man3/getdirentries.3:64 build/C/man3/opendir.3:116 build/C/man2/readdir.2:109 build/C/man3/readdir.3:145 build/C/man3/rewinddir.3:49 build/C/man3/scandir.3:116 build/C/man3/scandirat.3:106 build/C/man3/seekdir.3:62 build/C/man3/telldir.3:62
+#: build/C/man3/closedir.3:64 build/C/man3/dirfd.3:85 build/C/man2/getdents.2:165 build/C/man3/getdirentries.3:64 build/C/man3/opendir.3:118 build/C/man2/readdir.2:114 build/C/man3/readdir.3:147 build/C/man3/rewinddir.3:51 build/C/man3/scandir.3:118 build/C/man3/scandirat.3:105 build/C/man3/seekdir.3:64 build/C/man3/telldir.3:64
#, no-wrap
msgid "CONFORMING TO"
msgstr ""
#. type: Plain text
-#: build/C/man3/closedir.3:64
+#: build/C/man3/closedir.3:66
msgid "SVr4, POSIX.1-2001, 4.3BSD."
msgstr ""
#. type: SH
-#: build/C/man3/closedir.3:64 build/C/man3/dirfd.3:95 build/C/man2/getdents.2:273 build/C/man3/getdirentries.3:72 build/C/man3/opendir.3:138 build/C/man2/readdir.2:117 build/C/man3/readdir.3:239 build/C/man3/rewinddir.3:51 build/C/man3/scandir.3:172 build/C/man3/scandirat.3:113 build/C/man3/seekdir.3:72 build/C/man3/telldir.3:72
+#: build/C/man3/closedir.3:66 build/C/man3/dirfd.3:97 build/C/man2/getdents.2:282 build/C/man3/getdirentries.3:72 build/C/man3/opendir.3:140 build/C/man2/readdir.2:125 build/C/man3/readdir.3:243 build/C/man3/rewinddir.3:53 build/C/man3/scandir.3:174 build/C/man3/scandirat.3:112 build/C/man3/seekdir.3:74 build/C/man3/telldir.3:74
#, no-wrap
msgid "SEE ALSO"
msgstr ""
#. type: Plain text
-#: build/C/man3/closedir.3:72
+#: build/C/man3/closedir.3:74
msgid ""
"B<close>(2), B<opendir>(3), B<readdir>(3), B<rewinddir>(3), B<scandir>(3), "
"B<seekdir>(3), B<telldir>(3)"
msgstr ""
#. type: SH
-#: build/C/man3/closedir.3:72 build/C/man3/dirfd.3:104 build/C/man2/getdents.2:276 build/C/man3/getdirentries.3:75 build/C/man3/opendir.3:147 build/C/man2/readdir.2:120 build/C/man3/readdir.3:251 build/C/man3/rewinddir.3:58 build/C/man3/scandir.3:184 build/C/man3/scandirat.3:117 build/C/man3/seekdir.3:80 build/C/man3/telldir.3:79
+#: build/C/man3/closedir.3:74 build/C/man3/dirfd.3:106 build/C/man2/getdents.2:285 build/C/man3/getdirentries.3:75 build/C/man3/opendir.3:149 build/C/man2/readdir.2:128 build/C/man3/readdir.3:255 build/C/man3/rewinddir.3:60 build/C/man3/scandir.3:186 build/C/man3/scandirat.3:116 build/C/man3/seekdir.3:82 build/C/man3/telldir.3:81
#, no-wrap
msgid "COLOPHON"
msgstr ""
#. type: Plain text
-#: build/C/man3/closedir.3:79 build/C/man3/dirfd.3:111 build/C/man2/getdents.2:283 build/C/man3/getdirentries.3:82 build/C/man3/opendir.3:154 build/C/man2/readdir.2:127 build/C/man3/readdir.3:258 build/C/man3/rewinddir.3:65 build/C/man3/scandir.3:191 build/C/man3/scandirat.3:124 build/C/man3/seekdir.3:87 build/C/man3/telldir.3:86
+#: build/C/man3/closedir.3:81 build/C/man3/dirfd.3:113 build/C/man2/getdents.2:292 build/C/man3/getdirentries.3:82 build/C/man3/opendir.3:156 build/C/man2/readdir.2:135 build/C/man3/readdir.3:262 build/C/man3/rewinddir.3:67 build/C/man3/scandir.3:193 build/C/man3/scandirat.3:123 build/C/man3/seekdir.3:89 build/C/man3/telldir.3:88
msgid ""
-"This page is part of release 3.41 of the Linux I<man-pages> project. A "
+"This page is part of release 3.50 of the Linux I<man-pages> project. A "
"description of the project, and information about reporting bugs, can be "
"found at http://www.kernel.org/doc/man-pages/."
msgstr ""
#. type: TH
-#: build/C/man3/dirfd.3:23
+#: build/C/man3/dirfd.3:25
#, no-wrap
msgid "DIRFD"
msgstr ""
#. type: TH
-#: build/C/man3/dirfd.3:23
+#: build/C/man3/dirfd.3:25
#, no-wrap
msgid "2010-09-26"
msgstr ""
#. type: TH
-#: build/C/man3/dirfd.3:23 build/C/man2/getdents.2:27 build/C/man2/readdir.2:28 build/C/man3/scandirat.3:26
+#: build/C/man3/dirfd.3:25 build/C/man2/getdents.2:30 build/C/man2/readdir.2:30 build/C/man3/scandirat.3:25
#, no-wrap
msgid "Linux"
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:26
+#: build/C/man3/dirfd.3:28
msgid "dirfd - get directory stream file descriptor"
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:28
+#: build/C/man3/dirfd.3:30
msgid "B<#include E<lt>sys/types.hE<gt>>"
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:30 build/C/man3/getdirentries.3:32
+#: build/C/man3/dirfd.3:32 build/C/man3/getdirentries.3:32
msgid "B<#include E<lt>dirent.hE<gt>>"
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:32
+#: build/C/man3/dirfd.3:34
msgid "B<int dirfd(DIR *>I<dirp>B<);>"
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:36 build/C/man3/getdirentries.3:39 build/C/man3/opendir.3:46 build/C/man3/readdir.3:50 build/C/man3/scandir.3:55 build/C/man3/seekdir.3:42 build/C/man3/telldir.3:41
+#: build/C/man3/dirfd.3:38 build/C/man3/getdirentries.3:39 build/C/man3/opendir.3:48 build/C/man3/readdir.3:52 build/C/man3/scandir.3:57 build/C/man3/seekdir.3:44 build/C/man3/telldir.3:43
msgid "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:39
+#: build/C/man3/dirfd.3:41
msgid "B<dirfd>():"
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:44
+#: build/C/man3/dirfd.3:46
msgid "_BSD_SOURCE || _SVID_SOURCE"
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:46
+#: build/C/man3/dirfd.3:48
msgid "|| /* Since glibc 2.10: */"
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:48
+#: build/C/man3/dirfd.3:50
msgid "(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)"
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:57
+#: build/C/man3/dirfd.3:59
msgid ""
"The function B<dirfd>() returns the file descriptor associated with the "
"directory stream I<dirp>."
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:67
+#: build/C/man3/dirfd.3:69
msgid ""
"This descriptor is the one used internally by the directory stream. As a "
"result, it is only useful for functions which do not depend on or alter the "
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:70
+#: build/C/man3/dirfd.3:72
msgid ""
"On success, a nonnegative file descriptor is returned. On error, -1 is "
"returned."
#. glibc 2.8
#. type: Plain text
-#: build/C/man3/dirfd.3:75
+#: build/C/man3/dirfd.3:77
msgid ""
"POSIX.1-2008 specifies two errors, neither of which is returned by the "
"current implementation."
msgstr ""
#. type: TP
-#: build/C/man3/dirfd.3:75 build/C/man2/getdents.2:150 build/C/man2/readdir.2:100
+#: build/C/man3/dirfd.3:77 build/C/man2/getdents.2:156 build/C/man2/readdir.2:105
#, no-wrap
msgid "B<EINVAL>"
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:79
+#: build/C/man3/dirfd.3:81
msgid "I<dirp> does not refer to a valid directory stream."
msgstr ""
#. type: TP
-#: build/C/man3/dirfd.3:79
+#: build/C/man3/dirfd.3:81
#, no-wrap
msgid "B<ENOTSUP>"
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:83
+#: build/C/man3/dirfd.3:85
msgid ""
"The implementation does not support the association of a file descriptor "
"with a directory."
#. It is present in libc5 (since 5.1.2) and in glibc2.
#. type: Plain text
-#: build/C/man3/dirfd.3:87
+#: build/C/man3/dirfd.3:89
msgid ""
"POSIX.1-2008. This function was a BSD extension, present in 4.3BSD-Reno, "
"not in 4.2BSD."
msgstr ""
#. type: SH
-#: build/C/man3/dirfd.3:87 build/C/man2/getdents.2:162 build/C/man3/opendir.3:121 build/C/man2/readdir.2:111 build/C/man3/readdir.3:147 build/C/man3/scandirat.3:108 build/C/man3/seekdir.3:64 build/C/man3/telldir.3:64
+#: build/C/man3/dirfd.3:89 build/C/man2/getdents.2:168 build/C/man3/opendir.3:123 build/C/man2/readdir.2:116 build/C/man3/readdir.3:149 build/C/man3/scandirat.3:107 build/C/man3/seekdir.3:66 build/C/man3/telldir.3:66
#, no-wrap
msgid "NOTES"
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:95
+#: build/C/man3/dirfd.3:97
msgid ""
"The prototype for B<dirfd>() is only available if B<_BSD_SOURCE> or "
"B<_SVID_SOURCE> is defined."
msgstr ""
#. type: Plain text
-#: build/C/man3/dirfd.3:104
+#: build/C/man3/dirfd.3:106
msgid ""
"B<open>(2), B<closedir>(3), B<opendir>(3), B<readdir>(3), B<rewinddir>(3), "
"B<scandir>(3), B<seekdir>(3), B<telldir>(3)"
msgstr ""
#. type: TH
-#: build/C/man2/getdents.2:27
+#: build/C/man2/getdents.2:30
#, no-wrap
msgid "GETDENTS"
msgstr ""
#. type: TH
-#: build/C/man2/getdents.2:27
+#: build/C/man2/getdents.2:30
#, no-wrap
-msgid "2010-11-21"
+msgid "2012-08-03"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:30
+#: build/C/man2/getdents.2:33
msgid "getdents - get directory entries"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:34
+#: build/C/man2/getdents.2:37
#, no-wrap
msgid ""
"B<int getdents(unsigned int >I<fd>B<, struct linux_dirent *>I<dirp>B<,>\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:41
+#: build/C/man2/getdents.2:41 build/C/man2/readdir.2:42
+msgid "I<Note>: There is no glibc wrapper for this system call; see NOTES."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/getdents.2:47
msgid ""
"This is not the function you are interested in. Look at B<readdir>(3) for "
"the POSIX conforming C library interface. This page documents the bare "
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:54
+#: build/C/man2/getdents.2:60
msgid ""
"The system call B<getdents>() reads several I<linux_dirent> structures from "
"the directory referred to by the open file descriptor I<fd> into the buffer "
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:58
+#: build/C/man2/getdents.2:64
msgid "The I<linux_dirent> structure is declared as follows:"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:73
+#: build/C/man2/getdents.2:79
#, no-wrap
msgid ""
"struct linux_dirent {\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:75
+#: build/C/man2/getdents.2:81
#, no-wrap
msgid "}\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:88
+#: build/C/man2/getdents.2:94
msgid ""
"I<d_ino> is an inode number. I<d_off> is the distance from the start of the "
"directory to the start of the next I<linux_dirent>. I<d_reclen> is the size "
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:93
+#: build/C/man2/getdents.2:99
msgid ""
"I<d_type> is a byte at the end of the structure that indicates the file "
"type. It contains one of the following values (defined in "
msgstr ""
#. type: TP
-#: build/C/man2/getdents.2:93 build/C/man3/readdir.3:176
+#: build/C/man2/getdents.2:99 build/C/man3/readdir.3:178
#, no-wrap
msgid "B<DT_BLK>"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:96 build/C/man3/readdir.3:179
+#: build/C/man2/getdents.2:102 build/C/man3/readdir.3:181
msgid "This is a block device."
msgstr ""
#. type: TP
-#: build/C/man2/getdents.2:96 build/C/man3/readdir.3:179
+#: build/C/man2/getdents.2:102 build/C/man3/readdir.3:181
#, no-wrap
msgid "B<DT_CHR>"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:99 build/C/man3/readdir.3:182
+#: build/C/man2/getdents.2:105 build/C/man3/readdir.3:184
msgid "This is a character device."
msgstr ""
#. type: TP
-#: build/C/man2/getdents.2:99 build/C/man3/readdir.3:182
+#: build/C/man2/getdents.2:105 build/C/man3/readdir.3:184
#, no-wrap
msgid "B<DT_DIR>"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:102 build/C/man3/readdir.3:185
+#: build/C/man2/getdents.2:108 build/C/man3/readdir.3:187
msgid "This is a directory."
msgstr ""
#. type: TP
-#: build/C/man2/getdents.2:102 build/C/man3/readdir.3:185
+#: build/C/man2/getdents.2:108 build/C/man3/readdir.3:187
#, no-wrap
msgid "B<DT_FIFO>"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:105 build/C/man3/readdir.3:188
+#: build/C/man2/getdents.2:111 build/C/man3/readdir.3:190
msgid "This is a named pipe (FIFO)."
msgstr ""
#. type: TP
-#: build/C/man2/getdents.2:105 build/C/man3/readdir.3:188
+#: build/C/man2/getdents.2:111 build/C/man3/readdir.3:190
#, no-wrap
msgid "B<DT_LNK>"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:108 build/C/man3/readdir.3:191
+#: build/C/man2/getdents.2:114 build/C/man3/readdir.3:193
msgid "This is a symbolic link."
msgstr ""
#. type: TP
-#: build/C/man2/getdents.2:108 build/C/man3/readdir.3:191
+#: build/C/man2/getdents.2:114 build/C/man3/readdir.3:193
#, no-wrap
msgid "B<DT_REG>"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:111 build/C/man3/readdir.3:194
+#: build/C/man2/getdents.2:117 build/C/man3/readdir.3:196
msgid "This is a regular file."
msgstr ""
#. type: TP
-#: build/C/man2/getdents.2:111 build/C/man3/readdir.3:194
+#: build/C/man2/getdents.2:117 build/C/man3/readdir.3:196
#, no-wrap
msgid "B<DT_SOCK>"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:114 build/C/man3/readdir.3:197
+#: build/C/man2/getdents.2:120 build/C/man3/readdir.3:199
msgid "This is a UNIX domain socket."
msgstr ""
#. type: TP
-#: build/C/man2/getdents.2:114 build/C/man3/readdir.3:197
+#: build/C/man2/getdents.2:120 build/C/man3/readdir.3:199
#, no-wrap
msgid "B<DT_UNKNOWN>"
msgstr ""
#. The glibc manual says that on some systems this is the only
#. value returned
#. type: Plain text
-#: build/C/man2/getdents.2:117 build/C/man3/readdir.3:202
+#: build/C/man2/getdents.2:123 build/C/man3/readdir.3:204
msgid "The file type is unknown."
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:127
+#: build/C/man2/getdents.2:133
msgid ""
"The I<d_type> field is implemented since Linux 2.6.4. It occupies a space "
"that was previously a zero-filled padding byte in the I<linux_dirent> "
#. kernel 2.6.27
#. The same sentence is in getdents.2
#. type: Plain text
-#: build/C/man2/getdents.2:136 build/C/man3/readdir.3:216
+#: build/C/man2/getdents.2:142 build/C/man3/readdir.3:218
msgid ""
"Currently, only some file systems (among them: Btrfs, ext2, ext3, and ext4) "
"have full support for returning the file type in I<d_type>. All "
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:142
+#: build/C/man2/getdents.2:148
msgid ""
"On success, the number of bytes read is returned. On end of directory, 0 is "
"returned. On error, -1 is returned, and I<errno> is set appropriately."
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:147 build/C/man2/readdir.2:97
+#: build/C/man2/getdents.2:153 build/C/man2/readdir.2:102
msgid "Invalid file descriptor I<fd>."
msgstr ""
#. type: TP
-#: build/C/man2/getdents.2:147 build/C/man2/readdir.2:97
+#: build/C/man2/getdents.2:153 build/C/man2/readdir.2:102
#, no-wrap
msgid "B<EFAULT>"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:150 build/C/man2/readdir.2:100
+#: build/C/man2/getdents.2:156 build/C/man2/readdir.2:105
msgid "Argument points outside the calling process's address space."
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:153 build/C/man2/readdir.2:103
+#: build/C/man2/getdents.2:159 build/C/man2/readdir.2:108
msgid "Result buffer is too small."
msgstr ""
#. type: TP
-#: build/C/man2/getdents.2:153 build/C/man3/opendir.3:104 build/C/man2/readdir.2:103 build/C/man3/scandir.3:104
+#: build/C/man2/getdents.2:159 build/C/man3/opendir.3:106 build/C/man2/readdir.2:108 build/C/man3/scandir.3:106
#, no-wrap
msgid "B<ENOENT>"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:156 build/C/man2/readdir.2:106
+#: build/C/man2/getdents.2:162 build/C/man2/readdir.2:111
msgid "No such directory."
msgstr ""
#. type: TP
-#: build/C/man2/getdents.2:156 build/C/man3/opendir.3:110 build/C/man2/readdir.2:106 build/C/man3/scandir.3:110 build/C/man3/scandirat.3:97
+#: build/C/man2/getdents.2:162 build/C/man3/opendir.3:112 build/C/man2/readdir.2:111 build/C/man3/scandir.3:112 build/C/man3/scandirat.3:96
#, no-wrap
msgid "B<ENOTDIR>"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:159 build/C/man2/readdir.2:109
+#: build/C/man2/getdents.2:165 build/C/man2/readdir.2:114
msgid "File descriptor does not refer to a directory."
msgstr ""
#. SVr4 documents additional ENOLINK, EIO error conditions.
#. type: Plain text
-#: build/C/man2/getdents.2:162
+#: build/C/man2/getdents.2:168
msgid "SVr4."
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:168
+#: build/C/man2/getdents.2:177
msgid ""
"Glibc does not provide a wrapper for this system call; call it using "
"B<syscall>(2). You will need to define the I<linux_dirent> structure "
-"yourself."
+"yourself. However, you probably want to use B<readdir>(3) instead."
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:171
+#: build/C/man2/getdents.2:180
msgid "This call supersedes B<readdir>(2)."
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:184
+#: build/C/man2/getdents.2:193
msgid ""
"The original Linux B<getdents>() system call did not handle large file "
"systems and large file offsets. Consequently, Linux 2.4 added "
msgstr ""
#. type: SH
-#: build/C/man2/getdents.2:184 build/C/man3/scandir.3:148
+#: build/C/man2/getdents.2:193 build/C/man3/scandir.3:150
#, no-wrap
msgid "EXAMPLE"
msgstr ""
#. FIXME: This program uses the older getdents(0 system call
#. and the structure with smaller field widths.
#. type: Plain text
-#: build/C/man2/getdents.2:191
+#: build/C/man2/getdents.2:200
msgid ""
"The program below demonstrates the use of B<getdents>(). The following "
"output shows an example of what we see when running this program on an ext2 "
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:204
+#: build/C/man2/getdents.2:213
#, no-wrap
msgid ""
"$B< ./a.out /testfs/>\n"
msgstr ""
#. type: SS
-#: build/C/man2/getdents.2:206
+#: build/C/man2/getdents.2:215
#, no-wrap
msgid "Program source"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:217
+#: build/C/man2/getdents.2:226
#, no-wrap
msgid ""
"#define _GNU_SOURCE\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:220
+#: build/C/man2/getdents.2:229
#, no-wrap
msgid ""
"#define handle_error(msg) \\e\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:227
+#: build/C/man2/getdents.2:236
#, no-wrap
msgid ""
"struct linux_dirent {\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:229
+#: build/C/man2/getdents.2:238
#, no-wrap
msgid "#define BUF_SIZE 1024\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:238
+#: build/C/man2/getdents.2:247
#, no-wrap
msgid ""
"int\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:242
+#: build/C/man2/getdents.2:251
#, no-wrap
msgid ""
" fd = open(argc E<gt> 1 ? argv[1] : \".\", O_RDONLY | O_DIRECTORY);\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:247
+#: build/C/man2/getdents.2:256
#, no-wrap
msgid ""
" for ( ; ; ) {\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:250
+#: build/C/man2/getdents.2:259
#, no-wrap
msgid ""
" if (nread == 0)\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:269
+#: build/C/man2/getdents.2:278
#, no-wrap
msgid ""
" printf(\"--------------- nread=%d ---------------\\en\", nread);\n"
" (d_type == DT_CHR) ? \"char dev\" : "
"\"???\");\n"
" printf(\"%4d %10lld %s\\en\", d-E<gt>d_reclen,\n"
-" (long long) d-E<gt>d_off, (char *) d-E<gt>d_name);\n"
+" (long long) d-E<gt>d_off, d-E<gt>d_name);\n"
" bpos += d-E<gt>d_reclen;\n"
" }\n"
" }\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:272
+#: build/C/man2/getdents.2:281
#, no-wrap
msgid ""
" exit(EXIT_SUCCESS);\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/getdents.2:276
+#: build/C/man2/getdents.2:285
msgid "B<readdir>(2), B<readdir>(3)"
msgstr ""
msgstr ""
#. type: TH
-#: build/C/man3/getdirentries.3:27 build/C/man3/opendir.3:30 build/C/man3/scandir.3:34
+#: build/C/man3/getdirentries.3:27 build/C/man3/opendir.3:32 build/C/man3/scandir.3:36
#, no-wrap
msgid "GNU"
msgstr ""
msgstr ""
#. type: TH
-#: build/C/man3/opendir.3:30
+#: build/C/man3/opendir.3:32
#, no-wrap
msgid "OPENDIR"
msgstr ""
#. type: TH
-#: build/C/man3/opendir.3:30
+#: build/C/man3/opendir.3:32
#, no-wrap
msgid "2010-06-20"
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:33
+#: build/C/man3/opendir.3:35
msgid "opendir, fdopendir - open a directory"
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:41
+#: build/C/man3/opendir.3:43
#, no-wrap
msgid ""
"B<DIR *opendir(const char *>I<name>B<);>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:49
+#: build/C/man3/opendir.3:51
msgid "B<fdopendir>():"
msgstr ""
#. type: TP
-#: build/C/man3/opendir.3:52
+#: build/C/man3/opendir.3:54
#, no-wrap
msgid "Since glibc 2.10:"
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:55
+#: build/C/man3/opendir.3:57
msgid "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
msgstr ""
#. type: TP
-#: build/C/man3/opendir.3:55
+#: build/C/man3/opendir.3:57
#, no-wrap
msgid "Before glibc 2.10:"
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:58
+#: build/C/man3/opendir.3:60
msgid "_GNU_SOURCE"
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:67
+#: build/C/man3/opendir.3:69
msgid ""
"The B<opendir>() function opens a directory stream corresponding to the "
"directory I<name>, and returns a pointer to the directory stream. The "
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:81
+#: build/C/man3/opendir.3:83
msgid ""
"The B<fdopendir>() function is like B<opendir>(), but returns a directory "
"stream for the directory referred to by the open file descriptor I<fd>. "
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:90
+#: build/C/man3/opendir.3:92
msgid ""
"The B<opendir>() and B<fdopendir>() functions return a pointer to the "
"directory stream. On error, NULL is returned, and I<errno> is set "
msgstr ""
#. type: TP
-#: build/C/man3/opendir.3:91
+#: build/C/man3/opendir.3:93
#, no-wrap
msgid "B<EACCES>"
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:94
+#: build/C/man3/opendir.3:96
msgid "Permission denied."
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:98
+#: build/C/man3/opendir.3:100
msgid "I<fd> is not a valid file descriptor opened for reading."
msgstr ""
#. type: TP
-#: build/C/man3/opendir.3:98
+#: build/C/man3/opendir.3:100
#, no-wrap
msgid "B<EMFILE>"
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:101
+#: build/C/man3/opendir.3:103
msgid "Too many file descriptors in use by process."
msgstr ""
#. type: TP
-#: build/C/man3/opendir.3:101
+#: build/C/man3/opendir.3:103
#, no-wrap
msgid "B<ENFILE>"
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:104
+#: build/C/man3/opendir.3:106
msgid "Too many files are currently open in the system."
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:107
+#: build/C/man3/opendir.3:109
msgid "Directory does not exist, or I<name> is an empty string."
msgstr ""
#. type: TP
-#: build/C/man3/opendir.3:107 build/C/man3/scandir.3:107
+#: build/C/man3/opendir.3:109 build/C/man3/scandir.3:109
#, no-wrap
msgid "B<ENOMEM>"
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:110 build/C/man3/scandir.3:110
+#: build/C/man3/opendir.3:112 build/C/man3/scandir.3:112
msgid "Insufficient memory to complete the operation."
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:113
+#: build/C/man3/opendir.3:115
msgid "I<name> is not a directory."
msgstr ""
#. type: SH
-#: build/C/man3/opendir.3:113 build/C/man3/scandir.3:113 build/C/man3/scandirat.3:103
+#: build/C/man3/opendir.3:115 build/C/man3/scandir.3:115 build/C/man3/scandirat.3:102
#, no-wrap
msgid "VERSIONS"
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:116
+#: build/C/man3/opendir.3:118
msgid "B<fdopendir>() is available in glibc since version 2.4."
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:121
+#: build/C/man3/opendir.3:123
msgid ""
"B<opendir>() is present on SVr4, 4.3BSD, and specified in POSIX.1-2001. "
"B<fdopendir>() is specified in POSIX.1-2008."
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:124
+#: build/C/man3/opendir.3:126
msgid ""
"The underlying file descriptor of the directory stream can be obtained using "
"B<dirfd>(3)."
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:138
+#: build/C/man3/opendir.3:140
msgid ""
"The B<opendir>() function sets the close-on-exec flag for the file "
"descriptor underlying the I<DIR *>. The B<fdopendir>() function leaves the "
msgstr ""
#. type: Plain text
-#: build/C/man3/opendir.3:147
+#: build/C/man3/opendir.3:149
msgid ""
"B<open>(2), B<closedir>(3), B<dirfd>(3), B<readdir>(3), B<rewinddir>(3), "
"B<scandir>(3), B<seekdir>(3), B<telldir>(3)"
msgstr ""
#. type: TH
-#: build/C/man2/readdir.2:28 build/C/man3/readdir.3:34
+#: build/C/man2/readdir.2:30 build/C/man3/readdir.3:36
#, no-wrap
msgid "READDIR"
msgstr ""
#. type: TH
-#: build/C/man2/readdir.2:28
+#: build/C/man2/readdir.2:30
#, no-wrap
-msgid "2008-10-02"
+msgid "2012-07-13"
msgstr ""
#. type: Plain text
-#: build/C/man2/readdir.2:31
+#: build/C/man2/readdir.2:33
msgid "readdir - read directory entry"
msgstr ""
#. type: Plain text
-#: build/C/man2/readdir.2:36
+#: build/C/man2/readdir.2:38
#, no-wrap
msgid ""
"B<int readdir(unsigned int >I<fd>B<, struct old_linux_dirent *>I<dirp>B<,>\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/readdir.2:45
+#: build/C/man2/readdir.2:50
msgid ""
"This is not the function you are interested in. Look at B<readdir>(3) for "
"the POSIX conforming C library interface. This page documents the bare "
msgstr ""
#. type: Plain text
-#: build/C/man2/readdir.2:59
+#: build/C/man2/readdir.2:64
msgid ""
"B<readdir>() reads one I<old_linux_dirent> structure from the directory "
"referred to by the file descriptor I<fd> into the buffer pointed to by "
msgstr ""
#. type: Plain text
-#: build/C/man2/readdir.2:63
+#: build/C/man2/readdir.2:68
msgid "The I<old_linux_dirent> structure is declared as follows:"
msgstr ""
#. type: Plain text
-#: build/C/man2/readdir.2:72
+#: build/C/man2/readdir.2:77
#, no-wrap
msgid ""
"struct old_linux_dirent {\n"
msgstr ""
#. type: Plain text
-#: build/C/man2/readdir.2:86
+#: build/C/man2/readdir.2:91
msgid ""
"I<d_ino> is an inode number. I<d_off> is the distance from the start of the "
"directory to this I<old_linux_dirent>. I<d_reclen> is the size of "
msgstr ""
#. type: Plain text
-#: build/C/man2/readdir.2:92
+#: build/C/man2/readdir.2:97
msgid ""
"On success, 1 is returned. On end of directory, 0 is returned. On error, "
"-1 is returned, and I<errno> is set appropriately."
msgstr ""
#. type: Plain text
-#: build/C/man2/readdir.2:111
+#: build/C/man2/readdir.2:116
msgid "This system call is Linux-specific."
msgstr ""
#. type: Plain text
-#: build/C/man2/readdir.2:117
+#: build/C/man2/readdir.2:125
msgid ""
"Glibc does not provide a wrapper for this system call; call it using "
"B<syscall>(2). You will need to define the I<old_linux_dirent> structure "
-"yourself."
+"yourself. However, probably you should use B<readdir>(3) instead."
msgstr ""
#. type: Plain text
-#: build/C/man2/readdir.2:120
+#: build/C/man2/readdir.2:128
msgid "B<getdents>(2), B<readdir>(3)"
msgstr ""
#. type: TH
-#: build/C/man3/readdir.3:34
+#: build/C/man3/readdir.3:36
#, no-wrap
-msgid "2010-09-10"
+msgid "2012-07-07"
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:37
+#: build/C/man3/readdir.3:39
msgid "readdir, readdir_r - read a directory"
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:42
+#: build/C/man3/readdir.3:44
#, no-wrap
msgid "B<struct dirent *readdir(DIR *>I<dirp>B<);>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:45
+#: build/C/man3/readdir.3:47
#, no-wrap
msgid ""
"B<int readdir_r(DIR *>I<dirp>B<, struct dirent *>I<entry>B<, struct dirent "
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:54
+#: build/C/man3/readdir.3:56
msgid "B<readdir_r>():"
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:57
+#: build/C/man3/readdir.3:59
msgid ""
"_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _BSD_SOURCE || _SVID_SOURCE "
"|| _POSIX_SOURCE"
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:67
+#: build/C/man3/readdir.3:69
msgid ""
"The B<readdir>() function returns a pointer to a I<dirent> structure "
"representing the next directory entry in the directory stream pointed to by "
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:71
+#: build/C/man3/readdir.3:73
msgid "On Linux, the I<dirent> structure is defined as follows:"
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:82
+#: build/C/man3/readdir.3:84
#, no-wrap
msgid ""
"struct dirent {\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:96
+#: build/C/man3/readdir.3:98
msgid ""
"The only fields in the I<dirent> structure that are mandated by POSIX.1 are: "
"I<d_name>[], of unspecified size, with at most B<NAME_MAX> characters "
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:102
+#: build/C/man3/readdir.3:104
msgid ""
"The data returned by B<readdir>() may be overwritten by subsequent calls to "
"B<readdir>() for the same directory stream."
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:117
+#: build/C/man3/readdir.3:119
msgid ""
"The B<readdir_r>() function is a reentrant version of B<readdir>(). It "
"reads the next directory entry from the directory stream I<dirp>, and "
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:132
+#: build/C/man3/readdir.3:134
msgid ""
"On success, B<readdir>() returns a pointer to a I<dirent> structure. (This "
"structure may be statically allocated; do not attempt to B<free>(3) it.) "
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:141
+#: build/C/man3/readdir.3:143
msgid ""
"The B<readdir_r>() function returns 0 on success. On error, it returns a "
"positive error number (listed under ERRORS). If the end of the directory "
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:147 build/C/man3/rewinddir.3:51
+#: build/C/man3/readdir.3:149 build/C/man3/rewinddir.3:53
msgid "SVr4, 4.3BSD, POSIX.1-2001."
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:163
+#: build/C/man3/readdir.3:165
msgid ""
"Only the fields I<d_name> and I<d_ino> are specified in POSIX.1-2001. The "
"remaining fields are available on many, but not all systems. Under glibc, "
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:176
+#: build/C/man3/readdir.3:178
msgid ""
"Other than Linux, the I<d_type> field is available mainly only on BSD "
"systems. This field makes it possible to avoid the expense of calling "
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:207
+#: build/C/man3/readdir.3:209
msgid ""
"If the file type could not be determined, the value B<DT_UNKNOWN> is "
"returned in I<d_type>."
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:226
+#: build/C/man3/readdir.3:228
msgid ""
"Since POSIX.1 does not specify the size of the I<d_name> field, and other "
"nonstandard fields may precede that field within the I<dirent> structure, "
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:232
+#: build/C/man3/readdir.3:236
#, no-wrap
msgid ""
-"len = offsetof(struct dirent, d_name) +\n"
-" pathconf(dirpath, _PC_NAME_MAX) + 1\n"
+"name_max = pathconf(dirpath, _PC_NAME_MAX);\n"
+"if (name_max == -1) /* Limit not defined, or error */\n"
+" name_max = 255; /* Take a guess */\n"
+"len = offsetof(struct dirent, d_name) + name_max + 1;\n"
"entryp = malloc(len);\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:239
+#: build/C/man3/readdir.3:243
msgid "(POSIX.1 requires that I<d_name> is the last field in a I<struct dirent>.)"
msgstr ""
#. type: Plain text
-#: build/C/man3/readdir.3:251
+#: build/C/man3/readdir.3:255
msgid ""
"B<getdents>(2), B<read>(2), B<closedir>(3), B<dirfd>(3), B<ftw>(3), "
"B<offsetof>(3), B<opendir>(3), B<rewinddir>(3), B<scandir>(3), "
msgstr ""
#. type: TH
-#: build/C/man3/rewinddir.3:29
+#: build/C/man3/rewinddir.3:31
#, no-wrap
msgid "REWINDDIR"
msgstr ""
#. type: TH
-#: build/C/man3/rewinddir.3:29
+#: build/C/man3/rewinddir.3:31
#, no-wrap
msgid "1995-06-11"
msgstr ""
#. type: Plain text
-#: build/C/man3/rewinddir.3:32
+#: build/C/man3/rewinddir.3:34
msgid "rewinddir - reset directory stream"
msgstr ""
#. type: Plain text
-#: build/C/man3/rewinddir.3:39
+#: build/C/man3/rewinddir.3:41
#, no-wrap
msgid "B<void rewinddir(DIR *>I<dirp>B<);>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/rewinddir.3:45
+#: build/C/man3/rewinddir.3:47
msgid ""
"The B<rewinddir>() function resets the position of the directory stream "
"I<dirp> to the beginning of the directory."
msgstr ""
#. type: Plain text
-#: build/C/man3/rewinddir.3:49
+#: build/C/man3/rewinddir.3:51
msgid "The B<rewinddir>() function returns no value."
msgstr ""
#. type: Plain text
-#: build/C/man3/rewinddir.3:58
+#: build/C/man3/rewinddir.3:60
msgid ""
"B<closedir>(3), B<opendir>(3), B<readdir>(3), B<scandir>(3), B<seekdir>(3), "
"B<telldir>(3)"
msgstr ""
#. type: TH
-#: build/C/man3/scandir.3:34
+#: build/C/man3/scandir.3:36
#, no-wrap
msgid "SCANDIR"
msgstr ""
#. type: TH
-#: build/C/man3/scandir.3:34
+#: build/C/man3/scandir.3:36
#, no-wrap
msgid "2012-04-26"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:37
+#: build/C/man3/scandir.3:39
msgid "scandir, alphasort, versionsort - scan a directory for matching entries"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:42
+#: build/C/man3/scandir.3:44
#, no-wrap
msgid "B<int scandir(const char *>I<dirp>B<, struct dirent ***>I<namelist>B<,>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:45 build/C/man3/scandirat.3:43
+#: build/C/man3/scandir.3:47 build/C/man3/scandirat.3:42
#, no-wrap
msgid ""
"B<int (*>I<filter>B<)(const struct dirent *),>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:48
+#: build/C/man3/scandir.3:50
#, no-wrap
msgid "B<int alphasort(const void *>I<a>B<, const void *>I<b>B<);>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:50
+#: build/C/man3/scandir.3:52
#, no-wrap
msgid "B<int versionsort(const void *>I<a>B<, const void *>I<b>B<);>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:60
+#: build/C/man3/scandir.3:62
msgid "B<scandir>(), B<alphasort>(): _BSD_SOURCE || _SVID_SOURCE"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:63
+#: build/C/man3/scandir.3:65
msgid "B<versionsort>(): _GNU_SOURCE"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:78
+#: build/C/man3/scandir.3:80
msgid ""
"The B<scandir>() function scans the directory I<dirp>, calling I<filter>() "
"on each directory entry. Entries for which I<filter>() returns nonzero are "
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:90
+#: build/C/man3/scandir.3:92
msgid ""
"The B<alphasort>() and B<versionsort>() functions can be used as the "
"comparison function I<compar>(). The former sorts directory entries using "
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:95
+#: build/C/man3/scandir.3:97
msgid ""
"The B<scandir>() function returns the number of directory entries selected "
"or -1 if an error occurs."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:103
+#: build/C/man3/scandir.3:105
msgid ""
"The B<alphasort>() and B<versionsort>() functions return an integer less "
"than, equal to, or greater than zero if the first argument is considered to "
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:107
+#: build/C/man3/scandir.3:109
msgid "The path in I<dirp> does not exist."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:113
+#: build/C/man3/scandir.3:115
msgid "The path in I<dirp> is not a directory."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:116
+#: build/C/man3/scandir.3:118
msgid "B<versionsort>() was added to glibc in version 2.1."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:123
+#: build/C/man3/scandir.3:125
msgid ""
"B<alphasort>() and B<scandir>() are specified in POSIX.1-2008, and are "
"widely available. B<versionsort>() is a GNU extension."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:130
+#: build/C/man3/scandir.3:132
msgid ""
"The functions B<scandir>() and B<alphasort>() are from 4.3BSD, and have "
"been available under Linux since libc4. Libc4 and libc5 use the more "
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:134
+#: build/C/man3/scandir.3:136
#, no-wrap
msgid ""
" int alphasort(const struct dirent ** a,\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:137
+#: build/C/man3/scandir.3:139
msgid "but glibc 2.0 returns to the imprecise BSD prototype."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:141
+#: build/C/man3/scandir.3:143
msgid ""
"The function B<versionsort>() is a GNU extension, available since glibc "
"2.1."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:148
+#: build/C/man3/scandir.3:150
msgid ""
"Since glibc 2.1, B<alphasort>() calls B<strcoll>(3); earlier it used "
"B<strcmp>(3)."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:153
+#: build/C/man3/scandir.3:155
#, no-wrap
msgid ""
"#define _SVID_SOURCE\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:159
+#: build/C/man3/scandir.3:161
#, no-wrap
msgid ""
"int\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:171
+#: build/C/man3/scandir.3:173
#, no-wrap
msgid ""
" n = scandir(\".\", &namelist, NULL, alphasort);\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandir.3:184
+#: build/C/man3/scandir.3:186
msgid ""
"B<closedir>(3), B<fnmatch>(3), B<opendir>(3), B<readdir>(3), "
"B<rewinddir>(3), B<scandirat>(3), B<seekdir>(3), B<strcmp>(3), "
msgstr ""
#. type: TH
-#: build/C/man3/scandirat.3:26
+#: build/C/man3/scandirat.3:25
#, no-wrap
msgid "SCANDIRAT"
msgstr ""
#. type: TH
-#: build/C/man3/scandirat.3:26
+#: build/C/man3/scandirat.3:25
#, no-wrap
msgid "2012-03-17"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:29
+#: build/C/man3/scandirat.3:28
msgid "scandirat - scan a directory relative to a directory file descriptor"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:32
+#: build/C/man3/scandirat.3:31
#, no-wrap
msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:35
+#: build/C/man3/scandirat.3:34
#, no-wrap
msgid ""
"B<#include E<lt>fcntl.hE<gt>> /* Definition of AT_* constants */\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:39
+#: build/C/man3/scandirat.3:38
msgid ""
"B<int scandirat(int >I<dirfd>B<, const char *>I<dirp>B<,> B<struct dirent "
"***>I<namelist>B<,>"
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:51
+#: build/C/man3/scandirat.3:50
msgid ""
"The B<scandirat>() system call operates in exactly the same way as "
"B<scandir>(3), except for the differences described in this manual page."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:61
+#: build/C/man3/scandirat.3:60
msgid ""
"If the pathname given in I<dirp> is relative, then it is interpreted "
"relative to the directory referred to by the file descriptor I<dirfd> "
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:73
+#: build/C/man3/scandirat.3:72
msgid ""
"If I<dirp> is relative and I<dirfd> is the special value B<AT_FDCWD>, then "
"I<dirp> is interpreted relative to the current working directory of the "
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:79
+#: build/C/man3/scandirat.3:78
msgid "If I<dirp> is absolute, then I<dirfd> is ignored."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:86
+#: build/C/man3/scandirat.3:85
msgid ""
"On success, B<scandirat>() returns the number of directory entries "
"selected. On error, -1 is returned and I<errno> is set to indicate the "
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:93
+#: build/C/man3/scandirat.3:92
msgid ""
"The same errors that occur for B<scandir>(3) can also occur for "
"B<scandirat>(). The following additional errors can occur for "
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:97
+#: build/C/man3/scandirat.3:96
msgid "I<dirfd> is not a valid file descriptor."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:103
+#: build/C/man3/scandirat.3:102
msgid ""
"I<dirp> is a relative path and I<dirfd> is a file descriptor referring to a "
"file other than a directory."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:106
+#: build/C/man3/scandirat.3:105
msgid "B<scandirat>() was added to glibc in version 2.15."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:108
+#: build/C/man3/scandirat.3:107
msgid "This function is a GNU extension."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:113
+#: build/C/man3/scandirat.3:112
msgid "See B<openat>(2) for an explanation of the need for B<scandirat>()."
msgstr ""
#. type: Plain text
-#: build/C/man3/scandirat.3:117
+#: build/C/man3/scandirat.3:116
msgid "B<openat>(2), B<scandir>(3), B<path_resolution>(7)"
msgstr ""
#. type: TH
-#: build/C/man3/seekdir.3:28
+#: build/C/man3/seekdir.3:30
#, no-wrap
msgid "SEEKDIR"
msgstr ""
#. type: TH
-#: build/C/man3/seekdir.3:28 build/C/man3/telldir.3:28
+#: build/C/man3/seekdir.3:30 build/C/man3/telldir.3:30
#, no-wrap
msgid "2009-03-11"
msgstr ""
#. type: Plain text
-#: build/C/man3/seekdir.3:32
+#: build/C/man3/seekdir.3:34
msgid ""
"seekdir - set the position of the next readdir() call in the directory "
"stream."
msgstr ""
#. type: Plain text
-#: build/C/man3/seekdir.3:37
+#: build/C/man3/seekdir.3:39
#, no-wrap
msgid "B<void seekdir(DIR *>I<dirp>B<, long >I<offset>B<);>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/seekdir.3:46
+#: build/C/man3/seekdir.3:48
msgid "B<seekdir>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE"
msgstr ""
#. type: Plain text
-#: build/C/man3/seekdir.3:58
+#: build/C/man3/seekdir.3:60
msgid ""
"The B<seekdir>() function sets the location in the directory stream from "
"which the next B<readdir>(2) call will start. B<seekdir>() should be used "
msgstr ""
#. type: Plain text
-#: build/C/man3/seekdir.3:62
+#: build/C/man3/seekdir.3:64
msgid "The B<seekdir>() function returns no value."
msgstr ""
#. type: Plain text
-#: build/C/man3/seekdir.3:64 build/C/man3/telldir.3:64
+#: build/C/man3/seekdir.3:66 build/C/man3/telldir.3:66
msgid "4.3BSD, POSIX.1-2001."
msgstr ""
#. type: Plain text
-#: build/C/man3/seekdir.3:72
+#: build/C/man3/seekdir.3:74
msgid ""
"In glibc up to version 2.1.1, the type of the I<offset> argument was "
"I<off_t>. POSIX.1-2001 specifies I<long>, and this is the type used since "
msgstr ""
#. type: Plain text
-#: build/C/man3/seekdir.3:80
+#: build/C/man3/seekdir.3:82
msgid ""
"B<lseek>(2), B<closedir>(3), B<opendir>(3), B<readdir>(3), B<rewinddir>(3), "
"B<scandir>(3), B<telldir>(3)"
msgstr ""
#. type: TH
-#: build/C/man3/telldir.3:28
+#: build/C/man3/telldir.3:30
#, no-wrap
msgid "TELLDIR"
msgstr ""
#. type: Plain text
-#: build/C/man3/telldir.3:31
+#: build/C/man3/telldir.3:33
msgid "telldir - return current location in directory stream"
msgstr ""
#. type: Plain text
-#: build/C/man3/telldir.3:36
+#: build/C/man3/telldir.3:38
#, no-wrap
msgid "B<long telldir(DIR *>I<dirp>B<);>\n"
msgstr ""
#. type: Plain text
-#: build/C/man3/telldir.3:45
+#: build/C/man3/telldir.3:47
msgid "B<telldir>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE"
msgstr ""
#. type: Plain text
-#: build/C/man3/telldir.3:50
+#: build/C/man3/telldir.3:52
msgid ""
"The B<telldir>() function returns the current location associated with the "
"directory stream I<dirp>."
msgstr ""
#. type: Plain text
-#: build/C/man3/telldir.3:58
+#: build/C/man3/telldir.3:60
msgid ""
"On success, the B<telldir>() function returns the current location in the "
"directory stream. On error, -1 is returned, and I<errno> is set "
msgstr ""
#. type: Plain text
-#: build/C/man3/telldir.3:72
+#: build/C/man3/telldir.3:74
msgid ""
"In glibc up to version 2.1.1, the return type of B<telldir>() was "
"I<off_t>. POSIX.1-2001 specifies I<long>, and this is the type used since "
msgstr ""
#. type: Plain text
-#: build/C/man3/telldir.3:79
+#: build/C/man3/telldir.3:81
msgid ""
"B<closedir>(3), B<opendir>(3), B<readdir>(3), B<rewinddir>(3), "
"B<scandir>(3), B<seekdir>(3)"