msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2013-03-22 01:07+0900\n"
-"PO-Revision-Date: 2013-03-24 01:06+0900\n"
+"POT-Creation-Date: 2014-06-08 01:30+0900\n"
+"PO-Revision-Date: 2014-06-08 02:35+0900\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
#. type: TH
#: build/C/man3/MB_CUR_MAX.3:17 build/C/man3/MB_LEN_MAX.3:17
#: build/C/man2/_exit.2:29 build/C/man3/atexit.3:33 build/C/man3/clearenv.3:26
-#: build/C/man3/exit.3:25 build/C/man3/getloadavg.3:34
-#: build/C/man3/strtod.3:45
+#: build/C/man3/exit.3:29 build/C/man3/getloadavg.3:34
+#: build/C/man3/strtod.3:45 build/C/man7/vdso.7:13
#, no-wrap
msgid "Linux"
msgstr "Linux"
#: build/C/man3/canonicalize_file_name.3:26 build/C/man3/cfree.3:24
#: build/C/man3/clearenv.3:26 build/C/man3/drand48.3:30
#: build/C/man3/drand48_r.3:27 build/C/man3/ecvt.3:32 build/C/man3/ecvt_r.3:30
-#: build/C/man3/exit.3:25 build/C/man3/gcvt.3:30 build/C/man3/getauxval.3:27
+#: build/C/man3/exit.3:29 build/C/man3/gcvt.3:30 build/C/man3/getauxval.3:29
#: build/C/man3/getenv.3:33 build/C/man3/getloadavg.3:34
-#: build/C/man3/getsubopt.3:25 build/C/man3/malloc.3:30
-#: build/C/man3/mblen.3:16 build/C/man3/mbstowcs.3:16 build/C/man3/mbtowc.3:16
+#: build/C/man3/getsubopt.3:25 build/C/man3/malloc.3:33
+#: build/C/man3/mblen.3:16 build/C/man3/mbstowcs.3:18 build/C/man3/mbtowc.3:16
#: build/C/man3/mkdtemp.3:26 build/C/man3/mkstemp.3:35
#: build/C/man3/mktemp.3:34 build/C/man3/on_exit.3:31 build/C/man3/putenv.3:36
#: build/C/man3/qecvt.3:28 build/C/man3/rand.3:41 build/C/man3/random.3:33
#: build/C/man3/random_r.3:26 build/C/man3/rpmatch.3:29
#: build/C/man3/setenv.3:37 build/C/man3/strtod.3:45
#: build/C/man3/strtoimax.3:24 build/C/man3/strtol.3:31
-#: build/C/man3/strtoul.3:33 build/C/man3/system.3:30
+#: build/C/man3/strtoul.3:33 build/C/man3/system.3:31 build/C/man7/vdso.7:13
#: build/C/man3/wcstombs.3:16 build/C/man3/wctomb.3:16
#, no-wrap
msgid "Linux Programmer's Manual"
#: build/C/man3/canonicalize_file_name.3:27 build/C/man3/cfree.3:25
#: build/C/man3/clearenv.3:27 build/C/man3/drand48.3:31
#: build/C/man3/drand48_r.3:28 build/C/man3/ecvt.3:33 build/C/man3/ecvt_r.3:31
-#: build/C/man3/exit.3:26 build/C/man3/gcvt.3:31 build/C/man3/getauxval.3:28
+#: build/C/man3/exit.3:30 build/C/man3/gcvt.3:31 build/C/man3/getauxval.3:30
#: build/C/man3/getenv.3:34 build/C/man3/getloadavg.3:35
-#: build/C/man3/getsubopt.3:26 build/C/man3/malloc.3:31
-#: build/C/man3/mblen.3:17 build/C/man3/mbstowcs.3:17 build/C/man3/mbtowc.3:17
+#: build/C/man3/getsubopt.3:26 build/C/man3/malloc.3:34
+#: build/C/man3/mblen.3:17 build/C/man3/mbstowcs.3:19 build/C/man3/mbtowc.3:17
#: build/C/man3/mkdtemp.3:27 build/C/man3/mkstemp.3:36
#: build/C/man3/mktemp.3:35 build/C/man3/on_exit.3:32 build/C/man3/putenv.3:37
#: build/C/man3/qecvt.3:29 build/C/man3/rand.3:42 build/C/man3/random.3:34
#: build/C/man3/random_r.3:27 build/C/man3/rpmatch.3:30
#: build/C/man3/setenv.3:38 build/C/man3/strtod.3:46
#: build/C/man3/strtoimax.3:25 build/C/man3/strtol.3:32
-#: build/C/man3/strtoul.3:34 build/C/man3/system.3:31
+#: build/C/man3/strtoul.3:34 build/C/man3/system.3:32 build/C/man7/vdso.7:14
#: build/C/man3/wcstombs.3:17 build/C/man3/wctomb.3:17
#, no-wrap
msgid "NAME"
#: build/C/man3/canonicalize_file_name.3:29 build/C/man3/cfree.3:27
#: build/C/man3/clearenv.3:29 build/C/man3/drand48.3:34
#: build/C/man3/drand48_r.3:32 build/C/man3/ecvt.3:35 build/C/man3/ecvt_r.3:33
-#: build/C/man3/exit.3:28 build/C/man3/gcvt.3:33 build/C/man3/getauxval.3:30
+#: build/C/man3/exit.3:32 build/C/man3/gcvt.3:33 build/C/man3/getauxval.3:32
#: build/C/man3/getenv.3:36 build/C/man3/getloadavg.3:37
-#: build/C/man3/getsubopt.3:28 build/C/man3/malloc.3:33
-#: build/C/man3/mblen.3:19 build/C/man3/mbstowcs.3:19 build/C/man3/mbtowc.3:19
+#: build/C/man3/getsubopt.3:28 build/C/man3/malloc.3:36
+#: build/C/man3/mblen.3:19 build/C/man3/mbstowcs.3:21 build/C/man3/mbtowc.3:19
#: build/C/man3/mkdtemp.3:29 build/C/man3/mkstemp.3:38
#: build/C/man3/mktemp.3:37 build/C/man3/on_exit.3:34 build/C/man3/putenv.3:39
#: build/C/man3/qecvt.3:31 build/C/man3/rand.3:44 build/C/man3/random.3:36
#: build/C/man3/random_r.3:30 build/C/man3/rpmatch.3:32
#: build/C/man3/setenv.3:40 build/C/man3/strtod.3:48
#: build/C/man3/strtoimax.3:27 build/C/man3/strtol.3:34
-#: build/C/man3/strtoul.3:36 build/C/man3/system.3:33
+#: build/C/man3/strtoul.3:36 build/C/man3/system.3:34 build/C/man7/vdso.7:16
#: build/C/man3/wcstombs.3:19 build/C/man3/wctomb.3:19
#, no-wrap
msgid "SYNOPSIS"
#: build/C/man3/MB_CUR_MAX.3:23 build/C/man3/atexit.3:39
#: build/C/man3/atof.3:37 build/C/man3/atoi.3:39 build/C/man3/cfree.3:31
#: build/C/man3/clearenv.3:32 build/C/man3/drand48.3:37
-#: build/C/man3/drand48_r.3:35 build/C/man3/ecvt_r.3:36 build/C/man3/exit.3:31
-#: build/C/man3/gcvt.3:36 build/C/man3/getenv.3:39 build/C/man3/malloc.3:36
-#: build/C/man3/mblen.3:22 build/C/man3/mbstowcs.3:22 build/C/man3/mbtowc.3:22
+#: build/C/man3/drand48_r.3:35 build/C/man3/ecvt_r.3:36 build/C/man3/exit.3:35
+#: build/C/man3/gcvt.3:36 build/C/man3/getenv.3:39 build/C/man3/malloc.3:39
+#: build/C/man3/mblen.3:22 build/C/man3/mbstowcs.3:24 build/C/man3/mbtowc.3:22
#: build/C/man3/mkdtemp.3:32 build/C/man3/mkstemp.3:41
#: build/C/man3/mktemp.3:40 build/C/man3/on_exit.3:37 build/C/man3/putenv.3:42
#: build/C/man3/rand.3:47 build/C/man3/random.3:39 build/C/man3/random_r.3:33
#: build/C/man3/rpmatch.3:35 build/C/man3/setenv.3:43 build/C/man3/strtol.3:37
-#: build/C/man3/strtoul.3:39 build/C/man3/system.3:36
+#: build/C/man3/strtoul.3:39 build/C/man3/system.3:37
#: build/C/man3/wcstombs.3:22 build/C/man3/wctomb.3:22
#, no-wrap
msgid "B<#include E<lt>stdlib.hE<gt>>\n"
#: build/C/man3/canonicalize_file_name.3:35 build/C/man3/cfree.3:52
#: build/C/man3/clearenv.3:43 build/C/man3/drand48.3:75
#: build/C/man3/drand48_r.3:83 build/C/man3/ecvt.3:69 build/C/man3/ecvt_r.3:64
-#: build/C/man3/exit.3:34 build/C/man3/gcvt.3:64 build/C/man3/getauxval.3:36
+#: build/C/man3/exit.3:38 build/C/man3/gcvt.3:64 build/C/man3/getauxval.3:38
#: build/C/man3/getenv.3:52 build/C/man3/getloadavg.3:44
-#: build/C/man3/getsubopt.3:50 build/C/man3/malloc.3:42
-#: build/C/man3/mblen.3:25 build/C/man3/mbstowcs.3:25 build/C/man3/mbtowc.3:25
+#: build/C/man3/getsubopt.3:50 build/C/man3/malloc.3:45
+#: build/C/man3/mblen.3:25 build/C/man3/mbstowcs.3:27 build/C/man3/mbtowc.3:25
#: build/C/man3/mkdtemp.3:55 build/C/man3/mkstemp.3:76
#: build/C/man3/mktemp.3:66 build/C/man3/on_exit.3:48 build/C/man3/putenv.3:54
-#: build/C/man3/qecvt.3:53 build/C/man3/rand.3:62 build/C/man3/random.3:64
+#: build/C/man3/qecvt.3:66 build/C/man3/rand.3:62 build/C/man3/random.3:64
#: build/C/man3/random_r.3:58 build/C/man3/rpmatch.3:46
#: build/C/man3/setenv.3:61 build/C/man3/strtod.3:73
#: build/C/man3/strtoimax.3:35 build/C/man3/strtol.3:59
-#: build/C/man3/strtoul.3:62 build/C/man3/system.3:39
+#: build/C/man3/strtoul.3:62 build/C/man3/system.3:40 build/C/man7/vdso.7:20
#: build/C/man3/wcstombs.3:25 build/C/man3/wctomb.3:25
#, no-wrap
msgid "DESCRIPTION"
#. type: SH
#: build/C/man3/MB_CUR_MAX.3:31 build/C/man3/MB_LEN_MAX.3:29
-#: build/C/man2/_exit.2:79 build/C/man3/atexit.3:68 build/C/man3/atof.3:55
-#: build/C/man3/atoi.3:91 build/C/man3/canonicalize_file_name.3:63
+#: build/C/man2/_exit.2:79 build/C/man3/atexit.3:71 build/C/man3/atof.3:55
+#: build/C/man3/atoi.3:91 build/C/man3/canonicalize_file_name.3:61
#: build/C/man3/cfree.3:96 build/C/man3/clearenv.3:50
#: build/C/man3/drand48_r.3:96 build/C/man3/ecvt.3:99 build/C/man3/ecvt_r.3:86
-#: build/C/man3/exit.3:82 build/C/man3/gcvt.3:72 build/C/man3/getauxval.3:171
+#: build/C/man3/exit.3:86 build/C/man3/gcvt.3:72 build/C/man3/getauxval.3:173
#: build/C/man3/getenv.3:88 build/C/man3/getloadavg.3:55
-#: build/C/man3/getsubopt.3:110 build/C/man3/malloc.3:129
-#: build/C/man3/mblen.3:60 build/C/man3/mbstowcs.3:60 build/C/man3/mbtowc.3:66
-#: build/C/man3/mkdtemp.3:68 build/C/man3/mkstemp.3:136
-#: build/C/man3/mktemp.3:77 build/C/man3/on_exit.3:69 build/C/man3/putenv.3:67
+#: build/C/man3/getsubopt.3:110 build/C/man3/malloc.3:132
+#: build/C/man3/mblen.3:75 build/C/man3/mbstowcs.3:84 build/C/man3/mbtowc.3:93
+#: build/C/man3/mkdtemp.3:68 build/C/man3/mkstemp.3:155
+#: build/C/man3/mktemp.3:80 build/C/man3/on_exit.3:76 build/C/man3/putenv.3:67
#: build/C/man3/rand.3:118 build/C/man3/random.3:118
-#: build/C/man3/random_r.3:100 build/C/man3/rpmatch.3:66
-#: build/C/man3/setenv.3:86 build/C/man3/strtod.3:128
-#: build/C/man3/strtoimax.3:45 build/C/man3/strtol.3:101
-#: build/C/man3/strtoul.3:110 build/C/man3/system.3:54
-#: build/C/man3/wcstombs.3:61 build/C/man3/wctomb.3:52
+#: build/C/man3/random_r.3:100 build/C/man3/rpmatch.3:73
+#: build/C/man3/setenv.3:105 build/C/man3/strtod.3:128
+#: build/C/man3/strtoimax.3:45 build/C/man3/strtol.3:117
+#: build/C/man3/strtoul.3:127 build/C/man3/system.3:73
+#: build/C/man3/wcstombs.3:79 build/C/man3/wctomb.3:63
#, no-wrap
msgid "RETURN VALUE"
msgstr "返り値"
#. type: SH
#: build/C/man3/MB_CUR_MAX.3:35 build/C/man3/MB_LEN_MAX.3:31
-#: build/C/man2/_exit.2:81 build/C/man3/a64l.3:62 build/C/man3/atexit.3:73
-#: build/C/man3/atof.3:57 build/C/man3/atoi.3:93
-#: build/C/man3/canonicalize_file_name.3:61 build/C/man3/cfree.3:112
-#: build/C/man3/clearenv.3:60 build/C/man3/drand48.3:204
-#: build/C/man3/drand48_r.3:98 build/C/man3/ecvt.3:110
-#: build/C/man3/ecvt_r.3:88 build/C/man3/exit.3:86 build/C/man3/gcvt.3:77
-#: build/C/man3/getauxval.3:185 build/C/man3/getenv.3:96
-#: build/C/man3/getloadavg.3:65 build/C/man3/getsubopt.3:129
-#: build/C/man3/malloc.3:168 build/C/man3/mblen.3:70
-#: build/C/man3/mbstowcs.3:70 build/C/man3/mbtowc.3:78
-#: build/C/man3/mkdtemp.3:86 build/C/man3/mkstemp.3:176
-#: build/C/man3/mktemp.3:90 build/C/man3/on_exit.3:74 build/C/man3/putenv.3:76
-#: build/C/man3/qecvt.3:72 build/C/man3/rand.3:129 build/C/man3/random.3:137
-#: build/C/man3/random_r.3:125 build/C/man3/rpmatch.3:87
-#: build/C/man3/setenv.3:109 build/C/man3/strtod.3:160
-#: build/C/man3/strtoimax.3:58 build/C/man3/strtol.3:139
-#: build/C/man3/strtoul.3:142 build/C/man3/system.3:78
-#: build/C/man3/wcstombs.3:70 build/C/man3/wctomb.3:66
+#: build/C/man2/_exit.2:81 build/C/man3/a64l.3:71 build/C/man3/atexit.3:76
+#: build/C/man3/atof.3:65 build/C/man3/atoi.3:105
+#: build/C/man3/canonicalize_file_name.3:73 build/C/man3/cfree.3:112
+#: build/C/man3/clearenv.3:60 build/C/man3/drand48.3:260
+#: build/C/man3/drand48_r.3:112 build/C/man3/ecvt.3:117
+#: build/C/man3/ecvt_r.3:88 build/C/man3/exit.3:96 build/C/man3/gcvt.3:77
+#: build/C/man3/getauxval.3:192 build/C/man3/getenv.3:96
+#: build/C/man3/getloadavg.3:70 build/C/man3/getsubopt.3:134
+#: build/C/man3/malloc.3:171 build/C/man3/mblen.3:92
+#: build/C/man3/mbstowcs.3:94 build/C/man3/mbtowc.3:113
+#: build/C/man3/mkdtemp.3:86 build/C/man3/mkstemp.3:195
+#: build/C/man3/mktemp.3:95 build/C/man3/on_exit.3:81 build/C/man3/putenv.3:79
+#: build/C/man3/qecvt.3:96 build/C/man3/rand.3:129 build/C/man3/random.3:161
+#: build/C/man3/random_r.3:137 build/C/man3/rpmatch.3:99
+#: build/C/man3/setenv.3:128 build/C/man3/strtod.3:172
+#: build/C/man3/strtoimax.3:69 build/C/man3/strtol.3:173
+#: build/C/man3/strtoul.3:177 build/C/man3/system.3:110
+#: build/C/man3/wcstombs.3:89 build/C/man3/wctomb.3:89
#, no-wrap
msgid "CONFORMING TO"
msgstr "準拠"
#. type: Plain text
#: build/C/man3/MB_CUR_MAX.3:37 build/C/man3/MB_LEN_MAX.3:33
-#: build/C/man3/strtoimax.3:60
+#: build/C/man3/strtoimax.3:71
msgid "C99, POSIX.1-2001."
msgstr "C99, POSIX.1-2001."
#. type: SH
#: build/C/man3/MB_CUR_MAX.3:37 build/C/man3/MB_LEN_MAX.3:44
-#: build/C/man2/_exit.2:124 build/C/man3/a64l.3:84 build/C/man3/atexit.3:158
-#: build/C/man3/atof.3:59 build/C/man3/atoi.3:113
+#: build/C/man2/_exit.2:124 build/C/man3/a64l.3:93 build/C/man3/atexit.3:161
+#: build/C/man3/atof.3:67 build/C/man3/atoi.3:125
#: build/C/man3/canonicalize_file_name.3:75 build/C/man3/cfree.3:117
-#: build/C/man3/clearenv.3:97 build/C/man3/drand48.3:210
-#: build/C/man3/drand48_r.3:100 build/C/man3/ecvt.3:128
-#: build/C/man3/ecvt_r.3:95 build/C/man3/exit.3:173 build/C/man3/gcvt.3:86
-#: build/C/man3/getauxval.3:211 build/C/man3/getenv.3:129
-#: build/C/man3/getloadavg.3:69 build/C/man3/getsubopt.3:226
-#: build/C/man3/malloc.3:259 build/C/man3/mblen.3:84
-#: build/C/man3/mbstowcs.3:84 build/C/man3/mbtowc.3:93
-#: build/C/man3/mkdtemp.3:91 build/C/man3/mkstemp.3:214
-#: build/C/man3/mktemp.3:113 build/C/man3/on_exit.3:81
-#: build/C/man3/putenv.3:116 build/C/man3/qecvt.3:83 build/C/man3/rand.3:217
-#: build/C/man3/random.3:165 build/C/man3/random_r.3:129
-#: build/C/man3/rpmatch.3:129 build/C/man3/setenv.3:132
-#: build/C/man3/strtod.3:179 build/C/man3/strtoimax.3:60
-#: build/C/man3/strtol.3:263 build/C/man3/strtoul.3:190
-#: build/C/man3/system.3:153 build/C/man3/wcstombs.3:84
-#: build/C/man3/wctomb.3:81
+#: build/C/man3/clearenv.3:97 build/C/man3/drand48.3:266
+#: build/C/man3/drand48_r.3:114 build/C/man3/ecvt.3:135
+#: build/C/man3/ecvt_r.3:95 build/C/man3/exit.3:183 build/C/man3/gcvt.3:86
+#: build/C/man3/getauxval.3:218 build/C/man3/getenv.3:129
+#: build/C/man3/getloadavg.3:74 build/C/man3/getsubopt.3:232
+#: build/C/man3/malloc.3:261 build/C/man3/mblen.3:106
+#: build/C/man3/mbstowcs.3:216 build/C/man3/mbtowc.3:128
+#: build/C/man3/mkdtemp.3:91 build/C/man3/mkstemp.3:233
+#: build/C/man3/mktemp.3:118 build/C/man3/on_exit.3:88
+#: build/C/man3/putenv.3:119 build/C/man3/qecvt.3:107 build/C/man3/rand.3:217
+#: build/C/man3/random.3:197 build/C/man3/random_r.3:141
+#: build/C/man3/rpmatch.3:144 build/C/man3/setenv.3:153
+#: build/C/man3/strtod.3:191 build/C/man3/strtoimax.3:71
+#: build/C/man3/strtol.3:297 build/C/man3/strtoul.3:225
+#: build/C/man3/system.3:202 build/C/man7/vdso.7:494
+#: build/C/man3/wcstombs.3:103 build/C/man3/wctomb.3:103
#, no-wrap
msgid "SEE ALSO"
msgstr "関連項目"
#. type: SH
#: build/C/man3/MB_CUR_MAX.3:44 build/C/man3/MB_LEN_MAX.3:46
-#: build/C/man2/_exit.2:136 build/C/man3/a64l.3:88 build/C/man3/atexit.3:162
-#: build/C/man3/atof.3:65 build/C/man3/atoi.3:118
+#: build/C/man2/_exit.2:136 build/C/man3/a64l.3:97 build/C/man3/atexit.3:165
+#: build/C/man3/atof.3:73 build/C/man3/atoi.3:130
#: build/C/man3/canonicalize_file_name.3:78 build/C/man3/cfree.3:119
-#: build/C/man3/clearenv.3:103 build/C/man3/drand48.3:213
-#: build/C/man3/drand48_r.3:104 build/C/man3/ecvt.3:134
-#: build/C/man3/ecvt_r.3:99 build/C/man3/exit.3:180 build/C/man3/gcvt.3:90
-#: build/C/man3/getauxval.3:217 build/C/man3/getenv.3:137
-#: build/C/man3/getloadavg.3:72 build/C/man3/getsubopt.3:228
-#: build/C/man3/malloc.3:283 build/C/man3/mblen.3:86
-#: build/C/man3/mbstowcs.3:87 build/C/man3/mbtowc.3:97
-#: build/C/man3/mkdtemp.3:98 build/C/man3/mkstemp.3:220
-#: build/C/man3/mktemp.3:118 build/C/man3/on_exit.3:85
-#: build/C/man3/putenv.3:122 build/C/man3/qecvt.3:88 build/C/man3/rand.3:220
-#: build/C/man3/random.3:170 build/C/man3/random_r.3:133
-#: build/C/man3/rpmatch.3:135 build/C/man3/setenv.3:137
-#: build/C/man3/strtod.3:185 build/C/man3/strtoimax.3:66
-#: build/C/man3/strtol.3:269 build/C/man3/strtoul.3:196
-#: build/C/man3/system.3:158 build/C/man3/wcstombs.3:87
-#: build/C/man3/wctomb.3:85
+#: build/C/man3/clearenv.3:103 build/C/man3/drand48.3:269
+#: build/C/man3/drand48_r.3:118 build/C/man3/ecvt.3:141
+#: build/C/man3/ecvt_r.3:99 build/C/man3/exit.3:190 build/C/man3/gcvt.3:90
+#: build/C/man3/getauxval.3:222 build/C/man3/getenv.3:137
+#: build/C/man3/getloadavg.3:77 build/C/man3/getsubopt.3:234
+#: build/C/man3/malloc.3:285 build/C/man3/mblen.3:108
+#: build/C/man3/mbstowcs.3:222 build/C/man3/mbtowc.3:135
+#: build/C/man3/mkdtemp.3:98 build/C/man3/mkstemp.3:239
+#: build/C/man3/mktemp.3:123 build/C/man3/on_exit.3:92
+#: build/C/man3/putenv.3:125 build/C/man3/qecvt.3:112 build/C/man3/rand.3:220
+#: build/C/man3/random.3:202 build/C/man3/random_r.3:145
+#: build/C/man3/rpmatch.3:150 build/C/man3/setenv.3:158
+#: build/C/man3/strtod.3:197 build/C/man3/strtoimax.3:77
+#: build/C/man3/strtol.3:303 build/C/man3/strtoul.3:231
+#: build/C/man3/system.3:210 build/C/man7/vdso.7:510
+#: build/C/man3/wcstombs.3:109 build/C/man3/wctomb.3:110
#, no-wrap
msgid "COLOPHON"
msgstr "この文書について"
#. type: Plain text
-#: build/C/man3/MB_CUR_MAX.3:51 build/C/man3/MB_LEN_MAX.3:53
-#: build/C/man2/_exit.2:143 build/C/man3/a64l.3:95 build/C/man3/atexit.3:169
-#: build/C/man3/atof.3:72 build/C/man3/atoi.3:125
-#: build/C/man3/canonicalize_file_name.3:85 build/C/man3/cfree.3:126
-#: build/C/man3/clearenv.3:110 build/C/man3/drand48.3:220
-#: build/C/man3/drand48_r.3:111 build/C/man3/ecvt.3:141
-#: build/C/man3/ecvt_r.3:106 build/C/man3/exit.3:187 build/C/man3/gcvt.3:97
-#: build/C/man3/getauxval.3:224 build/C/man3/getenv.3:144
-#: build/C/man3/getloadavg.3:79 build/C/man3/getsubopt.3:235
-#: build/C/man3/malloc.3:290 build/C/man3/mblen.3:93
-#: build/C/man3/mbstowcs.3:94 build/C/man3/mbtowc.3:104
-#: build/C/man3/mkdtemp.3:105 build/C/man3/mkstemp.3:227
-#: build/C/man3/mktemp.3:125 build/C/man3/on_exit.3:92
-#: build/C/man3/putenv.3:129 build/C/man3/qecvt.3:95 build/C/man3/rand.3:227
-#: build/C/man3/random.3:177 build/C/man3/random_r.3:140
-#: build/C/man3/rpmatch.3:142 build/C/man3/setenv.3:144
-#: build/C/man3/strtod.3:192 build/C/man3/strtoimax.3:73
-#: build/C/man3/strtol.3:276 build/C/man3/strtoul.3:203
-#: build/C/man3/system.3:165 build/C/man3/wcstombs.3:94
-#: build/C/man3/wctomb.3:92
-msgid ""
-"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 ""
-"この man ページは Linux I<man-pages> プロジェクトのリリース 3.50 の一部\n"
+#: build/C/man3/MB_CUR_MAX.3:52 build/C/man3/MB_LEN_MAX.3:54
+#: build/C/man2/_exit.2:144 build/C/man3/a64l.3:105 build/C/man3/atexit.3:173
+#: build/C/man3/atof.3:81 build/C/man3/atoi.3:138
+#: build/C/man3/canonicalize_file_name.3:86 build/C/man3/cfree.3:127
+#: build/C/man3/clearenv.3:111 build/C/man3/drand48.3:277
+#: build/C/man3/drand48_r.3:126 build/C/man3/ecvt.3:149
+#: build/C/man3/ecvt_r.3:107 build/C/man3/exit.3:198 build/C/man3/gcvt.3:98
+#: build/C/man3/getauxval.3:230 build/C/man3/getenv.3:145
+#: build/C/man3/getloadavg.3:85 build/C/man3/getsubopt.3:242
+#: build/C/man3/malloc.3:293 build/C/man3/mblen.3:116
+#: build/C/man3/mbstowcs.3:230 build/C/man3/mbtowc.3:143
+#: build/C/man3/mkdtemp.3:106 build/C/man3/mkstemp.3:247
+#: build/C/man3/mktemp.3:131 build/C/man3/on_exit.3:100
+#: build/C/man3/putenv.3:133 build/C/man3/qecvt.3:120 build/C/man3/rand.3:228
+#: build/C/man3/random.3:210 build/C/man3/random_r.3:153
+#: build/C/man3/rpmatch.3:158 build/C/man3/setenv.3:166
+#: build/C/man3/strtod.3:205 build/C/man3/strtoimax.3:85
+#: build/C/man3/strtol.3:311 build/C/man3/strtoul.3:239
+#: build/C/man3/system.3:218 build/C/man7/vdso.7:518
+#: build/C/man3/wcstombs.3:117 build/C/man3/wctomb.3:118
+msgid ""
+"This page is part of release 3.68 of the Linux I<man-pages> project. A "
+"description of the project, information about reporting bugs, and the latest "
+"version of this page, can be found at \\%http://www.kernel.org/doc/man-"
+"pages/."
+msgstr ""
+"この man ページは Linux I<man-pages> プロジェクトのリリース 3.68 の一部\n"
"である。プロジェクトの説明とバグ報告に関する情報は\n"
"http://www.kernel.org/doc/man-pages/ に書かれている。"
msgstr "0 より大きいの整数型の定数。"
#. type: SH
-#: build/C/man3/MB_LEN_MAX.3:33 build/C/man2/_exit.2:86 build/C/man3/a64l.3:64
-#: build/C/man3/atexit.3:75 build/C/man3/atoi.3:103 build/C/man3/clearenv.3:74
-#: build/C/man3/drand48.3:206 build/C/man3/ecvt.3:122 build/C/man3/ecvt_r.3:90
-#: build/C/man3/exit.3:88 build/C/man3/getauxval.3:187
-#: build/C/man3/getenv.3:102 build/C/man3/getsubopt.3:131
-#: build/C/man3/malloc.3:170 build/C/man3/mblen.3:72
-#: build/C/man3/mbstowcs.3:72 build/C/man3/mbtowc.3:80
-#: build/C/man3/mkstemp.3:189 build/C/man3/mktemp.3:94
-#: build/C/man3/putenv.3:78 build/C/man3/qecvt.3:78 build/C/man3/rand.3:141
-#: build/C/man3/random.3:139 build/C/man3/setenv.3:111
-#: build/C/man3/strtod.3:165 build/C/man3/strtol.3:144
-#: build/C/man3/strtoul.3:147 build/C/man3/system.3:80
-#: build/C/man3/wcstombs.3:72 build/C/man3/wctomb.3:68
+#: build/C/man3/MB_LEN_MAX.3:33 build/C/man2/_exit.2:86 build/C/man3/a64l.3:73
+#: build/C/man3/atexit.3:78 build/C/man3/atoi.3:115 build/C/man3/clearenv.3:74
+#: build/C/man3/drand48.3:262 build/C/man3/ecvt.3:129 build/C/man3/ecvt_r.3:90
+#: build/C/man3/exit.3:98 build/C/man3/getauxval.3:194
+#: build/C/man3/getenv.3:102 build/C/man3/getsubopt.3:136
+#: build/C/man3/malloc.3:173 build/C/man3/mblen.3:94
+#: build/C/man3/mbstowcs.3:96 build/C/man3/mbtowc.3:115
+#: build/C/man3/mkstemp.3:208 build/C/man3/mktemp.3:99
+#: build/C/man3/putenv.3:81 build/C/man3/qecvt.3:102 build/C/man3/rand.3:141
+#: build/C/man3/random.3:163 build/C/man3/setenv.3:130
+#: build/C/man3/strtod.3:177 build/C/man3/strtol.3:178
+#: build/C/man3/strtoul.3:182 build/C/man3/system.3:112
+#: build/C/man7/vdso.7:129 build/C/man3/wcstombs.3:91 build/C/man3/wctomb.3:91
#, no-wrap
msgid "NOTES"
msgstr "注意"
msgstr "_EXIT"
#. type: TH
-#: build/C/man2/_exit.2:29 build/C/man3/a64l.3:9 build/C/man3/ecvt.3:32
-#: build/C/man3/gcvt.3:30 build/C/man3/mktemp.3:34 build/C/man3/qecvt.3:28
-#: build/C/man3/random.3:33 build/C/man3/strtod.3:45
+#: build/C/man2/_exit.2:29
#, no-wrap
msgid "2010-09-20"
msgstr "2010-09-20"
"file descriptors, and this may cause an unknown delay, waiting for pending "
"output to finish. If the delay is undesired, it may be useful to call "
"functions like B<tcflush>(3) before calling B<_exit>(). Whether any "
-"pending I/O is canceled, and which pending I/O may be canceled upon B<_exit>"
-"(), is implementation-dependent."
+"pending I/O is canceled, and which pending I/O may be canceled upon "
+"B<_exit>(), is implementation-dependent."
msgstr ""
"関数 B<_exit>() は B<exit>(3) に似ているが、ANSI C の B<atexit>(3) や "
"B<on_exit>(3) によって登録されたいかなる関数も呼び出さない。 標準 I/O バッ"
#. type: Plain text
#: build/C/man2/_exit.2:136
msgid ""
-"B<execve>(2), B<exit_group>(2), B<fork>(2), B<kill>(2), B<wait>(2), B<wait4>"
-"(2), B<waitpid>(2), B<atexit>(3), B<exit>(3), B<on_exit>(3), B<termios>(3)"
+"B<execve>(2), B<exit_group>(2), B<fork>(2), B<kill>(2), B<wait>(2), "
+"B<wait4>(2), B<waitpid>(2), B<atexit>(3), B<exit>(3), B<on_exit>(3), "
+"B<termios>(3)"
msgstr ""
-"B<execve>(2), B<exit_group>(2), B<fork>(2), B<kill>(2), B<wait>(2), B<wait4>"
-"(2), B<waitpid>(2), B<atexit>(3), B<exit>(3), B<on_exit>(3), B<termios>(3)"
+"B<execve>(2), B<exit_group>(2), B<fork>(2), B<kill>(2), B<wait>(2), "
+"B<wait4>(2), B<waitpid>(2), B<atexit>(3), B<exit>(3), B<on_exit>(3), "
+"B<termios>(3)"
#. type: TH
#: build/C/man3/a64l.3:9
msgid "A64L"
msgstr "A64L"
+#. type: TH
+#: build/C/man3/a64l.3:9 build/C/man3/gcvt.3:30 build/C/man3/getauxval.3:29
+#, no-wrap
+msgid "2014-05-28"
+msgstr "2014-05-28"
+
#. type: Plain text
#: build/C/man3/a64l.3:12
msgid "a64l, l64a - convert between long and base-64"
#. type: Plain text
#: build/C/man3/a64l.3:16
-msgid "B<long a64l(char *>I<str64>B<);>"
-msgstr "B<long a64l(char *>I<str64>B<);>"
+msgid "B<long a64l(const char *>I<str64>B<);>"
+msgstr "B<long a64l(const char *>I<str64>B<);>"
#. type: Plain text
#: build/C/man3/a64l.3:18
msgid "So 123 = 59*64^0 + 1*64^1 = \"v/\"."
msgstr "よって 123 = 59*64^0 + 1*64^1 = \"v/\" である。"
+#. type: SH
+#: build/C/man3/a64l.3:62 build/C/man3/atof.3:57 build/C/man3/atoi.3:93
+#: build/C/man3/drand48.3:245 build/C/man3/drand48_r.3:98
+#: build/C/man3/ecvt.3:110 build/C/man3/exit.3:90 build/C/man3/getauxval.3:187
+#: build/C/man3/getloadavg.3:65 build/C/man3/getsubopt.3:129
+#: build/C/man3/mblen.3:87 build/C/man3/qecvt.3:85 build/C/man3/random.3:152
+#: build/C/man3/random_r.3:128 build/C/man3/strtod.3:160
+#: build/C/man3/strtoimax.3:58 build/C/man3/strtol.3:161
+#: build/C/man3/strtoul.3:165 build/C/man3/wctomb.3:84
+#, no-wrap
+msgid "ATTRIBUTES"
+msgstr "属性"
+
+#. type: SS
+#: build/C/man3/a64l.3:63 build/C/man3/atof.3:58 build/C/man3/atoi.3:94
+#: build/C/man3/drand48.3:246 build/C/man3/drand48_r.3:99
+#: build/C/man3/ecvt.3:111 build/C/man3/exit.3:91 build/C/man3/getauxval.3:188
+#: build/C/man3/getloadavg.3:66 build/C/man3/getsubopt.3:130
+#: build/C/man3/mblen.3:88 build/C/man3/qecvt.3:86 build/C/man3/random.3:153
+#: build/C/man3/random_r.3:129 build/C/man3/strtod.3:161
+#: build/C/man3/strtoimax.3:59 build/C/man3/strtol.3:162
+#: build/C/man3/strtoul.3:166 build/C/man3/wctomb.3:85
+#, no-wrap
+msgid "Multithreading (see pthreads(7))"
+msgstr "マルチスレッディング (pthreads(7) 参照)"
+
+#. type: Plain text
+#: build/C/man3/a64l.3:67
+msgid "The B<l64a>() function is not thread-safe."
+msgstr "B<l64a>() 関数はスレッドセーフではない。"
+
#. type: Plain text
-#: build/C/man3/a64l.3:64 build/C/man3/getsubopt.3:131
+#: build/C/man3/a64l.3:71
+msgid "The B<a64l>() function is thread-safe."
+msgstr "B<a64l>() 関数はスレッドセーフである。"
+
+#. type: Plain text
+#: build/C/man3/a64l.3:73 build/C/man3/getsubopt.3:136
msgid "POSIX.1-2001."
msgstr "POSIX.1-2001."
#. type: Plain text
-#: build/C/man3/a64l.3:69
+#: build/C/man3/a64l.3:78
msgid ""
"The value returned by B<l64a>() may be a pointer to a static buffer, "
"possibly overwritten by later calls."
"び出しで上書きされる可能性がある。"
#. type: Plain text
-#: build/C/man3/a64l.3:78
+#: build/C/man3/a64l.3:87
msgid ""
"The behavior of B<l64a>() is undefined when I<value> is negative. If "
"I<value> is zero, it returns an empty string."
"場合は空文字列を返す。"
#. type: Plain text
-#: build/C/man3/a64l.3:81
+#: build/C/man3/a64l.3:90
msgid ""
"These functions are broken in glibc before 2.2.5 (puts most significant "
"digit first)."
"る)。"
#. type: Plain text
-#: build/C/man3/a64l.3:84
+#: build/C/man3/a64l.3:93
msgid "This is not the encoding used by B<uuencode>(1)."
msgstr "これは B<uuencode>(1) で使われるエンコーディングではない。"
#. .BR itoa (3),
#. type: Plain text
-#: build/C/man3/a64l.3:88
+#: build/C/man3/a64l.3:97
msgid "B<uuencode>(1), B<strtoul>(3)"
msgstr "B<uuencode>(1), B<strtoul>(3)"
msgstr "B<int atexit(void (*>I<function>B<)(void));>\n"
#. type: Plain text
-#: build/C/man3/atexit.3:51
+#: build/C/man3/atexit.3:54
msgid ""
"The B<atexit>() function registers the given I<function> to be called at "
"normal process termination, either via B<exit>(3) or via return from the "
"れる。 登録した関数に引き数は渡されない。"
#. type: Plain text
-#: build/C/man3/atexit.3:54 build/C/man3/on_exit.3:62
+#: build/C/man3/atexit.3:57 build/C/man3/on_exit.3:69
msgid ""
"The same function may be registered multiple times: it is called once for "
"each registration."
"れる。"
#. type: Plain text
-#: build/C/man3/atexit.3:60
+#: build/C/man3/atexit.3:63
msgid ""
"POSIX.1-2001 requires that an implementation allow at least B<ATEXIT_MAX> "
"(32) such functions to be registered. The actual limit supported by an "
"implementation can be obtained using B<sysconf>(3)."
msgstr ""
"POSIX.1-2001 では、このような関数を少なくとも B<ATEXIT_MAX> 個 (32個) 登録で"
-"きることを要求している。 その実装でサポートされている実際の上限は B<sysconf>"
-"(3) を使って取得できる。"
+"きることを要求している。 その実装でサポートされている実際の上限は "
+"B<sysconf>(3) を使って取得できる。"
#. type: Plain text
-#: build/C/man3/atexit.3:68 build/C/man3/on_exit.3:69
+#: build/C/man3/atexit.3:71 build/C/man3/on_exit.3:76
msgid ""
"When a child process is created via B<fork>(2), it inherits copies of its "
"parent's registrations. Upon a successful call to one of the B<exec>(3) "
"れる。"
#. type: Plain text
-#: build/C/man3/atexit.3:73
+#: build/C/man3/atexit.3:76
msgid ""
"The B<atexit>() function returns the value 0 if successful; otherwise it "
"returns a nonzero value."
"以外の値を返す。"
#. type: Plain text
-#: build/C/man3/atexit.3:75
+#: build/C/man3/atexit.3:78
msgid "SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
msgstr "SVr4, 4.3BSD, C89, C99, POSIX.1-2001."
#. type: Plain text
-#: build/C/man3/atexit.3:82
+#: build/C/man3/atexit.3:85
msgid ""
"Functions registered using B<atexit>() (and B<on_exit>(3)) are not called "
"if a process terminates abnormally because of the delivery of a signal."
"よりプロセスが異常終了した場合には呼び出されない。"
#. type: Plain text
-#: build/C/man3/atexit.3:89
+#: build/C/man3/atexit.3:92
msgid ""
"If one of the functions registered functions calls B<_exit>(2), then any "
"remaining functions are not invoked, and the other process termination steps "
#. Glibc does "the Right Thing" -- invocation of the remaining
#. exit handlers carries on as normal.
#. type: Plain text
-#: build/C/man3/atexit.3:106
+#: build/C/man3/atexit.3:109
msgid ""
"POSIX.1-2001 says that the result of calling B<exit>(3) more than once (i."
"e., calling B<exit>(3) within a function registered using B<atexit>()) is "
"はない。"
#. type: Plain text
-#: build/C/man3/atexit.3:115
+#: build/C/man3/atexit.3:118
msgid ""
"The B<atexit>() and B<on_exit>(3) functions register functions on the same "
"list: at normal process termination, the registered functions are invoked in "
#. In glibc, things seem to be handled okay
#. type: Plain text
-#: build/C/man3/atexit.3:121
+#: build/C/man3/atexit.3:124
msgid ""
"POSIX.1-2001 says that the result is undefined if B<longjmp>(3) is used to "
"terminate execution of one of the functions registered B<atexit>()."
"B<longjmp>(3) が使用された場合の結果は未定義である。"
#. type: SS
-#: build/C/man3/atexit.3:121
-#, fuzzy, no-wrap
-#| msgid "Linux Notes"
+#: build/C/man3/atexit.3:124
+#, no-wrap
msgid "Linux notes"
msgstr "Linux での注意"
#. type: Plain text
-#: build/C/man3/atexit.3:128
+#: build/C/man3/atexit.3:131
msgid ""
"Since glibc 2.2.3, B<atexit>() (and B<on_exit>(3)) can be used within a "
"shared library to establish functions that are called when the shared "
"ることができる。"
#. type: SH
-#: build/C/man3/atexit.3:128 build/C/man3/getsubopt.3:138
-#: build/C/man3/rand.3:160 build/C/man3/rpmatch.3:104
-#: build/C/man3/strtod.3:174 build/C/man3/strtol.3:182
-#: build/C/man3/strtoul.3:185
+#: build/C/man3/atexit.3:131 build/C/man3/getsubopt.3:143
+#: build/C/man3/mbstowcs.3:108 build/C/man3/rand.3:160
+#: build/C/man3/rpmatch.3:119 build/C/man3/strtod.3:186
+#: build/C/man3/strtol.3:216 build/C/man3/strtoul.3:220
#, no-wrap
msgid "EXAMPLE"
msgstr "例"
#. type: Plain text
-#: build/C/man3/atexit.3:133
+#: build/C/man3/atexit.3:136
#, no-wrap
msgid ""
"#include E<lt>stdio.hE<gt>\n"
"#include E<lt>unistd.hE<gt>\n"
#. type: Plain text
-#: build/C/man3/atexit.3:139
+#: build/C/man3/atexit.3:142
#, no-wrap
msgid ""
"void\n"
"}\n"
#. type: Plain text
-#: build/C/man3/atexit.3:145
+#: build/C/man3/atexit.3:148
#, no-wrap
msgid ""
"int\n"
" int i;\n"
#. type: Plain text
-#: build/C/man3/atexit.3:148
+#: build/C/man3/atexit.3:151
#, no-wrap
msgid ""
" a = sysconf(_SC_ATEXIT_MAX);\n"
" printf(\"ATEXIT_MAX = %ld\\en\", a);\n"
#. type: Plain text
-#: build/C/man3/atexit.3:154
+#: build/C/man3/atexit.3:157
#, no-wrap
msgid ""
" i = atexit(bye);\n"
" }\n"
#. type: Plain text
-#: build/C/man3/atexit.3:157 build/C/man3/getsubopt.3:225
-#: build/C/man3/rand.3:215 build/C/man3/strtol.3:262
+#: build/C/man3/atexit.3:160 build/C/man3/getsubopt.3:231
+#: build/C/man3/mbstowcs.3:215 build/C/man3/rand.3:215
+#: build/C/man3/strtol.3:296
#, no-wrap
msgid ""
" exit(EXIT_SUCCESS);\n"
"}\n"
#. type: Plain text
-#: build/C/man3/atexit.3:162
+#: build/C/man3/atexit.3:165
msgid "B<_exit>(2), B<exit>(3), B<on_exit>(3)"
msgstr "B<_exit>(2), B<exit>(3), B<on_exit>(3)"
msgstr "ATOF"
#. type: TH
-#: build/C/man3/atof.3:31 build/C/man3/atoi.3:33
-#, fuzzy, no-wrap
-#| msgid "2012-05-10"
-msgid "2012-08-03"
-msgstr "2012-05-10"
+#: build/C/man3/atof.3:31 build/C/man3/atoi.3:33 build/C/man3/strtod.3:45
+#: build/C/man3/strtoimax.3:24
+#, no-wrap
+msgid "2014-01-22"
+msgstr "2014-01-22"
#. type: TH
#: build/C/man3/atof.3:31 build/C/man3/atoi.3:33
#: build/C/man3/canonicalize_file_name.3:26 build/C/man3/drand48_r.3:27
-#: build/C/man3/ecvt_r.3:30 build/C/man3/getauxval.3:27
+#: build/C/man3/ecvt_r.3:30 build/C/man3/getauxval.3:29
#: build/C/man3/getenv.3:33 build/C/man3/getsubopt.3:25
-#: build/C/man3/malloc.3:30 build/C/man3/mblen.3:16 build/C/man3/mbstowcs.3:16
+#: build/C/man3/malloc.3:33 build/C/man3/mblen.3:16 build/C/man3/mbstowcs.3:18
#: build/C/man3/mbtowc.3:16 build/C/man3/mkdtemp.3:26
#: build/C/man3/mkstemp.3:35 build/C/man3/mktemp.3:34
#: build/C/man3/on_exit.3:31 build/C/man3/putenv.3:36 build/C/man3/qecvt.3:28
#. type: Plain text
#: build/C/man3/atof.3:50
-#, fuzzy
-#| msgid "strtod(nptr, (char **) NULL);"
msgid "strtod(nptr, NULL);"
-msgstr "strtod(nptr, (char **) NULL);"
+msgstr "strtod(nptr, NULL);"
#. type: Plain text
#: build/C/man3/atof.3:55
msgstr "変換された値。"
#. type: Plain text
-#: build/C/man3/atof.3:59
+#: build/C/man3/atof.3:65
+msgid ""
+"The B<atof>() function is thread-safe with exceptions. It can be safely "
+"used in multithreaded applications, as long as B<setlocale>(3) is not "
+"called to change the locale during its execution."
+msgstr ""
+"B<atof>() 関数は、例外付きのスレッドセーフである。実行中に B<setlocale>(3) を"
+"呼び出してロケールを変更しない限り、マルチスレッドアプリケーションで安全に使"
+"用することができる。"
+
+#. type: Plain text
+#: build/C/man3/atof.3:67
msgid "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
msgstr "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
#. type: Plain text
-#: build/C/man3/atof.3:65
+#: build/C/man3/atof.3:73
msgid "B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"
msgstr "B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"
#. type: Plain text
#: build/C/man3/atoi.3:74
-#, fuzzy
-#| msgid "strtol(nptr, (char **) NULL, 10);"
msgid "strtol(nptr, NULL, 10);"
-msgstr "strtol(nptr, (char **) NULL, 10);"
+msgstr "strtol(nptr, NULL, 10);"
#. type: Plain text
#: build/C/man3/atoi.3:79
msgid ""
"The B<atol>() and B<atoll>() functions behave the same as B<atoi>(), "
"except that they convert the initial portion of the string to their return "
-"type of I<long> or I<long long>. B<atoq>() is an obsolete name for B<atoll>"
-"()."
+"type of I<long> or I<long long>. B<atoq>() is an obsolete name for "
+"B<atoll>()."
msgstr ""
"B<atol>() 関数と B<atoll>() 関数は B<atoi>() と同様の振る舞いをするが、 文"
"字列のはじめの部分をそれぞれ I<long> や I<long long> に変換する。 B<atoq>() "
"は B<atoll>() の古い名前である。"
#. type: Plain text
-#: build/C/man3/atoi.3:103
+#: build/C/man3/atoi.3:105
+msgid ""
+"The B<atoi>(), B<atol>(), and B<atoll>() functions are thread-safe with "
+"exceptions. These functions can be safely used in multithreaded "
+"applications, as long as B<setlocale>(3) is not called to change the locale "
+"during their execution."
+msgstr ""
+"関数 B<atoi>(), B<atol>(), B<atoll>() は、例外付きのスレッドセーフである。実"
+"行中に B<setlocale>(3) を呼び出してロケールを変更しない限り、マルチスレッドア"
+"プリケーションで安全に使用することができる。"
+
+#. type: Plain text
+#: build/C/man3/atoi.3:115
msgid ""
"SVr4, POSIX.1-2001, 4.3BSD, C99. C89 and POSIX.1-1996 include the functions "
"B<atoi>() and B<atol>() only. B<atoq>() is a GNU extension."
"B<atol>() だけが含まれている。 B<atoq>() は GNU による拡張である。"
#. type: Plain text
-#: build/C/man3/atoi.3:113
+#: build/C/man3/atoi.3:125
msgid ""
"The nonstandard B<atoq>() function is not present in libc 4.6.27 or glibc "
"2, but is present in libc5 and libc 4.7 (though only as an inline function "
"ン 2.0.2 から存在しているが、 libc4 や libc5 には存在しない。"
#. type: Plain text
-#: build/C/man3/atoi.3:118
+#: build/C/man3/atoi.3:130
msgid "B<atof>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"
msgstr "B<atof>(3), B<strtod>(3), B<strtol>(3), B<strtoul>(3)"
#. type: TH
#: build/C/man3/canonicalize_file_name.3:26
-#, fuzzy, no-wrap
-#| msgid "2008-03-17"
-msgid "2013-03-10"
-msgstr "2008-03-17"
+#, no-wrap
+msgid "2013-05-11"
+msgstr "2013-05-11"
#. type: Plain text
#: build/C/man3/canonicalize_file_name.3:29
-#, fuzzy
-#| msgid "canonicalize_file_name - return the canonicalized filename"
msgid "canonicalize_file_name - return the canonicalized absolute pathname"
-msgstr "canonicalize_file_name - 正規化されたファイル名を返す"
+msgstr "canonicalize_file_name - 正規化された絶対パス名を返す"
#. type: Plain text
#: build/C/man3/canonicalize_file_name.3:31
"pathname components. Consecutive slash (I</>) characters are replaced by a "
"single slash."
msgstr ""
+"B<canonicalize_file_name>() 関数は I<path> に対応する正規化された絶対パス名を"
+"示すヌル終端された文字列を返す。返された文字列では、シンボリックリンクや、パ"
+"ス名に含まれる I<.> や I<..> は展開される。連続するスラッシュ (I</>) 文字はス"
+"ラッシュ一つに置換される。"
#. type: Plain text
#: build/C/man3/canonicalize_file_name.3:55
"and the caller should deallocate it with B<free>(3) when it is no longer "
"required."
msgstr ""
+"返される文字列は B<canonicalize_file_name>() により動的に割り当てられる。呼び"
+"出し側は、必要なくなった際にはこの文字列を B<free>(3) で解放すべきである。"
#. type: Plain text
#: build/C/man3/canonicalize_file_name.3:59
-#, fuzzy
-#| msgid ""
-#| "The call I<canonicalize_file_name(path)> is equivalent to the call "
-#| "I<realpath(path,\\ NULL)>."
msgid "The call I<canonicalize_file_name(path)> is equivalent to the call:"
-msgstr ""
-"I<canonicalize_file_name(path)> は I<realpath(path,\\ NULL)> と等価である。"
+msgstr "I<canonicalize_file_name(path)> は以下と等価である。"
#. type: Plain text
#: build/C/man3/canonicalize_file_name.3:61
#, no-wrap
msgid " realpath(path, NULL);\n"
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/canonicalize_file_name.3:63
-#, fuzzy
-#| msgid "The function is a GNU extension."
-msgid "This function is a GNU extension."
-msgstr "この関数は GNU による拡張である。"
+msgstr " realpath(path, NULL);\n"
#. type: Plain text
-#: build/C/man3/canonicalize_file_name.3:72
+#: build/C/man3/canonicalize_file_name.3:70
msgid ""
"On success, B<canonicalize_file_name>() returns a null-terminated string. "
"On error (e.g., a pathname component is unreadable or does not exist), "
"B<canonicalize_file_name>() returns NULL and sets I<errno> to indicate the "
"error."
msgstr ""
+"成功すると、 B<canonicalize_file_name>() はヌル終端された文字列を返す。エラー"
+"の場合 (例えば、パス名の中に読み込めなかったり存在しないパスが含まれている場"
+"合など)、 B<canonicalize_file_name>() は NULL を返し、 I<errno> にエラー内容"
+"を示す値を設定する。"
#. type: SH
-#: build/C/man3/canonicalize_file_name.3:72 build/C/man3/getauxval.3:179
-#: build/C/man3/mkdtemp.3:75 build/C/man3/mkstemp.3:142
-#: build/C/man3/mktemp.3:86 build/C/man3/putenv.3:72 build/C/man3/random.3:132
-#: build/C/man3/random_r.3:102 build/C/man3/rpmatch.3:73
-#: build/C/man3/setenv.3:100 build/C/man3/strtod.3:156
-#: build/C/man3/strtol.3:126 build/C/man3/strtoul.3:129
+#: build/C/man3/canonicalize_file_name.3:70 build/C/man3/getauxval.3:181
+#: build/C/man3/mkdtemp.3:75 build/C/man3/mkstemp.3:161
+#: build/C/man3/mktemp.3:91 build/C/man3/putenv.3:75 build/C/man3/random.3:140
+#: build/C/man3/random_r.3:105 build/C/man3/rpmatch.3:82
+#: build/C/man3/setenv.3:119 build/C/man3/strtod.3:156
+#: build/C/man3/strtol.3:144 build/C/man3/strtoul.3:148
#, no-wrap
msgid "ERRORS"
msgstr "エラー"
#. type: Plain text
-#: build/C/man3/canonicalize_file_name.3:75
-#, fuzzy
-#| msgid "B<realpath>(3)"
+#: build/C/man3/canonicalize_file_name.3:73
msgid "See B<realpath>(3)."
-msgstr "B<realpath>(3)"
+msgstr "B<realpath>(3) 参照。"
+
+#. type: Plain text
+#: build/C/man3/canonicalize_file_name.3:75
+msgid "This function is a GNU extension."
+msgstr "この関数は GNU による拡張である。"
#. type: Plain text
#: build/C/man3/canonicalize_file_name.3:78
-#, fuzzy
-#| msgid "B<rand>(3), B<random>(3)"
msgid "B<readlink>(2), B<realpath>(3)"
-msgstr "B<rand>(3), B<random>(3)"
+msgstr "B<readlink>(2), B<realpath>(3)"
#. type: TH
#: build/C/man3/cfree.3:24
msgstr "CFREE"
#. type: TH
-#: build/C/man3/cfree.3:24 build/C/man3/drand48.3:30
-#: build/C/man3/drand48_r.3:27 build/C/man3/ecvt_r.3:30
-#: build/C/man3/putenv.3:36 build/C/man3/rpmatch.3:29
+#: build/C/man3/cfree.3:24 build/C/man3/ecvt_r.3:30 build/C/man3/rpmatch.3:29
#, no-wrap
msgid "2007-07-26"
msgstr "2007-07-26"
#: build/C/man3/cfree.3:91
msgid ""
"A frequently asked question is \"Can I use B<free>(3) to free memory "
-"allocated with B<calloc>(3), or do I need B<cfree>()?\" Answer: use B<free>"
-"(3)."
+"allocated with B<calloc>(3), or do I need B<cfree>()?\" Answer: use "
+"B<free>(3)."
msgstr ""
"よく尋ねられる質問は 「B<calloc>(3) で割り当てられたメモリを解放するのに "
"B<free>(3) を使うことができるか、 それとも B<cfree>() を使う必要があるか」"
"す。"
#. type: SH
-#: build/C/man3/clearenv.3:57 build/C/man3/getauxval.3:181
+#: build/C/man3/clearenv.3:57 build/C/man3/getauxval.3:183
#: build/C/man3/getenv.3:93 build/C/man3/getloadavg.3:63
-#: build/C/man3/mkdtemp.3:84 build/C/man3/mkstemp.3:169
+#: build/C/man3/mkdtemp.3:84 build/C/man3/mkstemp.3:188
#, no-wrap
msgid "VERSIONS"
msgstr "バージョン"
"Various UNIX variants (DG/UX, HP-UX, QNX, ...). POSIX.9 (bindings for "
"FORTRAN77). POSIX.1-1996 did not accept B<clearenv>() and B<putenv>(3), "
"but changed its mind and scheduled these functions for some later issue of "
-"this standard (cf. B.4.6.1). However, POSIX.1-2001 only adds B<putenv>(3), "
+"this standard (cf. B.4.6.1). However, POSIX.1-2001 adds only B<putenv>(3), "
"and rejected B<clearenv>()."
msgstr ""
"(DG/UX, HP-UX, QNX, などの) 多くの UNIX 系 OS。 (FORTRAN77 へのバインディング"
"である) POSIX.9。 POSIX.1-1996 では B<clearenv>() と B<putenv>(3) は採用さ"
"れなかったが、 方針が変更され、この標準規格の以降の号 (B.4.6.1 を参照) では "
-"採用されることになった。 しかし POSIX.1-2001 では B<putenv>(3) しか追加され"
-"ã\81\9a、 B<clearenv>() の追加は否決された。"
+"採用されることになった。 しかし POSIX.1-2001 では B<putenv>(3) だけが追加さ"
+"ã\82\8c、 B<clearenv>() の追加は否決された。"
#. type: Plain text
#: build/C/man3/clearenv.3:78
"functions, then B<clearenv>() will return an error and the process "
"environment will remain unchanged."
msgstr ""
-"DG/UX と Tru64 man ページには次のように記されている: I<environ> が B<putenv>"
-"(3), B<getenv>(3), B<clearenv>() 関数以外で変更された場合、 B<clearenv>() "
-"はエラーを返し、プロセス環境は変更前のままにされる。"
+"DG/UX と Tru64 man ページには次のように記されている: I<environ> が "
+"B<putenv>(3), B<getenv>(3), B<clearenv>() 関数以外で変更された場合、 "
+"B<clearenv>() はエラーを返し、プロセス環境は変更前のままにされる。"
#. type: Plain text
#: build/C/man3/clearenv.3:103
msgid "DRAND48"
msgstr "DRAND48"
+#. type: TH
+#: build/C/man3/drand48.3:30 build/C/man3/mblen.3:16
+#, no-wrap
+msgid "2013-06-21"
+msgstr "2013-06-21"
+
#. type: Plain text
#: build/C/man3/drand48.3:34
msgid ""
"は初めに 初期化関数を呼ぶことを必要としない。"
#. type: Plain text
-#: build/C/man3/drand48.3:122
+#: build/C/man3/drand48.3:123
msgid ""
"All the functions work by generating a sequence of 48-bit integers, I<Xi>, "
"according to the linear congruential formula:"
"ることで 機能している。生成方法は以下の線形合同の式による。"
#. type: Plain text
-#: build/C/man3/drand48.3:126
+#: build/C/man3/drand48.3:127
#, no-wrap
msgid "B<Xn+1 = (aXn + c) mod m, where n E<gt>= 0>\n"
msgstr "B<Xn+1 = (aXn + c) mod m,>\n"
#. type: Plain text
-#: build/C/man3/drand48.3:133
+#: build/C/man3/drand48.3:140
msgid ""
"The parameter I<m> = 2^48, hence 48-bit integer arithmetic is performed. "
"Unless B<lcong48>() is called, I<a> and I<c> are given by:"
"の式で与えられる。"
#. type: Plain text
-#: build/C/man3/drand48.3:138
+#: build/C/man3/drand48.3:145
#, no-wrap
msgid ""
"B<a = 0x5DEECE66D>\n"
"B<c = 0xB>\n"
#. type: Plain text
-#: build/C/man3/drand48.3:154
+#: build/C/man3/drand48.3:165
msgid ""
"The value returned by any of the functions B<drand48>(), B<erand48>(), "
"B<lrand48>(), B<nrand48>(), B<mrand48>() or B<jrand48>() is computed by "
"が I<Xi> の上位ビットからコピーされる。 最後に、この値を返り値に変換する。"
#. type: Plain text
-#: build/C/man3/drand48.3:173
+#: build/C/man3/drand48.3:191
msgid ""
"The functions B<drand48>(), B<lrand48>() and B<mrand48>() store the last "
"48-bit I<Xi> generated in an internal buffer. The functions B<erand48>(), "
"てそれらの関数を呼ぶ前に I<Xi> の初期値を配列に 代入することで初期化される。"
#. type: Plain text
-#: build/C/man3/drand48.3:180
+#: build/C/man3/drand48.3:200
msgid ""
"The initializer function B<srand48>() sets the high order 32-bits of I<Xi> "
"to the argument I<seedval>. The low order 16-bits are set to the arbitrary "
"る。 下位の16ビットは、適当に決められた値である0x330Eに設定される。"
#. type: Plain text
-#: build/C/man3/drand48.3:189
+#: build/C/man3/drand48.3:214
msgid ""
"The initializer function B<seed48>() sets the value of I<Xi> to the 48-bit "
"value specified in the array argument I<seed16v>. The previous value of "
"ファにコピーされ、このバッファへのポインタが B<seed48>() によって返される。"
#. type: Plain text
-#: build/C/man3/drand48.3:204
+#: build/C/man3/drand48.3:245
msgid ""
"The initialization function B<lcong48>() allows the user to specify initial "
"values for I<Xi>, I<a> and I<c>. Array argument elements I<param[0-2]> "
"specify I<Xi>, I<param[3-5]> specify I<a>, and I<param[6]> specifies I<c>. "
-"After B<lcong48>() has been called, a subsequent call to either B<srand48>"
-"() or B<seed48>() will restore the standard values of I<a> and I<c>."
+"After B<lcong48>() has been called, a subsequent call to either "
+"B<srand48>() or B<seed48>() will restore the standard values of I<a> and "
+"I<c>."
msgstr ""
"初期化関数 B<lcong48>() は使用者が I<Xi>, I<a>, I<c> の 初期値を指定するため"
"の関数である。 配列の形をした引数の要素はそれぞれ、I<param[0-2]> は I<Xi> "
"の I<a> と I<c> の 標準値が再び設定される。"
#. type: Plain text
-#: build/C/man3/drand48.3:206
+#: build/C/man3/drand48.3:260
+msgid ""
+"The B<drand48>(), B<erand48>(), B<lrand48>(), B<nrand48>(), B<mrand48>(), "
+"B<jrand48>(), B<srand48>(), B<seed48>(), and B<lcong48>() functions record "
+"global state information for the random number generator, so they are not "
+"thread-safe."
+msgstr ""
+"関数 B<drand48>(), B<erand48>(), B<lrand48>(), B<nrand48>(), B<mrand48>(), "
+"B<jrand48>(), B<srand48>(), B<seed48>(), B<lcong48>() は、 乱数生成に使用する"
+"状態情報をグローバルに保持する。 そのため、 これらの関数はスレッドセーフでは"
+"ない。"
+
+#. type: Plain text
+#: build/C/man3/drand48.3:262
msgid "SVr4, POSIX.1-2001."
msgstr "SVr4, POSIX.1-2001."
#. type: Plain text
-#: build/C/man3/drand48.3:210
+#: build/C/man3/drand48.3:266
msgid ""
-"These functions are declared obsolete by SVID 3, which states that B<rand>"
-"(3) should be used instead."
+"These functions are declared obsolete by SVID 3, which states that "
+"B<rand>(3) should be used instead."
msgstr ""
"SVID 3 ではこれらの関数は時代遅れと宣言されている。 SVID 3 では B<rand>(3) "
"が代わりに使用されるべきだと記述されている。"
#. type: Plain text
-#: build/C/man3/drand48.3:213
+#: build/C/man3/drand48.3:269
msgid "B<rand>(3), B<random>(3)"
msgstr "B<rand>(3), B<random>(3)"
msgid "DRAND48_R"
msgstr "DRAND48_R"
+#. type: TH
+#: build/C/man3/drand48_r.3:27
+#, no-wrap
+msgid "2013-09-09"
+msgstr "2013-09-09"
+
#. type: Plain text
#: build/C/man3/drand48_r.3:32
msgid ""
msgstr "返り値は 0 である。"
#. type: Plain text
-#: build/C/man3/drand48_r.3:100
+#: build/C/man3/drand48_r.3:112
+msgid ""
+"The B<drand48_r>(), B<erand48_r>(), B<lrand48_r>(), B<nrand48_r>(), "
+"B<mrand48_r>(), B<jrand48_r>(), B<srand48_r>(), B<seed48_r>(), and "
+"B<lcong48_r>() functions are thread-safe."
+msgstr ""
+"関数 B<drand48_r>(), B<erand48_r>(), B<lrand48_r>(), B<nrand48_r>(), "
+"B<mrand48_r>(), B<jrand48_r>(), B<srand48_r>(), B<seed48_r>(), "
+"B<lcong48_r>() はスレッドセーフである。"
+
+#. type: Plain text
+#: build/C/man3/drand48_r.3:114
msgid "These functions are GNU extensions and are not portable."
msgstr "これらの関数は GNU による拡張であり、移植性はない。"
#. type: Plain text
-#: build/C/man3/drand48_r.3:104 build/C/man3/random_r.3:133
+#: build/C/man3/drand48_r.3:118 build/C/man3/random_r.3:145
msgid "B<drand48>(3), B<rand>(3), B<random>(3)"
msgstr "B<drand48>(3), B<rand>(3), B<random>(3)"
msgid "ECVT"
msgstr "ECVT"
+#. type: TH
+#: build/C/man3/ecvt.3:32
+#, no-wrap
+msgid "2013-07-04"
+msgstr "2013-07-04"
+
#. type: Plain text
#: build/C/man3/ecvt.3:35
msgid "ecvt, fcvt - convert a floating-point number to a string"
"set to 0. If I<number> is zero, it is unspecified whether I<*decpt> is 0 or "
"1."
msgstr ""
-"関数 B<ecvt>() は I<number> を NUL 文字で終端された I<ndigits> 文字の文字列"
-"へ変換し、その文字列へのポインタを返す (I<ndigits> が I<double> の精度によっ"
-"て決定されるシステム依存の上限値より大きい場合は、 その条件値が I<ndigits> の"
-"値となる)。 I<number> が 0 でなければ、最上位の桁は 0 以外である。 最下位の桁"
-"は丸められる。 文字列には小数点は含まれない。そのかわりに、文字列の先頭からの"
-"小数点の 位置が I<*decpt> に保持される。 I<*decpt> が負の値の場合、小数点が文"
-"å\97å\88\97ã\81®å\85\88é ã\81®å·¦å\81´ã\81«ã\81\82ã\82\8bã\81\93ã\81¨ã\82\92æ\84\8få\91³ã\81\99ã\82\8bã\80\82 ã\82\82ã\81\97(I<number>ã\81®)符å\8f·ã\81\8cè² ã\81ªã\82\89ã\81° "
+"関数 B<ecvt>() は I<number> をヌル文字で終端された I<ndigits> 文字の文字列へ"
+"変換し、その文字列へのポインタを返す (I<ndigits> が I<double> の精度によって"
+"決定されるシステム依存の上限値より大きい場合は、 その条件値が I<ndigits> の値"
+"となる)。 I<number> が 0 でなければ、最上位の桁は 0 以外である。 最下位の桁は"
+"丸められる。 文字列には小数点は含まれない。そのかわりに、文字列の先頭からの小"
+"数点の 位置が I<*decpt> に保持される。 I<*decpt> が負の値の場合、小数点が文字"
+"列の先頭の左側にあることを意味する。 もし(I<number>の)符号が負ならば "
"I<*sign> は 0 以外の値に、 そうでなければ 0 に設定される。 I<number> が 0 な"
"ら、I<*decpt> が 0 か 1 かは未規定である。"
"たびに上書きされる。"
#. type: Plain text
-#: build/C/man3/ecvt.3:122
+#: build/C/man3/ecvt.3:117
+msgid "The B<ecvt>() and B<fcvt>() functions are not thread-safe."
+msgstr "関数 B<ecvt>() と B<fcvt>() はスレッドセーフではない。"
+
+#. type: Plain text
+#: build/C/man3/ecvt.3:129
msgid ""
"SVr2; marked as LEGACY in POSIX.1-2001. POSIX.1-2008 removes the "
"specifications of B<ecvt>() and B<fcvt>(), recommending the use of "
"れない)。"
#. type: Plain text
-#: build/C/man3/ecvt.3:128
+#: build/C/man3/ecvt.3:135
msgid ""
"Linux libc4 and libc5 specified the type of I<ndigits> as I<size_t>. Not "
"all locales use a point as the radix character (\"decimal point\")."
"ピリオドを使わないロケールもある。"
#. type: Plain text
-#: build/C/man3/ecvt.3:134
+#: build/C/man3/ecvt.3:141
msgid "B<ecvt_r>(3), B<gcvt>(3), B<qecvt>(3), B<setlocale>(3), B<sprintf>(3)"
msgstr "B<ecvt_r>(3), B<gcvt>(3), B<qecvt>(3), B<setlocale>(3), B<sprintf>(3)"
msgstr "これらの関数は GNU による拡張である。"
#. type: Plain text
-#: build/C/man3/ecvt_r.3:95 build/C/man3/qecvt.3:83
+#: build/C/man3/ecvt_r.3:95
msgid "These functions are obsolete. Instead, B<sprintf>(3) is recommended."
msgstr "これらの関数は廃止された。代わりに B<sprintf>(3) の使用を推奨する。"
msgstr "B<ecvt>(3), B<qecvt>(3), B<sprintf>(3)"
#. type: TH
-#: build/C/man3/exit.3:25
+#: build/C/man3/exit.3:29
#, no-wrap
msgid "EXIT"
msgstr "EXIT"
#. type: TH
-#: build/C/man3/exit.3:25
+#: build/C/man3/exit.3:29 build/C/man3/random.3:33 build/C/man3/random_r.3:26
#, no-wrap
-msgid "2013-02-14"
-msgstr ""
+msgid "2014-03-25"
+msgstr "2014-03-25"
#. type: Plain text
-#: build/C/man3/exit.3:28
+#: build/C/man3/exit.3:32
msgid "exit - cause normal process termination"
msgstr "exit - プロセスの正常終了"
#. type: Plain text
-#: build/C/man3/exit.3:33
+#: build/C/man3/exit.3:37
#, no-wrap
msgid "B<void exit(int >I<status>B<);>\n"
msgstr "B<void exit(int >I<status>B<);>\n"
#. type: Plain text
-#: build/C/man3/exit.3:41
+#: build/C/man3/exit.3:45
msgid ""
"The B<exit>() function causes normal process termination and the value of "
"I<status & 0377> is returned to the parent (see B<wait>(2))."
"ロセスへ返す (B<wait>(2) を参照)。"
#. type: Plain text
-#: build/C/man3/exit.3:68
+#: build/C/man3/exit.3:72
msgid ""
"All functions registered with B<atexit>(3) and B<on_exit>(3) are called, "
"in the reverse order of their registration. (It is possible for one of "
"登録されていた場合、 その関数は登録されたのと同じ回数だけ呼び出される。"
#. type: Plain text
-#: build/C/man3/exit.3:75
+#: build/C/man3/exit.3:79
msgid ""
"All open B<stdio>(3) streams are flushed and closed. Files created by "
"B<tmpfile>(3) are removed."
"B<tmpfile>(3) によって作成されたファイルは削除される。"
#. type: Plain text
-#: build/C/man3/exit.3:82
+#: build/C/man3/exit.3:86
msgid ""
"The C standard specifies two constants, B<EXIT_SUCCESS> and B<EXIT_FAILURE>, "
"that may be passed to B<exit>() to indicate successful or unsuccessful "
"る。"
#. type: Plain text
-#: build/C/man3/exit.3:86
+#: build/C/man3/exit.3:90
msgid "The B<exit>() function does not return."
msgstr "B<exit>() 関数は返らない。"
#. type: Plain text
-#: build/C/man3/exit.3:88
+#: build/C/man3/exit.3:96
+msgid ""
+"The B<exit>() function uses a global variable that is not protected, so it "
+"is not thread-safe."
+msgstr ""
+"B<exit>() 関数は保護されていないグローバル変数を使用しているため、スレッド"
+"セーフではない。"
+
+#. type: Plain text
+#: build/C/man3/exit.3:98
msgid "SVr4, 4.3BSD, POSIX.1-2001, C89, C99."
msgstr "SVr4, 4.3BSD, POSIX.1-2001, C89, C99."
#. type: Plain text
-#: build/C/man3/exit.3:105
-#, fuzzy
-#| msgid ""
-#| "It is undefined what happens if one of the functions registered using "
-#| "B<atexit>(3) and B<on_exit>(3) calls either B<exit>() or B<longjmp>(3)."
+#: build/C/man3/exit.3:115
msgid ""
"It is undefined what happens if one of the functions registered using "
"B<atexit>(3) and B<on_exit>(3) calls either B<exit>() or B<longjmp>(3). "
"Note that a call to B<execve>(2) removes registrations created using "
"B<atexit>(3) and B<on_exit>(3)."
msgstr ""
-"B<atexit>(3) や B<on_exit>(3) を使って登録された関数の中で B<exit>() か "
-"B<longjmp>(3) が呼び出された場合、 何が起こるかは未定義である。"
+"B<atexit>(3) や B<on_exit>(3) を使って登録された関数の中で B<exit>() か "
+"B<longjmp>(3) が呼び出された場合、 何が起こるかは未定義である。 "
+"B<execve>(2) を呼び出すと、 B<atexit>(3) や B<on_exit>(3) を使って登録された"
+"関数が削除される点に注意すること。"
#. type: Plain text
-#: build/C/man3/exit.3:114
+#: build/C/man3/exit.3:124
msgid ""
"The use of B<EXIT_SUCCESS> and B<EXIT_FAILURE> is slightly more portable (to "
"non-UNIX environments) than the use of 0 and some nonzero value like 1 or "
"VMS は別の方式を用いている。"
#. type: Plain text
-#: build/C/man3/exit.3:117
+#: build/C/man3/exit.3:127
msgid ""
"BSD has attempted to standardize exit codes; see the file I<E<lt>sysexits."
"hE<gt>>."
"こと。"
#. type: Plain text
-#: build/C/man3/exit.3:142
+#: build/C/man3/exit.3:152
msgid ""
"After B<exit>(), the exit status must be transmitted to the parent process. "
"There are three cases. If the parent has set B<SA_NOCLDWAIT>, or has set "
"the B<SIGCHLD> handler to B<SIG_IGN>, the status is discarded. If the "
-"parent was waiting on the child it is notified of the exit status. In both "
+"parent was waiting on the child, it is notified of the exit status. In both "
"cases the exiting process dies immediately. If the parent has not indicated "
"that it is not interested in the exit status, but is not waiting, the "
"exiting process turns into a \"zombie\" process (which is nothing but a "
"ことで、 親プロセスは終了ステータスを知ることができる。"
#. type: Plain text
-#: build/C/man3/exit.3:152
+#: build/C/man3/exit.3:162
msgid ""
"If the implementation supports the B<SIGCHLD> signal, this signal is sent to "
"the parent. If the parent has set B<SA_NOCLDWAIT>, it is undefined whether "
"ルが送られるかどうかは定義されていない。"
#. type: Plain text
-#: build/C/man3/exit.3:161
+#: build/C/man3/exit.3:171
msgid ""
"If the process is a session leader and its controlling terminal is the "
"controlling terminal of the session, then each process in the foreground "
"これにより新しい制御プロセスを取得することができる。"
#. type: Plain text
-#: build/C/man3/exit.3:173
+#: build/C/man3/exit.3:183
msgid ""
"If the exit of the process causes a process group to become orphaned, and if "
"any member of the newly orphaned process group is stopped, then a B<SIGHUP> "
"(orphaned) プロセスグループの説明は B<setpgid>(2) を参照。"
#. type: Plain text
-#: build/C/man3/exit.3:180
+#: build/C/man3/exit.3:190
msgid ""
"B<_exit>(2), B<setpgid>(2), B<wait>(2), B<atexit>(3), B<on_exit>(3), "
"B<tmpfile>(3)"
#. type: Plain text
#: build/C/man3/gcvt.3:38
#, no-wrap
-msgid "B<char *gcvt(double >I<number>B<, size_t >I<ndigit>B<, char *>I<buf>B<);>\n"
-msgstr "B<char *gcvt(double >I<number>B<, size_t >I<ndigit>B<, char *>I<buf>B<);>\n"
+msgid "B<char *gcvt(double >I<number>B<, int >I<ndigit>B<, char *>I<buf>B<);>\n"
+msgstr "B<char *gcvt(double >I<number>B<, int >I<ndigit>B<, char *>I<buf>B<);>\n"
#. type: Plain text
#: build/C/man3/gcvt.3:46
"terminated ASCII string and stores the result in I<buf>. It produces "
"I<ndigit> significant digits in either B<printf>(3) F format or E format."
msgstr ""
-"関数 B<gcvt>() は、 I<number> を、最短の長さの NULL 終端された ASCII 文字列"
-"へ変換し、変換後の文字列を I<buf> に格納する。 B<printf>(3) の F フォーマッ"
-"ã\83\88ã\82\84 E ã\83\95ã\82©ã\83¼ã\83\9eã\83\83ã\83\88ã\81®ã\82\88ã\81\86ã\81« I<ndigit> æ¡\81ã\81® æ\9c\89å\8a¹æ\95°å\97ã\82\92ç\94\9fæ\88\90ã\81\99ã\82\8bã\80\82"
+"関数 B<gcvt>() は、 I<number> を、最短の長さのヌル終端された ASCII 文字列へ"
+"変換し、変換後の文字列を I<buf> に格納する。 B<printf>(3) の F フォーマット"
+"や E フォーマットのように I<ndigit> 桁の 有効数字を生成する。"
#. type: Plain text
#: build/C/man3/gcvt.3:77
#: build/C/man3/gcvt.3:86
msgid ""
"Marked as LEGACY in POSIX.1-2001. POSIX.1-2008 removes the specification of "
-"B<gcvt>(), recommending the use of B<sprintf>(3) instead (though B<snprintf>"
-"(3) may be preferable)."
+"B<gcvt>(), recommending the use of B<sprintf>(3) instead (though "
+"B<snprintf>(3) may be preferable)."
msgstr ""
"POSIX.1-2001 では、 この関数は「過去の名残 (LEGACY)」と位置付けられている。 "
"POSIX.1-2008 では、 B<gcvt>() の仕様は削除され、 代わりに B<sprintf>(3) を"
msgstr "B<ecvt>(3), B<fcvt>(3), B<sprintf>(3)"
#. type: TH
-#: build/C/man3/getauxval.3:27
+#: build/C/man3/getauxval.3:29
#, no-wrap
msgid "GETAUXVAL"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/getauxval.3:27
-#, fuzzy, no-wrap
-#| msgid "2012-05-10"
-msgid "2012-11-07"
-msgstr "2012-05-10"
+msgstr "GETAUXVAL"
#. type: Plain text
-#: build/C/man3/getauxval.3:30
+#: build/C/man3/getauxval.3:32
msgid "getauxval - retrieve a value from the auxiliary vector"
msgstr ""
#. type: Plain text
-#: build/C/man3/getauxval.3:33
-#, fuzzy, no-wrap
-#| msgid "B<#include E<lt>inttypes.hE<gt>>\n"
+#: build/C/man3/getauxval.3:35
+#, no-wrap
msgid "B<#include E<lt>sys/auxv.hE<gt>>\n"
-msgstr "B<#include E<lt>inttypes.hE<gt>>\n"
+msgstr "B<#include E<lt>sys/auxv.hE<gt>>\n"
#. type: Plain text
-#: build/C/man3/getauxval.3:35
-#, fuzzy, no-wrap
-#| msgid "B<unsigned short *seed48(unsigned short >I<seed16v>B<[3]);>\n"
+#: build/C/man3/getauxval.3:37
+#, no-wrap
msgid "B<unsigned long getauxval(unsigned long >I<type>B<);>\n"
-msgstr "B<unsigned short *seed48(unsigned short >I<seed16v>B<[3]);>\n"
+msgstr "B<unsigned long getauxval(unsigned long >I<type>B<);>\n"
#. type: Plain text
-#: build/C/man3/getauxval.3:43
+#: build/C/man3/getauxval.3:45
msgid ""
"The B<getauxval>() function retrieves values from the auxiliary vector, a "
"mechanism that the kernel's ELF binary loader uses to pass certain "
msgstr ""
#. type: Plain text
-#: build/C/man3/getauxval.3:51
+#: build/C/man3/getauxval.3:53
msgid ""
"Each entry in the auxiliary vector consists of a pair of values: a type that "
"identifies what this entry represents, and a value for that type. Given the "
msgstr ""
#. type: Plain text
-#: build/C/man3/getauxval.3:58
+#: build/C/man3/getauxval.3:60
msgid ""
"The value returned for each I<type> is given in the following list. Not all "
"I<type> values are present on all architectures."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:58
+#: build/C/man3/getauxval.3:60
#, no-wrap
msgid "B<AT_BASE>"
-msgstr ""
+msgstr "B<AT_BASE>"
#. type: Plain text
-#: build/C/man3/getauxval.3:61
+#: build/C/man3/getauxval.3:63
msgid ""
"The base address of the program interpreter (usually, the dynamic linker)."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:61
+#: build/C/man3/getauxval.3:63
#, no-wrap
msgid "B<AT_BASE_PLATFORM>"
-msgstr ""
+msgstr "B<AT_BASE_PLATFORM>"
#. type: Plain text
-#: build/C/man3/getauxval.3:66
+#: build/C/man3/getauxval.3:68
msgid ""
"A string identifying the real platform; may differ from B<AT_PLATFORM> "
"(PowerPC only)."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:66
+#: build/C/man3/getauxval.3:68
#, no-wrap
msgid "B<AT_CLKTCK>"
-msgstr ""
+msgstr "B<AT_CLKTCK>"
#. type: Plain text
-#: build/C/man3/getauxval.3:73
+#: build/C/man3/getauxval.3:75
msgid ""
"The frequency with which B<times>(2) counts. This value can also be "
"obtained via I<sysconf(_SC_CLK_TCK)>."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:73
+#: build/C/man3/getauxval.3:75
#, no-wrap
msgid "B<AT_DCACHEBSIZE>"
-msgstr ""
+msgstr "B<AT_DCACHEBSIZE>"
#. type: Plain text
-#: build/C/man3/getauxval.3:76
+#: build/C/man3/getauxval.3:78
msgid "The data cache block size."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:76
+#: build/C/man3/getauxval.3:78
#, no-wrap
msgid "B<AT_EGID>"
-msgstr ""
+msgstr "B<AT_EGID>"
#. type: Plain text
-#: build/C/man3/getauxval.3:79
+#: build/C/man3/getauxval.3:81
msgid "The effective group ID of the thread."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:79
+#: build/C/man3/getauxval.3:81
#, no-wrap
msgid "B<AT_ENTRY>"
-msgstr ""
+msgstr "B<AT_ENTRY>"
#. type: Plain text
-#: build/C/man3/getauxval.3:82
+#: build/C/man3/getauxval.3:84
msgid "The entry address of the executable."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:82
+#: build/C/man3/getauxval.3:84
#, no-wrap
msgid "B<AT_EUID>"
-msgstr ""
+msgstr "B<AT_EUID>"
#. type: Plain text
-#: build/C/man3/getauxval.3:85
+#: build/C/man3/getauxval.3:87
msgid "The effective user ID of the thread."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:85
+#: build/C/man3/getauxval.3:87
#, no-wrap
msgid "B<AT_EXECFD>"
-msgstr ""
+msgstr "B<AT_EXECFD>"
#. type: Plain text
-#: build/C/man3/getauxval.3:88
+#: build/C/man3/getauxval.3:90
msgid "File descriptor of program."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:88
+#: build/C/man3/getauxval.3:90
#, no-wrap
msgid "B<AT_EXECFN>"
-msgstr ""
+msgstr "B<AT_EXECFN>"
#. type: Plain text
-#: build/C/man3/getauxval.3:91
+#: build/C/man3/getauxval.3:93
msgid "Pathname used to execute program."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:91
+#: build/C/man3/getauxval.3:93
#, no-wrap
msgid "B<AT_FLAGS>"
-msgstr ""
+msgstr "B<AT_FLAGS>"
#. type: Plain text
-#: build/C/man3/getauxval.3:94
+#: build/C/man3/getauxval.3:96
msgid "Flags (unused)."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:94
+#: build/C/man3/getauxval.3:96
#, no-wrap
msgid "B<AT_FPUCW>"
-msgstr ""
+msgstr "B<AT_FPUCW>"
#. type: Plain text
-#: build/C/man3/getauxval.3:99
+#: build/C/man3/getauxval.3:101
msgid ""
"Used FPU control word (SuperH architecture only). This gives some "
"information about the FPU initialization performed by the kernel."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:99
+#: build/C/man3/getauxval.3:101
#, no-wrap
msgid "B<AT_GID>"
-msgstr ""
+msgstr "B<AT_GID>"
#. type: Plain text
-#: build/C/man3/getauxval.3:102
+#: build/C/man3/getauxval.3:104
msgid "The real group ID of the thread."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:102
+#: build/C/man3/getauxval.3:104
#, no-wrap
msgid "B<AT_HWCAP>"
-msgstr ""
+msgstr "B<AT_HWCAP>"
#. type: Plain text
-#: build/C/man3/getauxval.3:112
+#: build/C/man3/getauxval.3:114
msgid ""
"A pointer to a multibyte mask of bits whose settings indicate detailed "
"processor capabilities. The contents of the bit mask are hardware dependent "
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:112
+#: build/C/man3/getauxval.3:114
#, no-wrap
msgid "B<AT_ICACHEBSIZE>"
-msgstr ""
+msgstr "B<AT_ICACHEBSIZE>"
#. .TP
#. .BR AT_IGNORE
#. .TP
#. .BR AT_NOTELF
#. type: Plain text
-#: build/C/man3/getauxval.3:121
+#: build/C/man3/getauxval.3:123
msgid "The instruction cache block size."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:121
+#: build/C/man3/getauxval.3:123
#, no-wrap
msgid "B<AT_PAGESZ>"
-msgstr ""
+msgstr "B<AT_PAGESZ>"
#. type: Plain text
-#: build/C/man3/getauxval.3:125
+#: build/C/man3/getauxval.3:127
msgid ""
"The system page size (the same value returned by I<sysconf(_SC_PAGESIZE)>)."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:125
+#: build/C/man3/getauxval.3:127
#, no-wrap
msgid "B<AT_PHDR>"
-msgstr ""
+msgstr "B<AT_PHDR>"
#. type: Plain text
-#: build/C/man3/getauxval.3:128
+#: build/C/man3/getauxval.3:130
msgid "The address of the program headers of the executable."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:128
+#: build/C/man3/getauxval.3:130
#, no-wrap
msgid "B<AT_PHENT>"
-msgstr ""
+msgstr "B<AT_PHENT>"
#. type: Plain text
-#: build/C/man3/getauxval.3:131
+#: build/C/man3/getauxval.3:133
msgid "The size of program header entry."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:131
+#: build/C/man3/getauxval.3:133
#, no-wrap
msgid "B<AT_PHNUM>"
-msgstr ""
+msgstr "B<AT_PHNUM>"
#. type: Plain text
-#: build/C/man3/getauxval.3:134
+#: build/C/man3/getauxval.3:136
msgid "The number of program headers."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:134
+#: build/C/man3/getauxval.3:136
#, no-wrap
msgid "B<AT_PLATFORM>"
-msgstr ""
+msgstr "B<AT_PLATFORM>"
#. type: Plain text
-#: build/C/man3/getauxval.3:141
+#: build/C/man3/getauxval.3:143
msgid ""
"A pointer to a string that identifies the hardware platform that the program "
"is running on. The dynamic linker uses this in the interpretation of "
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:141
-#, fuzzy, no-wrap
-#| msgid "RANDOM"
+#: build/C/man3/getauxval.3:143
+#, no-wrap
msgid "B<AT_RANDOM>"
-msgstr "RANDOM"
+msgstr "B<AT_RANDOM>"
#. type: Plain text
-#: build/C/man3/getauxval.3:144
+#: build/C/man3/getauxval.3:146
msgid "The address of sixteen bytes containing a random value."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:144
+#: build/C/man3/getauxval.3:146
#, no-wrap
msgid "B<AT_SECURE>"
-msgstr ""
+msgstr "B<AT_SECURE>"
#. type: Plain text
-#: build/C/man3/getauxval.3:156
+#: build/C/man3/getauxval.3:158
msgid ""
"Has a nonzero value if this executable should be treated securely. Most "
"commonly, a nonzero value indicates that the process is executing a set-user-"
"ID or set-group-ID program; alternatively, a nonzero value may be triggered "
"by a Linux Security Module. When this value is nonzero, the dynamic linker "
"disables the use of certain environment variables (see B<ld-linux.so>(8)) "
-"and glibc changes other aspects of its behavior. (See also B<secure_getenv>"
-"(3).)"
+"and glibc changes other aspects of its behavior. (See also "
+"B<secure_getenv>(3).)"
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:156
+#: build/C/man3/getauxval.3:158
#, no-wrap
msgid "B<AT_SYSINFO>"
-msgstr ""
+msgstr "B<AT_SYSINFO>"
#. type: Plain text
-#: build/C/man3/getauxval.3:160
+#: build/C/man3/getauxval.3:162
msgid ""
-"The entry point to the system call function in the VDSO. Not present/needed "
+"The entry point to the system call function in the vDSO. Not present/needed "
"on all architectures (e.g., absent on x86-64)."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:160
+#: build/C/man3/getauxval.3:162
#, no-wrap
msgid "B<AT_SYSINFO_EHDR>"
-msgstr ""
+msgstr "B<AT_SYSINFO_EHDR>"
#. type: Plain text
-#: build/C/man3/getauxval.3:165
+#: build/C/man3/getauxval.3:167
msgid ""
-"The address of a page containing the Virtual Dynamic Shared Object (VDSO) "
+"The address of a page containing the virtual Dynamic Shared Object (vDSO) "
"that the kernel creates in order to provide fast implementations of certain "
"system calls."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:165
+#: build/C/man3/getauxval.3:167
#, no-wrap
msgid "B<AT_UCACHEBSIZE>"
-msgstr ""
+msgstr "B<AT_UCACHEBSIZE>"
#. type: Plain text
-#: build/C/man3/getauxval.3:168
+#: build/C/man3/getauxval.3:170
msgid "The unified cache block size."
msgstr ""
#. type: TP
-#: build/C/man3/getauxval.3:168
+#: build/C/man3/getauxval.3:170
#, no-wrap
msgid "B<AT_UID>"
-msgstr ""
+msgstr "B<AT_UID>"
#. type: Plain text
-#: build/C/man3/getauxval.3:171
+#: build/C/man3/getauxval.3:173
msgid "The real user ID of the thread."
msgstr ""
#. type: Plain text
-#: build/C/man3/getauxval.3:179
+#: build/C/man3/getauxval.3:181
msgid ""
"On success, B<getauxval>() returns the value corresponding to I<type>. If "
"I<type> is not found, 0 is returned."
msgstr ""
+"成功すると、 B<getauxval>() は I<type> に対応する値を返す。 I<type> が見つか"
+"らない場合には 0 を返す。"
#. type: Plain text
-#: build/C/man3/getauxval.3:181
+#: build/C/man3/getauxval.3:183
msgid "No errors are diagnosed."
-msgstr ""
+msgstr "エラーは検出されない。"
#. type: Plain text
-#: build/C/man3/getauxval.3:185
-#, fuzzy
-#| msgid "This function is available in glibc since version 2.2."
+#: build/C/man3/getauxval.3:187
msgid "The B<getauxval>() function was added to glibc in version 2.16."
-msgstr "この関数は glibc のバージョン 2.2 以降で利用可能である。"
+msgstr "B<getauxval>() 関数は glibc バージョン 2.16 で追加された。"
#. type: Plain text
-#: build/C/man3/getauxval.3:187
-#, fuzzy
-#| msgid "These functions are nonstandard glibc extensions."
+#: build/C/man3/getauxval.3:192
+msgid "The B<getauxval>() function is thread-safe."
+msgstr "関数 B<getauxval>() はスレッドセーフである。"
+
+#. type: Plain text
+#: build/C/man3/getauxval.3:194
msgid "This function is a nonstandard glibc extension."
-msgstr "ã\81\93ã\82\8cã\82\89ã\81®é\96¢æ\95°ã\81¯é\9d\9eæ¨\99æº\96ã\81§ glibc ã\81«ã\82\88ã\82\8bæ\8b¡å¼µã\81§ã\81\82ã\82\8bã\80\82"
+msgstr "この関数は非標準で glibc による拡張である。"
#. type: Plain text
-#: build/C/man3/getauxval.3:196
+#: build/C/man3/getauxval.3:203
msgid ""
"The primary consumer of the information in the auxiliary vector is the "
"dynamic linker B<ld-linux.so>(8). The auxiliary vector is a convenient and "
msgstr ""
#. type: Plain text
-#: build/C/man3/getauxval.3:202
+#: build/C/man3/getauxval.3:209
msgid ""
"The auxiliary vector resides just above the argument list and environment in "
"the process address space. The auxiliary vector supplied to a program can "
msgstr ""
#. type: Plain text
-#: build/C/man3/getauxval.3:204
+#: build/C/man3/getauxval.3:211
#, no-wrap
msgid " $ LD_SHOW_AUXV=1 sleep 1\n"
-msgstr ""
+msgstr " $ LD_SHOW_AUXV=1 sleep 1\n"
#. type: Plain text
-#: build/C/man3/getauxval.3:211
+#: build/C/man3/getauxval.3:218
msgid ""
"The auxiliary vector of any process can (subject to file permissions) be "
"obtained via I</proc/PID/auxv>; see B<proc>(5) for more information."
msgstr ""
#. type: Plain text
-#: build/C/man3/getauxval.3:214
-#, fuzzy
-#| msgid "B<setenv>(), B<unsetenv>():"
-msgid "B<secure_getenv>(3), B<ld-linux.so>(8)"
-msgstr "B<setenv>(), B<unsetenv>():"
-
-#. type: Plain text
-#: build/C/man3/getauxval.3:217
-msgid "The kernel source file I<Documentation/ABI/stable/vdso>"
-msgstr ""
+#: build/C/man3/getauxval.3:222
+msgid "B<secure_getenv>(3), B<vdso>(7), B<ld-linux.so>(8)"
+msgstr "B<secure_getenv>(3), B<vdso>(7), B<ld-linux.so>(8)"
#. type: TH
#: build/C/man3/getenv.3:33
#. type: TH
#: build/C/man3/getenv.3:33
-#, fuzzy, no-wrap
-#| msgid "2012-05-10"
+#, no-wrap
msgid "2012-08-14"
-msgstr "2012-05-10"
+msgstr "2012-08-14"
#. type: Plain text
#: build/C/man3/getenv.3:36
-#, fuzzy
-#| msgid "getenv - get an environment variable"
msgid "getenv, secure_getenv - get an environment variable"
-msgstr "getenv - 環境変数を得る"
+msgstr "getenv, secure_getenv - 環境変数を得る"
#. type: Plain text
#: build/C/man3/getenv.3:41
#. type: Plain text
#: build/C/man3/getenv.3:43
-#, fuzzy, no-wrap
-#| msgid "B<char *getenv(const char *>I<name>B<);>\n"
+#, no-wrap
msgid "B<char *secure_getenv(const char *>I<name>B<);>\n"
-msgstr "B<char *getenv(const char *>I<name>B<);>\n"
+msgstr "B<char *secure_getenv(const char *>I<name>B<);>\n"
#. type: Plain text
#: build/C/man3/getenv.3:52
-#, fuzzy
-#| msgid "B<mkostemp>(): _GNU_SOURCE"
msgid "B<secure_getenv>(): _GNU_SOURCE"
-msgstr "B<mkostemp>(): _GNU_SOURCE"
+msgstr "B<secure_getenv>(): _GNU_SOURCE"
#. type: Plain text
#: build/C/man3/getenv.3:61
"required. Secure execution is required if one of the following conditions "
"was true when the program run by the calling process was loaded:"
msgstr ""
+"GNU 固有の B<secure_getenv>() 関数は B<getenv>() と同様だが、 \"secure "
+"execution\" (「安全な実行」) が必要な場合には NULL を返す点が異なる。 "
+"\"secure execution\" が必要となるのは、 呼び出し元プロセスにより実行されるプ"
+"ログラムがロードされる際に、 以下の条件のいずれか一つが成立する場合である。"
#. type: IP
#: build/C/man3/getenv.3:69 build/C/man3/getenv.3:74 build/C/man3/getenv.3:76
+#: build/C/man3/system.3:77 build/C/man3/system.3:82 build/C/man3/system.3:86
+#: build/C/man3/system.3:91
#, no-wrap
msgid "*"
-msgstr ""
+msgstr "*"
#. type: Plain text
#: build/C/man3/getenv.3:74
"process's effective group ID did not match its real group ID (typically this "
"is the result of executing a set-user-ID or set-group-ID program);"
msgstr ""
+"プロセスの実効ユーザ ID がプロセスの実ユーザ ID と一致しない場合、またはプロ"
+"セスの実効グループ ID がプロセスの実グループ ID と一致しない場合 (通常、この"
+"状況になるのは、 set-user-ID プログラムか set-group-ID プログラムを実行した場"
+"合である)。"
#. type: Plain text
#: build/C/man3/getenv.3:76
msgid "the effective capability bit was set on the executable file; or"
-msgstr ""
+msgstr "実行ファイルで実効ケーパビリティビットがセットされている場合。"
#. type: Plain text
#: build/C/man3/getenv.3:78
msgid "the process has a nonempty permitted capability set."
-msgstr ""
+msgstr "プロセスの許可ケーパビリティセットが空でない場合。"
#. type: Plain text
#: build/C/man3/getenv.3:81
"Secure execution may also required if triggered by some Linux security "
"modules."
msgstr ""
+"Linux セキュリティモジュールにより要求された場合にも \"secure execution\" は"
+"必要となる。"
#. type: Plain text
#: build/C/man3/getenv.3:88
"libraries to avoid vulnerabilities that could occur if set-user-ID or set-"
"group-ID programs accidentally trusted the environment."
msgstr ""
+"B<secure_getenv>() 関数は、 set-user-ID プログラムや set-group-ID プログラム"
+"が実行環境を偶然信用してしまった場合に起こり得る脆弱性を、 汎用ライブラリで回"
+"避するために使うことを意図して作られた。"
#. type: Plain text
#: build/C/man3/getenv.3:93
#. type: Plain text
#: build/C/man3/getenv.3:96
-#, fuzzy
-#| msgid "B<mkostemp>() is available since glibc 2.7."
msgid "B<secure_getenv>() first appeared in glibc 2.17."
-msgstr "B<mkostemp>() は glibc 2.7 以降で利用可能である。"
+msgstr "B<secure_getenv>() は glibc 2.17 で初めて登場した。"
#. type: Plain text
#: build/C/man3/getenv.3:99
-#, fuzzy
-#| msgid "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
msgid "B<getenv>(): SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
-msgstr "SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
+msgstr "B<getenv>(): SVr4, POSIX.1-2001, 4.3BSD, C89, C99."
#. type: Plain text
#: build/C/man3/getenv.3:102
-#, fuzzy
-#| msgid "The function is a GNU extension."
msgid "B<secure_getenv>() is a GNU extension."
-msgstr "この関数は GNU による拡張である。"
+msgstr "B<secure_getenv>() は GNU による拡張である。"
#. type: Plain text
#: build/C/man3/getenv.3:104
msgid ""
"The implementation of B<getenv>() is not required to be reentrant. The "
"string pointed to by the return value of B<getenv>() may be statically "
-"allocated, and can be modified by a subsequent call to B<getenv>(), B<putenv>"
-"(3), B<setenv>(3), or B<unsetenv>(3)."
+"allocated, and can be modified by a subsequent call to B<getenv>(), "
+"B<putenv>(3), B<setenv>(3), or B<unsetenv>(3)."
msgstr ""
"B<getenv>() の実装はリエントラント (再入可能) であることを要求されていな"
"い。 B<getenv>() の返り値により参照される文字列は静的に割り当てられてもよ"
"B<AT_SECURE> flag contained in the auxiliary vector passed from the kernel "
"to user space."
msgstr ""
+"B<secure_getenv>() の \"secure execution\" モードは、 カーネルからユーザ空間"
+"に渡される補助ベクトル (auxiliary vector) の B<AT_SECURE> フラグにより制御さ"
+"れる。"
#. type: Plain text
#: build/C/man3/getenv.3:137
-#, fuzzy
-#| msgid ""
-#| "B<clearenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"
msgid ""
"B<clearenv>(3), B<getauxval>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), "
"B<capabilities>(7), B<environ>(7)"
msgstr ""
-"B<clearenv>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"
+"B<clearenv>(3), B<getauxval>(3), B<putenv>(3), B<setenv>(3), B<unsetenv>(3), "
+"B<capabilities>(7), B<environ>(7)"
#. type: TH
#: build/C/man3/getloadavg.3:34
#. type: TH
#: build/C/man3/getloadavg.3:34
#, no-wrap
-msgid "2007-12-08"
-msgstr "2007-12-08"
+msgid "2014-04-01"
+msgstr "2014-04-01"
#. type: Plain text
#: build/C/man3/getloadavg.3:37
msgid "This function is available in glibc since version 2.2."
msgstr "この関数は glibc のバージョン 2.2 以降で利用可能である。"
+#. type: Plain text
+#: build/C/man3/getloadavg.3:70
+msgid "The B<getloadavg>() function is thread-safe."
+msgstr "関数 B<getloadavg>() はスレッドセーフである。"
+
#. mdoc seems to have a bug - there must be no newline here
#. type: Plain text
-#: build/C/man3/getloadavg.3:69
+#: build/C/man3/getloadavg.3:74
msgid "Not in POSIX.1-2001. Present on the BSDs and Solaris."
msgstr "POSIX.1-2001 にはない。 BSD 系と Solaris に存在する。"
#. type: Plain text
-#: build/C/man3/getloadavg.3:72
+#: build/C/man3/getloadavg.3:77
msgid "B<uptime>(1), B<proc>(5)"
msgstr "B<uptime>(1), B<proc>(5)"
msgstr "GETSUBOPT"
#. type: TH
-#: build/C/man3/getsubopt.3:25 build/C/man3/mkdtemp.3:26
+#: build/C/man3/getsubopt.3:25
#, no-wrap
-msgid "2010-09-26"
-msgstr "2010-09-26"
+msgid "2014-04-08"
+msgstr "2014-04-08"
#. type: Plain text
#: build/C/man3/getsubopt.3:28
msgid ""
"B<getsubopt>() parses the list of comma-separated suboptions provided in "
"I<optionp>. (Such a suboption list is typically produced when B<getopt>(3) "
-"is used to parse a command line; see for example the I<-o> option of B<mount>"
-"(8).) Each suboption may include an associated value, which is separated "
-"from the suboption name by an equal sign. The following is an example of "
-"the kind of string that might be passed in I<optionp>:"
+"is used to parse a command line; see for example the I<-o> option of "
+"B<mount>(8).) Each suboption may include an associated value, which is "
+"separated from the suboption name by an equal sign. The following is an "
+"example of the kind of string that might be passed in I<optionp>:"
msgstr ""
"B<getsubopt>() は、 I<optionp> で与えられたカンマ区切りのサブオプション・リ"
"ストを解析する。 (このようなサブオプション・リストは B<getopt>(3) を使ってコ"
"い。"
#. type: Plain text
-#: build/C/man3/getsubopt.3:138
+#: build/C/man3/getsubopt.3:134
+msgid "The B<getsubopt>() function is thread-safe."
+msgstr "関数 B<getsubopt>() はスレッドセーフである。"
+
+#. type: Plain text
+#: build/C/man3/getsubopt.3:143
msgid ""
"Since B<getsubopt>() overwrites any commas it finds in the string "
"I<*optionp>, that string must be writable; it cannot be a string constant."
"ない。"
#. type: Plain text
-#: build/C/man3/getsubopt.3:140
+#: build/C/man3/getsubopt.3:145
msgid "The following program expects suboptions following a \"-o\" option."
msgstr ""
"以下のプログラムは \"-o\" オプションに続いてサブオプションがあることを 期待し"
"ている。"
#. type: Plain text
-#: build/C/man3/getsubopt.3:146
+#: build/C/man3/getsubopt.3:151
#, no-wrap
msgid ""
"#define _XOPEN_SOURCE 500\n"
"#include E<lt>stdio.hE<gt>\n"
#. type: Plain text
-#: build/C/man3/getsubopt.3:163
+#: build/C/man3/getsubopt.3:169
#, no-wrap
msgid ""
-"int main(int argc, char **argv)\n"
+"int\n"
+"main(int argc, char **argv)\n"
"{\n"
" enum {\n"
" RO_OPT = 0,\n"
" char *value;\n"
" int opt;\n"
msgstr ""
-"int main(int argc, char **argv)\n"
+"int\n"
+"main(int argc, char **argv)\n"
"{\n"
" enum {\n"
" RO_OPT = 0,\n"
" int opt;\n"
#. type: Plain text
-#: build/C/man3/getsubopt.3:168
+#: build/C/man3/getsubopt.3:174
#, no-wrap
msgid ""
" int readonly = 0;\n"
" int errfnd = 0;\n"
#. type: Plain text
-#: build/C/man3/getsubopt.3:174
+#: build/C/man3/getsubopt.3:180
#, no-wrap
msgid ""
" while ((opt = getopt(argc, argv, \"o:\")) != -1) {\n"
" while (*subopts != \\(aq\\e0\\(aq && !errfnd) {\n"
#. type: Plain text
-#: build/C/man3/getsubopt.3:179
+#: build/C/man3/getsubopt.3:185
#, no-wrap
msgid ""
" switch (getsubopt(&subopts, token, &value)) {\n"
" break;\n"
#. type: Plain text
-#: build/C/man3/getsubopt.3:183
+#: build/C/man3/getsubopt.3:189
#, no-wrap
msgid ""
" case RW_OPT:\n"
" break;\n"
#. type: Plain text
-#: build/C/man3/getsubopt.3:191
+#: build/C/man3/getsubopt.3:197
#, no-wrap
msgid ""
" case NAME_OPT:\n"
" }\n"
#. type: Plain text
-#: build/C/man3/getsubopt.3:194
+#: build/C/man3/getsubopt.3:200
#, no-wrap
msgid ""
" name = value;\n"
" break;\n"
#. type: Plain text
-#: build/C/man3/getsubopt.3:208
+#: build/C/man3/getsubopt.3:214
#, no-wrap
msgid ""
" default:\n"
" break;\n"
#. type: Plain text
-#: build/C/man3/getsubopt.3:213
+#: build/C/man3/getsubopt.3:219
#, no-wrap
msgid ""
" default:\n"
" }\n"
#. type: Plain text
-#: build/C/man3/getsubopt.3:220
+#: build/C/man3/getsubopt.3:226
#, no-wrap
msgid ""
" if (errfnd || argc == 1) {\n"
" }\n"
#. type: Plain text
-#: build/C/man3/getsubopt.3:222
+#: build/C/man3/getsubopt.3:228
#, no-wrap
msgid " /* Remainder of program... */\n"
msgstr " /* Remainder of program... */\n"
#. type: Plain text
-#: build/C/man3/getsubopt.3:228
+#: build/C/man3/getsubopt.3:234
msgid "B<getopt>(3)"
msgstr "B<getopt>(3)"
#. type: TH
-#: build/C/man3/malloc.3:30
+#: build/C/man3/malloc.3:33
#, no-wrap
msgid "MALLOC"
msgstr "MALLOC"
#. type: TH
-#: build/C/man3/malloc.3:30
+#: build/C/man3/malloc.3:33
#, no-wrap
-msgid "2012-05-10"
-msgstr "2012-05-10"
+msgid "2014-05-21"
+msgstr "2014-05-21"
#. type: Plain text
-#: build/C/man3/malloc.3:33
-#, fuzzy
-#| msgid "malloc, free, calloc, realloc - Allocate and free dynamic memory"
+#: build/C/man3/malloc.3:36
msgid "malloc, free, calloc, realloc - allocate and free dynamic memory"
msgstr "malloc, free, calloc, realloc - 動的なメモリの割り当てと解放を行う"
#. type: Plain text
-#: build/C/man3/malloc.3:41
+#: build/C/man3/malloc.3:44
#, no-wrap
msgid ""
"B<void *malloc(size_t >I<size>B<);>\n"
#. glibc does this:
#. type: Plain text
-#: build/C/man3/malloc.3:58
+#: build/C/man3/malloc.3:61
msgid ""
"The B<malloc>() function allocates I<size> bytes and returns a pointer to "
"the allocated memory. I<The memory is not initialized>. If I<size> is 0, "
"一意なポインタ値を返す。"
#. type: Plain text
-#: build/C/man3/malloc.3:74
+#: build/C/man3/malloc.3:77
msgid ""
"The B<free>() function frees the memory space pointed to by I<ptr>, which "
"must have been returned by a previous call to B<malloc>(), B<calloc>() or "
#. glibc does this:
#. type: Plain text
-#: build/C/man3/malloc.3:93
+#: build/C/man3/malloc.3:96
msgid ""
"The B<calloc>() function allocates memory for an array of I<nmemb> elements "
"of I<size> bytes each and returns a pointer to the allocated memory. The "
"ポインタ値を返す。"
#. type: Plain text
-#: build/C/man3/malloc.3:129
+#: build/C/man3/malloc.3:132
msgid ""
"The B<realloc>() function changes the size of the memory block pointed to "
"by I<ptr> to I<size> bytes. The contents will be unchanged in the range "
"from the start of the region up to the minimum of the old and new sizes. If "
"the new size is larger than the old size, the added memory will I<not> be "
-"initialized. If I<ptr> is NULL, then the call is equivalent to I<malloc"
-"(size)>, for all values of I<size>; if I<size> is equal to zero, and I<ptr> "
-"is not NULL, then the call is equivalent to I<free(ptr)>. Unless I<ptr> is "
-"NULL, it must have been returned by an earlier call to B<malloc>(), B<calloc>"
-"() or B<realloc>(). If the area pointed to was moved, a I<free(ptr)> is "
-"done."
+"initialized. If I<ptr> is NULL, then the call is equivalent to "
+"I<malloc(size)>, for all values of I<size>; if I<size> is equal to zero, and "
+"I<ptr> is not NULL, then the call is equivalent to I<free(ptr)>. Unless "
+"I<ptr> is NULL, it must have been returned by an earlier call to "
+"B<malloc>(), B<calloc>() or B<realloc>(). If the area pointed to was "
+"moved, a I<free(ptr)> is done."
msgstr ""
"B<realloc>() は、ポインタ I<ptr> が示すメモリブロックのサイズを I<size> バイ"
"ト\n"
"I<ptr> が指す領域が移動されていた場合は I<free(ptr)> が実行される。"
#. type: Plain text
-#: build/C/man3/malloc.3:149
+#: build/C/man3/malloc.3:152
msgid ""
"The B<malloc>() and B<calloc>() functions return a pointer to the "
-"allocated memory that is suitably aligned for any kind of variable. On "
+"allocated memory, which is suitably aligned for any built-in type. On "
"error, these functions return NULL. NULL may also be returned by a "
"successful call to B<malloc>() with a I<size> of zero, or by a successful "
"call to B<calloc>() with I<nmemb> or I<size> equal to zero."
msgstr ""
-"関数 B<calloc>() と B<malloc>() は、割り当てられたメモリへのポインタを返"
-"す。\n"
-"割り当てられたメモリは、あらゆる種類の変数に対応できるようにアラインメントさ"
-"れる。\n"
-"エラーの場合、これらの関数は NULL を返す。\n"
-"I<size> が 0 で呼び出した B<malloc>() や、I<nmemb> か I<size> が 0 で呼び出し"
-"た\n"
-"B<calloc>() が成功した場合にも NULL が返される。"
+"関数 B<calloc>() と B<malloc>() は、割り当てられたメモリへのポインタを返す。 "
+"割り当てられたメモリは、あらゆる組み込み型に対応できるようにアラインメントさ"
+"れる。 エラーの場合、これらの関数は NULL を返す。 I<size> が 0 で呼び出した "
+"B<malloc>() や、I<nmemb> か I<size> が 0 で呼び出した B<calloc>() が成功した"
+"場合にも NULL が返される。"
#. type: Plain text
-#: build/C/man3/malloc.3:153
+#: build/C/man3/malloc.3:156
msgid "The B<free>() function returns no value."
msgstr "B<free>() 関数は値を返さない。"
#. type: Plain text
-#: build/C/man3/malloc.3:168
+#: build/C/man3/malloc.3:171
msgid ""
"The B<realloc>() function returns a pointer to the newly allocated memory, "
-"which is suitably aligned for any kind of variable and may be different from "
+"which is suitably aligned for any built-in type and may be different from "
"I<ptr>, or NULL if the request fails. If I<size> was equal to 0, either "
"NULL or a pointer suitable to be passed to B<free>() is returned. If "
-"B<realloc>() fails the original block is left untouched; it is not freed or "
-"moved."
+"B<realloc>() fails, the original block is left untouched; it is not freed "
+"or moved."
msgstr ""
-"B<realloc>() 関数は新たに割り当てられたメモリへのポインタを返す。\n"
-"これはあらゆる種類の変数に対応できるようにアラインメントされており、\n"
-"I<ptr> とは異なることもある。割り当て要求に失敗した場合は NULL が返る。\n"
-"I<size> が 0 の場合には、NULL もしくは B<free>() に渡すことができるポインタが"
-"返る。\n"
-"B<realloc>() が失敗した場合には、元のブロックは変更されない。\n"
-"つまり、解放されたり移動されたりはしない。"
+"B<realloc>() 関数は新たに割り当てられたメモリへのポインタを返す。 これはあら"
+"ゆる組み込み型に対応できるようにアラインメントされており、 I<ptr> とは異なる"
+"こともある。割り当て要求に失敗した場合は NULL が返る。 I<size> が 0 の場合に"
+"は、NULL もしくは B<free>() に渡すことができるポインタが返る。 B<realloc>() "
+"が失敗した場合には、元のブロックは変更されない。 つまり、解放されたり移動され"
+"たりはしない。"
#. type: Plain text
-#: build/C/man3/malloc.3:170
+#: build/C/man3/malloc.3:173
msgid "C89, C99."
msgstr "C89, C99."
#. type: Plain text
-#: build/C/man3/malloc.3:186
-#, fuzzy
-#| msgid ""
-#| "By default, Linux follows an optimistic memory allocation strategy. This "
-#| "means that when B<malloc>() returns non-NULL there is no guarantee that "
-#| "the memory really is available. In case it turns out that the system is "
-#| "out of memory, one or more processes will be killed by the OOM killer. "
-#| "For more information, see the description of I</proc/sys/vm/"
-#| "overcommit_memory> and I</proc/sys/vm/oom_adj> in B<proc>(5), and the "
-#| "kernel source file I<Documentation/vm/overcommit-accounting>."
+#: build/C/man3/malloc.3:189
msgid ""
"By default, Linux follows an optimistic memory allocation strategy. This "
"means that when B<malloc>() returns non-NULL there is no guarantee that the "
"が保証されない。システムがメモリ不足状態になったとき、メモリ不足解決器 (OOM\n"
"killer) によって一つまたは複数のプロセスが削除される。\n"
"詳しい情報は、B<proc>(5) の I</proc/sys/vm/overcommit_memory> と\n"
-"I<proc/sys/vm/oom_adj>、およびカーネルのソースファイルの\n"
+"I<proc/sys/vm/oom_adj>、および Linux カーネルのソースファイルの\n"
"I<Documentation/vm/overcommit-accounting> を参照のこと。"
#. type: Plain text
-#: build/C/man3/malloc.3:207
+#: build/C/man3/malloc.3:210
msgid ""
"Normally, B<malloc>() allocates memory from the heap, and adjusts the size "
"of the heap as required, using B<sbrk>(2). When allocating blocks of memory "
"larger than B<MMAP_THRESHOLD> bytes, the glibc B<malloc>() implementation "
"allocates the memory as a private anonymous mapping using B<mmap>(2). "
-"B<MMAP_THRESHOLD> is 128 kB by default, but is adjustable using B<mallopt>"
-"(3). Allocations performed using B<mmap>(2) are unaffected by the "
-"B<RLIMIT_DATA> resource limit (see B<getrlimit>(2))."
+"B<MMAP_THRESHOLD> is 128 kB by default, but is adjustable using "
+"B<mallopt>(3). Allocations performed using B<mmap>(2) are unaffected by "
+"the B<RLIMIT_DATA> resource limit (see B<getrlimit>(2))."
msgstr ""
"通常、 B<malloc>() は、ヒープからメモリを割り当て、必要に応じてヒープのサイ"
"ズを B<sbrk>(2) を使って調節する。 B<MMAP_THRESHOLD> バイトよりも大きなメモ"
"ソース上限の影響を受けない (B<getrlimit>(2) 参照)。"
#. type: Plain text
-#: build/C/man3/malloc.3:225
+#: build/C/man3/malloc.3:228
msgid ""
"To avoid corruption in multithreaded applications, mutexes are used "
"internally to protect the memory-management data structures employed by "
"割り当てられた大きな領域で、それぞれ独自の mutex により管理されている。"
#. type: Plain text
-#: build/C/man3/malloc.3:243
+#: build/C/man3/malloc.3:246
msgid ""
"The UNIX 98 standard requires B<malloc>(), B<calloc>(), and B<realloc>() to "
"set I<errno> to B<ENOMEM> upon failure. Glibc assumes that this is done "
"いライブラリルーチンがあるかもしれない。"
#. type: Plain text
-#: build/C/man3/malloc.3:252
+#: build/C/man3/malloc.3:255
msgid ""
"Crashes in B<malloc>(), B<calloc>(), B<realloc>(), or B<free>() are almost "
"always related to heap corruption, such as overflowing an allocated chunk or "
"オーバーフローする、 同じポインタに二度 free する、などがこれにあたる。"
#. type: Plain text
-#: build/C/man3/malloc.3:259
+#: build/C/man3/malloc.3:261
msgid ""
-"Recent versions of Linux libc (later than 5.4.23) and glibc (2.x) include a "
-"B<malloc>() implementation which is tunable via environment variables. For "
-"details, see B<mallopt>(3)."
+"The B<malloc>() implementation is tunable via environment variables; see "
+"B<mallopt>(3) for details."
msgstr ""
-"Linux libc の新しいバージョン (5.4.23 より後) と glibc (2.x) には、\n"
-"環境変数で動作を調整できる B<malloc>() 実装が含まれている。\n"
-"詳細は B<mallopt>(3) を参照のこと。"
+"B<malloc> 実装は、環境変数で動作を調整できる。 詳細は B<mallopt>(3) を参照の"
+"こと。"
#. type: Plain text
-#: build/C/man3/malloc.3:283
+#: build/C/man3/malloc.3:285
msgid ""
-"B<brk>(2), B<mmap>(2), B<alloca>(3), B<malloc_get_state>(3), B<malloc_info>"
-"(3), B<malloc_trim>(3), B<malloc_usable_size>(3), B<mallopt>(3), B<mcheck>"
-"(3), B<mtrace>(3), B<posix_memalign>(3)"
+"B<brk>(2), B<mmap>(2), B<alloca>(3), B<malloc_get_state>(3), "
+"B<malloc_info>(3), B<malloc_trim>(3), B<malloc_usable_size>(3), "
+"B<mallopt>(3), B<mcheck>(3), B<mtrace>(3), B<posix_memalign>(3)"
msgstr ""
-"B<brk>(2), B<mmap>(2), B<alloca>(3), B<malloc_get_state>(3), B<malloc_info>"
-"(3), B<malloc_trim>(3), B<malloc_usable_size>(3), B<mallopt>(3), B<mcheck>"
-"(3), B<mtrace>(3), B<posix_memalign>(3)"
+"B<brk>(2), B<mmap>(2), B<alloca>(3), B<malloc_get_state>(3), "
+"B<malloc_info>(3), B<malloc_trim>(3), B<malloc_usable_size>(3), "
+"B<mallopt>(3), B<mcheck>(3), B<mtrace>(3), B<posix_memalign>(3)"
#. type: TH
#: build/C/man3/mblen.3:16
msgid "MBLEN"
msgstr "MBLEN"
-#. type: TH
-#: build/C/man3/mblen.3:16 build/C/man3/wctomb.3:16
-#, no-wrap
-msgid "1999-07-25"
-msgstr "1999-07-25"
-
#. type: Plain text
#: build/C/man3/mblen.3:19
msgid "mblen - determine number of bytes in next multibyte character"
msgstr "B<int mblen(const char *>I<s>B<, size_t >I<n>B<);>\n"
#. type: Plain text
-#: build/C/man3/mblen.3:38
+#: build/C/man3/mblen.3:43
msgid ""
-"If I<s> is not a NULL pointer, the B<mblen>() function inspects at most "
-"I<n> bytes of the multibyte string starting at I<s> and extracts the next "
-"complete multibyte character. It uses a static anonymous shift state only "
-"known to the B<mblen>() function. If the multibyte character is not the "
-"null wide character, it returns the number of bytes that were consumed from "
-"I<s>. If the multibyte character is the null wide character, it returns 0."
+"If I<s> is not NULL, the B<mblen>() function inspects at most I<n> bytes of "
+"the multibyte string starting at I<s> and extracts the next complete "
+"multibyte character. It uses a static anonymous shift state known only to "
+"the B<mblen>() function. If the multibyte character is not the null wide "
+"character, it returns the number of bytes that were consumed from I<s>. If "
+"the multibyte character is the null wide character, it returns 0."
msgstr ""
-"I<s> ã\81\8c NULL ã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\81§ã\81ªã\81\91ã\82\8cã\81°ã\80\81 B<mblen>() é\96¢æ\95°ã\81¯ I<s> ã\81\8bã\82\89å§\8bã\81¾ã\82\8bæ\9c\80大 "
-"I<n> バイトのマルチバイト文字列を検査して、 次の完全なマルチバイト文字を取り"
-"出す。これには B<mblen>() 関数のみが使用する静的で名前のないシフト状態が使用"
-"ã\81\95ã\82\8cã\82\8bã\80\82 ã\83\9eã\83«ã\83\81ã\83\90ã\82¤ã\83\88æ\96\87å\97ã\81\8cã\83\8aã\83«ã\83¯ã\82¤ã\83\89æ\96\87å\97ã\81§ã\81ªã\81\91ã\82\8cã\81° I<s> ã\81\8bã\82\89æ¶\88è²»ã\81\95ã\82\8cã\82\8b ã\83\90ã\82¤"
-"ã\83\88æ\95°ã\82\92è¿\94ã\81\99ã\80\82ã\83\9eã\83«ã\83\81ã\83\90ã\82¤ã\83\88æ\96\87å\97ã\81\8cã\83\8aルワイド文字ならば 0 を返す。"
+"I<s> ã\81\8c NULL ã\81§ã\81ªã\81\91ã\82\8cã\81°ã\80\81 B<mblen>() é\96¢æ\95°ã\81¯ I<s> ã\81\8bã\82\89å§\8bã\81¾ã\82\8bæ\9c\80大 I<n> ã\83\90ã\82¤ã\83\88"
+"のマルチバイト文字列を検査して、 次の完全なマルチバイト文字を取り出す。これに"
+"は B<mblen>() 関数のみが使用する静的で名前のないシフト状態が使用される。 マ"
+"ã\83«ã\83\81ã\83\90ã\82¤ã\83\88æ\96\87å\97ã\81\8cã\83\8cã\83«ã\83¯ã\82¤ã\83\89æ\96\87å\97ã\81§ã\81ªã\81\91ã\82\8cã\81° I<s> ã\81\8bã\82\89æ¶\88è²»ã\81\95ã\82\8cã\82\8b ã\83\90ã\82¤ã\83\88æ\95°ã\82\92è¿\94ã\81\99ã\80\82"
+"ã\83\9eã\83«ã\83\81ã\83\90ã\82¤ã\83\88æ\96\87å\97ã\81\8cã\83\8cルワイド文字ならば 0 を返す。"
#. type: Plain text
-#: build/C/man3/mblen.3:46
+#: build/C/man3/mblen.3:57
msgid ""
"If the I<n> bytes starting at I<s> do not contain a complete multibyte "
"character, B<mblen>() returns -1. This can happen even if I<n> is greater "
"ていると、 I<n> が I<MB_CUR_MAX> 以上の場合にも このようなことが起こりえる。"
#. type: Plain text
-#: build/C/man3/mblen.3:51
+#: build/C/man3/mblen.3:64
msgid ""
"If the multibyte string starting at I<s> contains an invalid multibyte "
"sequence before the next complete character, B<mblen>() also returns -1."
#. The Dinkumware doc and the Single UNIX specification say this, but
#. glibc doesn't implement this.
#. type: Plain text
-#: build/C/man3/mblen.3:60
+#: build/C/man3/mblen.3:75
msgid ""
-"If I<s> is a NULL pointer, the B<mblen>() function resets the shift state, "
-"only known to this function, to the initial state, and returns nonzero if "
-"the encoding has nontrivial shift state, or zero if the encoding is "
-"stateless."
+"If I<s> is NULL, the B<mblen>() function resets the shift state, known to "
+"only this function, to the initial state, and returns nonzero if the "
+"encoding has nontrivial shift state, or zero if the encoding is stateless."
msgstr ""
-"I<s> ã\81\8c NULL ã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\81ªã\82\89ã\81°ã\80\81 B<mblen>() é\96¢æ\95°ã\81¯ã\81\93ã\81®é\96¢æ\95°ã\81®ã\81¿ã\81\8c 使ç\94¨ã\81\99ã\82\8bã\82·ã\83\95"
-"ト状態を初期化状態に戻し、シフト状態を使用した文字符号の場合に はゼロ以外を、"
-"文字符号がシフト状態を持たない場合にはゼロを返す。"
+"I<s> ã\81\8c NULL ã\81ªã\82\89ã\81°ã\80\81 B<mblen>() é\96¢æ\95°ã\81¯ã\81\93ã\81®é\96¢æ\95°ã\81®ã\81¿ã\81\8c 使ç\94¨ã\81\99ã\82\8bã\82·ã\83\95ã\83\88ç\8a¶æ\85\8bã\82\92å\88\9d"
+"期化状態に戻し、シフト状態を使用した文字符号の場合に はゼロ以外を、文字符号が"
+"シフト状態を持たない場合にはゼロを返す。"
#. type: Plain text
-#: build/C/man3/mblen.3:70
+#: build/C/man3/mblen.3:87
msgid ""
"The B<mblen>() function returns the number of bytes parsed from the "
"multibyte sequence starting at I<s>, if a non-null wide character was "
"returns -1, if an invalid multibyte sequence was encountered or if it "
"couldn't parse a complete multibyte character."
msgstr ""
-"B<mblen>() é\96¢æ\95°ã\81¯ I<s> ã\81\8bã\82\89å§\8bã\81¾ã\82\8bã\83\9eã\83«ã\83\81ã\83\90ã\82¤ã\83\88å\88\97ã\82\92æ¤\9cæ\9f»ã\81\97ã\81¦ ã\83\8aルワイド文字以外"
-"ã\82\92確èª\8dã\81\97ã\81\9få ´å\90\88ã\81«ã\81¯ã\81\9dã\81®ã\83\90ã\82¤ã\83\88æ\95°ã\82\92è¿\94ã\81\99ã\80\82 ã\83\8aルワイド文字を確認した場合にはゼロを"
+"B<mblen>() é\96¢æ\95°ã\81¯ I<s> ã\81\8bã\82\89å§\8bã\81¾ã\82\8bã\83\9eã\83«ã\83\81ã\83\90ã\82¤ã\83\88å\88\97ã\82\92æ¤\9cæ\9f»ã\81\97ã\81¦ ã\83\8cルワイド文字以外"
+"ã\82\92確èª\8dã\81\97ã\81\9få ´å\90\88ã\81«ã\81¯ã\81\9dã\81®ã\83\90ã\82¤ã\83\88æ\95°ã\82\92è¿\94ã\81\99ã\80\82 ã\83\8cルワイド文字を確認した場合にはゼロを"
"返す。不正なマルチバイト列に 遭遇した場合や完全なマルチバイト文字を解析できな"
"かった場合には -1 を返す。"
#. type: Plain text
-#: build/C/man3/mblen.3:72 build/C/man3/mbstowcs.3:72 build/C/man3/mbtowc.3:80
-#: build/C/man3/wcstombs.3:72 build/C/man3/wctomb.3:68
+#: build/C/man3/mblen.3:92
+msgid "The B<mblen>() function is not thread-safe."
+msgstr "B<mblen>() 関数はスレッドセーフではない。"
+
+#. type: Plain text
+#: build/C/man3/mblen.3:94 build/C/man3/mbstowcs.3:96
+#: build/C/man3/mbtowc.3:115 build/C/man3/wcstombs.3:91
+#: build/C/man3/wctomb.3:91
msgid "C99."
msgstr "C99."
#. type: Plain text
-#: build/C/man3/mblen.3:79
+#: build/C/man3/mblen.3:101
msgid ""
"The behavior of B<mblen>() depends on the B<LC_CTYPE> category of the "
"current locale."
"B<mblen>() の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"
#. type: Plain text
-#: build/C/man3/mblen.3:84
+#: build/C/man3/mblen.3:106
msgid ""
"The function B<mbrlen>(3) provides a better interface to the same "
"functionality."
msgstr "B<mbrlen>(3) 関数は同じ機能のより良いインタフェースを提供する。"
#. type: Plain text
-#: build/C/man3/mblen.3:86
+#: build/C/man3/mblen.3:108
msgid "B<mbrlen>(3)"
msgstr "B<mbrlen>(3)"
#. type: TH
-#: build/C/man3/mbstowcs.3:16
+#: build/C/man3/mbstowcs.3:18
#, no-wrap
msgid "MBSTOWCS"
msgstr "MBSTOWCS"
#. type: TH
-#: build/C/man3/mbstowcs.3:16 build/C/man3/mbtowc.3:16
+#: build/C/man3/mbstowcs.3:18 build/C/man3/mbtowc.3:16
+#: build/C/man3/strtol.3:31 build/C/man3/strtoul.3:33
+#: build/C/man3/wcstombs.3:16 build/C/man3/wctomb.3:16
#, no-wrap
-msgid "2011-09-28"
-msgstr "2011-09-28"
+msgid "2014-03-18"
+msgstr "2014-03-18"
#. type: Plain text
-#: build/C/man3/mbstowcs.3:19
+#: build/C/man3/mbstowcs.3:21
msgid "mbstowcs - convert a multibyte string to a wide-character string"
msgstr "mbstowcs - マルチバイト文字列をワイド文字列に変換する"
#. type: Plain text
-#: build/C/man3/mbstowcs.3:24
+#: build/C/man3/mbstowcs.3:26
#, no-wrap
msgid "B<size_t mbstowcs(wchar_t *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
msgstr "B<size_t mbstowcs(wchar_t *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>\n"
#. type: Plain text
-#: build/C/man3/mbstowcs.3:35
+#: build/C/man3/mbstowcs.3:45
msgid ""
-"If I<dest> is not a NULL pointer, the B<mbstowcs>() function converts the "
-"multibyte string I<src> to a wide-character string starting at I<dest>. At "
-"most I<n> wide characters are written to I<dest>. The conversion starts in "
-"the initial state. The conversion can stop for three reasons:"
+"If I<dest> is not NULL, the B<mbstowcs>() function converts the multibyte "
+"string I<src> to a wide-character string starting at I<dest>. At most I<n> "
+"wide characters are written to I<dest>. The conversion starts in the "
+"initial state. The conversion can stop for three reasons:"
msgstr ""
-"I<dest> ã\81\8c NULL ã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\81§ã\81ªã\81\91ã\82\8cã\81° B<mbstowcs>() é\96¢æ\95°ã\81¯ ã\83\9eã\83«ã\83\81ã\83\90ã\82¤ã\83\88æ\96\87å\97"
-"列 I<*src> を I<dest> から始まるワイド文字列に 変換する。I<dest> には最大で "
-"I<n> 文字のワイド文字が 書き込まれる。変換は初期状態で開始され、 以下の三つの"
-"いずれかの条件で停止する:"
+"I<dest> ã\81\8c NULL ã\81§ã\81ªã\81\91ã\82\8cã\81° B<mbstowcs>() é\96¢æ\95°ã\81¯ ã\83\9eã\83«ã\83\81ã\83\90ã\82¤ã\83\88æ\96\87å\97å\88\97 I<*src> "
+"を I<dest> から始まるワイド文字列に 変換する。I<dest> には最大で I<n> 文字の"
+"ワイド文字が 書き込まれる。変換は初期状態で開始され、 以下の三つのいずれかの"
+"条件で停止する:"
#. type: IP
-#: build/C/man3/mbstowcs.3:35
+#: build/C/man3/mbstowcs.3:45
#, no-wrap
msgid "1."
msgstr "1."
#. type: Plain text
-#: build/C/man3/mbstowcs.3:40
+#: build/C/man3/mbstowcs.3:50
msgid ""
-"An invalid multibyte sequence has been encountered. In this case I<"
-"(size_t)\\ -1> is returned."
+"An invalid multibyte sequence has been encountered. In this case, "
+"I<(size_t)\\ -1> is returned."
msgstr "不正なマルチバイト列に遭遇した。この場合には I<(size_t)\\ -1> を返す。"
#. type: IP
-#: build/C/man3/mbstowcs.3:40
+#: build/C/man3/mbstowcs.3:50
#, no-wrap
msgid "2."
msgstr "2."
#. type: Plain text
-#: build/C/man3/mbstowcs.3:45
+#: build/C/man3/mbstowcs.3:58
msgid ""
"I<n> non-L\\(aq\\e0\\(aq wide characters have been stored at I<dest>. In "
-"this case the number of wide characters written to I<dest> is returned, but "
+"this case, the number of wide characters written to I<dest> is returned, but "
"the shift state at this point is lost."
msgstr ""
"I<n> 文字の L\\(aq\\e0\\(aq 以外のワイド文字を I<dest> に格納した場合。 この"
"る。"
#. type: IP
-#: build/C/man3/mbstowcs.3:45
+#: build/C/man3/mbstowcs.3:58
#, no-wrap
msgid "3."
msgstr "3."
#. type: Plain text
-#: build/C/man3/mbstowcs.3:50
+#: build/C/man3/mbstowcs.3:64
msgid ""
"The multibyte string has been completely converted, including the "
-"terminating null wide character (\\(aq\\e0\\(aq). In this case the number "
+"terminating null wide character (\\(aq\\e0\\(aq). In this case, the number "
"of wide characters written to I<dest>, excluding the terminating null wide "
"character, is returned."
msgstr ""
-"マルチバイト文字列が終端の NULL ワイド文字 (\\(aq\\e0\\(aq) まで含めて完全に "
-"変換された場合。この場合は終端の NULL ワイド文字を除いて I<dest> に書き込まれ"
-"た文字数を返す。"
+"マルチバイト文字列が終端のヌルワイド文字 (\\(aq\\e0\\(aq) まで含めて完全に 変"
+"換された場合。この場合は終端のヌルワイド文字を除いて I<dest> に書き込まれた文"
+"字数を返す。"
#. type: Plain text
-#: build/C/man3/mbstowcs.3:53
+#: build/C/man3/mbstowcs.3:70
msgid ""
"The programmer must ensure that there is room for at least I<n> wide "
"characters at I<dest>."
"があることを保証しなければならない。"
#. type: Plain text
-#: build/C/man3/mbstowcs.3:57
+#: build/C/man3/mbstowcs.3:78
msgid ""
"If I<dest> is NULL, I<n> is ignored, and the conversion proceeds as above, "
"except that the converted wide characters are not written out to memory, and "
"されたワイド文字はメモリに書き込まれず、変換先の上限 が存在しない。"
#. type: Plain text
-#: build/C/man3/mbstowcs.3:60
+#: build/C/man3/mbstowcs.3:84
msgid ""
"In order to avoid the case 2 above, the programmer should make sure I<n> is "
-"greater or equal to I<mbstowcs(NULL,src,0)+1>."
+"greater than or equal to I<mbstowcs(NULL,src,0)+1>."
msgstr ""
"上記の 2. の場合を避けるためにプログラマーは I<n> が I<mbstowcs(NULL,"
"src,0)+1> 以上であることを保証すべきである。"
#. type: Plain text
-#: build/C/man3/mbstowcs.3:70
+#: build/C/man3/mbstowcs.3:94
msgid ""
"The B<mbstowcs>() function returns the number of wide characters that make "
"up the converted part of the wide-character string, not including the "
"encountered, I<(size_t)\\ -1> is returned."
msgstr ""
"B<mbstowcs>() 関数はワイド文字列に変換完了したワイド文字の数を返す。 終端の"
-"ã\83\8aã\83«ã\83¯ã\82¤ã\83\89æ\96\87å\97ã\81¯å\90«ã\81¾ã\81ªã\81\84ã\80\82ä¸\8dæ£ã\81ªã\83\9eã\83«ã\83\81ã\83\90ã\82¤ã\83\88å\88\97ã\81«é\81é\81\87ã\81\97ã\81\9få ´å\90\88ã\81«ã\81¯ I<"
-"(size_t)\\ -1> を返す。"
+"ã\83\8cã\83«ã\83¯ã\82¤ã\83\89æ\96\87å\97ã\81¯å\90«ã\81¾ã\81ªã\81\84ã\80\82ä¸\8dæ£ã\81ªã\83\9eã\83«ã\83\81ã\83\90ã\82¤ã\83\88å\88\97ã\81«é\81é\81\87ã\81\97ã\81\9få ´å\90\88ã\81«ã\81¯ "
+"I<(size_t)\\ -1> を返す。"
#. type: Plain text
-#: build/C/man3/mbstowcs.3:79
+#: build/C/man3/mbstowcs.3:103
msgid ""
"The behavior of B<mbstowcs>() depends on the B<LC_CTYPE> category of the "
"current locale."
"B<mbstowcs>() の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"
#. type: Plain text
-#: build/C/man3/mbstowcs.3:84
+#: build/C/man3/mbstowcs.3:108
msgid ""
"The function B<mbsrtowcs>(3) provides a better interface to the same "
"functionality."
msgstr "B<mbsrtowcs>(3) 関数は同じ機能のより良いインターフェースを提供する。"
#. type: Plain text
-#: build/C/man3/mbstowcs.3:87
-#, fuzzy
-#| msgid "B<mbsrtowcs>(3), B<wcstombs(3)>"
-msgid "B<mbsrtowcs>(3), B<wcstombs>(3)"
-msgstr "B<mbsrtowcs>(3), B<wcstombs(3)>"
+#: build/C/man3/mbstowcs.3:113
+msgid ""
+"The program below illustrates the use of B<mbstowcs>(), as well as some of "
+"the wide character classification functions. An example run is the "
+"following:"
+msgstr ""
+"下記のプログラムは B<mbstowcs>() といくつかのワイド文字分類関数の使用方法を示"
+"したものである。実行例は以下のようになる。"
-#. type: TH
-#: build/C/man3/mbtowc.3:16
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:120
#, no-wrap
-msgid "MBTOWC"
-msgstr "MBTOWC"
+msgid ""
+"$ ./t_mbstowcs de_DE.UTF-8 Grüße!\n"
+"Length of source string (excluding terminator):\n"
+" 8 bytes\n"
+" 6 multibyte characters\n"
+msgstr ""
+"$ ./t_mbstowcs de_DE.UTF-8 Grüße!\n"
+"Length of source string (excluding terminator):\n"
+" 8 bytes\n"
+" 6 multibyte characters\n"
#. type: Plain text
-#: build/C/man3/mbtowc.3:19
-msgid "mbtowc - convert a multibyte sequence to a wide character"
-msgstr "mbtowc - マルチバイト列をワイド文字に変換する"
+#: build/C/man3/mbstowcs.3:128
+#, no-wrap
+msgid ""
+"Wide character string is: Grüße! (6 characters)\n"
+" G alpha upper\n"
+" r alpha lower\n"
+" ü alpha lower\n"
+" ß alpha lower\n"
+" e alpha lower\n"
+" ! !alpha\n"
+msgstr ""
+"Wide character string is: Grüße! (6 characters)\n"
+" G alpha upper\n"
+" r alpha lower\n"
+" ü alpha lower\n"
+" ß alpha lower\n"
+" e alpha lower\n"
+" ! !alpha\n"
-#. type: Plain text
-#: build/C/man3/mbtowc.3:24
+#. type: SS
+#: build/C/man3/mbstowcs.3:130 build/C/man3/strtol.3:248
#, no-wrap
-msgid "B<int mbtowc(wchar_t *>I<pwc>B<, const char *>I<s>B<, size_t >I<n>B<);>\n"
-msgstr "B<int mbtowc(wchar_t *>I<pwc>B<, const char *>I<s>B<, size_t >I<n>B<);>\n"
+msgid "Program source"
+msgstr "プログラムのソース"
#. type: Plain text
-#: build/C/man3/mbtowc.3:39
+#: build/C/man3/mbstowcs.3:137
+#, no-wrap
msgid ""
-"The main case for this function is when I<s> is not NULL and I<pwc> is not "
-"NULL. In this case, the B<mbtowc>() function inspects at most I<n> bytes "
-"of the multibyte string starting at I<s>, extracts the next complete "
-"multibyte character, converts it to a wide character and stores it at "
-"I<*pwc>. It updates an internal shift state only known to the mbtowc "
-"function. If I<s> does not point to a null byte (\\(aq\\e0\\(aq), it "
-"returns the number of bytes that were consumed from I<s>, otherwise it "
-"returns 0."
+"#include E<lt>locale.hE<gt>\n"
+"#include E<lt>wchar.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>string.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
msgstr ""
-"この関数が用いられる場合、通常 I<s> が NULL でなく I<pwc> も NULL でない。こ"
-"の場合は B<mbtowc>() 関数は I<s> から始まる 最大 I<n> バイトのマルチバイト文"
-"字列を検査して、次の完全なマルチバイト 文字を取り出し、それをワイド文字に変換"
-"して I<*pwc> に格納する。 同時に mbtowc 関数のみが使用する内部状態を更新す"
-"る。I<s> が NULL バイト (\\(aq\\e0\\(aq) 以外を指している場合は、I<s> から消"
-"費するバイト数を返す。 I<s> が NULL バイトを指している場合には 0 を返す。"
+"#include E<lt>locale.hE<gt>\n"
+"#include E<lt>wchar.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>string.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
#. type: Plain text
-#: build/C/man3/mbtowc.3:46
+#: build/C/man3/mbstowcs.3:144
+#, no-wrap
msgid ""
-"If the I<n> bytes starting at I<s> do not contain a complete multibyte "
-"character, or if they contain an invalid multibyte sequence, B<mbtowc>() "
-"returns -1. This can happen even if I<n> E<gt>= I<MB_CUR_MAX>, if the "
-"multibyte string contains redundant shift sequences."
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" size_t mbslen; /* Number of multibyte characters in source */\n"
+" wchar_t *wcs; /* Pointer to converted wide character string */\n"
+" wchar_t *wp;\n"
msgstr ""
-"I<s> から始まる I<n> バイトが完全なマルチバイト文字を含んで いない場合や不正"
-"なマルチバイト列を含んでいる場合には B<mbtowc>() は -1 を返す。マルチバイト"
-"文字列に冗長なシフトシーケンスが 含まれていると I<n> E<gt>= I<MB_CUR_MAX> の"
-"場合もこのようなことが 起こりえる。"
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" size_t mbslen; /* Number of multibyte characters in source */\n"
+" wchar_t *wcs; /* Pointer to converted wide character string */\n"
+" wchar_t *wp;\n"
#. type: Plain text
-#: build/C/man3/mbtowc.3:53
+#: build/C/man3/mbstowcs.3:149
+#, no-wrap
msgid ""
-"A different case is when I<s> is not NULL but I<pwc> is NULL. In this case "
-"the B<mbtowc>() function behaves as above, except that it does not store "
-"the converted wide character in memory."
+" if (argc E<lt> 3) {\n"
+" fprintf(stderr, \"Usage: %s E<lt>localeE<gt> E<lt>stringE<gt>\\en\", argv[0]);\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
msgstr ""
-"I<s> が NULL でなく I<pwc> が NULL の場合は B<mbtowc>() 関数は 上記と同様に"
-"動作するが、変換したワイド文字はメモリには書き込まれない。"
+" if (argc E<lt> 3) {\n"
+" fprintf(stderr, \"Usage: %s E<lt>localeE<gt> E<lt>stringE<gt>\\en\", argv[0]);\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:151
+#, no-wrap
+msgid " /* Apply the specified locale */\n"
+msgstr " /* Apply the specified locale */\n"
-#. The Dinkumware doc and the Single UNIX specification say this, but
-#. glibc doesn't implement this.
#. type: Plain text
-#: build/C/man3/mbtowc.3:66
+#: build/C/man3/mbstowcs.3:156
+#, no-wrap
msgid ""
-"A third case is when I<s> is NULL. In this case, I<pwc> and I<n> are "
-"ignored. The B<mbtowc>() function resets the shift state, only known to "
+" if (setlocale(LC_ALL, argv[1]) == NULL) {\n"
+" perror(\"setlocale\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+msgstr ""
+" if (setlocale(LC_ALL, argv[1]) == NULL) {\n"
+" perror(\"setlocale\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:159
+#, no-wrap
+msgid ""
+" /* Calculate the length required to hold argv[2] converted to\n"
+" a wide character string */\n"
+msgstr ""
+" /* Calculate the length required to hold argv[2] converted to\n"
+" a wide character string */\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:165
+#, no-wrap
+msgid ""
+" mbslen = mbstowcs(NULL, argv[2], 0);\n"
+" if (mbslen == (size_t) -1) {\n"
+" perror(\"mbstowcs\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+msgstr ""
+" mbslen = mbstowcs(NULL, argv[2], 0);\n"
+" if (mbslen == (size_t) -1) {\n"
+" perror(\"mbstowcs\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:167
+#, no-wrap
+msgid " /* Describe the source string to the user */\n"
+msgstr " /* Describe the source string to the user */\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:171
+#, no-wrap
+msgid ""
+" printf(\"Length of source string (excluding terminator):\\en\");\n"
+" printf(\" %zu bytes\\en\", strlen(argv[2]));\n"
+" printf(\" %zu multibyte characters\\en\\en\", mbslen);\n"
+msgstr ""
+" printf(\"Length of source string (excluding terminator):\\en\");\n"
+" printf(\" %zu bytes\\en\", strlen(argv[2]));\n"
+" printf(\" %zu multibyte characters\\en\\en\", mbslen);\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:174
+#, no-wrap
+msgid ""
+" /* Allocate wide character string of the desired size. Add 1\n"
+" to allow for terminating null wide character (L\\(aq\\e0\\(aq). */\n"
+msgstr ""
+" /* Allocate wide character string of the desired size. Add 1\n"
+" to allow for terminating null wide character (L\\(aq\\e0\\(aq). */\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:180
+#, no-wrap
+msgid ""
+" wcs = calloc(mbslen + 1, sizeof(wchar_t));\n"
+" if (wcs == NULL) {\n"
+" perror(\"calloc\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+msgstr ""
+" wcs = calloc(mbslen + 1, sizeof(wchar_t));\n"
+" if (wcs == NULL) {\n"
+" perror(\"calloc\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:183
+#, no-wrap
+msgid ""
+" /* Convert the multibyte character string in argv[2] to a\n"
+" wide character string */\n"
+msgstr ""
+" /* Convert the multibyte character string in argv[2] to a\n"
+" wide character string */\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:188
+#, no-wrap
+msgid ""
+" if (mbstowcs(wcs, argv[2], mbslen + 1) == (size_t) -1) {\n"
+" perror(\"mbstowcs\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+msgstr ""
+" if (mbstowcs(wcs, argv[2], mbslen + 1) == (size_t) -1) {\n"
+" perror(\"mbstowcs\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:191
+#, no-wrap
+msgid ""
+" printf(\"Wide character string is: %ls (%zu characters)\\en\",\n"
+" wcs, mbslen);\n"
+msgstr ""
+" printf(\"Wide character string is: %ls (%zu characters)\\en\",\n"
+" wcs, mbslen);\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:194
+#, no-wrap
+msgid ""
+" /* Now do some inspection of the classes of the characters in\n"
+" the wide character string */\n"
+msgstr ""
+" /* Now do some inspection of the classes of the characters in\n"
+" the wide character string */\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:197
+#, no-wrap
+msgid ""
+" for (wp = wcs; *wp != 0; wp++) {\n"
+" printf(\" %lc \", (wint_t) *wp);\n"
+msgstr ""
+" for (wp = wcs; *wp != 0; wp++) {\n"
+" printf(\" %lc \", (wint_t) *wp);\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:201
+#, no-wrap
+msgid ""
+" if (!iswalpha(*wp))\n"
+" printf(\"!\");\n"
+" printf(\"alpha \");\n"
+msgstr ""
+" if (!iswalpha(*wp))\n"
+" printf(\"!\");\n"
+" printf(\"alpha \");\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:205
+#, no-wrap
+msgid ""
+" if (iswalpha(*wp)) {\n"
+" if (iswupper(*wp))\n"
+" printf(\"upper \");\n"
+msgstr ""
+" if (iswalpha(*wp)) {\n"
+" if (iswupper(*wp))\n"
+" printf(\"upper \");\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:209
+#, no-wrap
+msgid ""
+" if (iswlower(*wp))\n"
+" printf(\"lower \");\n"
+" }\n"
+msgstr ""
+" if (iswlower(*wp))\n"
+" printf(\"lower \");\n"
+" }\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:212
+#, no-wrap
+msgid ""
+" putchar(\\(aq\\en\\(aq);\n"
+" }\n"
+msgstr ""
+" putchar(\\(aq\\en\\(aq);\n"
+" }\n"
+
+#. type: Plain text
+#: build/C/man3/mbstowcs.3:222
+msgid ""
+"B<mblen>(3), B<mbsrtowcs>(3), B<mbtowc>(3), B<wctomb>(3), B<wcstombs>(3)"
+msgstr ""
+"B<mblen>(3), B<mbsrtowcs>(3), B<mbtowc>(3), B<wctomb>(3), B<wcstombs>(3)"
+
+#. type: TH
+#: build/C/man3/mbtowc.3:16
+#, no-wrap
+msgid "MBTOWC"
+msgstr "MBTOWC"
+
+#. type: Plain text
+#: build/C/man3/mbtowc.3:19
+msgid "mbtowc - convert a multibyte sequence to a wide character"
+msgstr "mbtowc - マルチバイト列をワイド文字に変換する"
+
+#. type: Plain text
+#: build/C/man3/mbtowc.3:24
+#, no-wrap
+msgid "B<int mbtowc(wchar_t *>I<pwc>B<, const char *>I<s>B<, size_t >I<n>B<);>\n"
+msgstr "B<int mbtowc(wchar_t *>I<pwc>B<, const char *>I<s>B<, size_t >I<n>B<);>\n"
+
+#. type: Plain text
+#: build/C/man3/mbtowc.3:50
+msgid ""
+"The main case for this function is when I<s> is not NULL and I<pwc> is not "
+"NULL. In this case, the B<mbtowc>() function inspects at most I<n> bytes "
+"of the multibyte string starting at I<s>, extracts the next complete "
+"multibyte character, converts it to a wide character and stores it at "
+"I<*pwc>. It updates an internal shift state known only to the B<mbtowc>() "
+"function. If I<s> does not point to a null byte (\\(aq\\e0\\(aq), it "
+"returns the number of bytes that were consumed from I<s>, otherwise it "
+"returns 0."
+msgstr ""
+"この関数が用いられる場合、通常 I<s> が NULL でなく I<pwc> も NULL でない。こ"
+"の場合は B<mbtowc>() 関数は I<s> から始まる 最大 I<n> バイトのマルチバイト文"
+"字列を検査して、次の完全なマルチバイト 文字を取り出し、それをワイド文字に変換"
+"して I<*pwc> に格納する。 同時に mbtowc 関数のみが使用する内部状態を更新す"
+"る。I<s> がヌルバイト (\\(aq\\e0\\(aq) 以外を指している場合は、I<s> から消費"
+"するバイト数を返す。 I<s> がヌルバイトを指している場合には 0 を返す。"
+
+#. type: Plain text
+#: build/C/man3/mbtowc.3:64
+msgid ""
+"If the I<n> bytes starting at I<s> do not contain a complete multibyte "
+"character, or if they contain an invalid multibyte sequence, B<mbtowc>() "
+"returns -1. This can happen even if I<n> E<gt>= I<MB_CUR_MAX>, if the "
+"multibyte string contains redundant shift sequences."
+msgstr ""
+"I<s> から始まる I<n> バイトが完全なマルチバイト文字を含んで いない場合や不正"
+"なマルチバイト列を含んでいる場合には B<mbtowc>() は -1 を返す。マルチバイト"
+"文字列に冗長なシフトシーケンスが 含まれていると I<n> E<gt>= I<MB_CUR_MAX> の"
+"場合もこのようなことが 起こりえる。"
+
+#. type: Plain text
+#: build/C/man3/mbtowc.3:74
+msgid ""
+"A different case is when I<s> is not NULL but I<pwc> is NULL. In this case, "
+"the B<mbtowc>() function behaves as above, except that it does not store "
+"the converted wide character in memory."
+msgstr ""
+"I<s> が NULL でなく I<pwc> が NULL の場合は B<mbtowc>() 関数は 上記と同様に"
+"動作するが、変換したワイド文字はメモリには書き込まれない。"
+
+#. The Dinkumware doc and the Single UNIX specification say this, but
+#. glibc doesn't implement this.
+#. type: Plain text
+#: build/C/man3/mbtowc.3:93
+msgid ""
+"A third case is when I<s> is NULL. In this case, I<pwc> and I<n> are "
+"ignored. The B<mbtowc>() function resets the shift state, only known to "
"this function, to the initial state, and returns nonzero if the encoding has "
"nontrivial shift state, or zero if the encoding is stateless."
msgstr ""
"を返す。"
#. type: Plain text
-#: build/C/man3/mbtowc.3:72
+#: build/C/man3/mbtowc.3:105
msgid ""
"If I<s> is not NULL, the B<mbtowc>() function returns the number of "
"consumed bytes starting at I<s>, or 0 if I<s> points to a null byte, or -1 "
"upon failure."
msgstr ""
"I<s> が NULL でなければ B<mbtowc>() 関数は I<s> から消費した バイト数を、"
-"I<s> ã\81\8cã\83\8aル文字を指している場合はゼロを、 変換に失敗した場合は -1 を返す。"
+"I<s> ã\81\8cã\83\8cル文字を指している場合はゼロを、 変換に失敗した場合は -1 を返す。"
#. type: Plain text
-#: build/C/man3/mbtowc.3:78
+#: build/C/man3/mbtowc.3:113
msgid ""
"If I<s> is NULL, the B<mbtowc>() function returns nonzero if the encoding "
"has nontrivial shift state, or zero if the encoding is stateless."
"ゼロ以外を、状態によらなければゼロを返す。"
#. type: Plain text
-#: build/C/man3/mbtowc.3:87
+#: build/C/man3/mbtowc.3:122
msgid ""
"The behavior of B<mbtowc>() depends on the B<LC_CTYPE> category of the "
"current locale."
"B<mbtowc>() の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"
#. type: Plain text
-#: build/C/man3/mbtowc.3:93
+#: build/C/man3/mbtowc.3:128
msgid ""
"This function is not multithread safe. The function B<mbrtowc>(3) provides "
"a better interface to the same functionality."
"り良いインターフェースを提供する。"
#. type: Plain text
-#: build/C/man3/mbtowc.3:97
-msgid "B<MB_CUR_MAX>(3), B<mbrtowc>(3), B<mbstowcs>(3)"
-msgstr "B<MB_CUR_MAX>(3), B<mbrtowc>(3), B<mbstowcs>(3)"
+#: build/C/man3/mbtowc.3:135
+msgid ""
+"B<MB_CUR_MAX>(3), B<mblen>(3), B<mbrtowc>(3), B<mbstowcs>(3), B<wctomb>(3), "
+"B<wcstombs>(3)"
+msgstr ""
+"B<MB_CUR_MAX>(3), B<mblen>(3), B<mbrtowc>(3), B<mbstowcs>(3), B<wctomb>(3), "
+"B<wcstombs>(3)"
#. type: TH
#: build/C/man3/mkdtemp.3:26
msgid "MKDTEMP"
msgstr "MKDTEMP"
+#. type: TH
+#: build/C/man3/mkdtemp.3:26
+#, no-wrap
+msgid "2010-09-26"
+msgstr "2010-09-26"
+
#. type: Plain text
#: build/C/man3/mkdtemp.3:29
msgid "mkdtemp - create a unique temporary directory"
"返す。 失敗した場合は、NULL を返して、 I<errno> を適切に設定する。"
#. type: TP
-#: build/C/man3/mkdtemp.3:76 build/C/man3/mkstemp.3:147
-#: build/C/man3/mktemp.3:87 build/C/man3/random.3:133
-#: build/C/man3/random_r.3:103 build/C/man3/random_r.3:107
-#: build/C/man3/random_r.3:116 build/C/man3/setenv.3:101
-#: build/C/man3/strtol.3:127 build/C/man3/strtoul.3:130
+#: build/C/man3/mkdtemp.3:76 build/C/man3/mkstemp.3:166
+#: build/C/man3/mktemp.3:92 build/C/man3/random.3:141
+#: build/C/man3/random.3:148 build/C/man3/random_r.3:106
+#: build/C/man3/random_r.3:110 build/C/man3/random_r.3:119
+#: build/C/man3/setenv.3:120 build/C/man3/strtol.3:145
+#: build/C/man3/strtoul.3:149
#, no-wrap
msgid "B<EINVAL>"
msgstr "B<EINVAL>"
#. type: TH
#: build/C/man3/mkstemp.3:35
-#, fuzzy, no-wrap
-#| msgid "2012-04-21"
-msgid "2012-12-21"
-msgstr "2012-04-21"
+#, no-wrap
+msgid "2013-12-28"
+msgstr "2013-12-28"
#. type: Plain text
#: build/C/man3/mkstemp.3:38
#. type: Plain text
#: build/C/man3/mkstemp.3:99
-#, fuzzy
-#| msgid ""
-#| "The file is created with permissions 0600, that is, read plus write for "
-#| "owner only. (In glibc versions 2.06 and earlier, the file is created "
-#| "with permissions 0666, that is, read and write for all users.) The "
-#| "returned file descriptor provides both read and write access to the "
-#| "file. The file is opened with the B<open>(2) B<O_EXCL> flag, "
-#| "guaranteeing that the caller is the process that creates the file."
msgid ""
"The file is created with permissions 0600, that is, read plus write for "
"owner only. The returned file descriptor provides both read and write "
"access to the file. The file is opened with the B<open>(2) B<O_EXCL> flag, "
"guaranteeing that the caller is the process that creates the file."
msgstr ""
-"ファイルは許可モード 0600 で作成され、所有者のみが読み書き可能である (glibc "
-"バージョン 2.06 以前では、ファイルは許可モード 0666 で作成され、 全てのユーザ"
-"が読み書き可能であった)。 返されるファイルディスクリプタで、このファイルへの"
-"読み書き両方のアクセスが 可能である。 呼び出し者がそのファイルを作成するプロ"
-"セスであることを保証するために、 ファイルは B<open>(2) の B<O_EXCL> フラグ付"
-"きでオープンされる。"
+"ファイルは許可モード 0600 で作成され、所有者のみが読み書き可能である。返され"
+"るファイルディスクリプタで、このファイルへの読み書き両方のアクセスが 可能であ"
+"る。 呼び出し者がそのファイルを作成するプロセスであることを保証するために、 "
+"ファイルは B<open>(2) の B<O_EXCL> フラグ付きでオープンされる。"
+#. Reportedly, FreeBSD
#. type: Plain text
-#: build/C/man3/mkstemp.3:111
+#: build/C/man3/mkstemp.3:130
msgid ""
"The B<mkostemp>() function is like B<mkstemp>(), with the difference that "
-"flags as for B<open>(2) may be specified in I<flags> (e.g., B<O_APPEND>, "
-"B<O_SYNC>)."
+"the following bits\\(emwith the same meaning as for B<open>(2)\\(emmay be "
+"specified in I<flags>: B<O_APPEND>, B<O_CLOEXEC>, and B<O_SYNC>. Note that "
+"when creating the file, B<mkostemp>() includes the values B<O_RDWR>, "
+"B<O_CREAT>, and B<O_EXCL> in the I<flags> argument given to B<open>(2); "
+"including these values in the I<flags> argument given to B<mkostemp>() is "
+"unnecessary, and produces errors on some systems."
msgstr ""
-"B<mkostemp>() 関数は B<mkstemp>() と同様だが、B<open>(2) に渡される\n"
-"フラグ O_APPENDB<,> B<O_SYNC> など) を I<flags> で指定できる点が異なる"
+"B<mkostemp>() 関数は B<mkstemp>() と同様だが、 I<flags> に B<O_APPEND>, "
+"B<O_CLOEXEC>, B<O_SYNC> のビットを指定できる点が異なる (意味は B<open>(2) と"
+"同じである)。ファイルを作成する際、 B<mkostemp>() は B<open>(2) に渡す "
+"I<flags> 引き数に B<O_RDWR>, B<O_CREAT>, B<O_EXCL> を含める。そのため、 "
+"B<mkostemp>() に渡す I<flags> 引き数にこれらの値を含める必要はなく、システム"
+"によってはエラーが発生する点に注意すること。"
#. type: Plain text
-#: build/C/man3/mkstemp.3:127
+#: build/C/man3/mkstemp.3:146
msgid ""
"The B<mkstemps>() function is like B<mkstemp>(), except that the string in "
"I<template> contains a suffix of I<suffixlen> characters. Thus, I<template> "
"文字列 XXXXXX の部分は B<mkstemp>() により更新される。"
#. type: Plain text
-#: build/C/man3/mkstemp.3:136
+#: build/C/man3/mkstemp.3:155
msgid ""
"The B<mkostemps>() function is to B<mkstemps>() as B<mkostemp>() is to "
"B<mkstemp>()."
"B<mkostemp>() と B<mkstemp>() の関係と同じである。"
#. type: Plain text
-#: build/C/man3/mkstemp.3:142
+#: build/C/man3/mkstemp.3:161
msgid ""
"On success, these functions return the file descriptor of the temporary "
"file. On error, -1 is returned, and I<errno> is set appropriately."
"の場合は、-1 を返し、 I<errno> を適切に設定する。"
#. type: TP
-#: build/C/man3/mkstemp.3:143
+#: build/C/man3/mkstemp.3:162
#, no-wrap
msgid "B<EEXIST>"
msgstr "B<EEXIST>"
#. type: Plain text
-#: build/C/man3/mkstemp.3:147
+#: build/C/man3/mkstemp.3:166
msgid ""
"Could not create a unique temporary filename. Now the contents of "
"I<template> are undefined."
"すでに同じ名前を持つファイルが存在した。 I<template> の内容は不定である。"
#. type: Plain text
-#: build/C/man3/mkstemp.3:155
+#: build/C/man3/mkstemp.3:174
msgid ""
"For B<mkstemp>() and B<mkostemp>(): The last six characters of I<template> "
"were not XXXXXX; now I<template> is unchanged."
"この場合、I<template> は変更されない。"
#. type: Plain text
-#: build/C/man3/mkstemp.3:166
+#: build/C/man3/mkstemp.3:185
msgid ""
"For B<mkstemps>() and B<mkostemps>(): I<template> is less than I<(6 + "
"suffixlen)> characters long, or the last 6 characters before the suffix in "
"I<template> の接尾辞の直前の 6 文字が XXXXXX ではなかった。"
#. type: Plain text
-#: build/C/man3/mkstemp.3:169
+#: build/C/man3/mkstemp.3:188
msgid ""
-"These functions may also fail with any of the errors described for B<open>"
-"(2)."
+"These functions may also fail with any of the errors described for "
+"B<open>(2)."
msgstr ""
"これらの関数は B<open>(2) に書かれているエラーのいずれかで失敗することもあ"
"る。"
#. type: Plain text
-#: build/C/man3/mkstemp.3:176
+#: build/C/man3/mkstemp.3:195
msgid ""
-"B<mkostemp>() is available since glibc 2.7. B<mkstemps>() and B<mkostemps>"
-"() are available since glibc 2.11."
+"B<mkostemp>() is available since glibc 2.7. B<mkstemps>() and "
+"B<mkostemps>() are available since glibc 2.11."
msgstr ""
"B<mkostemp>() は glibc 2.7 以降で利用できる。\n"
"B<mkstemps>() と B<mkostemps>() は glibc 2.11 以降で利用できる。"
#. type: Plain text
-#: build/C/man3/mkstemp.3:179
+#: build/C/man3/mkstemp.3:198
msgid "B<mkstemp>(): 4.3BSD, POSIX.1-2001."
msgstr "B<mkstemp>(): 4.3BSD, POSIX.1-2001."
#. mkstemps() appears to be at least on the BSDs, Mac OS X, Solaris,
#. and Tru64.
#. type: Plain text
-#: build/C/man3/mkstemp.3:184
+#: build/C/man3/mkstemp.3:203
msgid "B<mkstemps>(): unstandardized, but appears on several other systems."
msgstr ""
"B<mkstemps>(): 標準化されていないが、他のいくつかのシステムにも存在する。"
#. type: Plain text
-#: build/C/man3/mkstemp.3:189
+#: build/C/man3/mkstemp.3:208
msgid "B<mkostemp>() and B<mkostemps>(): are glibc extensions."
msgstr "B<mkostemp>() と B<mkostemps>(): glibc による拡張。"
#. type: Plain text
-#: build/C/man3/mkstemp.3:196
-#, fuzzy
-#| msgid ""
-#| "The old behavior of creating a file with mode 0666 may be a security "
-#| "risk, especially since other UNIX flavors use 0600, and somebody might "
-#| "overlook this detail when porting programs."
+#: build/C/man3/mkstemp.3:215
msgid ""
"In glibc versions 2.06 and earlier, the file is created with permissions "
"0666, that is, read and write for all users. This old behavior may be a "
"might overlook this detail when porting programs. POSIX.1-2008 adds a "
"requirement that the file be created with mode 0600."
msgstr ""
-"許可モード 0666 でファイルを作成するという古い動作は、 セキュリティ上のリス"
-"ク\n"
-"になる場合がある。 特に他の UNIX では許可モードとして 0600 を使うため、\n"
-"プログラムを移植する際、この細かな違いを見落とす可能性があるからだ。"
+"glibc バージョン 2.06 以前では、ファイルは許可モード 0666 で作成され、全ての"
+"ユーザが読み書き可能であった。この古い動作は、 セキュリティ上のリスクになり得"
+"る。特に、他の UNIX では許可モードとして 0600 を使うため、プログラムを移植す"
+"る際、この細かな違いを見落とす可能性があるからだ。 POSIX.1-2008 では、ファイ"
+"ルを許可モード 0600 で作成することが必須要件として追加された。"
#. type: Plain text
-#: build/C/man3/mkstemp.3:207
+#: build/C/man3/mkstemp.3:226
msgid ""
"More generally, the POSIX specification of B<mkstemp>() does not say "
"anything about file modes, so the application should make sure its file mode "
"るか確認するべきである。"
#. type: Plain text
-#: build/C/man3/mkstemp.3:214
+#: build/C/man3/mkstemp.3:233
msgid ""
"The prototype for B<mktemp>() is in I<E<lt>unistd.hE<gt>> for libc4, libc5, "
"glibc1; glibc2 follows POSIX.1 and has the prototype in I<E<lt>stdlib."
"れている。"
#. type: Plain text
-#: build/C/man3/mkstemp.3:220
+#: build/C/man3/mkstemp.3:239
msgid "B<mkdtemp>(3), B<mktemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"
msgstr ""
"B<mkdtemp>(3), B<mktemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"
msgid "MKTEMP"
msgstr "MKTEMP"
+#. type: TH
+#: build/C/man3/mktemp.3:34
+#, no-wrap
+msgid "2014-02-27"
+msgstr "2014-02-27"
+
#. type: Plain text
#: build/C/man3/mktemp.3:37
msgid "mktemp - make a unique temporary filename"
" !(_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600)\n"
#. type: Plain text
-#: build/C/man3/mktemp.3:77
+#: build/C/man3/mktemp.3:69
+msgid "I<Never use this function>; see NOTES."
+msgstr "I<決してこの関数は使用しないこと>。「注意」を参照。"
+
+#. type: Plain text
+#: build/C/man3/mktemp.3:80
msgid ""
"The B<mktemp>() function generates a unique temporary filename from "
"I<template>. The last six characters of I<template> must be XXXXXX and "
"るように しなければならない。"
#. type: Plain text
-#: build/C/man3/mktemp.3:86
+#: build/C/man3/mktemp.3:91
msgid ""
"The B<mktemp>() function always returns I<template>. If a unique name was "
"created, the last six bytes of I<template> will have been modified in such a "
"way that the resulting name is unique (i.e., does not exist already) If a "
-"unique name could not be created, I<template> is made an empty string."
+"unique name could not be created, I<template> is made an empty string, and "
+"I<errno> is set to indicate the error."
msgstr ""
"関数 B<mktemp>() は常に I<template> を戻す。 一意な名前が作成された場合、 "
"I<template> の最後の 6 バイトに 他と重ならない名前 (それまでに出ていない名"
"前) になるような値が格納される。 一意な名前が作成できなかった場合には、 "
-"I<template> には空文字列がセットされる。"
+"I<template> には空文字列がセットされ、 I<errno> にエラーを示す値がセットされ"
+"る。"
#. type: Plain text
-#: build/C/man3/mktemp.3:90
+#: build/C/man3/mktemp.3:95
msgid "The last six characters of I<template> were not XXXXXX."
msgstr "引数 I<template> で指示された文字列の後6文字が XXXXXX でない。"
#. type: Plain text
-#: build/C/man3/mktemp.3:94
+#: build/C/man3/mktemp.3:99
msgid ""
"4.3BSD, POSIX.1-2001. POSIX.1-2008 removes the specification of B<mktemp>()."
msgstr ""
"る。"
#. type: Plain text
-#: build/C/man3/mktemp.3:100
+#: build/C/man3/mktemp.3:105
msgid ""
"The prototype is in I<E<lt>unistd.hE<gt>> for libc4, libc5, glibc1; glibc2 "
"follows the Single UNIX Specification and has the prototype in I<E<lt>stdlib."
"まれている。"
#. type: SH
-#: build/C/man3/mktemp.3:100 build/C/man3/rpmatch.3:92
-#: build/C/man3/setenv.3:123
+#: build/C/man3/mktemp.3:105 build/C/man3/random.3:189
+#: build/C/man3/rpmatch.3:104 build/C/man3/setenv.3:144
#, no-wrap
msgid "BUGS"
msgstr "バグ"
#. type: Plain text
-#: build/C/man3/mktemp.3:113
+#: build/C/man3/mktemp.3:118
msgid ""
"Never use B<mktemp>(). Some implementations follow 4.3BSD and replace "
"XXXXXX by the current process ID and a single letter, so that at most 26 "
"ことで避けられる。"
#. type: Plain text
-#: build/C/man3/mktemp.3:118
+#: build/C/man3/mktemp.3:123
msgid "B<mkstemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"
msgstr "B<mkstemp>(3), B<tempnam>(3), B<tmpfile>(3), B<tmpnam>(3)"
msgstr "B<on_exit>(): _BSD_SOURCE || _SVID_SOURCE"
#. type: Plain text
-#: build/C/man3/on_exit.3:59
+#: build/C/man3/on_exit.3:66
msgid ""
"The B<on_exit>() function registers the given I<function> to be called at "
"normal process termination, whether via B<exit>(3) or via return from the "
"I<arg> 引数が渡される。"
#. type: Plain text
-#: build/C/man3/on_exit.3:74
+#: build/C/man3/on_exit.3:81
msgid ""
"The B<on_exit>() function returns the value 0 if successful; otherwise it "
"returns a nonzero value."
msgstr "B<on_exit>() 関数は、成功したら 0 を、そうでなければ 0 以外を返す。"
#. type: Plain text
-#: build/C/man3/on_exit.3:81
+#: build/C/man3/on_exit.3:88
msgid ""
"This function comes from SunOS 4, but is also present in libc4, libc5 and "
"glibc. It no longer occurs in Solaris (SunOS 5). Avoid this function, and "
"B<atexit>(3) を使うこと。"
#. type: Plain text
-#: build/C/man3/on_exit.3:85
+#: build/C/man3/on_exit.3:92
msgid "B<_exit>(2), B<atexit>(3), B<exit>(3)"
msgstr "B<_exit>(2), B<atexit>(3), B<exit>(3)"
msgid "PUTENV"
msgstr "PUTENV"
+#. type: TH
+#: build/C/man3/putenv.3:36
+#, no-wrap
+msgid "2013-04-19"
+msgstr "2013-04-19"
+
#. type: Plain text
#: build/C/man3/putenv.3:39
msgid "putenv - change or add an environment variable"
"文字列を変更すると環境も変更される。"
#. type: Plain text
-#: build/C/man3/putenv.3:72
+#: build/C/man3/putenv.3:75
msgid ""
"The B<putenv>() function returns zero on success, or nonzero if an error "
-"occurs."
+"occurs. In the event of an error, I<errno> is set to indicate the cause."
msgstr ""
-"B<putenv>() 関数は、成功した場合 0 を、 エラーが発生した場合 0 以外を返す。"
+"B<putenv>() 関数は、成功すると 0 を返し、エラーの場合は 0 以外の値を返す。エ"
+"ラーが発生した場合、 I<errno> に原因を示す値が設定される。"
#. type: TP
-#: build/C/man3/putenv.3:73 build/C/man3/setenv.3:106
+#: build/C/man3/putenv.3:76 build/C/man3/setenv.3:125
#, no-wrap
msgid "B<ENOMEM>"
msgstr "B<ENOMEM>"
#. type: Plain text
-#: build/C/man3/putenv.3:76
+#: build/C/man3/putenv.3:79
msgid "Insufficient space to allocate new environment."
msgstr "新しい環境を割り当てるのに十分な空きがない。"
#. type: Plain text
-#: build/C/man3/putenv.3:78
+#: build/C/man3/putenv.3:81
msgid "SVr4, POSIX.1-2001, 4.3BSD."
msgstr "SVr4, POSIX.1-2001, 4.3BSD."
#. type: Plain text
-#: build/C/man3/putenv.3:83
+#: build/C/man3/putenv.3:86
msgid ""
"The B<putenv>() function is not required to be reentrant, and the one in "
"libc4, libc5 and glibc 2.0 is not, but the glibc 2.1 version is."
"glibc 2.0 ではリエントラントではない。 glibc 2.1 ではリエントラントである。"
#. type: Plain text
-#: build/C/man3/putenv.3:96
+#: build/C/man3/putenv.3:99
msgid ""
"Description for libc4, libc5, glibc: If the argument I<string> is of the "
"form I<name>, and does not contain an \\(aq=\\(aq character, then the "
"れる。 環境変数そのものに割り当てられた古い記憶領域が解放されることはない。"
#. type: Plain text
-#: build/C/man3/putenv.3:112
+#: build/C/man3/putenv.3:115
msgid ""
"The libc4 and libc5 and glibc 2.1.2 versions conform to SUSv2: the pointer "
"I<string> given to B<putenv>() is used. In particular, this string becomes "
"正された。"
#. type: Plain text
-#: build/C/man3/putenv.3:114
+#: build/C/man3/putenv.3:117
msgid "The 4.4BSD version, like glibc 2.0, uses a copy."
msgstr "4.4BSD バージョンでは、glibc 2.0 と同様にコピーを使う。"
#. type: Plain text
-#: build/C/man3/putenv.3:116
+#: build/C/man3/putenv.3:119
msgid "SUSv2 removes the I<const> from the prototype, and so does glibc 2.1.3."
msgstr ""
"SUSv2 ではプロトタイプから I<const> が取り除かれており、 glibc 2.1.3 もそのよ"
"うになっている。"
#. type: Plain text
-#: build/C/man3/putenv.3:122
+#: build/C/man3/putenv.3:125
msgid ""
"B<clearenv>(3), B<getenv>(3), B<setenv>(3), B<unsetenv>(3), B<environ>(7)"
msgstr ""
msgid "QECVT"
msgstr "QECVT"
+#. type: TH
+#: build/C/man3/qecvt.3:28
+#, no-wrap
+msgid "2014-03-11"
+msgstr "2014-03-11"
+
#. type: Plain text
#: build/C/man3/qecvt.3:31
msgid "qecvt, qfcvt, qgcvt - convert a floating-point number to a string"
msgstr "B<qecvt>(), B<qfcvt>(), B<qgcvt>(): _SVID_SOURCE"
#. type: Plain text
-#: build/C/man3/qecvt.3:72
+#: build/C/man3/qecvt.3:85
msgid ""
"The functions B<qecvt>(), B<qfcvt>() and B<qgcvt>() are identical to "
"B<ecvt>(3), B<fcvt>(3) and B<gcvt>(3) respectively, except that they use a "
"I<long double> argument I<number>. See B<ecvt>(3) and B<gcvt>(3)."
msgstr ""
-"関数 B<qecvt>(), B<qfcvt>(), B<qgcvt>() は、それぞれ B<ecvt>(3), B<fcvt>"
-"(3), B<gcvt>(3) と同じである。 引き数 I<number> が I<long double> 型である点"
-"だけが異なる。"
+"関数 B<qecvt>(), B<qfcvt>(), B<qgcvt>() は、それぞれ B<ecvt>(3), "
+"B<fcvt>(3), B<gcvt>(3) と同じである。 引き数 I<number> が I<long double> 型"
+"である点だけが異なる。"
+
+#. type: Plain text
+#: build/C/man3/qecvt.3:92
+msgid "The B<qecvt>() and B<qfcvt>() functions are not thread-safe."
+msgstr "関数 B<qecvt>() と B<qfcvt>() はスレッドセーフではない。"
+
+#. type: Plain text
+#: build/C/man3/qecvt.3:96
+msgid "The B<qgcvt>() function is thread-safe."
+msgstr "関数 B<qgcvt>() はスレッドセーフである。"
#. type: Plain text
-#: build/C/man3/qecvt.3:78
+#: build/C/man3/qecvt.3:102
msgid ""
"SVr4. Not seen in most common UNIX implementations, but occurs in SunOS. "
"Not supported by libc4 and libc5. Supported by glibc."
"る。"
#. type: Plain text
-#: build/C/man3/qecvt.3:88
+#: build/C/man3/qecvt.3:107
+msgid "These functions are obsolete. Instead, B<snprintf>(3) is recommended."
+msgstr "これらの関数は廃止された。代わりに B<snprintf>(3) の使用を推奨する。"
+
+#. type: Plain text
+#: build/C/man3/qecvt.3:112
msgid "B<ecvt>(3), B<ecvt_r>(3), B<gcvt>(3), B<sprintf>(3)"
msgstr "B<ecvt>(3), B<ecvt_r>(3), B<gcvt>(3), B<sprintf>(3)"
#. type: TH
#: build/C/man3/rand.3:41
#, no-wrap
-msgid "2010-10-01"
-msgstr "2010-10-01"
+msgid "2014-01-18"
+msgstr "2014-01-18"
#. type: Plain text
#: build/C/man3/rand.3:44
"must be made explicit; this can be done using the reentrant function "
"B<rand_r>()."
msgstr ""
-"B<rand>() 関数はリ再入可能 (reentrant) ではない、つまりスレッド・セーフではな"
+"B<rand>() 関数は再入可能 (reentrant) ではない、つまりスレッド・セーフではな"
"い。\n"
"この関数には隠し状態があり、呼び出される度にこの隠し状態が変更されるからであ"
"る。\n"
#: build/C/man3/rand.3:180
#, no-wrap
msgid ""
-"void mysrand(unsigned seed) {\n"
+"void mysrand(unsigned int seed) {\n"
" next = seed;\n"
"}\n"
msgstr ""
-"void mysrand(unsigned seed) {\n"
+"void mysrand(unsigned int seed) {\n"
" next = seed;\n"
"}\n"
"with a value of 1."
msgstr ""
"B<srandom>() 関数は、 B<random>() で返される疑似乱数整数系列の種を設定す"
-"る。 そのためには新しい種を引数にして B<srandom>() を呼べばよい。 B<random>"
-"() で生成される系列は、 引数に同じ種の値を用いて B<srandom>() を呼ぶことで"
-"再現可能である。 種の値が与えられない場合には B<random>() 関数は、自動的に "
-"1 を種に設定する。"
+"る。 そのためには新しい種を引数にして B<srandom>() を呼べばよい。 "
+"B<random>() で生成される系列は、 引数に同じ種の値を用いて B<srandom>() を呼"
+"ぶことで再現可能である。 種の値が与えられない場合には B<random>() 関数は、自"
+"動的に 1 を種に設定する。"
#. type: Plain text
#: build/C/man3/random.3:102
"されているか、 以前に呼び出した B<setstate>() の結果でなければならない。"
#. type: Plain text
-#: build/C/man3/random.3:132
+#: build/C/man3/random.3:126
msgid ""
"The B<random>() function returns a value between 0 and B<RAND_MAX>. The "
-"B<srandom>() function returns no value. The B<initstate>() function "
-"returns a pointer to the previous state array. The B<setstate>() function "
-"returns a pointer to the previous state array, or NULL on error."
+"B<srandom>() function returns no value."
msgstr ""
-"B<random>() 関数は 0 と B<RAND_MAX> の間の値を返す。 B<srandom>() 関数は値"
-"を返さない。 B<initstate>() 関数は直前の状態配列へのポインタを返す。 "
-"B<setstate>() 関数は直前の状態配列へのポインタを返し、 エラーの場合は NULL "
-"を返す。"
+"関数 B<random>() と B<rand_r>() は 0 以上 B<RAND_MAX> 以下の数を返す。\n"
+"関数 B<srandom>() は値を返さない。"
+
+#. type: Plain text
+#: build/C/man3/random.3:133
+msgid ""
+"The B<initstate>() function returns a pointer to the previous state array. "
+"On error, I<errno> is set to indicate the cause."
+msgstr ""
+"関数 B<initstate>() は、変更前の状態配列へのポインタを返す。エラーの場合、 "
+"I<errno> に原因を示す値が設定される。"
+
+#. type: Plain text
+#: build/C/man3/random.3:140
+msgid ""
+"On success, B<setstate>() returns a pointer to the previous state array. "
+"On error, it returns NULL, with I<errno> set to indicate the cause of the "
+"error."
+msgstr ""
+"関数 B<setstate>() は、成功すると 0 を返す。 エラーの場合、-1 を返し、 "
+"I<errno> にエラーの原因を示す値が設定される。"
+
+#. type: Plain text
+#: build/C/man3/random.3:148
+msgid "The I<state> argument given to B<setstate>() was NULL."
+msgstr "B<setstate>() の引き数 I<state> が NULL であった。"
#. type: Plain text
-#: build/C/man3/random.3:137
+#: build/C/man3/random.3:152
msgid "A state array of less than 8 bytes was specified to B<initstate>()."
msgstr "B<initstate>() で8バイトよりも小さい状態配列を指定した。"
#. type: Plain text
-#: build/C/man3/random.3:139 build/C/man3/setenv.3:111
+#: build/C/man3/random.3:161
+msgid ""
+"The B<random>(), B<srandom>(), B<initstate>(), and B<setstate>() functions "
+"are thread-safe."
+msgstr ""
+"関数 B<random>(), B<srandom>(), B<initstate>(), B<setstate>() はスレッドセー"
+"フである。"
+
+#. type: Plain text
+#: build/C/man3/random.3:163 build/C/man3/setenv.3:130
msgid "4.3BSD, POSIX.1-2001."
msgstr "4.3BSD, POSIX.1-2001."
#. type: Plain text
-#: build/C/man3/random.3:145
+#: build/C/man3/random.3:169
msgid ""
"Current \"optimal\" values for the size of the state array I<n> are 8, 32, "
"64, 128, and 256 bytes; other amounts will be rounded down to the nearest "
"になる。 8 バイト未満の量を指定した場合にはエラーの原因となる。"
#. type: Plain text
-#: build/C/man3/random.3:152
+#: build/C/man3/random.3:176
msgid ""
"This function should not be used in cases where multiple threads use "
"B<random>() and the behavior should be reproducible. Use B<random_r>(3) "
"ない。 その場合には B<random_r>(3) を使うこと。"
#. type: Plain text
-#: build/C/man3/random.3:159
+#: build/C/man3/random.3:183
msgid ""
"Random-number generation is a complex topic. I<Numerical Recipes in C: The "
"Art of Scientific Computing> (William H. Press, Brian P. Flannery, Saul A. "
"展開されている。"
#. type: Plain text
-#: build/C/man3/random.3:165
+#: build/C/man3/random.3:189
msgid ""
"For a more theoretical discussion which also covers many practical issues in "
"depth, see Chapter 3 (Random Numbers) in Donald E. Knuth's I<The Art of "
"Massachusetts: Addison-Wesley Publishing Company, 1981 の第 3 章 (乱数) を見"
"よ。ここでは、 たくさんの実用的な話題についても深く網羅されている。"
+#. http://sourceware.org/bugzilla/show_bug.cgi?id=15380
+#. type: Plain text
+#: build/C/man3/random.3:197
+msgid ""
+"According to POSIX, B<initstate>() should return NULL on error. In the "
+"glibc implementation, I<errno> is (as specified) set on error, but the "
+"function does not return NULL."
+msgstr ""
+"POSIX では、エラー時に B<initstate>() は NULL を返すべきとされている。 glibc "
+"の実装では、エラー時に I<errno> は仕様通りに設定されるが、関数の返り値は "
+"NULL ではない。"
+
#. type: Plain text
-#: build/C/man3/random.3:170
+#: build/C/man3/random.3:202
msgid "B<drand48>(3), B<rand>(3), B<random_r>(3), B<srand>(3)"
msgstr "B<drand48>(3), B<rand>(3), B<random_r>(3), B<srand>(3)"
msgid "RANDOM_R"
msgstr "RANDOM_R"
-#. type: TH
-#: build/C/man3/random_r.3:26
-#, no-wrap
-msgid "2008-03-07"
-msgstr "2008-03-07"
-
#. type: Plain text
#: build/C/man3/random_r.3:30
msgid ""
"を変更するのではなく、 I<buf> が指すオブジェクト内の状態を変更する。"
#. type: Plain text
-#: build/C/man3/random_r.3:102
-msgid "All of these functions return 0 on success, or -1 on error."
-msgstr "これらの関数は、成功すると 0 を返し、 エラーの場合は -1 を返す。"
+#: build/C/man3/random_r.3:105
+msgid ""
+"All of these functions return 0 on success. On error, -1 is returned, with "
+"I<errno> set to indicate the cause of the error."
+msgstr ""
+"これらの関数はすべて、成功すると 0 を返す。 エラーの場合、-1 を返し、 "
+"I<errno> にエラーの原因を示す値がセットされる。"
#. type: Plain text
-#: build/C/man3/random_r.3:107
+#: build/C/man3/random_r.3:110
msgid "A state array of less than 8 bytes was specified to B<initstate_r>()."
msgstr "8 バイトより小さい状態配列が B<initstate_r>() に指定された。"
#. type: Plain text
-#: build/C/man3/random_r.3:116
+#: build/C/man3/random_r.3:119
msgid "The I<statebuf> or I<buf> argument to B<setstate_r>() was NULL."
msgstr "B<setstate_r>() の引き数 I<statebuf> か I<buf> が NULL であった。"
#. type: Plain text
-#: build/C/man3/random_r.3:125
+#: build/C/man3/random_r.3:128
msgid "The I<buf> or I<result> argument to B<random_r>() was NULL."
msgstr "B<random_r>() の引き数 I<buf> か I<result> が NULL であった。"
+#. type: Plain text
+#: build/C/man3/random_r.3:137
+msgid ""
+"The B<random_r>(), B<srandom_r>(), B<initstate_r>(), and B<setstate_r>() "
+"functions are thread-safe."
+msgstr ""
+"関数 B<random_r>(), B<srandom_r>(), B<initstate_r>(), B<setstate_r>() はス"
+"レッドセーフである。"
+
#. These functions appear to be on Tru64, but don't seem to be on
#. Solaris, HP-UX, or FreeBSD.
#. type: Plain text
-#: build/C/man3/random_r.3:129
+#: build/C/man3/random_r.3:141
msgid "These functions are nonstandard glibc extensions."
msgstr "これらの関数は非標準で glibc による拡張である。"
"(I18N) に対応している。"
#. type: Plain text
-#: build/C/man3/rpmatch.3:56
+#: build/C/man3/rpmatch.3:57
msgid ""
"I<response> should be a null-terminated string containing a user-supplied "
"response, perhaps obtained with B<fgets>(3) or B<getline>(3)."
msgstr ""
-"I<response> にはユーザからの応答を格納した NULL 終端文字列が入っている必要が"
-"ã\81\82ã\82\8bã\80\82 ã\81\9fã\81\84ã\81¦ã\81\84ã\81¯ã\80\81 B<fgets>(3) ã\82\84 B<getline>(3) ã\81§å\8f\96ã\82\8aè¾¼ã\82\93ã\81 ã\82\82ã\81®ã\81§ã\81\82ã\82\8dã\81\86ã\80\82"
+"I<response> にはユーザからの応答を格納したヌル終端文字列が入っている必要があ"
+"る。 たいていは、 B<fgets>(3) や B<getline>(3) で取り込んだものであろう。"
#. type: Plain text
-#: build/C/man3/rpmatch.3:62
+#: build/C/man3/rpmatch.3:67
msgid ""
"The user's language preference is taken into account per the environment "
"variables B<LANG>, B<LC_MESSAGES>, and B<LC_ALL>, if the program has called "
"る。"
#. type: Plain text
-#: build/C/man3/rpmatch.3:66
+#: build/C/man3/rpmatch.3:73
msgid ""
"Regardless of the locale, responses matching B<^[Yy]> are always accepted as "
"affirmative, and those matching B<^[Nn]> are always accepted as negative."
msgstr ""
-"ロケールに関わらず、B<^[Yy]> にマッチする応答は常に肯定だと解釈され、 B<^[Nn]"
-"> にマッチする応答は常に否定だと解釈される。"
+"ロケールに関わらず、B<^[Yy]> にマッチする応答は常に肯定だと解釈され、 "
+"B<^[Nn]> にマッチする応答は常に否定だと解釈される。"
#. type: Plain text
-#: build/C/man3/rpmatch.3:73
+#: build/C/man3/rpmatch.3:82
msgid ""
"After examining I<response>, B<rpmatch>() returns 0 for a recognized "
"negative response (\"no\"), 1 for a recognized positive response (\"yes\"), "
"I<response> の値を解釈できなかった場合は -1 を返す。"
#. type: Plain text
-#: build/C/man3/rpmatch.3:77
+#: build/C/man3/rpmatch.3:86
msgid ""
"A return value of -1 may indicate either an invalid input, or some other "
"error. It is incorrect to only test if the return value is nonzero."
"を意味する。返り値が 0 以外かどうかを確認するだけでは 十分ではない。"
#. type: Plain text
-#: build/C/man3/rpmatch.3:87
+#: build/C/man3/rpmatch.3:99
msgid ""
"B<rpmatch>() can fail for any of the reasons that B<regcomp>(3) or "
"B<regexec>(3) can fail; the cause of the error is not available from "
#. It is available on at least AIX 5.1 and FreeBSD 6.0.
#. type: Plain text
-#: build/C/man3/rpmatch.3:92
+#: build/C/man3/rpmatch.3:104
msgid ""
"B<rpmatch>() is not required by any standard, but is available on a few "
"other systems."
"ステムもいくつかは存在する。"
#. type: Plain text
-#: build/C/man3/rpmatch.3:104
+#: build/C/man3/rpmatch.3:119
msgid ""
"The B<rpmatch>() implementation looks at only the first character of "
"I<response>. As a consequence, \"nyes\" returns 0, and \"ynever; not in a "
"B<^([nN]|no|NO)$> で解釈するなど。"
#. type: Plain text
-#: build/C/man3/rpmatch.3:108
+#: build/C/man3/rpmatch.3:123
msgid ""
"The following program displays the results when B<rpmatch>() is applied to "
"the string given in the program's command-line argument."
"に渡した場合の結果を表示する。"
#. type: Plain text
-#: build/C/man3/rpmatch.3:115
+#: build/C/man3/rpmatch.3:130
#, no-wrap
msgid ""
"#define _SVID_SOURCE\n"
"#include E<lt>stdio.hE<gt>\n"
#. type: Plain text
-#: build/C/man3/rpmatch.3:123
+#: build/C/man3/rpmatch.3:138
#, no-wrap
msgid ""
"int\n"
" }\n"
#. type: Plain text
-#: build/C/man3/rpmatch.3:128
+#: build/C/man3/rpmatch.3:143
#, no-wrap
msgid ""
" setlocale(LC_ALL, \"\");\n"
"}\n"
#. type: Plain text
-#: build/C/man3/rpmatch.3:135
+#: build/C/man3/rpmatch.3:150
msgid ""
"B<fgets>(3), B<getline>(3), B<nl_langinfo>(3), B<regcomp>(3), B<setlocale>(3)"
msgstr ""
#. type: TH
#: build/C/man3/setenv.3:37
#, no-wrap
-msgid "2009-09-20"
-msgstr "2009-09-20"
+msgid "2013-10-11"
+msgstr "2013-10-11"
#. type: Plain text
#: build/C/man3/setenv.3:40
"\\ 600"
#. type: Plain text
-#: build/C/man3/setenv.3:77
+#: build/C/man3/setenv.3:94
msgid ""
"The B<setenv>() function adds the variable I<name> to the environment with "
"the value I<value>, if I<name> does not already exist. If I<name> does "
"exist in the environment, then its value is changed to I<value> if "
"I<overwrite> is nonzero; if I<overwrite> is zero, then the value of I<name> "
-"is not changed. This function makes copies of the strings pointed to by "
-"I<name> and I<value> (by contrast with B<putenv>(3))."
+"is not changed (and B<setenv>() returns a success status). This function "
+"makes copies of the strings pointed to by I<name> and I<value> (by contrast "
+"with B<putenv>(3))."
msgstr ""
"B<setenv>() 関数は、I<name> が存在しない場合 環境変数 I<name> に値 I<value> "
"を設定し、環境に追加する。 I<name> が環境に存在する場合、I<overwrite> が 0 以"
"外ならば その値を I<value> に変更し、I<overwrite> が 0 ならば I<name> の値を"
-"変更しない。 この関数は、 (B<putenv>(3) と違い) I<name> と I<value> により"
-"参照される文字列のコピーを行う。"
+"変更しない (B<setenv>() は成功のステータスを返す)。 この関数は、 "
+"(B<putenv>(3) と違い) I<name> と I<value> により参照される文字列のコピーを"
+"行う。"
#. type: Plain text
-#: build/C/man3/setenv.3:86
+#: build/C/man3/setenv.3:105
msgid ""
"The B<unsetenv>() function deletes the variable I<name> from the "
"environment. If I<name> does not exist in the environment, then the "
"場合、この関数は成功し、環境は変更されない。"
#. type: Plain text
-#: build/C/man3/setenv.3:93
+#: build/C/man3/setenv.3:112
msgid ""
"The B<setenv>() function returns zero on success, or -1 on error, with "
"I<errno> set to indicate the cause of the error."
"I<errno> にエラーの原因を示す値がセットされる。"
#. type: Plain text
-#: build/C/man3/setenv.3:100
+#: build/C/man3/setenv.3:119
msgid ""
"The B<unsetenv>() function returns zero on success, or -1 on error, with "
"I<errno> set to indicate the cause of the error."
"I<errno> を設定してエラーの原因を示す。"
#. type: Plain text
-#: build/C/man3/setenv.3:106
+#: build/C/man3/setenv.3:125
msgid ""
"I<name> is NULL, points to a string of length 0, or contains an \\(aq=\\(aq "
"character."
"が含まれている。"
#. type: Plain text
-#: build/C/man3/setenv.3:109
+#: build/C/man3/setenv.3:128
msgid "Insufficient memory to add a new variable to the environment."
msgstr "環境に新しい変数を追加するのに十分なメモリがない。"
#. type: Plain text
-#: build/C/man3/setenv.3:117
+#: build/C/man3/setenv.3:136
msgid ""
"POSIX.1-2001 does not require B<setenv>() or B<unsetenv>() to be reentrant."
msgstr ""
"であることを要求していない。"
#. type: Plain text
-#: build/C/man3/setenv.3:123
+#: build/C/man3/setenv.3:144
msgid ""
"Prior to glibc 2.2.2, B<unsetenv>() was prototyped as returning I<void>; "
"more recent glibc versions follow the POSIX.1-2001-compliant prototype shown "
"POSIX.1-2001 互換のプロトタイプである。"
#. type: Plain text
-#: build/C/man3/setenv.3:132
+#: build/C/man3/setenv.3:153
msgid ""
"POSIX.1-2001 specifies that if I<name> contains an \\(aq=\\(aq character, "
"then B<setenv>() should fail with the error B<EINVAL>; however, versions of "
"る。"
#. type: Plain text
-#: build/C/man3/setenv.3:137
+#: build/C/man3/setenv.3:158
msgid "B<clearenv>(3), B<getenv>(3), B<putenv>(3), B<environ>(7)"
msgstr "B<clearenv>(3), B<getenv>(3), B<putenv>(3), B<environ>(7)"
"a sequence of characters, followed by \\(aq)\\(aq. The character string "
"specifies in an implementation-dependent way the type of NAN."
msgstr ""
-"I<NAN> は \"NAN\" (大文字小文字は区別されない) で表され、 その後に \\(aq"
-"(\\(aq 文字列 \\(aq)\\(aq が続く場合もある。 この文字列は実装に依存する NAN "
-"を指定する。"
+"I<NAN> は \"NAN\" (大文字小文字は区別されない) で表され、 その後に "
+"\\(aq(\\(aq 文字列 \\(aq)\\(aq が続く場合もある。 この文字列は実装に依存する "
+"NAN を指定する。"
#. type: Plain text
#: build/C/man3/strtod.3:130
"起こした場合には 0 が返り、 B<ERANGE> が I<errno> に代入される。"
#. type: TP
-#: build/C/man3/strtod.3:157 build/C/man3/strtol.3:133
-#: build/C/man3/strtoul.3:136
+#: build/C/man3/strtod.3:157 build/C/man3/strtol.3:151
+#: build/C/man3/strtoul.3:155
#, no-wrap
msgid "B<ERANGE>"
msgstr "B<ERANGE>"
msgstr "オーバーフローまたはアンダーフローが起こった。"
#. type: Plain text
-#: build/C/man3/strtod.3:165
+#: build/C/man3/strtod.3:172
+msgid ""
+"The B<strtod>(), B<strtof>(), and B<strtold>() functions are thread-safe "
+"with exceptions. These functions can be safely used in multithreaded "
+"applications, as long as B<setlocale>(3) is not called to change the locale "
+"during their execution."
+msgstr ""
+"関数 B<strtod>(), B<strtof>(), B<strtold>() は、例外付きのスレッドセーフであ"
+"る。実行中に B<setlocale>(3) を呼び出してロケールを変更しない限り、マルチス"
+"レッドアプリケーションで安全に使用することができる。"
+
+#. type: Plain text
+#: build/C/man3/strtod.3:177
msgid "C89 describes B<strtod>(), C99 describes the other two functions."
msgstr "C89 では B<strtod>() が、C99 では残りの 2 つの関数が記述されている。"
#. type: Plain text
-#: build/C/man3/strtod.3:174
+#: build/C/man3/strtod.3:186
msgid ""
"Since 0 can legitimately be returned on both success and failure, the "
"calling program should set I<errno> to 0 before the call, and then determine "
"しエラーが発生したかどうかを判断する 必要がある。"
#. type: Plain text
-#: build/C/man3/strtod.3:179 build/C/man3/strtoul.3:190
+#: build/C/man3/strtod.3:191 build/C/man3/strtoul.3:225
msgid ""
"See the example on the B<strtol>(3) manual page; the use of the functions "
"described in this manual page is similar."
"法も同様である。"
#. type: Plain text
-#: build/C/man3/strtod.3:185
+#: build/C/man3/strtod.3:197
msgid "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtol>(3), B<strtoul>(3)"
msgstr "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtol>(3), B<strtoul>(3)"
msgid "STRTOIMAX"
msgstr "STRTOIMAX"
-#. type: TH
-#: build/C/man3/strtoimax.3:24
-#, no-wrap
-msgid "2003-11-28"
-msgstr "2003-11-28"
-
#. type: Plain text
#: build/C/man3/strtoimax.3:27
msgid "strtoimax, strtoumax - convert string to integer"
"れる。"
#. type: Plain text
-#: build/C/man3/strtoimax.3:66
+#: build/C/man3/strtoimax.3:69
+msgid ""
+"The B<strtoimax>() and B<strtoumax>() functions are thread-safe with "
+"exceptions. These functions can be safely used in multithreaded "
+"applications, as long as B<setlocale>(3) is not called to change the locale "
+"during their execution."
+msgstr ""
+"関数 B<strtoimax>() と B<strtoumax>() は、例外付きのスレッドセーフである。実"
+"行中に B<setlocale>(3) を呼び出してロケールを変更しない限り、マルチスレッドア"
+"プリケーションで安全に使用することができる。"
+
+#. type: Plain text
+#: build/C/man3/strtoimax.3:77
msgid ""
"B<imaxabs>(3), B<imaxdiv>(3), B<strtol>(3), B<strtoul>(3), B<wcstoimax>(3)"
msgstr ""
msgid "STRTOL"
msgstr "STRTOL"
-#. type: TH
-#: build/C/man3/strtol.3:31
-#, no-wrap
-msgid "2013-02-10"
-msgstr ""
-
#. type: Plain text
#: build/C/man3/strtol.3:34
msgid "strtol, strtoll, strtoq - convert a string to a long integer"
#. type: Plain text
#: build/C/man3/strtol.3:54 build/C/man3/strtoul.3:57
msgid ""
-"XOPEN_SOURCE\\ E<gt>=\\ 600 || _BSD_SOURCE || _SVID_SOURCE || _ISOC99_SOURCE "
-"|| _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
-msgstr ""
+"_XOPEN_SOURCE\\ E<gt>=\\ 600 || _BSD_SOURCE || _SVID_SOURCE || "
+"_ISOC99_SOURCE || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
+msgstr ""
"XOPEN_SOURCE\\ E<gt>=\\ 600 || _BSD_SOURCE || _SVID_SOURCE || _ISOC99_SOURCE "
"|| _POSIX_C_SOURCE\\ E<gt>=\\ 200112L;"
#. type: Plain text
-#: build/C/man3/strtol.3:65
+#: build/C/man3/strtol.3:68
msgid ""
"The B<strtol>() function converts the initial part of the string in I<nptr> "
"to a long integer value according to the given I<base>, which must be "
"持つ値 0 でなければならない。"
#. type: Plain text
-#: build/C/man3/strtol.3:74 build/C/man3/strtoul.3:81
+#: build/C/man3/strtol.3:81 build/C/man3/strtoul.3:89
msgid ""
"The string may begin with an arbitrary amount of white space (as determined "
"by B<isspace>(3)) followed by a single optional \\(aq+\\(aq or \\(aq-\\(aq "
"は 10進数として扱われる。"
#. type: Plain text
-#: build/C/man3/strtol.3:83
+#: build/C/man3/strtol.3:90
msgid ""
"The remainder of the string is converted to a I<long int> value in the "
"obvious manner, stopping at the first character which is not a valid digit "
"in the given base. (In bases above 10, the letter \\(aqA\\(aq in either "
-"upper or lower case represents 10, \\(aqB\\(aq represents 11, and so forth, "
-"with \\(aqZ\\(aq representing 35.)"
+"uppercase or lowercase represents 10, \\(aqB\\(aq represents 11, and so "
+"forth, with \\(aqZ\\(aq representing 35.)"
msgstr ""
"数字を表す文字列は I<long int> に変換されるが、基数に対して 有効でない数字が"
"現れた時点で変換は終了する。(11進数以上では \\(aqA\\(aq は 大文字・小文字に関"
"35 を表す。)"
#. type: Plain text
-#: build/C/man3/strtol.3:95
+#: build/C/man3/strtol.3:111
msgid ""
"If I<endptr> is not NULL, B<strtol>() stores the address of the first "
-"invalid character in I<*endptr>. If there were no digits at all, B<strtol>"
-"() stores the original value of I<nptr> in I<*endptr> (and returns 0). In "
-"particular, if I<*nptr> is not \\(aq\\e0\\(aq but I<**endptr> is \\(aq"
-"\\e0\\(aq on return, the entire string is valid."
-msgstr ""
-"I<endptr> がヌル値 (NULL) でない場合は、最初に現れた不正な文字が B<strtol>"
-"() によって I<*endptr> に保存されている。 文字列に有効な数字がひとつもなけれ"
-"ã\81°ã\80\81 B<strtol>() ã\81¯ I<nptr> ã\81®å\85\83ã\81®å\80¤ã\82\92 I<*endptr> ã\81«ä»£å\85¥ã\81\99ã\82\8b (ã\81\9dã\81\97ã\81¦ 0 ã\82\92è¿\94"
-"ã\81\99)ã\80\82 ç\89¹ã\81«ã\80\81I<*nptr> ã\81\8c \\(aq\\e0\\(aq 以å¤\96ã\81§ã\80\81è¿\94ã\81\95ã\82\8cã\81\9f I<**endptr> ã\81\8c \\(aq"
-"\\e0\\(aq ならば、文字列全体が有効だったことになる。"
+"invalid character in I<*endptr>. If there were no digits at all, "
+"B<strtol>() stores the original value of I<nptr> in I<*endptr> (and returns "
+"0). In particular, if I<*nptr> is not \\(aq\\e0\\(aq but I<**endptr> is "
+"\\(aq\\e0\\(aq on return, the entire string is valid."
+msgstr ""
+"I<endptr> がヌル値 (NULL) でない場合は、最初に現れた不正な文字が "
+"B<strtol>() によって I<*endptr> に保存されている。 文字列に有効な数字がひと"
+"ã\81¤ã\82\82ã\81ªã\81\91ã\82\8cã\81°ã\80\81 B<strtol>() ã\81¯ I<nptr> ã\81®å\85\83ã\81®å\80¤ã\82\92 I<*endptr> ã\81«ä»£å\85¥ã\81\99ã\82\8b (ã\81\9dã\81\97"
+"ã\81¦ 0 ã\82\92è¿\94ã\81\99)ã\80\82 ç\89¹ã\81«ã\80\81I<*nptr> ã\81\8c \\(aq\\e0\\(aq 以å¤\96ã\81§ã\80\81è¿\94ã\81\95ã\82\8cã\81\9f I<**endptr> "
+"が \\(aq\\e0\\(aq ならば、文字列全体が有効だったことになる。"
#. type: Plain text
-#: build/C/man3/strtol.3:101
+#: build/C/man3/strtol.3:117
msgid ""
"The B<strtoll>() function works just like the B<strtol>() function but "
"returns a long long integer value."
"B<strtoll>() 関数は B<strtol>() と同様だが、long long int 型の値を返す。"
#. type: Plain text
-#: build/C/man3/strtol.3:126
+#: build/C/man3/strtol.3:144
msgid ""
"The B<strtol>() function returns the result of the conversion, unless the "
"value would underflow or overflow. If an underflow occurs, B<strtol>() "
"が返される。"
#. type: Plain text
-#: build/C/man3/strtol.3:133 build/C/man3/strtoul.3:136
+#: build/C/man3/strtol.3:151 build/C/man3/strtoul.3:155
msgid "(not in C99) The given I<base> contains an unsupported value."
msgstr "(C99 にはない) 指定された I<base> がサポートされていない値である。"
#. type: Plain text
-#: build/C/man3/strtol.3:136 build/C/man3/strtoul.3:139
+#: build/C/man3/strtol.3:154 build/C/man3/strtoul.3:158
msgid "The resulting value was out of range."
msgstr "結果の値が範囲外である。"
#. type: Plain text
-#: build/C/man3/strtol.3:139 build/C/man3/strtoul.3:142
+#: build/C/man3/strtol.3:161 build/C/man3/strtoul.3:165
msgid ""
"The implementation may also set I<errno> to B<EINVAL> in case no conversion "
"was performed (no digits seen, and 0 returned)."
"I<errno> に B<EINVAL> が設定される場合がある。"
#. type: Plain text
-#: build/C/man3/strtol.3:144
+#: build/C/man3/strtol.3:173
+msgid ""
+"The B<strtol>(), B<strtoll>(), and B<strtoq>() functions are thread-safe "
+"with exceptions. These functions can be safely used in multithreaded "
+"applications, as long as B<setlocale>(3) is not called to change the locale "
+"during their execution."
+msgstr ""
+"関数 B<strtol>(), B<strtoll>(), B<strtoq>() は、例外付きのスレッドセーフであ"
+"る。実行中に B<setlocale>(3) を呼び出してロケールを変更しない限り、マルチス"
+"レッドアプリケーションで安全に使用することができる。"
+
+#. type: Plain text
+#: build/C/man3/strtol.3:178
msgid ""
-"B<strtol>() conforms to SVr4, 4.3BSD, C89, C99 and POSIX.1-2001, and "
+"B<strtol>() conforms to SVr4, 4.3BSD, C89, C99, and POSIX.1-2001, and "
"B<strtoll>() to C99 and POSIX.1-2001."
msgstr ""
"B<strtol>() は SVr4, 4.3BSD, C89, C99 と POSIX.1-2001 に準拠している。 "
"B<strtoll>() は C99 と POSIX.1-2001 に準拠している。"
#. type: Plain text
-#: build/C/man3/strtol.3:162
+#: build/C/man3/strtol.3:196
msgid ""
"Since B<strtol>() can legitimately return 0, B<LONG_MAX>, or B<LONG_MIN> "
"(B<LLONG_MAX> or B<LLONG_MIN> for B<strtoll>()) on both success and "
"が 0 以外の値かどうかを確認しエラーが発生したかどうかを判断する 必要がある。"
#. type: Plain text
-#: build/C/man3/strtol.3:167
+#: build/C/man3/strtol.3:201
msgid ""
"According to POSIX.1-2001, in locales other than the \"C\" and \"POSIX\", "
"these functions may accept other, implementation-defined numeric strings."
msgstr ""
+"POSIX.1-2001 では、 \"C\" と \"POSIX\" 以外のロケールでは、これらの関数は、他"
+"の実装時に定義される数字を示す文字列を受け付けるとされている。"
#. type: Plain text
-#: build/C/man3/strtol.3:169 build/C/man3/strtoul.3:167
+#: build/C/man3/strtol.3:203 build/C/man3/strtoul.3:202
msgid "BSD also has"
msgstr "BSD には、"
#. type: Plain text
-#: build/C/man3/strtol.3:173
+#: build/C/man3/strtol.3:207
#, no-wrap
msgid "B<quad_t strtoq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
msgstr "B<quad_t strtoq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
#. type: Plain text
-#: build/C/man3/strtol.3:182
+#: build/C/man3/strtol.3:216
msgid ""
"with completely analogous definition. Depending on the wordsize of the "
-"current architecture, this may be equivalent to B<strtoll>() or to B<strtol>"
-"()."
+"current architecture, this may be equivalent to B<strtoll>() or to "
+"B<strtol>()."
msgstr ""
"という完全に同様の定義を持つ関数がある。 使用中のアーキテクチャのワード長次第"
"であるが、この関数は B<strtoll>() か B<strtol>() と等価となることもある。"
#. type: Plain text
-#: build/C/man3/strtol.3:196
+#: build/C/man3/strtol.3:230
msgid ""
"The program shown below demonstrates the use of B<strtol>(). The first "
"command-line argument specifies a string from which B<strtol>() should "
"くつか以下に示す:"
#. type: Plain text
-#: build/C/man3/strtol.3:212
+#: build/C/man3/strtol.3:246
#, no-wrap
msgid ""
"$B< ./a.out 123>\n"
"$B< ./a.out 4000000000>\n"
"strtol: Numerical result out of range\n"
-#. type: SS
-#: build/C/man3/strtol.3:214
-#, no-wrap
-msgid "Program source"
-msgstr "プログラムのソース"
-
#. type: Plain text
-#: build/C/man3/strtol.3:221
+#: build/C/man3/strtol.3:255
#, no-wrap
msgid ""
"#include E<lt>stdlib.hE<gt>\n"
"#include E<lt>errno.hE<gt>\n"
#. type: Plain text
-#: build/C/man3/strtol.3:228
+#: build/C/man3/strtol.3:262
#, no-wrap
msgid ""
"int\n"
" long val;\n"
#. type: Plain text
-#: build/C/man3/strtol.3:233
+#: build/C/man3/strtol.3:267
#, no-wrap
msgid ""
" if (argc E<lt> 2) {\n"
" }\n"
#. type: Plain text
-#: build/C/man3/strtol.3:236
+#: build/C/man3/strtol.3:270
#, no-wrap
msgid ""
" str = argv[1];\n"
" base = (argc E<gt> 2) ? atoi(argv[2]) : 10;\n"
#. type: Plain text
-#: build/C/man3/strtol.3:239
+#: build/C/man3/strtol.3:273
#, no-wrap
msgid ""
" errno = 0; /* To distinguish success/failure after call */\n"
" val = strtol(str, &endptr, base);\n"
#. type: Plain text
-#: build/C/man3/strtol.3:241
+#: build/C/man3/strtol.3:275
#, no-wrap
msgid " /* Check for various possible errors */\n"
msgstr " /* Check for various possible errors */\n"
#. type: Plain text
-#: build/C/man3/strtol.3:247
+#: build/C/man3/strtol.3:281
#, no-wrap
msgid ""
" if ((errno == ERANGE && (val == LONG_MAX || val == LONG_MIN))\n"
" }\n"
#. type: Plain text
-#: build/C/man3/strtol.3:252
+#: build/C/man3/strtol.3:286
#, no-wrap
msgid ""
" if (endptr == str) {\n"
" }\n"
#. type: Plain text
-#: build/C/man3/strtol.3:254
+#: build/C/man3/strtol.3:288
#, no-wrap
msgid " /* If we got here, strtol() successfully parsed a number */\n"
msgstr " /* If we got here, strtol() successfully parsed a number */\n"
#. type: Plain text
-#: build/C/man3/strtol.3:256
+#: build/C/man3/strtol.3:290
#, no-wrap
msgid " printf(\"strtol() returned %ld\\en\", val);\n"
msgstr " printf(\"strtol() returned %ld\\en\", val);\n"
#. type: Plain text
-#: build/C/man3/strtol.3:259
+#: build/C/man3/strtol.3:293
#, no-wrap
msgid ""
" if (*endptr != \\(aq\\e0\\(aq) /* Not necessarily an error... */\n"
" printf(\"Further characters after number: %s\\en\", endptr);\n"
#. type: Plain text
-#: build/C/man3/strtol.3:269
+#: build/C/man3/strtol.3:303
msgid "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtoul>(3)"
msgstr "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtoul>(3)"
msgid "STRTOUL"
msgstr "STRTOUL"
-#. type: TH
-#: build/C/man3/strtoul.3:33
-#, no-wrap
-msgid "2011-09-15"
-msgstr "2011-09-15"
-
#. type: Plain text
#: build/C/man3/strtoul.3:36
msgid ""
msgstr "B<strtoull>():"
#. type: Plain text
-#: build/C/man3/strtoul.3:71
+#: build/C/man3/strtoul.3:75
msgid ""
"The B<strtoul>() function converts the initial part of the string in "
"I<nptr> to an I<unsigned long int> value according to the given I<base>, "
"特別な意味を持つ値 0 でなければならない。"
#. type: Plain text
-#: build/C/man3/strtoul.3:90
+#: build/C/man3/strtoul.3:98
msgid ""
"The remainder of the string is converted to an I<unsigned long int> value in "
"the obvious manner, stopping at the first character which is not a valid "
"digit in the given base. (In bases above 10, the letter \\(aqA\\(aq in "
-"either upper or lower case represents 10, \\(aqB\\(aq represents 11, and so "
-"forth, with \\(aqZ\\(aq representing 35.)"
+"either uppercase or lowercase represents 10, \\(aqB\\(aq represents 11, and "
+"so forth, with \\(aqZ\\(aq representing 35.)"
msgstr ""
"文字列の残りの部分は I<unsigned long int> に変換されるが、基数に対して 有効で"
"ない数字が現れた時点で変換は終了する。(11進数以上では \\(aqA\\(aq は 大文字・"
"\\(aq は 35 を表す。)"
#. type: Plain text
-#: build/C/man3/strtoul.3:102
+#: build/C/man3/strtoul.3:119
msgid ""
"If I<endptr> is not NULL, B<strtoul>() stores the address of the first "
-"invalid character in I<*endptr>. If there were no digits at all, B<strtoul>"
-"() stores the original value of I<nptr> in I<*endptr> (and returns 0). In "
-"particular, if I<*nptr> is not \\(aq\\e0\\(aq but I<**endptr> is \\(aq"
-"\\e0\\(aq on return, the entire string is valid."
+"invalid character in I<*endptr>. If there were no digits at all, "
+"B<strtoul>() stores the original value of I<nptr> in I<*endptr> (and "
+"returns 0). In particular, if I<*nptr> is not \\(aq\\e0\\(aq but "
+"I<**endptr> is \\(aq\\e0\\(aq on return, the entire string is valid."
msgstr ""
"I<endptr> がヌル値 (NULL) でない場合、 B<strtoul>() は最初に不正な文字が現れ"
"たアドレスを I<*endptr> に格納している。 文字列に有効な数字がひとつもなけれ"
"\\e0\\(aq ならば、文字列全体が有効だったことになる。"
#. type: Plain text
-#: build/C/man3/strtoul.3:110
+#: build/C/man3/strtoul.3:127
msgid ""
"The B<strtoull>() function works just like the B<strtoul>() function but "
"returns an I<unsigned long long int> value."
"int> 型の値を返す。"
#. type: Plain text
-#: build/C/man3/strtoul.3:129
+#: build/C/man3/strtoul.3:148
msgid ""
"The B<strtoul>() function returns either the result of the conversion or, "
"if there was a leading minus sign, the negation of the result of the "
"替えれば) B<strtoull>() は B<strtoul>() と全く同じである。"
#. type: Plain text
-#: build/C/man3/strtoul.3:147
+#: build/C/man3/strtoul.3:177
+msgid ""
+"The B<strtoul>(), B<strtoull>(), and B<strtouq>() functions are thread-safe "
+"with exceptions. These functions can be safely used in multithreaded "
+"applications, as long as B<setlocale>(3) is not called to change the locale "
+"during their execution."
+msgstr ""
+"関数 B<strtoul>(), B<strtoull>(), B<strtouq>() は、例外付きのスレッドセーフで"
+"ある。実行中に B<setlocale>(3) を呼び出してロケールを変更しない限り、マルチス"
+"レッドアプリケーションで安全に使用することができる。"
+
+#. type: Plain text
+#: build/C/man3/strtoul.3:182
msgid ""
-"B<strtoul>() conforms to SVr4, C89, C99 and POSIX-2001, and B<strtoull>() "
+"B<strtoul>() conforms to SVr4, C89, C99, and POSIX-2001, and B<strtoull>() "
"to C99 and POSIX.1-2001."
msgstr ""
-"B<strtoul>() は SVr4, C89, C99 と POSIX-2001 に準拠している。 B<strtoull>"
-"() は C99 と POSIX.1-2001 に準拠している。"
+"B<strtoul>() は SVr4, C89, C99 と POSIX-2001 に準拠している。 "
+"B<strtoull>() は C99 と POSIX.1-2001 に準拠している。"
#. type: Plain text
-#: build/C/man3/strtoul.3:161
+#: build/C/man3/strtoul.3:196
msgid ""
"Since B<strtoul>() can legitimately return 0 or B<ULONG_MAX> (B<ULLONG_MAX> "
"for B<strtoull>()) on both success and failure, the calling program should "
"set I<errno> to 0 before the call, and then determine if an error occurred "
"by checking whether I<errno> has a nonzero value after the call."
msgstr ""
-"B<strtoul ()> からは成功、失敗どちらの場合でも 0 や B<ULONG_MAX> (B<strtoull>"
-"() では B<ULLONG_MAX>) が返る可能性があるので、 プログラムは関数を呼び出す"
-"前に I<errno> を 0 に設定し、呼び出し後に I<errno> が 0 以外の値かどうかを確"
-"認しエラーが発生したかどうかを判断する 必要がある。"
+"B<strtoul ()> からは成功、失敗どちらの場合でも 0 や B<ULONG_MAX> "
+"(B<strtoull>() では B<ULLONG_MAX>) が返る可能性があるので、 プログラムは関"
+"数を呼び出す前に I<errno> を 0 に設定し、呼び出し後に I<errno> が 0 以外の値"
+"かどうかを確認しエラーが発生したかどうかを判断する 必要がある。"
#. type: Plain text
-#: build/C/man3/strtoul.3:165
+#: build/C/man3/strtoul.3:200
msgid ""
"In locales other than the \"C\" locale, other strings may be accepted. (For "
"example, the thousands separator of the current locale may be supported.)"
"えば、現在のロケールの 1000 毎の区切り文字に対応しているかもしれない。)"
#. type: Plain text
-#: build/C/man3/strtoul.3:171
+#: build/C/man3/strtoul.3:206
#, no-wrap
msgid "B<u_quad_t strtouq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
msgstr "B<u_quad_t strtouq(const char *>I<nptr>B<, char **>I<endptr>B<, int >I<base>B<);>\n"
#. type: Plain text
-#: build/C/man3/strtoul.3:180
+#: build/C/man3/strtoul.3:215
msgid ""
"with completely analogous definition. Depending on the wordsize of the "
"current architecture, this may be equivalent to B<strtoull>() or to "
"であるが、この関数は B<strtoull>() や B<stroul>() と等価な場合もありえる。"
#. type: Plain text
-#: build/C/man3/strtoul.3:185
+#: build/C/man3/strtoul.3:220
msgid ""
"Negative values are considered valid input and are silently converted to the "
"equivalent I<unsigned long int> value."
"の値に変換される。"
#. type: Plain text
-#: build/C/man3/strtoul.3:196
+#: build/C/man3/strtoul.3:231
msgid "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3)"
msgstr "B<atof>(3), B<atoi>(3), B<atol>(3), B<strtod>(3), B<strtol>(3)"
#. type: TH
-#: build/C/man3/system.3:30
+#: build/C/man3/system.3:31
#, no-wrap
msgid "SYSTEM"
msgstr "SYSTEM"
#. type: TH
-#: build/C/man3/system.3:30
+#: build/C/man3/system.3:31
#, no-wrap
-msgid "2010-09-10"
-msgstr "2010-09-10"
+msgid "2014-05-10"
+msgstr "2014-05-10"
#. type: Plain text
-#: build/C/man3/system.3:33
+#: build/C/man3/system.3:34
msgid "system - execute a shell command"
msgstr "system - シェルコマンドの実行"
#. type: Plain text
-#: build/C/man3/system.3:38
+#: build/C/man3/system.3:39
#, no-wrap
msgid "B<int system(const char *>I<command>B<);>\n"
msgstr "B<int system(const char *>I<command>B<);>\n"
#. type: Plain text
-#: build/C/man3/system.3:54
+#: build/C/man3/system.3:50
msgid ""
-"B<system>() executes a command specified in I<command> by calling B</bin/sh "
-"-c> I<command>, and returns after the command has been completed. During "
-"execution of the command, B<SIGCHLD> will be blocked, and B<SIGINT> and "
-"B<SIGQUIT> will be ignored."
+"The B<system>() library function uses B<fork>(2) to create a child process "
+"that executes the shell command specified in I<command> using B<execl>(3) "
+"as follows:"
msgstr ""
-"B<system>() は I<command> で指定したコマンドを B</bin/sh -c> I<command> の形"
-"ã\81§å®\9fè¡\8cã\81\99ã\82\8bã\80\82æ\8c\87å®\9aã\81\97ã\81\9fã\82³ã\83\9eã\83³ã\83\89ã\81\8cçµ\82äº\86ã\81\99ã\82\8cã\81°ã\81\93ã\81®é\96¢æ\95°ã\82\82çµ\82äº\86ã\81\99ã\82\8bã\80\82 ã\82³ã\83\9eã\83³ã\83\89å®\9fè¡\8cä¸"
-"は、 B<SIGCHLD> はブロックされ、 B<SIGINT> と B<SIGQUIT> は無視される。"
+"B<system>() ライブラリ関数は、B<fork>(2) を使って子プロセスを作成し、その子プ"
+"ã\83ã\82»ã\82¹ã\81¯ä»¥ä¸\8bã\81®ã\82\88ã\81\86ã\81« I<command> ã\81§æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\82·ã\82§ã\83«ã\82³ã\83\9eã\83³ã\83\89ã\82\92 B<execl>(3) ã\82\92"
+"使って実行する。"
#. type: Plain text
-#: build/C/man3/system.3:69
+#: build/C/man3/system.3:52
+#, no-wrap
+msgid " execl(\"/bin/sh\", \"sh\". \"-c\", command, (char *) 0);\n"
+msgstr " execl(\"/bin/sh\", \"sh\". \"-c\", command, (char *) 0);\n"
+
+#. type: Plain text
+#: build/C/man3/system.3:55
+msgid "B<system>() returns after the command has been completed."
+msgstr "B<system>() が返るのはコマンドが完了した後である。"
+
+#. type: Plain text
+#: build/C/man3/system.3:67
+msgid ""
+"During execution of the command, B<SIGCHLD> will be blocked, and B<SIGINT> "
+"and B<SIGQUIT> will be ignored, in the process that calls B<system>() "
+"(these signals will be handled according to their defaults inside the child "
+"process that executes I<command>)."
+msgstr ""
+"コマンドの実行中は、 B<system>() を呼び出したプロセスでは、 B<SIGCHLD> はブ"
+"ロックされ、 B<SIGINT> と B<SIGQUIT> は無視される (I<command> を実行する子プ"
+"ロセスでは、これらのシグナルはデフォルトの処理方法にしたがって処理される)。"
+
+#. type: Plain text
+#: build/C/man3/system.3:73
+msgid ""
+"If I<command> is NULL, then B<system>() returns a status indicating whether "
+"a shell is available on the system"
+msgstr ""
+"I<command> が NULL の場合、 B<system>() はそのシステムでシェルが利用可能かを"
+"示すステータスを返す。"
+
+#. type: Plain text
+#: build/C/man3/system.3:77
+msgid "The return value of B<system>() is one of the following:"
+msgstr "B<system>() の返り値は以下のいずれかである。"
+
+#. type: Plain text
+#: build/C/man3/system.3:82
+msgid ""
+"If I<command> is NULL, then a nonzero value if a shell is available, or 0 if "
+"no shell is available."
+msgstr ""
+"I<command> が NULL の場合、 シェルが利用可能ならゼロ以外の値、利用不可なら "
+"0。"
+
+#. type: Plain text
+#: build/C/man3/system.3:86
+msgid ""
+"If a child process could not be created, or its status could not be "
+"retrieved, the return value is -1."
+msgstr ""
+"子プロセスを作成できなかった場合、または子プロセスのステータスを取得できな"
+"かった場合、 返り値は -1 である。"
+
+#. type: Plain text
+#: build/C/man3/system.3:91
+msgid ""
+"If a shell could not be executed in the child process, then the return value "
+"is as though the child shell terminated by calling B<_exit>(2) with the "
+"status 127."
+msgstr ""
+"子プロセスでシェルを実行できなかった場合、 返り値は子プロセスがステータス "
+"127 で B<_exit>(2) を呼び出して終了したのと同じになる。"
+
+#. type: Plain text
+#: build/C/man3/system.3:98
msgid ""
-"The value returned is -1 on error (e.g., B<fork>(2) failed), and the return "
-"status of the command otherwise. This latter return status is in the format "
-"specified in B<wait>(2). Thus, the exit code of the command will be "
-"I<WEXITSTATUS(status)>. In case I</bin/sh> could not be executed, the exit "
-"status will be that of a command that does I<exit(127)>."
+"If all system calls succeed, then the return value is the termination status "
+"of the child shell used to execute I<command>. (The termination status of a "
+"shell is the termination status of the last command it executes.)"
msgstr ""
-"エラーが発生した場合 (B<fork>(2) に失敗した場合など)、-1 を返す。 そうでなけ"
-"れば、コマンドのステータスを返す。 後者の場合、ステータスは B<wait>(2) で定"
-"義されているフォーマットで返ってくる。 従って、コマンドの終了コードは "
-"I<WEXITSTATUS(status)> で得ることが出来る。 I</bin/sh> が実行出来なかった場"
-"合、 終了ステータスはコマンドが I<exit(127)> を実行した場合と同じになる。"
+"システムコールがすべて成功した場合、 返り値は I<command> を実行するのに使用さ"
+"れた子プロセスのシェルの終了ステータスとなる (シェルの終了ステータスはその"
+"シェルが実行した最後のコマンドの終了ステータスである)。"
#. type: Plain text
-#: build/C/man3/system.3:75
+#: build/C/man3/system.3:107
msgid ""
-"If the value of I<command> is NULL, B<system>() returns nonzero if the "
-"shell is available, and zero if not."
+"In the last two cases, the return value is a \"wait status\" that can be "
+"examined using the macros described in B<waitpid>(2). (i.e., "
+"B<WIFEXITED>() B<WEXITSTATUS>() and so on)."
msgstr ""
-"I<command> の値が NULL のときは、 B<system>() はシェルが利用可能ならゼロ以外"
-"の値を返し、利用不可ならゼロを返す。"
+"最後の 2 つの場合、返り値は \"wait status\" であり、 B<waitpid>(2) に書かれて"
+"いるマクロ (つまり B<WIFEXITED>() や B<WEXITSTATUS>() などのマクロ) を使って"
+"検査することができる。"
#. type: Plain text
-#: build/C/man3/system.3:78
+#: build/C/man3/system.3:110
msgid "B<system>() does not affect the wait status of any other children."
msgstr "B<system>() は他の子プロセスのウエイトステータスには影響を与えない。"
#. type: Plain text
-#: build/C/man3/system.3:80
+#: build/C/man3/system.3:112
msgid "C89, C99, POSIX.1-2001."
msgstr "C89, C99, POSIX.1-2001."
#. type: Plain text
-#: build/C/man3/system.3:93
+#: build/C/man3/system.3:129
+msgid ""
+"B<system>() provides simplicity and convenience: it handles all of the "
+"details of calling B<fork>(2), B<execl>(3), and B<waitpid>(2), as well as "
+"the necessary manipulations of signals; in addition, the shell performs the "
+"usual substitutions and I/O redirections for I<command>. The main cost of "
+"B<system>() is inefficiency: additional system calls are required to create "
+"the process that runs the shell and to execute the shell."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man3/system.3:141
msgid ""
"If the B<_XOPEN_SOURCE> feature test macro is defined (before including "
-"I<any> header files), then the macros described in B<wait>(2) "
+"I<any> header files), then the macros described in B<waitpid>(2) "
"(B<WEXITSTATUS>(), etc.) are made available when including I<E<lt>stdlib."
"hE<gt>>."
msgstr ""
"(「どの」ヘッダファイルをインクルードするよりも前に) 機能検査マクロ "
-"B<_XOPEN_SOURCE> が定義された場合には、 B<wait>(2) で説明されているマクロ群 "
-"(B<WEXITSTATUS>() 等) が I<E<lt>stdlib.hE<gt>> をインクルードすると利用可能"
-"になる。"
+"B<_XOPEN_SOURCE> が定義された場合には、 B<waitpid>(2) で説明されているマクロ"
+"群 (B<WEXITSTATUS>() 等) が I<E<lt>stdlib.hE<gt>> をインクルードすると利用可"
+"能になる。"
#. type: Plain text
-#: build/C/man3/system.3:104
+#: build/C/man3/system.3:152
msgid ""
"As mentioned, B<system>() ignores B<SIGINT> and B<SIGQUIT>. This may make "
"programs that call it from a loop uninterruptible, unless they take care "
-"themselves to check the exit status of the child. E.g."
+"themselves to check the exit status of the child. For example:"
msgstr ""
"既に述べたように、 B<system>() は B<SIGINT> と B<SIGQUIT> を無視する。 よっ"
"てループから B<system>() を呼ぶプログラムは、 以下の例のように子プロセスの終"
"了状態を自分でチェックしておかないと、 中断できなくなるかもしれない。"
#. type: Plain text
-#: build/C/man3/system.3:109
+#: build/C/man3/system.3:157
#, no-wrap
msgid ""
" while (something) {\n"
" int ret = system(\"foo\");\n"
#. type: Plain text
-#: build/C/man3/system.3:114
+#: build/C/man3/system.3:162
#, no-wrap
msgid ""
" if (WIFSIGNALED(ret) &&\n"
" }\n"
#. type: Plain text
-#: build/C/man3/system.3:134
+#: build/C/man3/system.3:182
msgid ""
"Do not use B<system>() from a program with set-user-ID or set-group-ID "
"privileges, because strange values for some environment variables might be "
"る)"
#. type: Plain text
-#: build/C/man3/system.3:148
+#: build/C/man3/system.3:196
msgid ""
"In versions of glibc before 2.1.3, the check for the availability of I</bin/"
"sh> was not actually performed if I<command> was NULL; instead it was always "
"ファイル でない場合があるからである。"
#. type: Plain text
-#: build/C/man3/system.3:153
+#: build/C/man3/system.3:202
msgid ""
-"It is possible for the shell command to return 127, so that code is not a "
-"sure indication that the B<execve>(2) call failed."
+"It is possible for the shell command to terminate with a status of 127, "
+"which yields a B<system>() return value that is indistinguishable from the "
+"case where a shell could not be executed in the child process."
msgstr ""
-"実行したシェルコマンドが 127 (B</bin/sh> の呼び出しに失敗した時に返す値) を返"
-"すことも考えられる。 そのため、プログラムは (リターンコードを見るだけでは) "
-"B<execve>(2) の呼び出しが失敗したことを確実に知ることはできない。"
#. type: Plain text
-#: build/C/man3/system.3:158
-msgid "B<sh>(1), B<signal>(2), B<wait>(2), B<exec>(3)"
-msgstr "B<sh>(1), B<signal>(2), B<wait>(2), B<exec>(3)"
+#: build/C/man3/system.3:210
+msgid ""
+"B<sh>(1), B<sigaction>(2), B<sigprocmask>(2), B<fork>(2), B<wait>(2), "
+"B<exec>(3), B<signal>(7)"
+msgstr ""
+"B<sh>(1), B<sigaction>(2), B<sigprocmask>(2), B<fork>(2), B<wait>(2), "
+"B<exec>(3), B<signal>(7)"
#. type: TH
-#: build/C/man3/wcstombs.3:16
+#: build/C/man7/vdso.7:13
#, no-wrap
-msgid "WCSTOMBS"
-msgstr "WCSTOMBS"
+msgid "VDSO"
+msgstr "VDSO"
#. type: TH
-#: build/C/man3/wcstombs.3:16
+#: build/C/man7/vdso.7:13
#, no-wrap
-msgid "2011-10-16"
-msgstr "2011-10-16"
+msgid "2014-02-01"
+msgstr "2014-02-01"
#. type: Plain text
-#: build/C/man3/wcstombs.3:19
-msgid "wcstombs - convert a wide-character string to a multibyte string"
-msgstr "wcstombs - ワイド文字列をマルチバイト文字列に変換する"
+#: build/C/man7/vdso.7:16
+msgid "vDSO - overview of the virtual ELF dynamic shared object"
+msgstr ""
#. type: Plain text
-#: build/C/man3/wcstombs.3:24
-#, no-wrap
-msgid "B<size_t wcstombs(char *>I<dest>B<, const wchar_t *>I<src>B<, size_t >I<n>B<);>\n"
-msgstr "B<size_t wcstombs(char *>I<dest>B<, const wchar_t *>I<src>B<, size_t >I<n>B<);>\n"
+#: build/C/man7/vdso.7:18
+msgid "B<#include E<lt>sys/auxv.hE<gt>>"
+msgstr "B<#include E<lt>sys/auxv.hE<gt>>"
#. type: Plain text
-#: build/C/man3/wcstombs.3:35
-msgid ""
-"If I<dest> is not a NULL pointer, the B<wcstombs>() function converts the "
-"wide-character string I<src> to a multibyte string starting at I<dest>. At "
-"most I<n> bytes are written to I<dest>. The conversion starts in the "
-"initial state. The conversion can stop for three reasons:"
-msgstr ""
-"I<dest> が NULL ポインタでない場合、 B<wcstombs>() 関数は ワイド文字列 "
-"I<src> を I<dest> から始まるマルチバイト文字列に 変換する。I<dest> には最大"
-"で I<n> バイトが書き込まれる。 変換は初期状態で開始される。変換は以下の3つの"
-"理由により停止する。"
+#: build/C/man7/vdso.7:20
+msgid "B<void *vdso = (uintptr_t) getauxval(AT_SYSINFO_EHDR);>"
+msgstr "B<void *vdso = (uintptr_t) getauxval(AT_SYSINFO_EHDR);>"
#. type: Plain text
-#: build/C/man3/wcstombs.3:41
+#: build/C/man7/vdso.7:29
msgid ""
-"1. A wide character has been encountered that can not be represented as a "
-"multibyte sequence (according to the current locale). In this case I<"
-"(size_t)\\ -1> is returned."
+"The \"vDSO\" (virtual dynamic shared object) is a small shared library that "
+"the kernel automatically maps into the address space of all user-space "
+"applications. Applications usually do not need to concern themselves with "
+"these details as the vDSO is most commonly called by the C library. This "
+"way you can code in the normal way using standard functions and the C "
+"library will take care of using any functionality that is available via the "
+"vDSO."
msgstr ""
-"1. (現在のロケールにおける)マルチバイト列で表現できないワイド文字に 遭遇した"
-"場合。この場合には I<(size_t)\\ -1> が返される。"
#. type: Plain text
-#: build/C/man3/wcstombs.3:45
+#: build/C/man7/vdso.7:37
msgid ""
-"2. The length limit forces a stop. In this case the number of bytes written "
-"to I<dest> is returned, but the shift state at this point is lost."
+"Why does the vDSO exist at all? There are some system calls the kernel "
+"provides that user-space code ends up using frequently, to the point that "
+"such calls can dominate overall performance. This is due both to the "
+"frequency of the call as well as the context-switch overhead that results "
+"from exiting user space and entering the kernel."
msgstr ""
-"2. 長さ制限によって強制停止させられた場合。この場合には I<dest> に 書き込まれ"
-"たバイト数が返される。しかしこの時点でのシフト状態は失われる。"
#. type: Plain text
-#: build/C/man3/wcstombs.3:51
+#: build/C/man7/vdso.7:42
msgid ""
-"3. The wide-character string has been completely converted, including the "
-"terminating null wide character (L\\(aq\\e0\\(aq). In this case the "
-"conversion ends in the initial state. The number of bytes written to "
-"I<dest>, excluding the terminating null byte (\\(aq\\e0\\(aq), is returned."
+"The rest of this documentation is geared toward the curious and/or C library "
+"writers rather than general developers. If you're trying to call the vDSO "
+"in your own application rather than using the C library, you're most likely "
+"doing it wrong."
msgstr ""
-"3. ワイド文字列が終端の NULL ワイド文字 (L\\(aq\\e0\\(aq) を含めて完全に変換"
-"された場合。\n"
-"この場合には変換は初期状態で終了し、 I<dest> に書き込まれたバイト数を返す\n"
-"(終端の NULL バイト (\\(aq\\e0\\(aq) は含まれない)。"
-#. type: Plain text
-#: build/C/man3/wcstombs.3:54
-msgid ""
-"The programmer must ensure that there is room for at least I<n> bytes at "
-"I<dest>."
+#. type: SS
+#: build/C/man7/vdso.7:42
+#, no-wrap
+msgid "Example background"
msgstr ""
-"プログラマーは I<dest> に最低でも I<n> バイトの空きがあることを 保証しなけれ"
-"ばならない。"
#. type: Plain text
-#: build/C/man3/wcstombs.3:58
+#: build/C/man7/vdso.7:56
msgid ""
-"If I<dest> is NULL, I<n> is ignored, and the conversion proceeds as above, "
-"except that the converted bytes are not written out to memory, and that no "
-"length limit exists."
+"Making system calls can be slow. In x86 32-bit systems, you can trigger a "
+"software interrupt (I<int $0x80>) to tell the kernel you wish to make a "
+"system call. However, this instruction is expensive: it goes through the "
+"full interrupt-handling paths in the processor's microcode as well as in the "
+"kernel. Newer processors have faster (but backward incompatible) "
+"instructions to initiate system calls. Rather than require the C library to "
+"figure out if this functionality is available at run time, the C library can "
+"use functions provided by the kernel in the vDSO."
msgstr ""
-"I<dest> が NULL の場合、I<n> は無視される。上記と同様に変換が行 なわれるが変"
-"換結果のバイト列はメモリには書き込まれない。 また長さの上限が存在しない。"
#. type: Plain text
-#: build/C/man3/wcstombs.3:61
+#: build/C/man7/vdso.7:63
msgid ""
-"In order to avoid the case 2 above, the programmer should make sure I<n> is "
-"greater or equal to I<wcstombs(NULL,src,0)+1>."
+"Note that the terminology can be confusing. On x86 systems, the vDSO "
+"function used to determine the preferred method of making a system call is "
+"named \"__kernel_vsyscall\", but on x86_64, the term \"vsyscall\" also "
+"refers to an obsolete way to ask the kernel what time it is or what CPU the "
+"caller is on."
msgstr ""
-"上記の 2. の場合を避けるために、プログラマーは I<n> が I<wcstombs(NULL,"
-"src,0)+1> 以上であることを保証しなければならない。"
#. type: Plain text
-#: build/C/man3/wcstombs.3:70
+#: build/C/man7/vdso.7:79
msgid ""
-"The B<wcstombs>() function returns the number of bytes that make up the "
-"converted part of multibyte sequence, not including the terminating null "
-"byte. If a wide character was encountered which could not be converted, I<"
-"(size_t)\\ -1> is returned."
+"One frequently used system call is B<gettimeofday>(2). This system call is "
+"called both directly by user-space applications as well as indirectly by the "
+"C library. Think timestamps or timing loops or polling\\(emall of these "
+"frequently need to know what time it is right now. This information is also "
+"not secret\\(emany application in any privilege mode (root or any "
+"unprivileged user) will get the same answer. Thus the kernel arranges for "
+"the information required to answer this question to be placed in memory the "
+"process can access. Now a call to B<gettimeofday>(2) changes from a system "
+"call to a normal function call and a few memory accesses."
msgstr ""
-"B<wcstombs>() 関数は生成したマルチバイト列のバイト数を返す。終端の ナル文字"
-"は含まない。もし変換できないワイド文字に遭遇した場合には I<(size_t)\\ -1> を"
-"返す。"
-#. type: Plain text
-#: build/C/man3/wcstombs.3:79
-msgid ""
-"The behavior of B<wcstombs>() depends on the B<LC_CTYPE> category of the "
-"current locale."
+#. type: SS
+#: build/C/man7/vdso.7:79
+#, no-wrap
+msgid "Finding the vDSO"
msgstr ""
-"B<wcstombs>() の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"
#. type: Plain text
-#: build/C/man3/wcstombs.3:84
+#: build/C/man7/vdso.7:86
msgid ""
-"The function B<wcsrtombs>(3) provides a thread safe interface to the same "
-"functionality."
+"The base address of the vDSO (if one exists) is passed by the kernel to each "
+"program in the initial auxiliary vector (see B<getauxval>(3)), via the "
+"B<AT_SYSINFO_EHDR> tag."
msgstr ""
-"B<wcsrtombs>() 関数は同じ機能のためのスレッド・セーフな インターフェースを提"
-"供する。"
#. type: Plain text
-#: build/C/man3/wcstombs.3:87
-msgid "B<mbstowcs>(3), B<wcsrtombs>(3)"
-msgstr "B<mbstowcs>(3), B<wcsrtombs>(3)"
-
-#. type: TH
-#: build/C/man3/wctomb.3:16
-#, no-wrap
-msgid "WCTOMB"
-msgstr "WCTOMB"
+#: build/C/man7/vdso.7:95
+msgid ""
+"You must not assume the vDSO is mapped at any particular location in the "
+"user's memory map. The base address will usually be randomized at run time "
+"every time a new process image is created (at B<execve>(2) time). This is "
+"done for security reasons, to prevent \"return-to-libc\" attacks."
+msgstr ""
#. type: Plain text
-#: build/C/man3/wctomb.3:19
-msgid "wctomb - convert a wide character to a multibyte sequence"
-msgstr "wctomb - ワイド文字をマルチバイト列に変換する。"
+#: build/C/man7/vdso.7:104
+msgid ""
+"For some architectures, there is also an B<AT_SYSINFO> tag. This is used "
+"only for locating the vsyscall entry point and is frequently omitted or set "
+"to 0 (meaning it's not available). This tag is a throwback to the initial "
+"vDSO work (see I<History> below) and its use should be avoided."
+msgstr ""
-#. type: Plain text
-#: build/C/man3/wctomb.3:24
+#. type: SS
+#: build/C/man7/vdso.7:104
#, no-wrap
-msgid "B<int wctomb(char *>I<s>B<, wchar_t >I<wc>B<);>\n"
-msgstr "B<int wctomb(char *>I<s>B<, wchar_t >I<wc>B<);>\n"
+msgid "File format"
+msgstr ""
#. type: Plain text
-#: build/C/man3/wctomb.3:38
+#: build/C/man7/vdso.7:111
msgid ""
-"If I<s> is not NULL, the B<wctomb>() function converts the wide character "
-"I<wc> to its multibyte representation and stores it at the beginning of the "
-"character array pointed to by I<s>. It updates the shift state, which is "
-"stored in a static anonymous variable only known to the wctomb function, and "
-"returns the length of said multibyte representation, that is, the number of "
-"bytes written at I<s>."
+"Since the vDSO is a fully formed ELF image, you can do symbol lookups on "
+"it. This allows new symbols to be added with newer kernel releases, and "
+"allows the C library to detect available functionality at run time when "
+"running under different kernel versions. Oftentimes the C library will do "
+"detection with the first call and then cache the result for subsequent calls."
msgstr ""
-"I<s> が NULL でなければ、 B<wctomb>() 関数はワイド文字 I<wc> を マルチバイト"
-"表現に変換して I<s> の指す文字配列に格納する。 同時に wctomb 関数のみが使用す"
-"る静的で名前のないシフト状態を更新する。 この関数はマルチバイト表現の長さ、す"
-"なわち I<s> に書き込まれた バイト数を返す。"
#. type: Plain text
-#: build/C/man3/wctomb.3:42
+#: build/C/man7/vdso.7:120
msgid ""
-"The programmer must ensure that there is room for at least B<MB_CUR_MAX> "
-"bytes at I<s>."
+"All symbols are also versioned (using the GNU version format). This allows "
+"the kernel to update the function signature without breaking backward "
+"compatibility. This means changing the arguments that the function accepts "
+"as well as the return value. Thus, when looking up a symbol in the vDSO, "
+"you must always include the version to match the ABI you expect."
msgstr ""
-"プログラマーは I<s> に少なくとも B<MB_CUR_MAX> バイトの空きがあることを保証し"
-"なければならない。"
-#. The Dinkumware doc and the Single UNIX specification say this, but
-#. glibc doesn't implement this.
#. type: Plain text
-#: build/C/man3/wctomb.3:52
+#: build/C/man7/vdso.7:125
msgid ""
-"If I<s> is NULL, the B<wctomb>() function resets the shift state, only "
-"known to this function, to the initial state, and returns nonzero if the "
-"encoding has nontrivial shift state, or zero if the encoding is stateless."
+"Typically the vDSO follows the naming convention of prefixing all symbols "
+"with \"__vdso_\" or \"__kernel_\" so as to distinguish them from other "
+"standard symbols. For example, the \"gettimeofday\" function is named "
+"\"__vdso_gettimeofday\"."
msgstr ""
-"I<s> が NULL ならば、 B<wctomb>() 関数は自分のみが使用するシフト状態を 初期"
-"状態に戻して、文字符号がシフト状態に依存しているならばゼロ以外を シフト状態に"
-"依存しない場合にはゼロを返す。"
#. type: Plain text
-#: build/C/man3/wctomb.3:61
+#: build/C/man7/vdso.7:129
msgid ""
-"If I<s> is not NULL, the B<wctomb>() function returns the number of bytes "
-"that have been written to the byte array at I<s>. If I<wc> can not be "
-"represented as a multibyte sequence (according to the current locale), -1 is "
-"returned."
+"You use the standard C calling conventions when calling any of these "
+"functions. No need to worry about weird register or stack behavior."
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:130
+#, no-wrap
+msgid "Source"
msgstr ""
-"I<s> が NULL でない場合 B<wctomb>() 関数はバイト配列 I<s> に 書き込まれたバ"
-"イト数を返す。I<wc> が(現在のロケールにおいて) マルチバイト列で表現できない"
-"場合には -1 を返す。"
#. type: Plain text
-#: build/C/man3/wctomb.3:66
+#: build/C/man7/vdso.7:134
msgid ""
-"If I<s> is NULL, the B<wctomb>() function returns nonzero if the encoding "
-"has nontrivial shift state, or zero if the encoding is stateless."
+"When you compile the kernel, it will automatically compile and link the vDSO "
+"code for you. You will frequently find it under the architecture-specific "
+"directory:"
msgstr ""
-"I<s> が NULL の場合 B<wctomb>() 関数は文字符号がシフト状態に 依存している場"
-"合にはゼロ以外、シフト状態に依存しない場合はゼロを返す。"
#. type: Plain text
-#: build/C/man3/wctomb.3:75
-msgid ""
-"The behavior of B<wctomb>() depends on the B<LC_CTYPE> category of the "
-"current locale."
+#: build/C/man7/vdso.7:136
+#, no-wrap
+msgid " find arch/$ARCH/ -name '*vdso*.so*' -o -name '*gate*.so*'\n"
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:137
+#, no-wrap
+msgid "vDSO names"
msgstr ""
-"B<wctomb>() 関数の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存してい"
-"る。"
#. type: Plain text
-#: build/C/man3/wctomb.3:81
+#: build/C/man7/vdso.7:143
msgid ""
-"This function is not multithread safe. The function B<wcrtomb>(3) provides "
-"a better interface to the same functionality."
+"The name of the vDSO varies across architectures. It will often show up in "
+"things like glibc's B<ldd>(1) output. The exact name should not matter to "
+"any code, so do not hardcode it."
msgstr ""
-"この関数はマルチスレッドでは安全ではない。 B<wcrtomb>(3) 関数は 同じ機能のよ"
-"り良いインターフェースを提供する。"
-#. type: Plain text
-#: build/C/man3/wctomb.3:85
-msgid "B<MB_CUR_MAX>(3), B<wcrtomb>(3), B<wcstombs>(3)"
-msgstr "B<MB_CUR_MAX>(3), B<wcrtomb>(3), B<wcstombs>(3)"
+#. type: tbl table
+#: build/C/man7/vdso.7:148
+#, no-wrap
+msgid "user ABI\tvDSO name\n"
+msgstr ""
-#~ msgid "1993-03-29"
-#~ msgstr "1993-03-29"
+#. type: tbl table
+#: build/C/man7/vdso.7:149 build/C/man7/vdso.7:198 build/C/man7/vdso.7:235
+#: build/C/man7/vdso.7:263 build/C/man7/vdso.7:299 build/C/man7/vdso.7:333
+#: build/C/man7/vdso.7:359 build/C/man7/vdso.7:384 build/C/man7/vdso.7:402
+#: build/C/man7/vdso.7:420 build/C/man7/vdso.7:438 build/C/man7/vdso.7:458
+#: build/C/man7/vdso.7:477
+#, no-wrap
+msgid "_\n"
+msgstr "_\n"
-#~ msgid "2005-07-14"
-#~ msgstr "2005-07-14"
+#. type: tbl table
+#: build/C/man7/vdso.7:150
+#, no-wrap
+msgid "aarch64\tlinux-vdso.so.1\n"
+msgstr "aarch64\tlinux-vdso.so.1\n"
-#~ msgid ""
-#~ "In locales other than the \"C\" locale, other strings may also be "
-#~ "accepted. (For example, the thousands separator of the current locale "
-#~ "may be supported.)"
-#~ msgstr ""
-#~ "\"C\" 以外のロケールの場合、その他の文字列も受け付けられるかもしれない。 "
-#~ "(例えば、現在のロケールの 1000 毎の区切り文字がサポートされているかもしれ"
-#~ "ない。)"
+#. type: tbl table
+#: build/C/man7/vdso.7:151
+#, no-wrap
+msgid "ia64\tlinux-gate.so.1\n"
+msgstr "ia64\tlinux-gate.so.1\n"
-#~ msgid ""
-#~ "Recent versions of Linux libc (later than 5.4.23) and glibc (2.x) "
-#~ "include a B<malloc>() implementation which is tunable via environment "
-#~ "variables. When B<MALLOC_CHECK_> is set, a special (less efficient) "
-#~ "implementation is used which is designed to be tolerant against simple "
-#~ "errors, such as double calls of B<free>() with the same argument, or "
-#~ "overruns of a single byte (off-by-one bugs). Not all such errors can be "
-#~ "protected against, however, and memory leaks can result. If "
-#~ "B<MALLOC_CHECK_> is set to 0, any detected heap corruption is silently "
-#~ "ignored; if set to 1, a diagnostic message is printed on I<stderr>; if "
-#~ "set to 2, B<abort>(3) is called immediately; if set to 3, a diagnostic "
-#~ "message is printed on I<stderr> and the program is aborted. Using a "
-#~ "nonzero B<MALLOC_CHECK_> value can be useful because otherwise a crash "
-#~ "may happen much later, and the true cause for the problem is then very "
-#~ "hard to track down."
-#~ msgstr ""
-#~ "最近のバージョンの Linux libc (5.4.23 以降) と glibc (2.x) では、 "
-#~ "B<malloc>() の動作を環境変数によって制御できるような実装がされている。 "
-#~ "B<MALLOC_CHECK_> が設定されていると、特殊な実装が用いられ、 単純なエラーに"
-#~ "は耐えることができるようになる (効率は悪くなる)。例えば、 B<free>() を同"
-#~ "じ引き数で二度呼び出してしまう、 1 バイトだけ行きすぎてしまう (off-by-one "
-#~ "バグ) などがこれに当たる。 しかし、これらのエラーの全てを防ぐことができる"
-#~ "わけではなく、 その場合にはメモリリークが起こってしまう。 "
-#~ "B<MALLOC_CHECK_> が 0 にセットされていると、ヒープの破壊を黙って無視す"
-#~ "る。 1 にセットされていると、診断メッセージが標準エラー出力に表示される。 "
-#~ "2 にセットされていると、ただちに B<abort>(3) が呼び出される。 3 にセット"
-#~ "されていると、診断メッセージが標準エラー出力に表示され、 プログラムは強制"
-#~ "終了 (abort) される。 B<MALLOC_CHECK_> に 0 以外の値をセットして役に立つ状"
-#~ "況としては、 実際のプロセスのクラッシュがずっと後に起こり、 本当の原因を探"
-#~ "し出すのが非常に困難な場合などが挙げられるだろう。"
+#. type: tbl table
+#: build/C/man7/vdso.7:152
+#, no-wrap
+msgid "ppc/32\tlinux-vdso32.so.1\n"
+msgstr "ppc/32\tlinux-vdso32.so.1\n"
-#~ msgid "2009-01-13"
-#~ msgstr "2009-01-13"
+#. type: tbl table
+#: build/C/man7/vdso.7:153
+#, no-wrap
+msgid "ppc/64\tlinux-vdso64.so.1\n"
+msgstr "ppc/64\tlinux-vdso64.so.1\n"
-#~ msgid "B<void *calloc(size_t >I<nmemb>B<, size_t >I<size>B<);>\n"
-#~ msgstr "B<void *calloc(size_t >I<nmemb>B<, size_t >I<size>B<);>\n"
+#. type: tbl table
+#: build/C/man7/vdso.7:154
+#, no-wrap
+msgid "s390\tlinux-vdso32.so.1\n"
+msgstr "s390\tlinux-vdso32.so.1\n"
-#~ msgid "B<void *malloc(size_t >I<size>B<);>\n"
-#~ msgstr "B<void *malloc(size_t >I<size>B<);>\n"
+#. type: tbl table
+#: build/C/man7/vdso.7:155
+#, no-wrap
+msgid "s390x\tlinux-vdso64.so.1\n"
+msgstr "s390x\tlinux-vdso64.so.1\n"
-#~ msgid "B<void free(void >I<*ptr>B<);>\n"
-#~ msgstr "B<void free(void >I<*ptr>B<);>\n"
+#. type: tbl table
+#: build/C/man7/vdso.7:156
+#, no-wrap
+msgid "sh\tlinux-gate.so.1\n"
+msgstr "sh\tlinux-gate.so.1\n"
-#~ msgid "B<void *realloc(void >I<*ptr>B<, size_t >I<size>B<);>\n"
-#~ msgstr "B<void *realloc(void >I<*ptr>B<, size_t >I<size>B<);>\n"
+#. type: tbl table
+#: build/C/man7/vdso.7:157
+#, no-wrap
+msgid "i386\tlinux-gate.so.1\n"
+msgstr "i386\tlinux-gate.so.1\n"
-#~ msgid "#B< echo 2 E<gt> /proc/sys/vm/overcommit_memory>\n"
-#~ msgstr "#B< echo 2 E<gt> /proc/sys/vm/overcommit_memory>\n"
+#. type: tbl table
+#: build/C/man7/vdso.7:158
+#, no-wrap
+msgid "x86_64\tlinux-vdso.so.1\n"
+msgstr "x86_64\tlinux-vdso.so.1\n"
-#~ msgid ""
-#~ "See also the kernel Documentation directory, files I<vm/overcommit-"
-#~ "accounting> and I<sysctl/vm.txt>."
-#~ msgstr ""
-#~ "カーネルの付属文書の I<vm/overcommit-accounting> と I<sysctl/vm.txt> も参"
-#~ "照のこと。"
+#. type: tbl table
+#: build/C/man7/vdso.7:159
+#, no-wrap
+msgid "x86/x32\tlinux-vdso.so.1\n"
+msgstr "x86/x32\tlinux-vdso.so.1\n"
-#~ msgid "2008-06-19"
-#~ msgstr "2008-06-19"
+#. type: SH
+#: build/C/man7/vdso.7:165
+#, no-wrap
+msgid "ARCHITECTURE-SPECIFIC NOTES"
+msgstr ""
-#~ msgid ""
-#~ "B<mkstemp>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"
-#~ msgstr ""
-#~ "B<mkstemp>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500"
+#. type: Plain text
+#: build/C/man7/vdso.7:168
+msgid "The subsections below provide architecture-specific notes on the vDSO."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/vdso.7:177
+msgid ""
+"Note that the vDSO that is used is based on the ABI of your user-space code "
+"and not the ABI of the kernel. Thus, for example, when you run an i386 32-"
+"bit ELF binary, you'll get the same vDSO regardless of whether you run it "
+"under an i386 32-bit kernel or under an x86_64 64-bit kernel. Therefore, "
+"the name of the user-space ABI should be used to determine which of the "
+"sections below is relevant."
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:177
+#, no-wrap
+msgid "ARM functions"
+msgstr ""
+
+#. See linux/arch/arm/kernel/entry-armv.S
+#. See linux/Documentation/arm/kernel_user_helpers.txt
+#. type: Plain text
+#: build/C/man7/vdso.7:184
+msgid ""
+"The ARM port has a code page full of utility functions. Since it's just a "
+"raw page of code, there is no ELF information for doing symbol lookups or "
+"versioning. It does provide support for different versions though."
+msgstr ""
-#~ msgid "2008-08-29"
-#~ msgstr "2008-08-29"
+#. type: Plain text
+#: build/C/man7/vdso.7:189
+msgid ""
+"For information on this code page, it's best to refer to the kernel "
+"documentation as it's extremely detailed and covers everything you need to "
+"know: I<Documentation/arm/kernel_user_helpers.txt>."
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:189
+#, no-wrap
+msgid "aarch64 functions"
+msgstr ""
+
+#. See linux/arch/x86/vdso/vdso32.lds.S
+#. type: Plain text
+#: build/C/man7/vdso.7:192 build/C/man7/vdso.7:229 build/C/man7/vdso.7:353
+#: build/C/man7/vdso.7:378 build/C/man7/vdso.7:396 build/C/man7/vdso.7:414
+#: build/C/man7/vdso.7:432 build/C/man7/vdso.7:471
+msgid "The table below lists the symbols exported by the vDSO."
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:197 build/C/man7/vdso.7:234 build/C/man7/vdso.7:332
+#: build/C/man7/vdso.7:358 build/C/man7/vdso.7:383 build/C/man7/vdso.7:401
+#: build/C/man7/vdso.7:419 build/C/man7/vdso.7:437 build/C/man7/vdso.7:457
+#: build/C/man7/vdso.7:476
+#, no-wrap
+msgid "symbol\tversion\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:199
+#, no-wrap
+msgid "__kernel_rt_sigreturn\tLINUX_2.6.39\n"
+msgstr "__kernel_rt_sigreturn\tLINUX_2.6.39\n"
+
+#. type: tbl table
+#: build/C/man7/vdso.7:200
+#, no-wrap
+msgid "__kernel_gettimeofday\tLINUX_2.6.39\n"
+msgstr "__kernel_gettimeofday\tLINUX_2.6.39\n"
+
+#. type: tbl table
+#: build/C/man7/vdso.7:201
+#, no-wrap
+msgid "__kernel_clock_gettime\tLINUX_2.6.39\n"
+msgstr "__kernel_clock_gettime\tLINUX_2.6.39\n"
+
+#. type: tbl table
+#: build/C/man7/vdso.7:202
+#, no-wrap
+msgid "__kernel_clock_getres\tLINUX_2.6.39\n"
+msgstr "__kernel_clock_getres\tLINUX_2.6.39\n"
+
+#. type: SS
+#: build/C/man7/vdso.7:208
+#, no-wrap
+msgid "bfin (Blackfin) functions"
+msgstr ""
+
+#. See linux/arch/blackfin/kernel/fixed_code.S
+#. See http://docs.blackfin.uclinux.org/doku.php?id=linux-kernel:fixed-code
+#. type: Plain text
+#: build/C/man7/vdso.7:220
+msgid ""
+"As this CPU lacks a memory management unit (MMU), it doesn't set up a vDSO "
+"in the normal sense. Instead, it maps at boot time a few raw functions into "
+"a fixed location in memory. User-space applications then call directly into "
+"that region. There is no provision for backward compatibility beyond "
+"sniffing raw opcodes, but as this is an embedded CPU, it can get away with "
+"things\\(emsome of the object formats it runs aren't even ELF based (they're "
+"bFLT/FLAT)."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/vdso.7:223
+msgid ""
+"For information on this code page, it's best to refer to the public "
+"documentation:"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/vdso.7:225
+msgid "http://docs.blackfin.uclinux.org/doku.php?id=linux-kernel:fixed-code"
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:225
+#, no-wrap
+msgid "ia64 (Itanium) functions"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:236
+#, no-wrap
+msgid "__kernel_sigtramp\tLINUX_2.5\n"
+msgstr "__kernel_sigtramp\tLINUX_2.5\n"
+
+#. type: tbl table
+#: build/C/man7/vdso.7:237
+#, no-wrap
+msgid "__kernel_syscall_via_break\tLINUX_2.5\n"
+msgstr "__kernel_syscall_via_break\tLINUX_2.5\n"
+
+#. type: tbl table
+#: build/C/man7/vdso.7:238
+#, no-wrap
+msgid "__kernel_syscall_via_epc\tLINUX_2.5\n"
+msgstr "__kernel_syscall_via_epc\tLINUX_2.5\n"
+
+#. type: Plain text
+#: build/C/man7/vdso.7:257
+msgid ""
+"The Itanium port is somewhat tricky. In addition to the vDSO above, it also "
+"has \"light-weight system calls\" (also known as \"fast syscalls\" or \"fsys"
+"\"). You can invoke these via the I<__kernel_syscall_via_epc> vDSO helper. "
+"The system calls listed here have the same semantics as if you called them "
+"directly via B<syscall>(2), so refer to the relevant documentation for "
+"each. The table below lists the functions available via this mechanism."
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:262
+#, no-wrap
+msgid "function\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:264
+#, no-wrap
+msgid "clock_gettime\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:265
+#, no-wrap
+msgid "getcpu\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:266
+#, no-wrap
+msgid "getpid\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:267
+#, no-wrap
+msgid "getppid\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:268
+#, no-wrap
+msgid "gettimeofday\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:269
+#, no-wrap
+msgid "set_tid_address\n"
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:275
+#, no-wrap
+msgid "parisc (hppa) functions"
+msgstr ""
+
+#. See linux/arch/parisc/kernel/syscall.S
+#. See linux/Documentation/parisc/registers
+#. type: Plain text
+#: build/C/man7/vdso.7:286
+msgid ""
+"The parisc port has a code page full of utility functions called a gateway "
+"page. Rather than use the normal ELF auxiliary vector approach, it passes "
+"the address of the page to the process via the SR2 register. The "
+"permissions on the page are such that merely executing those addresses "
+"automatically executes with kernel privileges and not in user space. This "
+"is done to match the way HP-UX works."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/vdso.7:291
+msgid ""
+"Since it's just a raw page of code, there is no ELF information for doing "
+"symbol lookups or versioning. Simply call into the appropriate offset via "
+"the branch instruction, for example:"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/vdso.7:293
+#, no-wrap
+msgid " ble E<lt>offsetE<gt>(%sr2, %r0)\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:298
+#, no-wrap
+msgid "offset\tfunction\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:300
+#, no-wrap
+msgid "00b0\tlws_entry\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:301
+#, no-wrap
+msgid "00e0\tset_thread_pointer\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:302
+#, no-wrap
+msgid "0100\tlinux_gateway_entry (syscall)\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:303
+#, no-wrap
+msgid "0268\tsyscall_nosys\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:304
+#, no-wrap
+msgid "0274\ttracesys\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:305
+#, no-wrap
+msgid "0324\ttracesys_next\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:306
+#, no-wrap
+msgid "0368\ttracesys_exit\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:307
+#, no-wrap
+msgid "03a0\ttracesys_sigexit\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:308
+#, no-wrap
+msgid "03b8\tlws_start\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:309
+#, no-wrap
+msgid "03dc\tlws_exit_nosys\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:310
+#, no-wrap
+msgid "03e0\tlws_exit\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:311
+#, no-wrap
+msgid "03e4\tlws_compare_and_swap64\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:312
+#, no-wrap
+msgid "03e8\tlws_compare_and_swap\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:313
+#, no-wrap
+msgid "0404\tcas_wouldblock\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:314
+#, no-wrap
+msgid "0410\tcas_action\n"
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:320
+#, no-wrap
+msgid "ppc/32 functions"
+msgstr ""
+
+#. See linux/arch/powerpc/kernel/vdso32/vdso32.lds.S
+#. type: Plain text
+#: build/C/man7/vdso.7:327
+msgid ""
+"The table below lists the symbols exported by the vDSO. The functions "
+"marked with a I<*> are available only when the kernel is a PowerPC64 (64-"
+"bit) kernel."
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:334 build/C/man7/vdso.7:360
+#, no-wrap
+msgid "__kernel_clock_getres\tLINUX_2.6.15\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:335 build/C/man7/vdso.7:361
+#, no-wrap
+msgid "__kernel_clock_gettime\tLINUX_2.6.15\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:336 build/C/man7/vdso.7:362
+#, no-wrap
+msgid "__kernel_datapage_offset\tLINUX_2.6.15\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:337 build/C/man7/vdso.7:363
+#, no-wrap
+msgid "__kernel_get_syscall_map\tLINUX_2.6.15\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:338 build/C/man7/vdso.7:364
+#, no-wrap
+msgid "__kernel_get_tbfreq\tLINUX_2.6.15\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:339
+#, no-wrap
+msgid "__kernel_getcpu I<*>\tLINUX_2.6.15\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:340 build/C/man7/vdso.7:366
+#, no-wrap
+msgid "__kernel_gettimeofday\tLINUX_2.6.15\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:341
+#, no-wrap
+msgid "__kernel_sigtramp_rt32\tLINUX_2.6.15\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:342
+#, no-wrap
+msgid "__kernel_sigtramp32\tLINUX_2.6.15\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:343 build/C/man7/vdso.7:368
+#, no-wrap
+msgid "__kernel_sync_dicache\tLINUX_2.6.15\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:344 build/C/man7/vdso.7:369
+#, no-wrap
+msgid "__kernel_sync_dicache_p5\tLINUX_2.6.15\n"
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:350
+#, no-wrap
+msgid "ppc/64 functions"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:365
+#, no-wrap
+msgid "__kernel_getcpu\tLINUX_2.6.15\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:367
+#, no-wrap
+msgid "__kernel_sigtramp_rt64\tLINUX_2.6.15\n"
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:375
+#, no-wrap
+msgid "s390 functions"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:385 build/C/man7/vdso.7:403
+#, no-wrap
+msgid "__kernel_clock_getres\tLINUX_2.6.29\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:386 build/C/man7/vdso.7:404
+#, no-wrap
+msgid "__kernel_clock_gettime\tLINUX_2.6.29\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:387 build/C/man7/vdso.7:405
+#, no-wrap
+msgid "__kernel_gettimeofday\tLINUX_2.6.29\n"
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:393
+#, no-wrap
+msgid "s390x functions"
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:411
+#, no-wrap
+msgid "sh (SuperH) functions"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:421
+#, no-wrap
+msgid "__kernel_rt_sigreturn\tLINUX_2.6\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:422
+#, no-wrap
+msgid "__kernel_sigreturn\tLINUX_2.6\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:423
+#, no-wrap
+msgid "__kernel_vsyscall\tLINUX_2.6\n"
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:429
+#, no-wrap
+msgid "i386 functions"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:439
+#, no-wrap
+msgid "__kernel_sigreturn\tLINUX_2.5\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:440
+#, no-wrap
+msgid "__kernel_rt_sigreturn\tLINUX_2.5\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:441
+#, no-wrap
+msgid "__kernel_vsyscall\tLINUX_2.5\n"
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:447
+#, no-wrap
+msgid "x86_64 functions"
+msgstr ""
+
+#. See linux/arch/x86/vdso/vdso.lds.S
+#. type: Plain text
+#: build/C/man7/vdso.7:452
+msgid ""
+"The table below lists the symbols exported by the vDSO. All of these "
+"symbols are also available without the \"__vdso_\" prefix, but you should "
+"ignore those and stick to the names below."
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:459 build/C/man7/vdso.7:478
+#, no-wrap
+msgid "__vdso_clock_gettime\tLINUX_2.6\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:460 build/C/man7/vdso.7:479
+#, no-wrap
+msgid "__vdso_getcpu\tLINUX_2.6\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:461 build/C/man7/vdso.7:480
+#, no-wrap
+msgid "__vdso_gettimeofday\tLINUX_2.6\n"
+msgstr ""
+
+#. type: tbl table
+#: build/C/man7/vdso.7:462 build/C/man7/vdso.7:481
+#, no-wrap
+msgid "__vdso_time\tLINUX_2.6\n"
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:468
+#, no-wrap
+msgid "x86/x32 functions"
+msgstr ""
+
+#. type: SS
+#: build/C/man7/vdso.7:487
+#, no-wrap
+msgid "History"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/vdso.7:494
+msgid ""
+"The vDSO was originally just a single function\\(emthe vsyscall. In older "
+"kernels, you might see that name in a process's memory map rather than \"vdso"
+"\". Over time, people realized that this mechanism was a great way to pass "
+"more functionality to user space, so it was reconceived as a vDSO in the "
+"current format."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/vdso.7:498
+msgid "B<syscalls>(2), B<getauxval>(3), B<proc>(5)"
+msgstr "B<syscalls>(2), B<getauxval>(3), B<proc>(5)"
+
+#. type: Plain text
+#: build/C/man7/vdso.7:500
+msgid "The documents, examples, and source code in the Linux source code tree:"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/vdso.7:506
+#, no-wrap
+msgid ""
+"Documentation/ABI/stable/vdso\n"
+"Documentation/ia64/fsys.txt\n"
+"Documentation/vDSO/* (includes examples of using the vDSO)\n"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man7/vdso.7:508
+#, no-wrap
+msgid "find arch/ -iname '*vdso*' -o -iname '*gate*'\n"
+msgstr "find arch/ -iname '*vdso*' -o -iname '*gate*'\n"
+
+#. type: TH
+#: build/C/man3/wcstombs.3:16
+#, no-wrap
+msgid "WCSTOMBS"
+msgstr "WCSTOMBS"
+
+#. type: Plain text
+#: build/C/man3/wcstombs.3:19
+msgid "wcstombs - convert a wide-character string to a multibyte string"
+msgstr "wcstombs - ワイド文字列をマルチバイト文字列に変換する"
+
+#. type: Plain text
+#: build/C/man3/wcstombs.3:24
+#, no-wrap
+msgid "B<size_t wcstombs(char *>I<dest>B<, const wchar_t *>I<src>B<, size_t >I<n>B<);>\n"
+msgstr "B<size_t wcstombs(char *>I<dest>B<, const wchar_t *>I<src>B<, size_t >I<n>B<);>\n"
+
+#. type: Plain text
+#: build/C/man3/wcstombs.3:42
+msgid ""
+"If I<dest> is not NULL, the B<wcstombs>() function converts the wide-"
+"character string I<src> to a multibyte string starting at I<dest>. At most "
+"I<n> bytes are written to I<dest>. The conversion starts in the initial "
+"state. The conversion can stop for three reasons:"
+msgstr ""
+"I<dest> が NULL でない場合、 B<wcstombs>() 関数は ワイド文字列 I<src> を "
+"I<dest> から始まるマルチバイト文字列に 変換する。I<dest> には最大で I<n> バイ"
+"トが書き込まれる。 変換は初期状態で開始される。変換は以下の3つの理由により停"
+"止する。"
+
+#. type: Plain text
+#: build/C/man3/wcstombs.3:48
+msgid ""
+"1. A wide character has been encountered that can not be represented as a "
+"multibyte sequence (according to the current locale). In this case, "
+"I<(size_t)\\ -1> is returned."
+msgstr ""
+"1. (現在のロケールにおける)マルチバイト列で表現できないワイド文字に 遭遇した"
+"場合。この場合には I<(size_t)\\ -1> が返される。"
+
+#. type: Plain text
+#: build/C/man3/wcstombs.3:53
+msgid ""
+"2. The length limit forces a stop. In this case, the number of bytes "
+"written to I<dest> is returned, but the shift state at this point is lost."
+msgstr ""
+"2. 長さ制限によって強制停止させられた場合。この場合には I<dest> に 書き込まれ"
+"たバイト数が返される。しかしこの時点でのシフト状態は失われる。"
+
+#. type: Plain text
+#: build/C/man3/wcstombs.3:60
+msgid ""
+"3. The wide-character string has been completely converted, including the "
+"terminating null wide character (L\\(aq\\e0\\(aq). In this case, the "
+"conversion ends in the initial state. The number of bytes written to "
+"I<dest>, excluding the terminating null byte (\\(aq\\e0\\(aq), is returned."
+msgstr ""
+"3. ワイド文字列が終端のヌルワイド文字 (L\\(aq\\e0\\(aq) を含めて完全に変換さ"
+"れた場合。 この場合には変換は初期状態で終了し、 I<dest> に書き込まれたバイト"
+"数を返す (終端のヌルバイト (\\(aq\\e0\\(aq) は含まれない)。"
+
+#. type: Plain text
+#: build/C/man3/wcstombs.3:66
+msgid ""
+"The programmer must ensure that there is room for at least I<n> bytes at "
+"I<dest>."
+msgstr ""
+"プログラマーは I<dest> に最低でも I<n> バイトの空きがあることを 保証しなけれ"
+"ばならない。"
+
+#. type: Plain text
+#: build/C/man3/wcstombs.3:74
+msgid ""
+"If I<dest> is NULL, I<n> is ignored, and the conversion proceeds as above, "
+"except that the converted bytes are not written out to memory, and no length "
+"limit exists."
+msgstr ""
+"I<dest> が NULL の場合、I<n> は無視される。上記と同様に変換が行 なわれるが変"
+"換結果のバイト列はメモリには書き込まれない。 また長さの上限が存在しない。"
+
+#. type: Plain text
+#: build/C/man3/wcstombs.3:79
+msgid ""
+"In order to avoid the case 2 above, the programmer should make sure I<n> is "
+"greater than or equal to I<wcstombs(NULL,src,0)+1>."
+msgstr ""
+"上記の 2. の場合を避けるために、プログラマーは I<n> が I<wcstombs(NULL,"
+"src,0)+1> 以上であることを保証しなければならない。"
+
+#. type: Plain text
+#: build/C/man3/wcstombs.3:89
+msgid ""
+"The B<wcstombs>() function returns the number of bytes that make up the "
+"converted part of a multibyte sequence, not including the terminating null "
+"byte. If a wide character was encountered which could not be converted, "
+"I<(size_t)\\ -1> is returned."
+msgstr ""
+"B<wcstombs>() 関数は生成したマルチバイト列のバイト数を返す。終端の ヌル文字"
+"は含まない。もし変換できないワイド文字に遭遇した場合には I<(size_t)\\ -1> を"
+"返す。"
+
+#. type: Plain text
+#: build/C/man3/wcstombs.3:98
+msgid ""
+"The behavior of B<wcstombs>() depends on the B<LC_CTYPE> category of the "
+"current locale."
+msgstr ""
+"B<wcstombs>() の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存している。"
+
+#. type: Plain text
+#: build/C/man3/wcstombs.3:103
+msgid ""
+"The function B<wcsrtombs>(3) provides a thread safe interface to the same "
+"functionality."
+msgstr ""
+"B<wcsrtombs>() 関数は同じ機能のためのスレッド・セーフな インターフェースを提"
+"供する。"
+
+#. type: Plain text
+#: build/C/man3/wcstombs.3:109
+msgid "B<mblen>(3), B<mbtowc>(3), B<mbstowcs>(3), B<wcsrtombs>(3) B<wctom>(3)"
+msgstr ""
+"B<mblen>(3), B<mbtowc>(3), B<mbstowcs>(3), B<wcsrtombs>(3) B<wctom>(3)"
+
+#. type: TH
+#: build/C/man3/wctomb.3:16
+#, no-wrap
+msgid "WCTOMB"
+msgstr "WCTOMB"
+
+#. type: Plain text
+#: build/C/man3/wctomb.3:19
+msgid "wctomb - convert a wide character to a multibyte sequence"
+msgstr "wctomb - ワイド文字をマルチバイト列に変換する。"
+
+#. type: Plain text
+#: build/C/man3/wctomb.3:24
+#, no-wrap
+msgid "B<int wctomb(char *>I<s>B<, wchar_t >I<wc>B<);>\n"
+msgstr "B<int wctomb(char *>I<s>B<, wchar_t >I<wc>B<);>\n"
+
+#. type: Plain text
+#: build/C/man3/wctomb.3:45
+msgid ""
+"If I<s> is not NULL, the B<wctomb>() function converts the wide character "
+"I<wc> to its multibyte representation and stores it at the beginning of the "
+"character array pointed to by I<s>. It updates the shift state, which is "
+"stored in a static anonymous variable known only to the B<wctomb>() "
+"function, and returns the length of said multibyte representation, that is, "
+"the number of bytes written at I<s>."
+msgstr ""
+"I<s> が NULL でなければ、 B<wctomb>() 関数はワイド文字 I<wc> を マルチバイト"
+"表現に変換して I<s> の指す文字配列に格納する。 同時に wctomb 関数のみが使用す"
+"る静的で名前のないシフト状態を更新する。 この関数はマルチバイト表現の長さ、す"
+"なわち I<s> に書き込まれた バイト数を返す。"
+
+#. type: Plain text
+#: build/C/man3/wctomb.3:51
+msgid ""
+"The programmer must ensure that there is room for at least B<MB_CUR_MAX> "
+"bytes at I<s>."
+msgstr ""
+"プログラマーは I<s> に少なくとも B<MB_CUR_MAX> バイトの空きがあることを保証し"
+"なければならない。"
+
+#. The Dinkumware doc and the Single UNIX specification say this, but
+#. glibc doesn't implement this.
+#. type: Plain text
+#: build/C/man3/wctomb.3:63
+msgid ""
+"If I<s> is NULL, the B<wctomb>() function resets the shift state, known "
+"only to this function, to the initial state, and returns nonzero if the "
+"encoding has nontrivial shift state, or zero if the encoding is stateless."
+msgstr ""
+"I<s> が NULL ならば、 B<wctomb>() 関数は自分のみが使用するシフト状態を 初期"
+"状態に戻して、文字符号がシフト状態に依存しているならばゼロ以外を シフト状態に"
+"依存しない場合にはゼロを返す。"
+
+#. type: Plain text
+#: build/C/man3/wctomb.3:77
+msgid ""
+"If I<s> is not NULL, the B<wctomb>() function returns the number of bytes "
+"that have been written to the byte array at I<s>. If I<wc> can not be "
+"represented as a multibyte sequence (according to the current locale), -1 is "
+"returned."
+msgstr ""
+"I<s> が NULL でない場合 B<wctomb>() 関数はバイト配列 I<s> に 書き込まれたバ"
+"イト数を返す。I<wc> が(現在のロケールにおいて) マルチバイト列で表現できない"
+"場合には -1 を返す。"
+
+#. type: Plain text
+#: build/C/man3/wctomb.3:84
+msgid ""
+"If I<s> is NULL, the B<wctomb>() function returns nonzero if the encoding "
+"has nontrivial shift state, or zero if the encoding is stateless."
+msgstr ""
+"I<s> が NULL の場合 B<wctomb>() 関数は文字符号がシフト状態に 依存している場"
+"合にはゼロ以外、シフト状態に依存しない場合はゼロを返す。"
+
+#. type: Plain text
+#: build/C/man3/wctomb.3:89
+msgid "The B<wctomb>() function is not thread-safe."
+msgstr "B<wctomb>() 関数はスレッドセーフではない。"
+
+#. type: Plain text
+#: build/C/man3/wctomb.3:98
+msgid ""
+"The behavior of B<wctomb>() depends on the B<LC_CTYPE> category of the "
+"current locale."
+msgstr ""
+"B<wctomb>() 関数の動作は現在のロケールの B<LC_CTYPE> カテゴリに依存してい"
+"る。"
+
+#. type: Plain text
+#: build/C/man3/wctomb.3:103
+msgid ""
+"The function B<wcrtomb>(3) provides a better interface to the same "
+"functionality."
+msgstr "B<wcrtomb>(3) 関数は同じ機能のより良いインタフェースを提供する。"
+
+#. type: Plain text
+#: build/C/man3/wctomb.3:110
+msgid ""
+"B<MB_CUR_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcrtomb>(3), "
+"B<wcstombs>(3)"
+msgstr ""
+"B<MB_CUR_MAX>(3), B<mblen>(3), B<mbstowcs>(3), B<mbtowc>(3), B<wcrtomb>(3), "
+"B<wcstombs>(3)"
+
+#~ msgid ""
+#~ "B<system>() executes a command specified in I<command> by calling B</bin/"
+#~ "sh -c> I<command>, and returns after the command has been completed. "
+#~ "During execution of the command, B<SIGCHLD> will be blocked, and "
+#~ "B<SIGINT> and B<SIGQUIT> will be ignored."
+#~ msgstr ""
+#~ "B<system>() は I<command> で指定したコマンドを B</bin/sh -c> I<command> "
+#~ "の形で実行する。指定したコマンドが終了すればこの関数も終了する。 コマンド"
+#~ "実行中は、 B<SIGCHLD> はブロックされ、 B<SIGINT> と B<SIGQUIT> は無視され"
+#~ "る。"
+
+#~ msgid ""
+#~ "The value returned is -1 on error (e.g., B<fork>(2) failed), and the "
+#~ "return status of the command otherwise. This latter return status is in "
+#~ "the format specified in B<wait>(2). Thus, the exit code of the command "
+#~ "will be I<WEXITSTATUS(status)>. In case I</bin/sh> could not be "
+#~ "executed, the exit status will be that of a command that does "
+#~ "I<exit(127)>."
+#~ msgstr ""
+#~ "エラーが発生した場合 (B<fork>(2) に失敗した場合など)、-1 を返す。 そうで"
+#~ "なければ、コマンドのステータスを返す。 後者の場合、ステータスは "
+#~ "B<wait>(2) で定義されているフォーマットで返ってくる。 従って、コマンドの"
+#~ "終了コードは I<WEXITSTATUS(status)> で得ることが出来る。 I</bin/sh> が実行"
+#~ "出来なかった場合、 終了ステータスはコマンドが I<exit(127)> を実行した場合"
+#~ "と同じになる。"
+
+#~ msgid ""
+#~ "It is possible for the shell command to return 127, so that code is not a "
+#~ "sure indication that the B<execve>(2) call failed."
+#~ msgstr ""
+#~ "実行したシェルコマンドが 127 (B</bin/sh> の呼び出しに失敗した時に返す値) "
+#~ "を返すことも考えられる。 そのため、プログラムは (リターンコードを見るだけ"
+#~ "では) B<execve>(2) の呼び出しが失敗したことを確実に知ることはできない。"
+
+#~ msgid ""
+#~ "The B<mkostemp>() function is like B<mkstemp>(), with the difference "
+#~ "that flags as for B<open>(2) may be specified in I<flags> (e.g., "
+#~ "B<O_APPEND>, B<O_SYNC>)."
+#~ msgstr ""
+#~ "B<mkostemp>() 関数は B<mkstemp>() と同様だが、B<open>(2) に渡される\n"
+#~ "フラグ O_APPENDB<,> B<O_SYNC> など) を I<flags> で指定できる点が異なる"
+
+#~ msgid ""
+#~ "This function is not multithread safe. The function B<wcrtomb>(3) "
+#~ "provides a better interface to the same functionality."
+#~ msgstr ""
+#~ "この関数はマルチスレッドでは安全ではない。 B<wcrtomb>(3) 関数は 同じ機能"
+#~ "のより良いインターフェースを提供する。"
+
+#~ msgid ""
+#~ "The B<putenv>() function returns zero on success, or nonzero if an error "
+#~ "occurs."
+#~ msgstr ""
+#~ "B<putenv>() 関数は、成功した場合 0 を、 エラーが発生した場合 0 以外を返"
+#~ "す。"
+
+#~ msgid ""
+#~ "The B<random>() function returns a value between 0 and B<RAND_MAX>. The "
+#~ "B<srandom>() function returns no value. The B<initstate>() function "
+#~ "returns a pointer to the previous state array. The B<setstate>() "
+#~ "function returns a pointer to the previous state array, or NULL on error."
+#~ msgstr ""
+#~ "B<random>() 関数は 0 と B<RAND_MAX> の間の値を返す。 B<srandom>() 関数は"
+#~ "値を返さない。 B<initstate>() 関数は直前の状態配列へのポインタを返す。 "
+#~ "B<setstate>() 関数は直前の状態配列へのポインタを返し、 エラーの場合は "
+#~ "NULL を返す。"
+
+#~ msgid "All of these functions return 0 on success, or -1 on error."
+#~ msgstr "これらの関数は、成功すると 0 を返し、 エラーの場合は -1 を返す。"
+
+#~ msgid ""
+#~ "In locales other than the \"C\" locale, other strings may also be "
+#~ "accepted. (For example, the thousands separator of the current locale "
+#~ "may be supported.)"
+#~ msgstr ""
+#~ "\"C\" 以外のロケールの場合、その他の文字列も受け付けられるかもしれない。 "
+#~ "(例えば、現在のロケールの 1000 毎の区切り文字がサポートされているかもしれ"
+#~ "ない。)"
+
+#~ msgid ""
+#~ "Recent versions of Linux libc (later than 5.4.23) and glibc (2.x) "
+#~ "include a B<malloc>() implementation which is tunable via environment "
+#~ "variables. When B<MALLOC_CHECK_> is set, a special (less efficient) "
+#~ "implementation is used which is designed to be tolerant against simple "
+#~ "errors, such as double calls of B<free>() with the same argument, or "
+#~ "overruns of a single byte (off-by-one bugs). Not all such errors can be "
+#~ "protected against, however, and memory leaks can result. If "
+#~ "B<MALLOC_CHECK_> is set to 0, any detected heap corruption is silently "
+#~ "ignored; if set to 1, a diagnostic message is printed on I<stderr>; if "
+#~ "set to 2, B<abort>(3) is called immediately; if set to 3, a diagnostic "
+#~ "message is printed on I<stderr> and the program is aborted. Using a "
+#~ "nonzero B<MALLOC_CHECK_> value can be useful because otherwise a crash "
+#~ "may happen much later, and the true cause for the problem is then very "
+#~ "hard to track down."
+#~ msgstr ""
+#~ "最近のバージョンの Linux libc (5.4.23 以降) と glibc (2.x) では、 "
+#~ "B<malloc>() の動作を環境変数によって制御できるような実装がされている。 "
+#~ "B<MALLOC_CHECK_> が設定されていると、特殊な実装が用いられ、 単純なエラーに"
+#~ "は耐えることができるようになる (効率は悪くなる)。例えば、 B<free>() を同"
+#~ "じ引き数で二度呼び出してしまう、 1 バイトだけ行きすぎてしまう (off-by-one "
+#~ "バグ) などがこれに当たる。 しかし、これらのエラーの全てを防ぐことができる"
+#~ "わけではなく、 その場合にはメモリリークが起こってしまう。 "
+#~ "B<MALLOC_CHECK_> が 0 にセットされていると、ヒープの破壊を黙って無視す"
+#~ "る。 1 にセットされていると、診断メッセージが標準エラー出力に表示される。 "
+#~ "2 にセットされていると、ただちに B<abort>(3) が呼び出される。 3 にセット"
+#~ "されていると、診断メッセージが標準エラー出力に表示され、 プログラムは強制"
+#~ "終了 (abort) される。 B<MALLOC_CHECK_> に 0 以外の値をセットして役に立つ状"
+#~ "況としては、 実際のプロセスのクラッシュがずっと後に起こり、 本当の原因を探"
+#~ "し出すのが非常に困難な場合などが挙げられるだろう。"