1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2013-03-22 01:06+0900\n"
10 "PO-Revision-Date: 2012-05-30 01:54+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
19 #: build/C/man3/fgetgrent.3:30
25 #: build/C/man3/fgetgrent.3:30 build/C/man3/fgetpwent.3:33
31 #: build/C/man3/fgetgrent.3:30 build/C/man3/fgetpwent.3:33
32 #: build/C/man3/getgrent_r.3:24 build/C/man3/getgrouplist.3:29
33 #: build/C/man3/getpw.3:32 build/C/man3/getpwent.3:33
34 #: build/C/man3/getpwent_r.3:24 build/C/man3/getpwnam.3:37
35 #: build/C/man3/getspnam.3:8 build/C/man3/initgroups.3:32
36 #: build/C/man3/putgrent.3:7 build/C/man3/putpwent.3:30
37 #: build/C/man3/setaliasent.3:9
43 #: build/C/man3/fgetgrent.3:30 build/C/man3/fgetpwent.3:33
44 #: build/C/man5/ftpusers.5:19 build/C/man3/getgrent.3:30
45 #: build/C/man3/getgrent_r.3:24 build/C/man3/getgrnam.3:33
46 #: build/C/man3/getgrouplist.3:29 build/C/man3/getpw.3:32
47 #: build/C/man3/getpwent.3:33 build/C/man3/getpwent_r.3:24
48 #: build/C/man3/getpwnam.3:37 build/C/man3/getspnam.3:8
49 #: build/C/man5/group.5:26 build/C/man3/initgroups.3:32
50 #: build/C/man5/passwd.5:30 build/C/man3/putgrent.3:7
51 #: build/C/man3/putpwent.3:30 build/C/man3/setaliasent.3:9
53 msgid "Linux Programmer's Manual"
54 msgstr "Linux Programmer's Manual"
57 #: build/C/man3/fgetgrent.3:31 build/C/man3/fgetpwent.3:34
58 #: build/C/man5/ftpusers.5:20 build/C/man3/getgrent.3:31
59 #: build/C/man3/getgrent_r.3:25 build/C/man3/getgrnam.3:34
60 #: build/C/man3/getgrouplist.3:30 build/C/man3/getpw.3:33
61 #: build/C/man3/getpwent.3:34 build/C/man3/getpwent_r.3:25
62 #: build/C/man3/getpwnam.3:38 build/C/man3/getspnam.3:9
63 #: build/C/man5/group.5:27 build/C/man3/initgroups.3:33
64 #: build/C/man5/passwd.5:31 build/C/man3/putgrent.3:8
65 #: build/C/man3/putpwent.3:31 build/C/man3/setaliasent.3:10
71 #: build/C/man3/fgetgrent.3:33
72 msgid "fgetgrent - get group file entry"
73 msgstr "fgetgrent - グループファイルエントリの取り出し"
76 #: build/C/man3/fgetgrent.3:33 build/C/man3/fgetpwent.3:36
77 #: build/C/man3/getgrent.3:33 build/C/man3/getgrent_r.3:27
78 #: build/C/man3/getgrnam.3:36 build/C/man3/getgrouplist.3:32
79 #: build/C/man3/getpw.3:35 build/C/man3/getpwent.3:36
80 #: build/C/man3/getpwent_r.3:27 build/C/man3/getpwnam.3:40
81 #: build/C/man3/getspnam.3:13 build/C/man3/initgroups.3:35
82 #: build/C/man3/putgrent.3:10 build/C/man3/putpwent.3:33
83 #: build/C/man3/setaliasent.3:13
89 #: build/C/man3/fgetgrent.3:38
92 "B<#include E<lt>stdio.hE<gt>>\n"
93 "B<#include E<lt>sys/types.hE<gt>>\n"
94 "B<#include E<lt>grp.hE<gt>>\n"
96 "B<#include E<lt>stdio.hE<gt>>\n"
97 "B<#include E<lt>sys/types.hE<gt>>\n"
98 "B<#include E<lt>grp.hE<gt>>\n"
101 #: build/C/man3/fgetgrent.3:40
103 msgid "B<struct group *fgetgrent(FILE *>I<stream>B<);>\n"
104 msgstr "B<struct group *fgetgrent(FILE *>I<stream>B<);>\n"
107 #: build/C/man3/fgetgrent.3:45 build/C/man3/fgetpwent.3:48
108 #: build/C/man3/getgrent.3:48 build/C/man3/getgrent_r.3:43
109 #: build/C/man3/getgrnam.3:57 build/C/man3/getgrouplist.3:42
110 #: build/C/man3/getpwent.3:51 build/C/man3/getpwent_r.3:43
111 #: build/C/man3/getpwnam.3:61 build/C/man3/getspnam.3:61
112 #: build/C/man3/initgroups.3:46 build/C/man3/putpwent.3:45
114 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
115 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7) 参照):"
118 #: build/C/man3/fgetgrent.3:49
119 msgid "B<fgetgrent>(): _SVID_SOURCE"
120 msgstr "B<fgetgrent>(): _SVID_SOURCE"
123 #: build/C/man3/fgetgrent.3:49 build/C/man3/fgetpwent.3:52
124 #: build/C/man5/ftpusers.5:22 build/C/man3/getgrent.3:68
125 #: build/C/man3/getgrent_r.3:51 build/C/man3/getgrnam.3:67
126 #: build/C/man3/getgrouplist.3:46 build/C/man3/getpw.3:43
127 #: build/C/man3/getpwent.3:62 build/C/man3/getpwent_r.3:50
128 #: build/C/man3/getpwnam.3:71 build/C/man3/getspnam.3:72
129 #: build/C/man5/group.5:29 build/C/man3/initgroups.3:50
130 #: build/C/man5/passwd.5:33 build/C/man3/putgrent.3:16
131 #: build/C/man3/putpwent.3:49 build/C/man3/setaliasent.3:31
137 #: build/C/man3/fgetgrent.3:63
139 "The B<fgetgrent>() function returns a pointer to a structure containing the "
140 "group information from the file referred to by I<stream>. The first time it "
141 "is called it returns the first entry; thereafter, it returns successive "
142 "entries. The file referred to by I<stream> must have the same format as I</"
143 "etc/group> (see B<group>(5))."
145 "B<fgetgrent>() 関数は、 I<stream> で参照されるファイルから取り出したグループ"
146 "情報 を含む構造体へのポインタを返す。最初に呼び出された時は 最初のエントリを"
147 "返し、それ以降は、次のエントリを返す。 I<stream> で参照されるファイルは、 I</"
148 "etc/group> と同じ形式でなければならない (B<group>(5) 参照)。"
151 #: build/C/man3/fgetgrent.3:65 build/C/man3/getgrent.3:92
152 #: build/C/man3/getgrent_r.3:68 build/C/man3/getgrnam.3:86
153 msgid "The I<group> structure is defined in I<E<lt>grp.hE<gt>> as follows:"
154 msgstr "I<group> 構造体は I<E<lt>grp.hE<gt>> で以下のように定義されている:"
157 #: build/C/man3/fgetgrent.3:74
161 " char *gr_name; /* group name */\n"
162 " char *gr_passwd; /* group password */\n"
163 " gid_t gr_gid; /* group ID */\n"
164 " char **gr_mem; /* group members */\n"
168 " char *gr_name; /* グループ名 */\n"
169 " char *gr_passwd; /* グループのパスワード */\n"
170 " gid_t gr_gid; /* グループ ID */\n"
171 " char **gr_mem; /* グループのメンバ */\n"
175 #: build/C/man3/fgetgrent.3:76 build/C/man3/fgetpwent.3:81
176 #: build/C/man3/getgrent.3:106 build/C/man3/getgrent_r.3:101
177 #: build/C/man3/getgrnam.3:136 build/C/man3/getgrouplist.3:78
178 #: build/C/man3/getpw.3:72 build/C/man3/getpwent.3:103
179 #: build/C/man3/getpwent_r.3:103 build/C/man3/getpwnam.3:143
180 #: build/C/man3/getspnam.3:216 build/C/man3/initgroups.3:62
181 #: build/C/man3/putgrent.3:38 build/C/man3/putpwent.3:70
182 #: build/C/man3/setaliasent.3:88
188 #: build/C/man3/fgetgrent.3:83
190 "The B<fgetgrent>() function returns a pointer to a I<group> structure, or "
191 "NULL if there are no more entries or an error occurs."
193 "B<fgetgrent>() 関数は I<group> 構造体へのポインタを返す。 これ以上エントリが"
194 "無いか、エラーが発生した場合は NULL を返す。"
197 #: build/C/man3/fgetgrent.3:83 build/C/man3/fgetpwent.3:88
198 #: build/C/man3/getgrent.3:129 build/C/man3/getgrent_r.3:108
199 #: build/C/man3/getgrnam.3:174 build/C/man3/getpw.3:78
200 #: build/C/man3/getpwent.3:125 build/C/man3/getpwent_r.3:110
201 #: build/C/man3/getpwnam.3:181 build/C/man3/getspnam.3:227
202 #: build/C/man3/initgroups.3:69 build/C/man3/putpwent.3:75
208 #: build/C/man3/fgetgrent.3:84 build/C/man3/fgetpwent.3:89
209 #: build/C/man3/getgrent.3:142 build/C/man3/getgrnam.3:196
210 #: build/C/man3/getpw.3:87 build/C/man3/getpwent.3:140
211 #: build/C/man3/getpwnam.3:203 build/C/man3/initgroups.3:70
217 #. to allocate the group structure, or to allocate buffers
219 #: build/C/man3/fgetgrent.3:89 build/C/man3/getgrent.3:148
220 #: build/C/man3/getgrnam.3:203
221 msgid "Insufficient memory to allocate I<group> structure."
222 msgstr "I<group> 構造体を割り当てるためのメモリが不十分。"
225 #: build/C/man3/fgetgrent.3:89 build/C/man3/fgetpwent.3:98
226 #: build/C/man3/getgrent.3:155 build/C/man3/getgrent_r.3:116
227 #: build/C/man3/getgrnam.3:210 build/C/man3/getgrouplist.3:98
228 #: build/C/man3/getpw.3:96 build/C/man3/getpwent.3:154
229 #: build/C/man3/getpwent_r.3:118 build/C/man3/getpwnam.3:217
230 #: build/C/man3/getspnam.3:247 build/C/man3/initgroups.3:82
231 #: build/C/man3/putgrent.3:40 build/C/man3/putpwent.3:79
232 #: build/C/man3/setaliasent.3:100
234 msgid "CONFORMING TO"
238 #: build/C/man3/fgetgrent.3:91 build/C/man3/fgetpwent.3:100
239 #: build/C/man3/putpwent.3:81
244 #: build/C/man3/fgetgrent.3:91 build/C/man3/fgetpwent.3:100
245 #: build/C/man5/ftpusers.5:49 build/C/man3/getgrent.3:157
246 #: build/C/man3/getgrent_r.3:183 build/C/man3/getgrnam.3:233
247 #: build/C/man3/getgrouplist.3:189 build/C/man3/getpw.3:105
248 #: build/C/man3/getpwent.3:159 build/C/man3/getpwent_r.3:180
249 #: build/C/man3/getpwnam.3:313 build/C/man3/getspnam.3:251
250 #: build/C/man5/group.5:61 build/C/man3/initgroups.3:84
251 #: build/C/man5/passwd.5:162 build/C/man3/putgrent.3:42
252 #: build/C/man3/putpwent.3:81 build/C/man3/setaliasent.3:144
258 #: build/C/man3/fgetgrent.3:101
260 "B<endgrent>(3), B<fgetgrent_r>(3), B<fopen>(3), B<getgrent>(3), B<getgrgid>"
261 "(3), B<getgrnam>(3), B<putgrent>(3), B<setgrent>(3), B<group>(5)"
263 "B<endgrent>(3), B<fgetgrent_r>(3), B<fopen>(3), B<getgrent>(3), B<getgrgid>"
264 "(3), B<getgrnam>(3), B<putgrent>(3), B<setgrent>(3), B<group>(5)"
267 #: build/C/man3/fgetgrent.3:101 build/C/man3/fgetpwent.3:111
268 #: build/C/man5/ftpusers.5:53 build/C/man3/getgrent.3:165
269 #: build/C/man3/getgrent_r.3:190 build/C/man3/getgrnam.3:240
270 #: build/C/man3/getgrouplist.3:195 build/C/man3/getpw.3:114
271 #: build/C/man3/getpwent.3:167 build/C/man3/getpwent_r.3:188
272 #: build/C/man3/getpwnam.3:323 build/C/man3/getspnam.3:256
273 #: build/C/man5/group.5:67 build/C/man3/initgroups.3:88
274 #: build/C/man5/passwd.5:171 build/C/man3/putgrent.3:46
275 #: build/C/man3/putpwent.3:89 build/C/man3/setaliasent.3:153
281 #: build/C/man3/fgetgrent.3:108 build/C/man3/fgetpwent.3:118
282 #: build/C/man5/ftpusers.5:60 build/C/man3/getgrent.3:172
283 #: build/C/man3/getgrent_r.3:197 build/C/man3/getgrnam.3:247
284 #: build/C/man3/getgrouplist.3:202 build/C/man3/getpw.3:121
285 #: build/C/man3/getpwent.3:174 build/C/man3/getpwent_r.3:195
286 #: build/C/man3/getpwnam.3:330 build/C/man3/getspnam.3:263
287 #: build/C/man5/group.5:74 build/C/man3/initgroups.3:95
288 #: build/C/man5/passwd.5:178 build/C/man3/putgrent.3:53
289 #: build/C/man3/putpwent.3:96 build/C/man3/setaliasent.3:160
292 #| "This page is part of release 3.41 of the Linux I<man-pages> project. A "
293 #| "description of the project, and information about reporting bugs, can be "
294 #| "found at http://www.kernel.org/doc/man-pages/."
296 "This page is part of release 3.50 of the Linux I<man-pages> project. A "
297 "description of the project, and information about reporting bugs, can be "
298 "found at http://www.kernel.org/doc/man-pages/."
300 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.41 の一部\n"
301 "である。プロジェクトの説明とバグ報告に関する情報は\n"
302 "http://www.kernel.org/doc/man-pages/ に書かれている。"
305 #: build/C/man3/fgetpwent.3:33
311 #: build/C/man3/fgetpwent.3:36
312 msgid "fgetpwent - get password file entry"
313 msgstr "fgetpwent - パスワードファイルエントリの取り出し"
316 #: build/C/man3/fgetpwent.3:41 build/C/man3/putpwent.3:38
319 "B<#include E<lt>stdio.hE<gt>>\n"
320 "B<#include E<lt>sys/types.hE<gt>>\n"
321 "B<#include E<lt>pwd.hE<gt>>\n"
323 "B<#include E<lt>stdio.hE<gt>>\n"
324 "B<#include E<lt>sys/types.hE<gt>>\n"
325 "B<#include E<lt>pwd.hE<gt>>\n"
328 #: build/C/man3/fgetpwent.3:43
330 msgid "B<struct passwd *fgetpwent(FILE *>I<stream>B<);>\n"
331 msgstr "B<struct passwd *fgetpwent(FILE *>I<stream>B<);>\n"
334 #: build/C/man3/fgetpwent.3:52
335 msgid "B<fgetpwent>(): _SVID_SOURCE"
336 msgstr "B<fgetpwent>(): _SVID_SOURCE"
339 #: build/C/man3/fgetpwent.3:65
341 "The B<fgetpwent>() function returns a pointer to a structure containing the "
342 "broken out fields of a line in the file I<stream>. The first time it is "
343 "called it returns the first entry; thereafter, it returns successive "
344 "entries. The file referred to by I<stream> must have the same format as I</"
345 "etc/passwd> (see B<passwd>(5))."
347 "B<fgetpwent>() 関数は、I<stream> から得られた行を分解したフィールド を含む構"
348 "造体へのポインタを返す。 最初に呼び出された時には最初のエントリを返し、それ以"
349 "降は 次のエントリを返す。 I<stream> で参照されるファイルは I</etc/passwd> と"
350 "同じ形式でなければならない (B<passwd>(5) 参照)。"
353 #: build/C/man3/fgetpwent.3:67 build/C/man3/getpw.3:55
354 #: build/C/man3/getpwent.3:86 build/C/man3/getpwent_r.3:67
355 #: build/C/man3/getpwnam.3:90 build/C/man3/putpwent.3:56
356 msgid "The I<passwd> structure is defined in I<E<lt>pwd.hE<gt>> as follows:"
357 msgstr "I<passwd> 構造体は、I<E<lt>pwd.hE<gt>> で以下のように定義されている:"
360 #: build/C/man3/fgetpwent.3:79
364 " char *pw_name; /* username */\n"
365 " char *pw_passwd; /* user password */\n"
366 " uid_t pw_uid; /* user ID */\n"
367 " gid_t pw_gid; /* group ID */\n"
368 " char *pw_gecos; /* real name */\n"
369 " char *pw_dir; /* home directory */\n"
370 " char *pw_shell; /* shell program */\n"
374 " char *pw_name; /* ユーザ名 */\n"
375 " char *pw_passwd; /* ユーザのパスワード */\n"
376 " uid_t pw_uid; /* ユーザ ID */\n"
377 " gid_t pw_gid; /* グループ ID */\n"
378 " char *pw_gecos; /* 実名 */\n"
379 " char *pw_dir; /* ホームディレクトリ */\n"
380 " char *pw_shell; /* シェルプログラム */\n"
384 #: build/C/man3/fgetpwent.3:88
386 "The B<fgetpwent>() function returns a pointer to a I<passwd> structure, or "
387 "NULL if there are no more entries or an error occurs."
389 "B<fgetpwent>() 関数は、 I<passwd> 構造体へのポインタを返す。 これ以上エント"
390 "リが無いか、エラーが発生した場合は NULL を返す。"
393 #. This structure is static, allocated 0 or 1 times. No memory leak. (libc45)
395 #: build/C/man3/fgetpwent.3:94 build/C/man3/getpw.3:92
396 #: build/C/man3/getpwent.3:147 build/C/man3/getpwnam.3:210
397 msgid "Insufficient memory to allocate I<passwd> structure."
398 msgstr "I<passwd> 構造体に割り当てるメモリが十分なかった。"
401 #: build/C/man3/fgetpwent.3:94 build/C/man5/ftpusers.5:47
402 #: build/C/man3/getgrent.3:151 build/C/man3/getgrnam.3:206
403 #: build/C/man3/getpw.3:92 build/C/man3/getpwent.3:150
404 #: build/C/man3/getpwnam.3:213 build/C/man3/getspnam.3:234
405 #: build/C/man5/group.5:53 build/C/man3/initgroups.3:78
406 #: build/C/man5/passwd.5:142 build/C/man3/setaliasent.3:94
412 #: build/C/man3/fgetpwent.3:95 build/C/man3/getpw.3:93
413 #: build/C/man3/getpwent.3:151 build/C/man3/getpwnam.3:214
414 #: build/C/man5/passwd.5:144
416 msgid "I</etc/passwd>"
417 msgstr "I</etc/passwd>"
420 #: build/C/man3/fgetpwent.3:98 build/C/man3/getpw.3:96
421 msgid "password database file"
422 msgstr "パスワードデータベースファイル"
425 #: build/C/man3/fgetpwent.3:111
427 "B<endpwent>(3), B<fgetpwent_r>(3), B<fopen>(3), B<getpw>(3), B<getpwent>(3), "
428 "B<getpwnam>(3), B<getpwuid>(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
430 "B<endpwent>(3), B<fgetpwent_r>(3), B<fopen>(3), B<getpw>(3), B<getpwent>(3), "
431 "B<getpwnam>(3), B<getpwuid>(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
434 #: build/C/man5/ftpusers.5:19
440 #: build/C/man5/ftpusers.5:19
446 #: build/C/man5/ftpusers.5:19 build/C/man5/group.5:26 build/C/man5/passwd.5:30
452 #: build/C/man5/ftpusers.5:22
453 msgid "ftpusers - list of users that may not log in via the FTP daemon"
454 msgstr "ftpusers - FTP デーモン経由でのログインを許さないユーザーのリスト"
457 #: build/C/man5/ftpusers.5:41
459 "The text file B<ftpusers> contains a list of users that may not log in using "
460 "the File Transfer Protocol (FTP) server daemon. This file is used not "
461 "merely for system administration purposes but for improving security within "
462 "a TCP/IP networked environment. It will typically contain a list of the "
463 "users that either have no business using ftp or have too many privileges to "
464 "be allowed to log in through the FTP server daemon. Such users usually "
465 "include root, daemon, bin, uucp, and news. If your FTP server daemon "
466 "doesn't use B<ftpusers> then it is suggested that you read its documentation "
467 "to find out how to block access for certain users. Washington University "
468 "FTP server Daemon (wuftpd) and Professional FTP Daemon (proftpd) are known "
469 "to make use of B<ftpusers>."
471 "B<ftpusers> はテキストファイルで、File Transfer Protocol (FTP) サーバーデーモ"
472 "ン を利用してのログインを許さないユーザーをリストしたものである。 このファイ"
473 "ルは単にシステム管理のためだけでなく、 TCP/IP ネットワーク環境でのセキュリ"
474 "ティを向上させるのにも利用できる。 通常は、ftp を用いた作業を行わないユーザー"
475 "や、 FTP サーバーデーモン経由でのログインを許すには 権限が大きすぎるユーザー"
476 "をリストしておく。 このようなユーザーには、例えば root, daemon, bin, uucp, "
477 "news などが含まれる。 お使いの FTP サーバーデーモンが B<ftpusers> を用いない"
478 "場合は、そのデーモンのドキュメントを読んで、 特定のユーザーのアクセスをブロッ"
479 "クするやり方を学んでおくことをすすめる。 Washington University FTP サーバー"
480 "デーモン (wuftpd) と Professional FTP デーモン (proftpd) とは、 B<ftpusers> "
484 #: build/C/man5/ftpusers.5:41
490 #: build/C/man5/ftpusers.5:47
492 "The format of B<ftpusers> is very simple. There is one account name (or "
493 "username) per line. Lines starting with a # are ignored."
495 "B<ftpusers> のフォーマットは非常に単純であり、 アカウント名 (またはユーザー"
496 "名) を各行に書くだけである。 # で始まる行は無視される。"
499 #: build/C/man5/ftpusers.5:49
500 msgid "I</etc/ftpusers>"
501 msgstr "I</etc/ftpusers>"
504 #: build/C/man5/ftpusers.5:53
505 msgid "B<passwd>(5), B<proftpd>(8), B<wuftpd>(8)"
506 msgstr "B<passwd>(5), B<proftpd>(8), B<wuftpd>(8)"
509 #: build/C/man3/getgrent.3:30
515 #: build/C/man3/getgrent.3:30 build/C/man3/getgrent_r.3:24
516 #: build/C/man3/getpw.3:32 build/C/man3/getpwent.3:33
517 #: build/C/man3/getpwent_r.3:24 build/C/man5/group.5:26
523 #: build/C/man3/getgrent.3:33
524 msgid "getgrent, setgrent, endgrent - get group file entry"
525 msgstr "getgrent, setgrent, endgrent - グループファイルエントリの取得"
528 #: build/C/man3/getgrent.3:37 build/C/man3/getgrnam.3:40
529 #: build/C/man3/initgroups.3:39
532 "B<#include E<lt>sys/types.hE<gt>>\n"
533 "B<#include E<lt>grp.hE<gt>>\n"
535 "B<#include E<lt>sys/types.hE<gt>>\n"
536 "B<#include E<lt>grp.hE<gt>>\n"
539 #: build/C/man3/getgrent.3:39
541 msgid "B<struct group *getgrent(void);>\n"
542 msgstr "B<struct group *getgrent(void);>\n"
545 #: build/C/man3/getgrent.3:41
547 msgid "B<void setgrent(void);>\n"
548 msgstr "B<void setgrent(void);>\n"
551 #: build/C/man3/getgrent.3:43
553 msgid "B<void endgrent(void);>\n"
554 msgstr "B<void endgrent(void);>\n"
557 #: build/C/man3/getgrent.3:53
558 msgid "B<setgrent>():"
559 msgstr "B<setgrent>():"
562 #: build/C/man3/getgrent.3:56
564 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
565 "\\ &&\\ _XOPEN_SOURCE_EXTENDED ||"
567 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
568 "\\ &&\\ _XOPEN_SOURCE_EXTENDED ||"
571 #: build/C/man3/getgrent.3:58
572 msgid "/* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
573 msgstr "/* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
576 #: build/C/man3/getgrent.3:62
577 msgid "B<getgrent>(), B<endgrent>():"
578 msgstr "B<getgrent>(), B<endgrent>():"
581 #: build/C/man3/getgrent.3:65
583 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
584 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
586 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
587 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
590 #: build/C/man3/getgrent.3:80
592 "The B<getgrent>() function returns a pointer to a structure containing the "
593 "broken-out fields of a record in the group database (e.g., the local group "
594 "file I</etc/group>, NIS, and LDAP). The first time B<getgrent>() is "
595 "called, it returns the first entry; thereafter, it returns successive "
598 "B<getgrent>() 関数は、グループ・データベースから取得したエントリを 要素毎に"
599 "分解し、各要素を格納した構造体へのポインタを返す (グループ・データベースの"
600 "例: ローカルのグループファイル I</etc/group>, NIS, LDAP)。 B<getgrent>() "
601 "は、最初に呼び出された時は最初のエントリを返し、 それ以降は呼び出される毎に次"
605 #: build/C/man3/getgrent.3:85
607 "The B<setgrent>() function rewinds to the beginning of the group database, "
608 "to allow repeated scans."
610 "B<setgrent>() 関数を使うと、もう一度読み込めるように、 グループ・データベー"
614 #: build/C/man3/getgrent.3:90
616 "The B<endgrent>() function is used to close the group database after all "
617 "processing has been performed."
619 "B<endgrent>() 関数は、全ての処理が終わった後にグループ・ データベースをク"
623 #: build/C/man3/getgrent.3:101 build/C/man3/getgrnam.3:95
627 " char *gr_name; /* group name */\n"
628 " char *gr_passwd; /* group password */\n"
629 " gid_t gr_gid; /* group ID */\n"
630 " char **gr_mem; /* group members */\n"
634 " char *gr_name; /* グループ名 */\n"
635 " char *gr_passwd; /* グループのパスワード */\n"
636 " gid_t gr_gid; /* グループ ID */\n"
637 " char **gr_mem; /* グループのメンバ */\n"
641 #: build/C/man3/getgrent.3:106 build/C/man3/getgrent_r.3:82
642 #: build/C/man3/getgrnam.3:100
644 "For more information about the fields of this structure, see B<group>(5)."
645 msgstr "この構造体のフィールドの詳細は B<group>(5) を参照のこと。"
648 #: build/C/man3/getgrent.3:113
650 "The B<getgrent>() function returns a pointer to a I<group> structure, or "
651 "NULL if there are no more entries or an error occurs."
653 "B<getgrent>() 関数は I<group> 構造体へのポインタを返す。 これ以上エントリが"
654 "無いか、エラーが発生した場合は NULL を返す。"
657 #: build/C/man3/getgrent.3:120
659 "Upon error, I<errno> may be set. If one wants to check I<errno> after the "
660 "call, it should be set to zero before the call."
662 "エラーが発生すると、 I<errno> が適切に設定される。 この関数の呼び出し後に "
663 "I<errno> をチェックしたい場合は、呼び出し前に I<errno> を 0 に設定しておかな"
667 #: build/C/man3/getgrent.3:129
669 "The return value may point to a static area, and may be overwritten by "
670 "subsequent calls to B<getgrent>(), B<getgrgid>(3), or B<getgrnam>(3). (Do "
671 "not pass the returned pointer to B<free>(3).)"
673 "返り値は静的な領域を指しており、その後の B<getgrent>(), B<getgrgid>(3), "
674 "B<getgrnam>(3) の呼び出しで上書きされるかもしれない。 (返されたポインタを "
675 "B<free>(3) に渡さないこと。)"
678 #: build/C/man3/getgrent.3:130 build/C/man3/getgrnam.3:182
679 #: build/C/man3/getpwent.3:126 build/C/man3/getpwnam.3:189
685 #: build/C/man3/getgrent.3:133 build/C/man3/getgrnam.3:185
686 #: build/C/man3/getpwent.3:129 build/C/man3/getpwnam.3:192
687 msgid "A signal was caught."
691 #: build/C/man3/getgrent.3:133 build/C/man3/getgrnam.3:185
692 #: build/C/man3/getpwent.3:129 build/C/man3/getpwnam.3:192
698 #: build/C/man3/getgrent.3:136 build/C/man3/getgrnam.3:188
699 #: build/C/man3/getpwent.3:132 build/C/man3/getpwnam.3:195
704 #: build/C/man3/getgrent.3:136 build/C/man3/getgrnam.3:188
705 #: build/C/man3/getpwent.3:132 build/C/man3/getpwnam.3:195
711 #: build/C/man3/getgrent.3:139
712 msgid "The calling process already has too many open files."
713 msgstr "呼び出したプロセスが既にファイルをオープンし過ぎている。"
716 #: build/C/man3/getgrent.3:139 build/C/man3/getgrnam.3:193
717 #: build/C/man3/getpwent.3:137 build/C/man3/getpwnam.3:200
723 #: build/C/man3/getgrent.3:142
724 msgid "Too many open files in the system."
725 msgstr "システム上にオープンされたファイルが多過ぎる。"
728 #: build/C/man3/getgrent.3:148 build/C/man3/getgrent_r.3:112
729 #: build/C/man3/getgrnam.3:203 build/C/man3/getpwent.3:147
730 #: build/C/man3/getpwent_r.3:114 build/C/man3/getpwnam.3:210
731 #: build/C/man3/getspnam.3:231
737 #: build/C/man3/getgrent.3:151 build/C/man3/getgrnam.3:206
738 #: build/C/man3/getpwent.3:150 build/C/man3/getpwnam.3:213
739 msgid "Insufficient buffer space supplied."
740 msgstr "与えられたバッファ空間が不十分である。"
743 #: build/C/man3/getgrent.3:152 build/C/man3/getgrnam.3:207
745 msgid "I</etc/group>"
746 msgstr "I</etc/group>"
749 #: build/C/man3/getgrent.3:155 build/C/man3/getgrnam.3:210
750 msgid "local group database file"
751 msgstr "ローカルのグループ・データベースファイル"
754 #: build/C/man3/getgrent.3:157 build/C/man3/getgrnam.3:212
755 msgid "SVr4, 4.3BSD, POSIX.1-2001."
756 msgstr "SVr4, 4.3BSD, POSIX.1-2001."
759 #: build/C/man3/getgrent.3:165
761 "B<fgetgrent>(3), B<getgrent_r>(3), B<getgrgid>(3), B<getgrnam>(3), "
762 "B<getgrouplist>(3), B<putgrent>(3), B<group>(5)"
764 "B<fgetgrent>(3), B<getgrent_r>(3), B<getgrgid>(3), B<getgrnam>(3) "
765 "B<getgrouplist>(3), B<putgrent>(3), B<group>(5)"
768 #: build/C/man3/getgrent_r.3:24
774 #: build/C/man3/getgrent_r.3:27
775 msgid "getgrent_r, fgetgrent_r - get group file entry reentrantly"
777 "getgrent_r, fgetgrent_r - グループファイルエントリをリエントラント "
781 #: build/C/man3/getgrent_r.3:30
783 msgid "B<#include E<lt>grp.hE<gt>>\n"
784 msgstr "B<#include E<lt>grp.hE<gt>>\n"
787 #: build/C/man3/getgrent_r.3:32
789 msgid "B<int getgrent_r(struct group *>I<gbuf>B<, char *>I<buf>B<,>\n"
790 msgstr "B<int getgrent_r(struct group *>I<gbuf>B<, char *>I<buf>B<,>\n"
793 #: build/C/man3/getgrent_r.3:34
795 msgid "B< size_t >I<buflen>B<, struct group **>I<gbufp>B<);>\n"
796 msgstr "B< size_t >I<buflen>B<, struct group **>I<gbufp>B<);>\n"
799 #: build/C/man3/getgrent_r.3:36
801 msgid "B<int fgetgrent_r(FILE *>I<fp>B<, struct group *>I<gbuf>B<, char *>I<buf>B<,>\n"
802 msgstr "B<int fgetgrent_r(FILE *>I<fp>B<, struct group *>I<gbuf>B<, char *>I<buf>B<,>\n"
805 #: build/C/man3/getgrent_r.3:38
807 msgid "B< size_t >I<buflen>B<, struct group **>I<gbufp>B<);>\n"
808 msgstr "B< size_t >I<buflen>B<, struct group **>I<gbufp>B<);>\n"
810 #. FIXME . The FTM requirements seem inconsistent here. File a glibc bug?
812 #: build/C/man3/getgrent_r.3:48
813 msgid "B<getgrent_r>(): _GNU_SOURCE"
814 msgstr "B<getgrent_r>(): _GNU_SOURCE"
817 #: build/C/man3/getgrent_r.3:51
818 msgid "B<fgetgrent_r>(): _SVID_SOURCE"
819 msgstr "B<fgetgrent_r>(): _SVID_SOURCE"
822 #: build/C/man3/getgrent_r.3:64
824 "The functions B<getgrent_r>() and B<fgetgrent_r>() are the reentrant "
825 "versions of B<getgrent>(3) and B<fgetgrent>(3). The former reads the next "
826 "group entry from the stream initialized by B<setgrent>(3). The latter reads "
827 "the next group entry from the stream I<fp>."
829 "関数 B<getgrent_r>() と B<fgetgrent_r>() は B<getgrent>(3) と B<fgetgrent>"
830 "(3) のリエントラント版である。 前者は、 B<setgrent>(3) によって初期化された"
831 "ストリームから、次のグループファイルのエントリを読み込む。 後者は、ストリー"
832 "ム I<fp> から次のグループファイルのエントリを読み込む。"
835 #: build/C/man3/getgrent_r.3:77
839 " char *gr_name; /* group name */\n"
840 " char *gr_passwd; /* group password */\n"
841 " gid_t gr_gid; /* group ID */\n"
842 " char **gr_mem; /* group members */\n"
846 " char *gr_name; /* グループ名 */\n"
847 " char *gr_passwd; /* グループパスワード */\n"
848 " gid_t gr_gid; /* グループ ID */\n"
849 " char **gr_mem; /* グループメンバ */\n"
853 #: build/C/man3/getgrent_r.3:101
855 "The nonreentrant functions return a pointer to static storage, where this "
856 "static storage contains further pointers to group name, password and "
857 "members. The reentrant functions described here return all of that in "
858 "caller-provided buffers. First of all there is the buffer I<gbuf> that can "
859 "hold a I<struct group>. And next the buffer I<buf> of size I<buflen> that "
860 "can hold additional strings. The result of these functions, the I<struct "
861 "group> read from the stream, is stored in the provided buffer I<*gbuf>, and "
862 "a pointer to this I<struct group> is returned in I<*gbufp>."
864 "リエントラントでない関数は静的な格納領域へのポインタを返す。 この静的な格納領"
865 "域には、更にグループ名・パスワード・ メンバへのポインタが含まれる。 ここで説"
866 "明されているリエントラントな関数は、 呼び出し側から提供されるバッファにグルー"
867 "プ名など全てを返す。 最初の引き数として I<struct group> を保持できるバッファ "
868 "I<gbuf> がある。 次にその他の文字列を保持できるサイズ I<buflen> のバッファ "
869 "I<buf> がある。 これらの関数の結果 (ストリームから読み込まれた I<struct "
870 "group>) は、 提供されたバッファ I<*gbuf> に格納され、この I<struct group> へ"
871 "のポインタは I<*gbufp> に返される。"
874 #: build/C/man3/getgrent_r.3:108
876 "On success, these functions return 0 and I<*gbufp> is a pointer to the "
877 "I<struct group>. On error, these functions return an error value and "
880 "成功した場合、これらの関数は 0 を返し、 *I<gbufp> は I<struct group> へのポイ"
881 "ンタとなる。 エラーの場合、これらの関数はエラー値を返し、 *I<gbufp> は NULL "
885 #: build/C/man3/getgrent_r.3:109 build/C/man3/getpw.3:83
886 #: build/C/man3/getpwent_r.3:111
892 #: build/C/man3/getgrent_r.3:112 build/C/man3/getpwent_r.3:114
893 msgid "No more entries."
897 #: build/C/man3/getgrent_r.3:116 build/C/man3/getpwent_r.3:118
898 msgid "Insufficient buffer space supplied. Try again with larger buffer."
900 "十分なバッファ空間が与えられていない。 もっと大きなバッファで再度実行するこ"
904 #: build/C/man3/getgrent_r.3:121 build/C/man3/getpwent_r.3:123
906 "These functions are GNU extensions, done in a style resembling the POSIX "
907 "version of functions like B<getpwnam_r>(3). Other systems use prototype"
909 "これらの関数は GNU 拡張であり、POSIX 版の関数 B<getpwnam_r>(3) の形式に似せ"
910 "てある。 他のシステムでは以下のプロトタイプが使われている。"
913 #: build/C/man3/getgrent_r.3:126
916 "struct group *getgrent_r(struct group *grp, char *buf,\n"
919 "struct group *getgrent_r(struct group *grp, char *buf,\n"
923 #: build/C/man3/getgrent_r.3:130 build/C/man3/getpwent_r.3:132
925 msgstr "より良いものでは、以下のようになっている。"
928 #: build/C/man3/getgrent_r.3:135
931 "int getgrent_r(struct group *grp, char *buf, int buflen,\n"
934 "int getgrent_r(struct group *grp, char *buf, int buflen,\n"
938 #: build/C/man3/getgrent_r.3:137 build/C/man3/getgrnam.3:212
939 #: build/C/man3/getpwent_r.3:140 build/C/man3/getpwnam.3:222
940 #: build/C/man5/passwd.5:144
946 #: build/C/man3/getgrent_r.3:142
948 "The function B<getgrent_r>() is not really reentrant since it shares the "
949 "reading position in the stream with all other threads."
951 "関数 B<getgrent_r>() は本当のリエントラントではない。 なぜなら、ストリームの"
952 "読み込み位置を 他の全てのスレッドと共有しているためである。"
955 #: build/C/man3/getgrent_r.3:142 build/C/man3/getgrouplist.3:109
956 #: build/C/man3/getpwent_r.3:145 build/C/man3/getpwnam.3:261
957 #: build/C/man3/setaliasent.3:114
963 #: build/C/man3/getgrent_r.3:149
966 "#define _GNU_SOURCE\n"
967 "#include E<lt>grp.hE<gt>\n"
968 "#include E<lt>stdio.hE<gt>\n"
969 "#include E<lt>stdlib.hE<gt>\n"
970 "#define BUFLEN 4096\n"
972 "#define _GNU_SOURCE\n"
973 "#include E<lt>grp.hE<gt>\n"
974 "#include E<lt>stdio.hE<gt>\n"
975 "#include E<lt>stdlib.hE<gt>\n"
976 "#define BUFLEN 4096\n"
979 #: build/C/man3/getgrent_r.3:156
985 " struct group grp, *grpp;\n"
986 " char buf[BUFLEN];\n"
992 " struct group grp, *grpp;\n"
993 " char buf[BUFLEN];\n"
997 #: build/C/man3/getgrent_r.3:173
1002 " i = getgrent_r(&grp, buf, BUFLEN, &grpp);\n"
1005 " printf(\"%s (%d):\", grpp-E<gt>gr_name, grpp-E<gt>gr_gid);\n"
1006 " for (i = 0; ; i++) {\n"
1007 " if (grpp-E<gt>gr_mem[i] == NULL)\n"
1009 " printf(\" %s\", grpp-E<gt>gr_mem[i]);\n"
1011 " printf(\"\\en\");\n"
1014 " exit(EXIT_SUCCESS);\n"
1019 " i = getgrent_r(&grp, buf, BUFLEN, &grpp);\n"
1022 " printf(\"%s (%d):\", grpp-E<gt>gr_name, grpp-E<gt>gr_gid);\n"
1023 " for (i = 0; ; i++) {\n"
1024 " if (grpp-E<gt>gr_mem[i] == NULL)\n"
1026 " printf(\" %s\", grpp-E<gt>gr_mem[i]);\n"
1028 " printf(\"\\en\");\n"
1031 " exit(EXIT_SUCCESS);\n"
1035 #: build/C/man3/getgrent_r.3:190
1037 "B<fgetgrent>(3), B<getgrent>(3), B<getgrgid>(3), B<getgrnam>(3), B<putgrent>"
1040 "B<fgetgrent>(3), B<getgrent>(3), B<getgrgid>(3), B<getgrnam>(3), B<putgrent>"
1044 #: build/C/man3/getgrnam.3:33
1050 #: build/C/man3/getgrnam.3:33 build/C/man3/getpwnam.3:37
1056 #: build/C/man3/getgrnam.3:36
1057 msgid "getgrnam, getgrnam_r, getgrgid, getgrgid_r - get group file entry"
1059 "getgrnam, getgrnam_r, getgrgid, getgrgid_r - グループファイルエントリの取り出"
1063 #: build/C/man3/getgrnam.3:42
1065 msgid "B<struct group *getgrnam(const char *>I<name>B<);>\n"
1066 msgstr "B<struct group *getgrnam(const char *>I<name>B<);>\n"
1069 #: build/C/man3/getgrnam.3:44
1071 msgid "B<struct group *getgrgid(gid_t >I<gid>B<);>\n"
1072 msgstr "B<struct group *getgrgid(gid_t >I<gid>B<);>\n"
1075 #: build/C/man3/getgrnam.3:46
1077 msgid "B<int getgrnam_r(const char *>I<name>B<, struct group *>I<grp>B<,>\n"
1078 msgstr "B<int getgrnam_r(const char *>I<name>B<, struct group *>I<grp>B<,>\n"
1081 #: build/C/man3/getgrnam.3:48 build/C/man3/getgrnam.3:52
1083 msgid "B< char *>I<buf>B<, size_t >I<buflen>B<, struct group **>I<result>B<);>\n"
1084 msgstr "B< char *>I<buf>B<, size_t >I<buflen>B<, struct group **>I<result>B<);>\n"
1087 #: build/C/man3/getgrnam.3:50
1089 msgid "B<int getgrgid_r(gid_t >I<gid>B<, struct group *>I<grp>B<,>\n"
1090 msgstr "B<int getgrgid_r(gid_t >I<gid>B<, struct group *>I<grp>B<,>\n"
1093 #: build/C/man3/getgrnam.3:62
1094 msgid "B<getgrnam_r>(), B<getgrgid_r>():"
1095 msgstr "B<getgrnam_r>(), B<getgrgid_r>():"
1098 #: build/C/man3/getgrnam.3:65 build/C/man3/getpwnam.3:69
1100 "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _BSD_SOURCE || _SVID_SOURCE "
1103 "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _BSD_SOURCE || _SVID_SOURCE "
1107 #: build/C/man3/getgrnam.3:77
1109 "The B<getgrnam>() function returns a pointer to a structure containing the "
1110 "broken-out fields of the record in the group database (e.g., the local group "
1111 "file I</etc/group>, NIS, and LDAP) that matches the group name I<name>."
1113 "B<getgrnam>() 関数は、グループ名 I<name> にマッチするグループ・データベース"
1114 "のエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す (パス"
1115 "ワード・データベースの例: ローカルのグループファイル I</etc/group>, NIS, "
1119 #: build/C/man3/getgrnam.3:84
1121 "The B<getgrgid>() function returns a pointer to a structure containing the "
1122 "broken-out fields of the record in the group database that matches the group "
1125 "B<getgrgid>() 関数は、グループ ID I<uid> にマッチするグループ・データベース"
1126 "のエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す。"
1129 #: build/C/man3/getgrnam.3:123
1131 "The B<getgrnam_r>() and B<getgrgid_r>() functions obtain the same "
1132 "information as B<getgrnam>() and B<getgrgid>(), but store the retrieved "
1133 "I<group> structure in the space pointed to by I<grp>. The string fields "
1134 "pointed to by the members of the I<group> structure are stored in the buffer "
1135 "I<buf> of size I<buflen>. A pointer to the result (in case of success) or "
1136 "NULL (in case no entry was found or an error occurred) is stored in "
1139 "B<getgrnam_r>() と B<getgrgid_r>() 関数は、それぞれ B<getgrnam>() と\n"
1140 "B<getgrgid>() と同じ情報を取得するが、取得した I<group> 構造体を\n"
1141 "I<grp> が指す領域に格納する。I<group> 構造体のメンバーが指す文字列は、\n"
1142 "サイズ I<buflen> のバッファ I<buf> に格納される。成功した場合\n"
1143 "I<*gbufp> には結果へのポインタが格納される。エントリが見つからなかった\n"
1144 "場合やエラーが発生した場合には I<*result> には NULL が入る。"
1147 #: build/C/man3/getgrnam.3:125 build/C/man3/getpwnam.3:132
1152 #: build/C/man3/getgrnam.3:127
1154 msgid " sysconf(_SC_GETGR_R_SIZE_MAX)\n"
1155 msgstr " sysconf(_SC_GETGR_R_SIZE_MAX)\n"
1158 #: build/C/man3/getgrnam.3:136 build/C/man3/getpwnam.3:143
1160 "returns either -1, without changing I<errno>, or an initial suggested size "
1161 "for I<buf>. (If this size is too small, the call fails with B<ERANGE>, in "
1162 "which case the caller can retry with a larger buffer.)"
1164 "は、 I<errno> を変更せずに -1 を返すか、 I<buf> の初期サイズの推奨値を\n"
1165 "返す。(このサイズが小さすぎる場合、呼び出しは B<ERANGE> で失敗し、この\n"
1166 "場合には呼び出し側はバッファを大きくしてから再度呼び出すことができる。)"
1169 #: build/C/man3/getgrnam.3:151
1171 "The B<getgrnam>() and B<getgrgid>() functions return a pointer to a "
1172 "I<group> structure, or NULL if the matching entry is not found or an error "
1173 "occurs. If an error occurs, I<errno> is set appropriately. If one wants to "
1174 "check I<errno> after the call, it should be set to zero before the call."
1176 "B<getgrnam>() と B<getgrgid>() 関数は、 I<group> 構造体へのポインタを返"
1177 "す。 マッチするエントリが見つからなかった場合や、 エラーが発生した場合は "
1178 "NULL を返す。 エラーが起こった場合、 I<errno> が適切に設定される。 呼び出しの"
1179 "後で I<errno> をチェックしたい場合は、 呼び出しの前に (この値を) 0 に設定して"
1183 #: build/C/man3/getgrnam.3:160
1185 "The return value may point to a static area, and may be overwritten by "
1186 "subsequent calls to B<getgrent>(3), B<getgrgid>(), or B<getgrnam>(). (Do "
1187 "not pass the returned pointer to B<free>(3).)"
1189 "返り値は静的な領域を指しており、その後の B<getgrent>(3), B<getgrgid>(), "
1190 "B<getgrnam>() の呼び出しで上書きされるかもしれない。 (返されたポインタを "
1191 "B<free>(3) に渡さないこと。)"
1194 #: build/C/man3/getgrnam.3:174
1196 "On success, B<getgrnam_r>() and B<getgrgid_r>() return zero, and set "
1197 "I<*result> to I<grp>. If no matching group record was found, these "
1198 "functions return 0 and store NULL in I<*result>. In case of error, an error "
1199 "number is returned, and NULL is stored in I<*result>."
1201 "成功すると、 B<getgrnam_r>() と B<getgrgid_r>() は 0 を返し、 I<*result> "
1202 "に I<grp> を設定する。 マッチするグループ・エントリが見つからなかった場合に"
1203 "は、 0 を返し、 I<*result> に NULL を設定する。 エラーの場合、エラー番号を返"
1204 "し、 I<*result> に NULL を設定する。"
1207 #: build/C/man3/getgrnam.3:175 build/C/man3/getpwnam.3:182
1209 msgid "B<0> or B<ENOENT> or B<ESRCH> or B<EBADF> or B<EPERM> or ... "
1210 msgstr "B<0> または B<ENOENT> または B<ESRCH> または B<EBADF> または B<EPERM> または ... "
1213 #: build/C/man3/getgrnam.3:182
1214 msgid "The given I<name> or I<gid> was not found."
1215 msgstr "指定された I<name> または I<gid> が見つからなかった。"
1218 #: build/C/man3/getgrnam.3:193 build/C/man3/getpwent.3:137
1219 #: build/C/man3/getpwnam.3:200
1221 "The maximum number (B<OPEN_MAX>) of files was open already in the calling "
1224 "呼び出し元プロセスがオープンしているファイル数が すでに上限 (B<OPEN_MAX>) で"
1228 #: build/C/man3/getgrnam.3:196 build/C/man3/getpwent.3:140
1229 #: build/C/man3/getpwnam.3:203
1230 msgid "The maximum number of files was open already in the system."
1231 msgstr "システムでオープンされているファイル数がすでに上限であった。"
1234 #. AIX 5.1 - gives ESRCH
1235 #. OSF1 4.0g - gives EWOULDBLOCK
1236 #. libc, glibc up to version 2.6, Irix 6.5 - give ENOENT
1237 #. glibc since version 2.7 - give 0
1238 #. FreeBSD 4.8, OpenBSD 3.2, NetBSD 1.6 - give EPERM
1239 #. SunOS 5.8 - gives EBADF
1240 #. Tru64 5.1b, HP-UX-11i, SunOS 5.7 - give 0
1242 #: build/C/man3/getgrnam.3:233
1244 "The formulation given above under \"RETURN VALUE\" is from POSIX.1-2001. It "
1245 "does not call \"not found\" an error, hence does not specify what value "
1246 "I<errno> might have in this situation. But that makes it impossible to "
1247 "recognize errors. One might argue that according to POSIX I<errno> should "
1248 "be left unchanged if an entry is not found. Experiments on various UNIX-"
1249 "like systems shows that lots of different values occur in this situation: 0, "
1250 "ENOENT, EBADF, ESRCH, EWOULDBLOCK, EPERM and probably others."
1252 "上記の「返り値」以下の記述は POSIX.1-2001 に拠る。 この標準は「(エントリが) "
1253 "見つからないこと」をエラーとしていないので、 そのような場合に I<errno> がどの"
1254 "ような値になるかを定めていない。 そのため、エラーを認識することは不可能であ"
1255 "る。 POSIX に準拠して、エントリが見つからない場合は I<errno> を変更しないよう"
1256 "にすべきである、と主張する人もいるかもしれない。 様々な UNIX 系のシステムで試"
1257 "してみると、そのような場合には 0, ENOENT, EBADF, ESRCH, EWOULDBLOCK, EPERM と"
1258 "いった様々な値が返される。 他の値が返されるかもしれない。"
1261 #: build/C/man3/getgrnam.3:240
1263 "B<endgrent>(3), B<fgetgrent>(3), B<getgrent>(3), B<getpwnam>(3), B<setgrent>"
1266 "B<endgrent>(3), B<fgetgrent>(3), B<getgrent>(3), B<getpwnam>(3), B<setgrent>"
1270 #: build/C/man3/getgrouplist.3:29
1272 msgid "GETGROUPLIST"
1273 msgstr "GETGROUPLIST"
1276 #: build/C/man3/getgrouplist.3:29
1282 #: build/C/man3/getgrouplist.3:32
1283 msgid "getgrouplist - get list of groups to which a user belongs"
1284 msgstr "getgrouplist - ユーザが所属するグループのリストを取得する"
1287 #: build/C/man3/getgrouplist.3:34 build/C/man3/putgrent.3:14
1288 msgid "B<#include E<lt>grp.hE<gt>>"
1289 msgstr "B<#include E<lt>grp.hE<gt>>"
1292 #: build/C/man3/getgrouplist.3:36
1293 msgid "B<int getgrouplist(const char *>I<user>B<, gid_t >I<group>B<,>"
1294 msgstr "B<int getgrouplist(const char *>I<user>B<, gid_t >I<group>B<,>"
1297 #: build/C/man3/getgrouplist.3:38
1298 msgid "B< gid_t *>I<groups>B<, int *>I<ngroups>B<);>"
1299 msgstr "B< gid_t *>I<groups>B<, int *>I<ngroups>B<);>"
1302 #: build/C/man3/getgrouplist.3:46
1303 msgid "B<getgrouplist>(): _BSD_SOURCE"
1304 msgstr "B<getgrouplist>(): _BSD_SOURCE"
1307 #: build/C/man3/getgrouplist.3:58
1309 "The B<getgrouplist>() function scans the group database (see B<group>(5)) "
1310 "to obtain the list of groups that I<user> belongs to. Up to I<*ngroups> of "
1311 "these groups are returned in the array I<groups>."
1313 "B<getgrouplist>() 関数は、グループデータベース (B<group>(5) 参照) を調べ"
1314 "て、 I<user> が所属するグループのリストを取得する。 見つかったグループのうち"
1315 "最大 I<*ngroups> 個のグループが、配列 I<groups> に格納されて返される。"
1318 #: build/C/man3/getgrouplist.3:68
1320 "If it was not among the groups defined for I<user> in the group database, "
1321 "then I<group> is included in the list of groups returned by B<getgrouplist>"
1322 "(); typically this argument is specified as the group ID from the password "
1323 "record for I<user>."
1325 "引き数 I<group> がグループデータベースに I<user> が所属するグループがなかった"
1326 "場合、 B<getgrouplist>() が返すグループのリストに引き数 I<group> も追加され"
1327 "る。 通常は、この引き数にはユーザ I<user> のパスワードレコードに書かれている"
1331 #: build/C/man3/getgrouplist.3:78
1333 "The I<ngroups> argument is a value-result argument: on return it always "
1334 "contains the number of groups found for I<user>, including I<group>; this "
1335 "value may be greater than the number of groups stored in I<groups>."
1337 "引き数 I<ngroups> は、値渡しと結果の両方に使用される引き数 (value-result "
1338 "argument) であり、 リターン時には、常に I<group> も含めた I<user> が所属する"
1339 "グループ数が格納される。 この値は I<groups> に格納されたグループ数より大きく"
1343 #: build/C/man3/getgrouplist.3:86
1345 "If the number of groups of which I<user> is a member is less than or equal "
1346 "to I<*ngroups>, then the value I<*ngroups> is returned."
1348 "I<user> が所属しているグループ数が I<*ngroups> 以下の場合、 I<*ngroups> の値"
1352 #: build/C/man3/getgrouplist.3:96
1354 "If the user is a member of more than I<*ngroups> groups, then B<getgrouplist>"
1355 "() returns -1. In this case the value returned in I<*ngroups> can be used "
1356 "to resize the buffer passed to a further call B<getgrouplist>()."
1358 "指定されたユーザが I<*ngroups> より多くのグループに所属している場合、 "
1359 "B<getgrouplist>() は -1 を返す。 この場合、 I<*ngroups> で返される値を使っ"
1360 "て、バッファのサイズを変更してから、 B<getgrouplist>() をもう一度呼び出すこ"
1364 #: build/C/man3/getgrouplist.3:96
1370 #: build/C/man3/getgrouplist.3:98
1371 msgid "This function is present since glibc 2.2.4."
1372 msgstr "この関数は glibc 2.2.4 から存在する。"
1375 #: build/C/man3/getgrouplist.3:100
1376 msgid "This function is nonstandard; it appears on most BSDs."
1377 msgstr "この関数は非標準である。ほとんどの BSD に存在する。"
1380 #: build/C/man3/getgrouplist.3:100 build/C/man3/getpw.3:98
1381 #: build/C/man5/group.5:55
1387 #: build/C/man3/getgrouplist.3:109
1389 "In glibc versions before 2.3.3, the implementation of this function contains "
1390 "a buffer-overrun bug: it returns the complete list of groups for I<user> in "
1391 "the array I<groups>, even when the number of groups exceeds I<*ngroups>."
1393 "バージョン 2.3.3 より前の glibc では、 この関数の実装にはバッファオーバーフ"
1394 "ローのバグがあり、 I<user> が所属するグループ数が I<*ngroups> より多い場合で"
1395 "あっても、 I<user> が所属するグループの全リストを配列 I<groups> に格納してし"
1399 #: build/C/man3/getgrouplist.3:118
1401 "The program below displays the group list for the user named in its first "
1402 "command-line argument. The second command-line argument specifies the "
1403 "I<ngroups> value to be supplied to B<getgrouplist>(). The following shell "
1404 "session shows examples of the use of this program:"
1406 "以下のプログラムは、一つ目のコマンドライン引き数で指定された名前のユーザ が所"
1407 "属するグループのリストを表示する。 二番目のコマンドライン引き数には、 "
1408 "B<getgrouplist>() に渡す I<ngroups> の値を指定する。 以下のシェルのセッショ"
1409 "ンはこのプログラムの使用例を示したものである。"
1412 #: build/C/man3/getgrouplist.3:128
1415 "$B< ./a.out cecilia 0>\n"
1416 "getgrouplist() returned -1; ngroups = 3\n"
1417 "$B< ./a.out cecilia 3>\n"
1423 "$B< ./a.out cecilia 0>\n"
1424 "getgrouplist() returned -1; ngroups = 3\n"
1425 "$B< ./a.out cecilia 3>\n"
1432 #: build/C/man3/getgrouplist.3:130
1434 msgid "Program source"
1438 #: build/C/man3/getgrouplist.3:137
1441 "#include E<lt>stdio.hE<gt>\n"
1442 "#include E<lt>stdlib.hE<gt>\n"
1443 "#include E<lt>grp.hE<gt>\n"
1444 "#include E<lt>pwd.hE<gt>\n"
1446 "#include E<lt>stdio.hE<gt>\n"
1447 "#include E<lt>stdlib.hE<gt>\n"
1448 "#include E<lt>grp.hE<gt>\n"
1449 "#include E<lt>pwd.hE<gt>\n"
1452 #: build/C/man3/getgrouplist.3:145
1456 "main(int argc, char *argv[])\n"
1458 " int j, ngroups;\n"
1460 " struct passwd *pw;\n"
1461 " struct group *gr;\n"
1464 "main(int argc, char *argv[])\n"
1466 " int j, ngroups;\n"
1468 " struct passwd *pw;\n"
1469 " struct group *gr;\n"
1472 #: build/C/man3/getgrouplist.3:150
1475 " if (argc != 3) {\n"
1476 " fprintf(stderr, \"Usage: %s E<lt>userE<gt> E<lt>ngroupsE<gt>\\en\", argv[0]);\n"
1477 " exit(EXIT_FAILURE);\n"
1480 " if (argc != 3) {\n"
1481 " fprintf(stderr, \"Usage: %s E<lt>userE<gt> E<lt>ngroupsE<gt>\\en\", argv[0]);\n"
1482 " exit(EXIT_FAILURE);\n"
1486 #: build/C/man3/getgrouplist.3:152
1488 msgid " ngroups = atoi(argv[2]);\n"
1489 msgstr " ngroups = atoi(argv[2]);\n"
1492 #: build/C/man3/getgrouplist.3:158
1495 " groups = malloc(ngroups * sizeof (gid_t));\n"
1496 " if (groups == NULL) {\n"
1497 " perror(\"malloc\");\n"
1498 " exit(EXIT_FAILURE);\n"
1501 " groups = malloc(ngroups * sizeof (gid_t));\n"
1502 " if (groups == NULL) {\n"
1503 " perror(\"malloc\");\n"
1504 " exit(EXIT_FAILURE);\n"
1508 #: build/C/man3/getgrouplist.3:160
1510 msgid " /* Fetch passwd structure (contains first group ID for user) */\n"
1511 msgstr " /* Fetch passwd structure (contains first group ID for user) */\n"
1514 #: build/C/man3/getgrouplist.3:166
1517 " pw = getpwnam(argv[1]);\n"
1518 " if (pw == NULL) {\n"
1519 " perror(\"getpwnam\");\n"
1520 " exit(EXIT_SUCCESS);\n"
1523 " pw = getpwnam(argv[1]);\n"
1524 " if (pw == NULL) {\n"
1525 " perror(\"getpwnam\");\n"
1526 " exit(EXIT_SUCCESS);\n"
1530 #: build/C/man3/getgrouplist.3:168
1532 msgid " /* Retrieve group list */\n"
1533 msgstr " /* Retrieve group list */\n"
1536 #: build/C/man3/getgrouplist.3:174
1539 " if (getgrouplist(argv[1], pw-E<gt>pw_gid, groups, &ngroups) == -1) {\n"
1540 " fprintf(stderr, \"getgrouplist() returned -1; ngroups = %d\\en\",\n"
1542 "\texit(EXIT_FAILURE);\n"
1545 " if (getgrouplist(argv[1], pw-E<gt>pw_gid, groups, &ngroups) == -1) {\n"
1546 " fprintf(stderr, \"getgrouplist() returned -1; ngroups = %d\\en\",\n"
1548 "\texit(EXIT_FAILURE);\n"
1552 #: build/C/man3/getgrouplist.3:176
1554 msgid " /* Display list of retrieved groups, along with group names */\n"
1555 msgstr " /* Display list of retrieved groups, along with group names */\n"
1558 #: build/C/man3/getgrouplist.3:185
1561 " fprintf(stderr, \"ngroups = %d\\en\", ngroups);\n"
1562 " for (j = 0; j E<lt> ngroups; j++) {\n"
1563 " printf(\"%d\", groups[j]);\n"
1564 " gr = getgrgid(groups[j]);\n"
1565 " if (gr != NULL)\n"
1566 " printf(\" (%s)\", gr-E<gt>gr_name);\n"
1567 " printf(\"\\en\");\n"
1570 " fprintf(stderr, \"ngroups = %d\\en\", ngroups);\n"
1571 " for (j = 0; j E<lt> ngroups; j++) {\n"
1572 " printf(\"%d\", groups[j]);\n"
1573 " gr = getgrgid(groups[j]);\n"
1574 " if (gr != NULL)\n"
1575 " printf(\" (%s)\", gr-E<gt>gr_name);\n"
1576 " printf(\"\\en\");\n"
1580 #: build/C/man3/getgrouplist.3:188
1583 " exit(EXIT_SUCCESS);\n"
1586 " exit(EXIT_SUCCESS);\n"
1590 #: build/C/man3/getgrouplist.3:195
1592 "B<getgroups>(2), B<setgroups>(2), B<getgrent>(3), B<group>(5), B<passwd>(5)"
1594 "B<getgroups>(2), B<setgroups>(2), B<getgrent>(3), B<group>(5), B<passwd>(5)"
1597 #: build/C/man3/getpw.3:32
1603 #: build/C/man3/getpw.3:35
1605 #| msgid "getpw - Re-construct password line entry"
1606 msgid "getpw - reconstruct password line entry"
1607 msgstr "getpw - パスワード行エントリを取得する"
1610 #: build/C/man3/getpw.3:40
1613 "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
1614 "B<#include E<lt>sys/types.hE<gt>>\n"
1615 "B<#include E<lt>pwd.hE<gt>>\n"
1617 "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */\n"
1618 "B<#include E<lt>sys/types.hE<gt>>\n"
1619 "B<#include E<lt>pwd.hE<gt>>\n"
1622 #: build/C/man3/getpw.3:42
1624 msgid "B<int getpw(uid_t >I<uid>B<, char *>I<buf>B<);>\n"
1625 msgstr "B<int getpw(uid_t >I<uid>B<, char *>I<buf>B<);>\n"
1628 #: build/C/man3/getpw.3:49
1630 "The B<getpw>() function reconstructs the password line entry for the given "
1631 "user ID I<uid> in the buffer I<buf>. The returned buffer contains a line of "
1634 "B<getpw>() 関数は、バッファ I<buf> に指定ユーザ ID I<uid> の パスワード行エ"
1635 "ントリを取得する。 返されるバッファは、以下の形式の行を含む。"
1638 #: build/C/man3/getpw.3:52
1639 msgid "B<name:passwd:uid:gid:gecos:dir:shell>"
1640 msgstr "B<name:passwd:uid:gid:gecos:dir:shell>"
1643 #: build/C/man3/getpw.3:67 build/C/man3/getpwent.3:98
1644 #: build/C/man3/getpwnam.3:102
1648 " char *pw_name; /* username */\n"
1649 " char *pw_passwd; /* user password */\n"
1650 " uid_t pw_uid; /* user ID */\n"
1651 " gid_t pw_gid; /* group ID */\n"
1652 " char *pw_gecos; /* user information */\n"
1653 " char *pw_dir; /* home directory */\n"
1654 " char *pw_shell; /* shell program */\n"
1658 " char *pw_name; /* ユーザ名 */\n"
1659 " char *pw_passwd; /* ユーザのパスワード */\n"
1660 " uid_t pw_uid; /* ユーザ ID */\n"
1661 " gid_t pw_gid; /* グループ ID */\n"
1662 " char *pw_gecos; /* ユーザ情報 */\n"
1663 " char *pw_dir; /* ホームディレクトリ */\n"
1664 " char *pw_shell; /* シェルプログラム */\n"
1668 #: build/C/man3/getpw.3:72 build/C/man3/getpwent.3:103
1669 #: build/C/man3/getpwent_r.3:84
1671 "For more information about the fields of this structure, see B<passwd>(5)."
1672 msgstr "この構造体のフィールドの詳細は B<passwd>(5) を参照のこと。"
1675 #: build/C/man3/getpw.3:78
1677 "The B<getpw>() function returns 0 on success; on error, it returns -1, and "
1678 "I<errno> is set to indicate the error."
1680 "B<getpw>() 関数は、成功した場合 0 を返す; エラーが発生した場合 -1 を返し、エ"
1681 "ラーを 示すために I<error> がセットされる。"
1684 #: build/C/man3/getpw.3:79 build/C/man3/putpwent.3:76
1690 #: build/C/man3/getpw.3:83
1691 msgid "I<buf> is NULL."
1692 msgstr "I<buf> が NULL。"
1695 #: build/C/man3/getpw.3:87
1696 msgid "No user corresponding to I<uid>."
1697 msgstr "I<uid> に対応するユーザがいない。"
1700 #: build/C/man3/getpw.3:98
1705 #: build/C/man3/getpw.3:105
1707 "The B<getpw>() function is dangerous as it may overflow the provided buffer "
1708 "I<buf>. It is obsoleted by B<getpwuid>(3)."
1710 "B<getpw>() 関数は、与えられたバッファ I<buf> がオーバーフローするかもしれな"
1711 "いので危険である。 この関数は B<getpwuid>(3) によって古いものとなった。"
1714 #: build/C/man3/getpw.3:114
1716 "B<endpwent>(3), B<fgetpwent>(3), B<getpwent>(3), B<getpwnam>(3), B<getpwuid>"
1717 "(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
1719 "B<endpwent>(3), B<fgetpwent>(3), B<getpwent>(3), B<getpwnam>(3), B<getpwuid>"
1720 "(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
1723 #: build/C/man3/getpwent.3:33
1729 #: build/C/man3/getpwent.3:36
1730 msgid "getpwent, setpwent, endpwent - get password file entry"
1731 msgstr "getpwent, setpwent, endpwent - パスワードファイルのエントリの取得"
1734 #: build/C/man3/getpwent.3:40 build/C/man3/getpwnam.3:44
1737 "B<#include E<lt>sys/types.hE<gt>>\n"
1738 "B<#include E<lt>pwd.hE<gt>>\n"
1740 "B<#include E<lt>sys/types.hE<gt>>\n"
1741 "B<#include E<lt>pwd.hE<gt>>\n"
1744 #: build/C/man3/getpwent.3:42
1746 msgid "B<struct passwd *getpwent(void);>\n"
1747 msgstr "B<struct passwd *getpwent(void);>\n"
1750 #: build/C/man3/getpwent.3:44
1752 msgid "B<void setpwent(void);>\n"
1753 msgstr "B<void setpwent(void);>\n"
1756 #: build/C/man3/getpwent.3:46
1758 msgid "B<void endpwent(void);>\n"
1759 msgstr "B<void endpwent(void);>\n"
1762 #: build/C/man3/getpwent.3:57
1763 msgid "B<getpwent>(), B<setpwent>(), B<endpwent>():"
1764 msgstr "B<getpwent>(), B<setpwent>(), B<endpwent>():"
1767 #: build/C/man3/getpwent.3:60
1769 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
1770 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
1772 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
1773 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
1776 #: build/C/man3/getpwent.3:74
1778 "The B<getpwent>() function returns a pointer to a structure containing the "
1779 "broken-out fields of a record from the password database (e.g., the local "
1780 "password file I</etc/passwd>, NIS, and LDAP). The first time B<getpwent>() "
1781 "is called, it returns the first entry; thereafter, it returns successive "
1784 "B<getpwent>() 関数は、パスワード・データベースから取得したエントリを 要素毎"
1785 "に分解し、各要素を格納した構造体へのポインタを返す (パスワード・データベース"
1786 "の例: ローカルのパスワードファイル I</etc/passwd>, NIS, LDAP)。 B<getpwent>"
1787 "() は、最初に呼び出された時は最初のエントリを返し、それ以降は 呼び出される毎"
1791 #: build/C/man3/getpwent.3:79
1793 "The B<setpwent>() function rewinds to the beginning of the password "
1795 msgstr "B<setpwent>() 関数を使うと、パスワード・データベースの先頭に戻る。"
1798 #: build/C/man3/getpwent.3:84
1800 "The B<endpwent>() function is used to close the password database after all "
1801 "processing has been performed."
1803 "B<endpwent>() 関数は、全ての処理が終わった後にパスワード・ データベースをク"
1807 #: build/C/man3/getpwent.3:116
1809 "The B<getpwent>() function returns a pointer to a I<passwd> structure, or "
1810 "NULL if there are no more entries or an error occurs. If an error occurs, "
1811 "I<errno> is set appropriately. If one wants to check I<errno> after the "
1812 "call, it should be set to zero before the call."
1814 "B<getpwent>() 関数は I<passwd> 構造体へのポインタを返す。 これ以上エントリが"
1815 "無いか、エラーが発生した場合は NULL を返す。 エラーが発生すると、 I<errno> が"
1816 "適切に設定される。 この関数の呼び出し後に I<errno> をチェックしたい場合は、呼"
1817 "び出し前に I<errno> を 0 に設定しておかないといけない。"
1820 #: build/C/man3/getpwent.3:125
1822 "The return value may point to a static area, and may be overwritten by "
1823 "subsequent calls to B<getpwent>(), B<getpwnam>(3), or B<getpwuid>(3). (Do "
1824 "not pass the returned pointer to B<free>(3).)"
1826 "返り値は静的な領域を指しており、その後の B<getpwent>(), B<getpwnam>(3), "
1827 "B<getpwuid>(3) の呼び出しで上書きされるかもしれない。 (返されたポインタを "
1828 "B<free>(3) に渡さないこと。)"
1831 #: build/C/man3/getpwent.3:154 build/C/man3/getpwnam.3:217
1832 msgid "local password database file"
1833 msgstr "ローカルのパスワード・データベースファイル"
1836 #: build/C/man3/getpwent.3:159 build/C/man3/getpwnam.3:222
1838 "SVr4, 4.3BSD, POSIX.1-2001. The I<pw_gecos> field is not specified in "
1839 "POSIX, but is present on most implementations."
1841 "SVr4, 4.3BSD, POSIX.1-2001. I<pw_gecos> フィールドは POSIX では規定されてい"
1842 "ないが、 ほとんどの実装に存在する。"
1845 #: build/C/man3/getpwent.3:167
1847 "B<fgetpwent>(3), B<getpw>(3), B<getpwent_r>(3), B<getpwnam>(3), B<getpwuid>"
1848 "(3), B<putpwent>(3), B<passwd>(5)"
1850 "B<fgetpwent>(3), B<getpw>(3), B<getpwent_r>(3), B<getpwnam>(3), B<getpwuid>"
1851 "(3), B<putpwent>(3), B<passwd>(5)"
1854 #: build/C/man3/getpwent_r.3:24
1860 #: build/C/man3/getpwent_r.3:27
1861 msgid "getpwent_r, fgetpwent_r - get passwd file entry reentrantly"
1863 "getpwent_r, fgetpwent_r - パスワードファイルのエントリを リエントラントで取り"
1867 #: build/C/man3/getpwent_r.3:30
1869 msgid "B<#include E<lt>pwd.hE<gt>>\n"
1870 msgstr "B<#include E<lt>pwd.hE<gt>>\n"
1873 #: build/C/man3/getpwent_r.3:32
1875 msgid "B<int getpwent_r(struct passwd *>I<pwbuf>B<, char *>I<buf>B<,>\n"
1876 msgstr "B<int getpwent_r(struct passwd *>I<pwbuf>B<, char *>I<buf>B<,>\n"
1879 #: build/C/man3/getpwent_r.3:34
1881 msgid "B< size_t >I<buflen>B<, struct passwd **>I<pwbufp>B<);>\n"
1882 msgstr "B< size_t >I<buflen>B<, struct passwd **>I<pwbufp>B<);>\n"
1885 #: build/C/man3/getpwent_r.3:36
1887 msgid "B<int fgetpwent_r(FILE *>I<fp>B<, struct passwd *>I<pwbuf>B<, char *>I<buf>B<,>\n"
1888 msgstr "B<int fgetpwent_r(FILE *>I<fp>B<, struct passwd *>I<pwbuf>B<, char *>I<buf>B<,>\n"
1891 #: build/C/man3/getpwent_r.3:38
1893 msgid "B< size_t >I<buflen>B<, struct passwd **>I<pwbufp>B<);>\n"
1894 msgstr "B< size_t >I<buflen>B<, struct passwd **>I<pwbufp>B<);>\n"
1897 #: build/C/man3/getpwent_r.3:47
1898 msgid "B<getpwent_r>(), _BSD_SOURCE || _SVID_SOURCE"
1899 msgstr "B<getpwent_r>(), _BSD_SOURCE || _SVID_SOURCE"
1902 #: build/C/man3/getpwent_r.3:50
1903 msgid "B<fgetpwent_r>(): _SVID_SOURCE"
1904 msgstr "B<fgetpwent_r>(): _SVID_SOURCE"
1907 #: build/C/man3/getpwent_r.3:63
1909 "The functions B<getpwent_r>() and B<fgetpwent_r>() are the reentrant "
1910 "versions of B<getpwent>(3) and B<fgetpwent>(3). The former reads the next "
1911 "passwd entry from the stream initialized by B<setpwent>(3). The latter "
1912 "reads the next passwd entry from the stream I<fp>."
1914 "関数 B<getpwent_r>() と B<fgetpwent_r>() は B<getpwent>(3) と B<fgetpwent>"
1915 "(3) のリエントラント (reentrant) 版である。 前者は、 B<setpwent>(3) によっ"
1916 "て初期化されたストリームから、次のパスワードエントリを読み込む。 後者は、スト"
1917 "リーム I<fp> から次のパスワードエントリを読み込む。"
1920 #: build/C/man3/getpwent_r.3:79
1924 " char *pw_name; /* username */\n"
1925 " char *pw_passwd; /* user password */\n"
1926 " uid_t pw_uid; /* user ID */\n"
1927 " gid_t pw_gid; /* group ID */\n"
1928 " char *pw_gecos; /* user information */\n"
1929 " char *pw_dir; /* home directory */\n"
1930 " char *pw_shell; /* shell program */\n"
1934 " char *pw_name; /* ユーザ名 */\n"
1935 " char *pw_passwd; /* ユーザのパスワード */\n"
1936 " uid_t pw_uid; /* ユーザ ID */\n"
1937 " gid_t pw_gid; /* グループ ID */\n"
1938 " char *pw_gecos; /* ユーザ情報 */\n"
1939 " char *pw_dir; /* ホームディレクトリ */\n"
1940 " char *pw_shell; /* シェルプログラム */\n"
1944 #: build/C/man3/getpwent_r.3:103
1946 "The nonreentrant functions return a pointer to static storage, where this "
1947 "static storage contains further pointers to user name, password, gecos "
1948 "field, home directory and shell. The reentrant functions described here "
1949 "return all of that in caller-provided buffers. First of all there is the "
1950 "buffer I<pwbuf> that can hold a I<struct passwd>. And next the buffer "
1951 "I<buf> of size I<buflen> that can hold additional strings. The result of "
1952 "these functions, the I<struct passwd> read from the stream, is stored in the "
1953 "provided buffer I<*pwbuf>, and a pointer to this I<struct passwd> is "
1954 "returned in I<*pwbufp>."
1956 "リエントラントでない関数は静的な格納領域へのポインタを返す。 この静的な格納領"
1957 "域には、更にユーザ名・パスワード・gecos フィールド・ ホームディレクトリ・シェ"
1958 "ルへのポインタが含まれる。 ここで説明されているリエントラント版の関数は、 呼"
1959 "び出し側から提供されるバッファにユーザ名など全てを返す。 最初の引き数として "
1960 "I<struct passwd> を保持できるバッファ I<pwbuf> がある。 次にその他の文字列を"
1961 "保持できるサイズ I<buflen> のバッファ I<buf> がある。 これらの関数の結果 (ス"
1962 "トリームから読み込まれた I<struct passwd>) は、 提供されたバッファ I<*pwbuf> "
1963 "に格納され、この I<struct passwd> へのポインタは I<*pwbufp> に返される。"
1966 #: build/C/man3/getpwent_r.3:110
1968 "On success, these functions return 0 and I<*pwbufp> is a pointer to the "
1969 "I<struct passwd>. On error, these functions return an error value and "
1970 "I<*pwbufp> is NULL."
1972 "成功した場合、これらの関数は 0 を返し、 I<*pwbufp> は I<struct passwd> へのポ"
1973 "インタとなる。 エラーの場合、これらの関数はエラー値を返し、 I<*pwbufp> は "
1977 #: build/C/man3/getpwent_r.3:128
1981 "getpwent_r(struct passwd *pwd, char *buf, int buflen);\n"
1984 "getpwent_r(struct passwd *pwd, char *buf, int buflen);\n"
1987 #: build/C/man3/getpwent_r.3:138
1991 "getpwent_r(struct passwd *pwd, char *buf, int buflen,\n"
1995 "getpwent_r(struct passwd *pwd, char *buf, int buflen,\n"
1999 #: build/C/man3/getpwent_r.3:145
2001 "The function B<getpwent_r>() is not really reentrant since it shares the "
2002 "reading position in the stream with all other threads."
2004 "関数 B<getpwent_r>() は本当のリエントラントではない。 なぜなら、ストリームの"
2005 "読み込み位置を 他の全てのスレッドと共有しているためである。"
2008 #: build/C/man3/getpwent_r.3:151
2011 "#define _GNU_SOURCE\n"
2012 "#include E<lt>pwd.hE<gt>\n"
2013 "#include E<lt>stdio.hE<gt>\n"
2014 "#define BUFLEN 4096\n"
2016 "#define _GNU_SOURCE\n"
2017 "#include E<lt>pwd.hE<gt>\n"
2018 "#include E<lt>stdio.hE<gt>\n"
2019 "#define BUFLEN 4096\n"
2022 #: build/C/man3/getpwent_r.3:158
2028 " struct passwd pw, *pwp;\n"
2029 " char buf[BUFLEN];\n"
2035 " struct passwd pw, *pwp;\n"
2036 " char buf[BUFLEN];\n"
2040 #: build/C/man3/getpwent_r.3:170
2045 " i = getpwent_r(&pw, buf, BUFLEN, &pwp);\n"
2048 " printf(\"%s (%d)\\etHOME %s\\etSHELL %s\\en\", pwp-E<gt>pw_name,\n"
2049 " pwp-E<gt>pw_uid, pwp-E<gt>pw_dir, pwp-E<gt>pw_shell);\n"
2052 " exit(EXIT_SUCCESS);\n"
2057 " i = getpwent_r(&pw, buf, BUFLEN, &pwp);\n"
2060 " printf(\"%s (%d)\\etHOME %s\\etSHELL %s\\en\", pwp-E<gt>pw_name,\n"
2061 " pwp-E<gt>pw_uid, pwp-E<gt>pw_dir, pwp-E<gt>pw_shell);\n"
2064 " exit(EXIT_SUCCESS);\n"
2068 #: build/C/man3/getpwent_r.3:188
2070 "B<fgetpwent>(3), B<getpw>(3), B<getpwent>(3), B<getpwnam>(3), B<getpwuid>"
2071 "(3), B<putpwent>(3), B<passwd>(5)"
2073 "B<fgetpwent>(3), B<getpw>(3), B<getpwent>(3), B<getpwnam>(3), B<getpwuid>"
2074 "(3), B<putpwent>(3), B<passwd>(5)"
2077 #: build/C/man3/getpwnam.3:37
2083 #: build/C/man3/getpwnam.3:40
2084 msgid "getpwnam, getpwnam_r, getpwuid, getpwuid_r - get password file entry"
2086 "getpwnam, getpwnam_r, getpwuid, getpwuid_r - パスワードファイルのエントリの取"
2090 #: build/C/man3/getpwnam.3:46
2092 msgid "B<struct passwd *getpwnam(const char *>I<name>B<);>\n"
2093 msgstr "B<struct passwd *getpwnam(const char *>I<name>B<);>\n"
2096 #: build/C/man3/getpwnam.3:48
2098 msgid "B<struct passwd *getpwuid(uid_t >I<uid>B<);>\n"
2099 msgstr "B<struct passwd *getpwuid(uid_t >I<uid>B<);>\n"
2102 #: build/C/man3/getpwnam.3:50
2104 msgid "B<int getpwnam_r(const char *>I<name>B<, struct passwd *>I<pwd>B<,>\n"
2105 msgstr "B<int getpwnam_r(const char *>I<name>B<, struct passwd *>I<pwd>B<,>\n"
2108 #: build/C/man3/getpwnam.3:52 build/C/man3/getpwnam.3:56
2110 msgid "B< char *>I<buf>B<, size_t >I<buflen>B<, struct passwd **>I<result>B<);>\n"
2111 msgstr "B< char *>I<buf>B<, size_t >I<buflen>B<, struct passwd **>I<result>B<);>\n"
2114 #: build/C/man3/getpwnam.3:54
2116 msgid "B<int getpwuid_r(uid_t >I<uid>B<, struct passwd *>I<pwd>B<,>\n"
2117 msgstr "B<int getpwuid_r(uid_t >I<uid>B<, struct passwd *>I<pwd>B<,>\n"
2120 #: build/C/man3/getpwnam.3:66
2121 msgid "B<getpwnam_r>(), B<getpwuid_r>():"
2122 msgstr "B<getpwnam_r>(), B<getpwuid_r>():"
2125 #: build/C/man3/getpwnam.3:81
2127 "The B<getpwnam>() function returns a pointer to a structure containing the "
2128 "broken-out fields of the record in the password database (e.g., the local "
2129 "password file I</etc/passwd>, NIS, and LDAP) that matches the username "
2132 "B<getpwnam>() 関数は、ユーザ名 I<name> にマッチするパスワード・データベース"
2133 "のエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す (パス"
2134 "ワード・データベースの例: ローカルのパスワードファイル I</etc/passwd>, NIS, "
2138 #: build/C/man3/getpwnam.3:88
2140 "The B<getpwuid>() function returns a pointer to a structure containing the "
2141 "broken-out fields of the record in the password database that matches the "
2144 "B<getpwuid>() 関数は、ユーザ ID I<uid> にマッチするパスワード・データベース"
2145 "のエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す。"
2148 #: build/C/man3/getpwnam.3:108
2149 msgid "See B<passwd>(5) for more information about these fields."
2150 msgstr "これらのフィールドの詳しい情報については B<passwd>(5) を参照のこと。"
2153 #: build/C/man3/getpwnam.3:130
2155 "The B<getpwnam_r>() and B<getpwuid_r>() functions obtain the same "
2156 "information as B<getpwnam>() and B<getpwuid>(), but store the retrieved "
2157 "I<passwd> structure in the space pointed to by I<pwd>. The string fields "
2158 "pointed to by the members of the I<passwd> structure are stored in the "
2159 "buffer I<buf> of size I<buflen>. A pointer to the result (in case of "
2160 "success) or NULL (in case no entry was found or an error occurred) is stored "
2163 "B<getpwnam_r>() と B<getpwuid_r>() 関数は、それぞれB<getpwnam>() と\n"
2164 "B<getpwuid>() と同じ情報を取得するが、取得した I<passwd> 構造体を\n"
2165 "I<pwd> が指す領域に格納する。I<passwd> 構造体のメンバーが指す文字列は、\n"
2166 "サイズ I<buflen> のバッファ I<buf> に格納される。成功した場合\n"
2167 "I<*result> には結果へのポインタが格納される。エントリが見つからなかった\n"
2168 "場合やエラーが発生した場合には I<*result> には NULL が入る。"
2171 #: build/C/man3/getpwnam.3:134
2173 msgid " sysconf(_SC_GETPW_R_SIZE_MAX)\n"
2174 msgstr " sysconf(_SC_GETPW_R_SIZE_MAX)\n"
2177 #: build/C/man3/getpwnam.3:158
2179 "The B<getpwnam>() and B<getpwuid>() functions return a pointer to a "
2180 "I<passwd> structure, or NULL if the matching entry is not found or an error "
2181 "occurs. If an error occurs, I<errno> is set appropriately. If one wants to "
2182 "check I<errno> after the call, it should be set to zero before the call."
2184 "B<getpwnam>() と B<getpwuid>() 関数は、 I<passwd> 構造体へのポインタを返"
2185 "す。 一致するエントリが見つからなかった場合や、エラーが発生した場合は NULL を"
2186 "返す。 エラーが起こった場合、 I<errno> が適切に設定される。 呼び出しの後で "
2187 "I<errno> をチェックしたい場合は、 呼び出しの前に (この値を) 0 に設定しておく"
2191 #: build/C/man3/getpwnam.3:167
2193 "The return value may point to a static area, and may be overwritten by "
2194 "subsequent calls to B<getpwent>(3), B<getpwnam>(), or B<getpwuid>(). (Do "
2195 "not pass the returned pointer to B<free>(3).)"
2197 "返り値は静的な領域を指しており、その後の B<getpwent>(3), B<getpwnam>(), "
2198 "B<getpwuid>() の呼び出しで上書きされるかもしれない。 (返されたポインタを "
2199 "B<free>(3) に渡さないこと。)"
2202 #: build/C/man3/getpwnam.3:181
2204 "On success, B<getpwnam_r>() and B<getpwuid_r>() return zero, and set "
2205 "I<*result> to I<pwd>. If no matching password record was found, these "
2206 "functions return 0 and store NULL in I<*result>. In case of error, an error "
2207 "number is returned, and NULL is stored in I<*result>."
2209 "成功すると、 B<getpwnam_r>() と B<getpwuid_r>() は 0 を返し、 I<*result> "
2210 "に I<pwd> を設定する。 マッチするパスワード・エントリが見つからなかった場合に"
2211 "は、 0 を返し、 I<*result> に NULL を設定する。 エラーの場合、エラー番号を返"
2212 "し、 I<*result> に NULL を設定する。"
2215 #: build/C/man3/getpwnam.3:189
2216 msgid "The given I<name> or I<uid> was not found."
2217 msgstr "指定された I<name> または I<uid> が見つからなかった。"
2220 #. AIX 5.1 - gives ESRCH
2221 #. OSF1 4.0g - gives EWOULDBLOCK
2222 #. libc, glibc up to version 2.6, Irix 6.5 - give ENOENT
2223 #. glibc since version 2.7 - give 0
2224 #. FreeBSD 4.8, OpenBSD 3.2, NetBSD 1.6 - give EPERM
2225 #. SunOS 5.8 - gives EBADF
2226 #. Tru64 5.1b, HP-UX-11i, SunOS 5.7 - give 0
2228 #: build/C/man3/getpwnam.3:243
2230 "The formulation given above under \"RETURN VALUE\" is from POSIX.1-2001. It "
2231 "does not call \"not found\" an error, and hence does not specify what value "
2232 "I<errno> might have in this situation. But that makes it impossible to "
2233 "recognize errors. One might argue that according to POSIX I<errno> should "
2234 "be left unchanged if an entry is not found. Experiments on various UNIX-"
2235 "like systems show that lots of different values occur in this situation: 0, "
2236 "ENOENT, EBADF, ESRCH, EWOULDBLOCK, EPERM and probably others."
2238 "上記の「返り値」以下の記述は POSIX.1-2001 に拠る。 この標準は「(エントリが) "
2239 "見つからないこと」をエラーとしていないので、 そのような場合に I<errno> がどの"
2240 "ような値になるかを定めていない。 そのため、エラーを認識することは不可能であ"
2241 "る。 POSIX に準拠して、エントリが見つからない場合は I<errno> を変更しないよう"
2242 "にすべきである、と主張する人もいるかもしれない。 様々な UNIX 系のシステムで試"
2243 "してみると、そのような場合には 0, ENOENT, EBADF, ESRCH, EWOULDBLOCK, EPERM と"
2244 "いった様々な値が返される。 他の値が返されるかもしれない。"
2247 #: build/C/man3/getpwnam.3:261
2249 "The I<pw_dir> field contains the name of the initial working directory of "
2250 "the user. Login programs use the value of this field to initialize the "
2251 "B<HOME> environment variable for the login shell. An application that wants "
2252 "to determine its user's home directory should inspect the value of B<HOME> "
2253 "(rather than the value I<getpwuid(getuid())-E<gt>pw_dir>) since this allows "
2254 "the user to modify their notion of \"the home directory\" during a login "
2255 "session. To determine the (initial) home directory of another user, it is "
2256 "necessary to use I<getpwnam(\"username\")-E<gt>pw_dir> or similar."
2258 "フィールド I<pw_dir> には、ユーザの作業ディレクトリ名の初期値が格納される。 "
2259 "ログインプロセスは、このフィールドの値を使って、 ログインシェルの B<HOME> 環"
2260 "境変数を初期化する。 アプリケーションが、ユーザのホーム・ディレクトリを決定す"
2261 "る場合には、 (I<getpwuid(getuid())-E<gt>pw_dir> の値ではなく) B<HOME> の値を"
2262 "検査するようにすべきである。 なぜなら、このようにすることで、ユーザがログイ"
2263 "ン・セッション中で 「ホーム・ディレクトリ」の意味を変更できるようになるからで"
2264 "ある。 別のユーザのホーム・ディレクトリ (の初期値) を知るには I<getpwnam"
2265 "(\"username\")-E<gt>pw_dir> か同様の方法を使う必要がある。"
2268 #: build/C/man3/getpwnam.3:266
2270 "The program below demonstrates the use of B<getpwnam_r>() to find the full "
2271 "username and user ID for the username supplied as a command-line argument."
2273 "以下のプログラムは B<getpwnam_r>() の使用例を示したもので、コマンドライン引"
2274 "き数で渡されたユーザ名に対する 完全なユーザ名とユーザ ID を探すものである。"
2277 #: build/C/man3/getpwnam.3:273
2280 "#include E<lt>pwd.hE<gt>\n"
2281 "#include E<lt>stdio.hE<gt>\n"
2282 "#include E<lt>stdlib.hE<gt>\n"
2283 "#include E<lt>unistd.hE<gt>\n"
2284 "#include E<lt>errno.hE<gt>\n"
2286 "#include E<lt>pwd.hE<gt>\n"
2287 "#include E<lt>stdio.hE<gt>\n"
2288 "#include E<lt>stdlib.hE<gt>\n"
2289 "#include E<lt>unistd.hE<gt>\n"
2290 "#include E<lt>errno.hE<gt>\n"
2293 #: build/C/man3/getpwnam.3:282
2297 "main(int argc, char *argv[])\n"
2299 " struct passwd pwd;\n"
2300 " struct passwd *result;\n"
2302 " size_t bufsize;\n"
2306 "main(int argc, char *argv[])\n"
2308 " struct passwd pwd;\n"
2309 " struct passwd *result;\n"
2311 " size_t bufsize;\n"
2315 #: build/C/man3/getpwnam.3:287
2318 " if (argc != 2) {\n"
2319 " fprintf(stderr, \"Usage: %s username\\en\", argv[0]);\n"
2320 " exit(EXIT_FAILURE);\n"
2323 " if (argc != 2) {\n"
2324 " fprintf(stderr, \"Usage: %s username\\en\", argv[0]);\n"
2325 " exit(EXIT_FAILURE);\n"
2329 #: build/C/man3/getpwnam.3:291
2332 " bufsize = sysconf(_SC_GETPW_R_SIZE_MAX);\n"
2333 " if (bufsize == -1) /* Value was indeterminate */\n"
2334 " bufsize = 16384; /* Should be more than enough */\n"
2336 " bufsize = sysconf(_SC_GETPW_R_SIZE_MAX);\n"
2337 " if (bufsize == -1) /* 値を決定できなかった */\n"
2338 " bufsize = 16384; /* 十分大きな値にすべき */\n"
2341 #: build/C/man3/getpwnam.3:297
2344 " buf = malloc(bufsize);\n"
2345 " if (buf == NULL) {\n"
2346 " perror(\"malloc\");\n"
2347 " exit(EXIT_FAILURE);\n"
2350 " buf = malloc(bufsize);\n"
2351 " if (buf == NULL) {\n"
2352 " perror(\"malloc\");\n"
2353 " exit(EXIT_FAILURE);\n"
2357 #: build/C/man3/getpwnam.3:308
2360 " s = getpwnam_r(argv[1], &pwd, buf, bufsize, &result);\n"
2361 " if (result == NULL) {\n"
2363 " printf(\"Not found\\en\");\n"
2366 " perror(\"getpwnam_r\");\n"
2368 " exit(EXIT_FAILURE);\n"
2371 " s = getpwnam_r(argv[1], &pwd, buf, bufsize, &result);\n"
2372 " if (result == NULL) {\n"
2374 " printf(\"Not found\\en\");\n"
2377 " perror(\"getpwnam_r\");\n"
2379 " exit(EXIT_FAILURE);\n"
2383 #: build/C/man3/getpwnam.3:312
2386 " printf(\"Name: %s; UID: %ld\\en\", pwd.pw_gecos, (long) pwd.pw_uid);\n"
2387 " exit(EXIT_SUCCESS);\n"
2390 " printf(\"Name: %s; UID: %ld\\en\", pwd.pw_gecos, (long) pwd.pw_uid);\n"
2391 " exit(EXIT_SUCCESS);\n"
2395 #: build/C/man3/getpwnam.3:323
2397 "B<endpwent>(3), B<fgetpwent>(3), B<getgrnam>(3), B<getpw>(3), B<getpwent>"
2398 "(3), B<getspnam>(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
2400 "B<endpwent>(3), B<fgetpwent>(3), B<getgrnam>(3), B<getpw>(3), B<getpwent>"
2401 "(3), B<getspnam>(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
2404 #: build/C/man3/getspnam.3:8
2410 #: build/C/man3/getspnam.3:8
2416 #: build/C/man3/getspnam.3:13
2418 "getspnam, getspnam_r, getspent, getspent_r, setspent, endspent, fgetspent, "
2419 "fgetspent_r, sgetspent, sgetspent_r, putspent, lckpwdf, ulckpwdf - get "
2420 "shadow password file entry"
2422 "getspnam, getspnam_r, getspent, getspent_r, setspent, endspent,fgetspent, "
2423 "fgetspent_r, sgetspent, sgetspent_r, putspent, lckpwdf, ulckpwdf - shadow パ"
2424 "スワードファイルのエントリを取得する"
2427 #: build/C/man3/getspnam.3:16
2429 msgid "/* General shadow password file API */\n"
2430 msgstr "/* 一般的な shadow パスワードファイル API */\n"
2433 #: build/C/man3/getspnam.3:18 build/C/man3/getspnam.3:40
2435 msgid "B<#include E<lt>shadow.hE<gt>>\n"
2436 msgstr "B<#include E<lt>shadow.hE<gt>>\n"
2439 #: build/C/man3/getspnam.3:20
2441 msgid "B<struct spwd *getspnam(const char *>I<name>B<);>\n"
2442 msgstr "B<struct spwd *getspnam(const char *>I<name>B<);>\n"
2445 #: build/C/man3/getspnam.3:22
2447 msgid "B<struct spwd *getspent(void);>\n"
2448 msgstr "B<struct spwd *getspent(void);>\n"
2451 #: build/C/man3/getspnam.3:24
2453 msgid "B<void setspent(void);>\n"
2454 msgstr "B<void setspent(void);>\n"
2457 #: build/C/man3/getspnam.3:26
2459 msgid "B<void endspent(void);>\n"
2460 msgstr "B<void endspent(void);>\n"
2463 #: build/C/man3/getspnam.3:28
2465 msgid "B<struct spwd *fgetspent(FILE *>I<fp>B<);>\n"
2466 msgstr "B<struct spwd *fgetspent(FILE *>I<fp>B<);>\n"
2469 #: build/C/man3/getspnam.3:30
2471 msgid "B<struct spwd *sgetspent(const char *>I<s>B<);>\n"
2472 msgstr "B<struct spwd *sgetspent(const char *>I<s>B<);>\n"
2475 #: build/C/man3/getspnam.3:32
2477 msgid "B<int putspent(struct spwd *>I<p>B<, FILE *>I<fp>B<);>\n"
2478 msgstr "B<int putspent(struct spwd *>I<p>B<, FILE *>I<fp>B<);>\n"
2481 #: build/C/man3/getspnam.3:34
2483 msgid "B<int lckpwdf(void);>\n"
2484 msgstr "B<int lckpwdf(void);>\n"
2487 #: build/C/man3/getspnam.3:36
2489 msgid "B<int ulckpwdf(void);>\n"
2490 msgstr "B<int ulckpwdf(void);>\n"
2493 #: build/C/man3/getspnam.3:38
2495 msgid "/* GNU extension */\n"
2496 msgstr "/* GNU 版における拡張 */\n"
2499 #: build/C/man3/getspnam.3:42
2501 msgid "B<int getspent_r(struct spwd *>I<spbuf>B<,>\n"
2502 msgstr "B<int getspent_r(struct spwd *>I<spbuf>B<,>\n"
2505 #: build/C/man3/getspnam.3:44 build/C/man3/getspnam.3:48
2506 #: build/C/man3/getspnam.3:52 build/C/man3/getspnam.3:56
2508 msgid "B< char *>I<buf>B<, size_t >I<buflen>B<, struct spwd **>I<spbufp>B<);>\n"
2509 msgstr "B< char *>I<buf>B<, size_t >I<buflen>B<, struct spwd **>I<spbufp>B<);>\n"
2512 #: build/C/man3/getspnam.3:46
2514 msgid "B<int getspnam_r(const char *>I<name>B<, struct spwd *>I<spbuf>B<,>\n"
2515 msgstr "B<int getspnam_r(const char *>I<name>B<, struct spwd *>I<spbuf>B<,>\n"
2518 #: build/C/man3/getspnam.3:50
2520 msgid "B<int fgetspent_r(FILE *>I<fp>B<, struct spwd *>I<spbuf>B<,>\n"
2521 msgstr "B<int fgetspent_r(FILE *>I<fp>B<, struct spwd *>I<spbuf>B<,>\n"
2524 #: build/C/man3/getspnam.3:54
2526 msgid "B<int sgetspent_r(const char *>I<s>B<, struct spwd *>I<spbuf>B<,>\n"
2527 msgstr "B<int sgetspent_r(const char *>I<s>B<, struct spwd *>I<spbuf>B<,>\n"
2530 #: build/C/man3/getspnam.3:68
2531 msgid "B<getspent_r>(), B<getspnam_r>(), B<fgetspent_r>(), B<sgetspent_r>():"
2532 msgstr "B<getspent_r>(), B<getspnam_r>(), B<fgetspent_r>(), B<sgetspent_r>():"
2535 #: build/C/man3/getspnam.3:70
2536 msgid "_BSD_SOURCE || _SVID_SOURCE"
2537 msgstr "_BSD_SOURCE || _SVID_SOURCE"
2540 #: build/C/man3/getspnam.3:84
2542 "Long ago it was considered safe to have encrypted passwords openly visible "
2543 "in the password file. When computers got faster and people got more "
2544 "security-conscious, this was no longer acceptable. Julianne Frances Haugh "
2545 "implemented the shadow password suite that keeps the encrypted passwords in "
2546 "the shadow password database (e.g., the local shadow password file I</etc/"
2547 "shadow>, NIS, and LDAP), readable only by root."
2549 "昔は暗号化されたパスワードをパスワードファイルに 見えるように公開しておいても"
2550 "安全だと考えられていた。 Julianne Frances Haugh は shadow パスワード・スイー"
2551 "トを実装した。 これは暗号化されたパスワードを、root のみが読むことができる "
2552 "shadow パスワード・データベース (例えば、 ローカルの shadow パスワードファイ"
2553 "ル I</etc/shadow>, NIS, LDAP) に保持する。"
2555 #. FIXME I've commented out the following for the
2556 #. moment. The relationship between PAM and nsswitch.conf needs
2557 #. to be clearly documented in one place, which is pointed to by
2558 #. the pages for the user, group, and shadow password functions.
2560 #. This shadow password setup has been superseded by PAM
2561 #. (pluggable authentication modules), and the file
2562 #. .I /etc/nsswitch.conf
2563 #. now describes the sources to be used.
2565 #: build/C/man3/getspnam.3:101
2567 "The functions described below resemble those for the traditional password "
2568 "database (e.g., see B<getpwnam>(3) and B<getpwent>(3))."
2570 "以下で説明する関数は、伝統的なパスワード・データベースに対する 関数に似てい"
2571 "る (例えば B<getpwnam>(3) や B<getpwent>(3) を参照)。"
2574 #: build/C/man3/getspnam.3:108
2576 "The B<getspnam>() function returns a pointer to a structure containing the "
2577 "broken-out fields of the record in the shadow password database that matches "
2578 "the username I<name>."
2580 "B<getspnam>() 関数は、ユーザ名 I<name> にマッチする shadow パスワード・デー"
2581 "タベースのエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返"
2584 #. some systems require a call of setspent() before the first getspent()
2587 #: build/C/man3/getspnam.3:120
2589 "The B<getspent>() function returns a pointer to the next entry in the "
2590 "shadow password database. The position in the input stream is initialized "
2591 "by B<setspent>(). When done reading, the program may call B<endspent>() so "
2592 "that resources can be deallocated."
2594 "B<getspent>() 関数は shadow パスワード・データベースにおける次のエントリへの"
2595 "ポインタを返す。 入力ストリームにおける位置は、 B<setspent>() で初期化され"
2596 "る。 読み込みが終わった後に、 B<endspent>() を呼び出すと、リソースを解放でき"
2600 #: build/C/man3/getspnam.3:127
2602 "The B<fgetspent>() function is similar to B<getspent>() but uses the "
2603 "supplied stream instead of the one implicitly opened by B<setspent>()."
2605 "B<fgetspent>() 関数は B<getspent>() に似ているが、 B<setspent>() で暗黙の"
2606 "うちにオープンされるストリームではなく、与えられたストリームを使う。"
2609 #: build/C/man3/getspnam.3:134
2611 "The B<sgetspent>() function parses the supplied string I<s> into a struct "
2614 "B<sgetspent>() 関数は与えられた文字列 I<s> を解析し struct I<spwd> に格納す"
2618 #: build/C/man3/getspnam.3:144
2620 "The B<putspent>() function writes the contents of the supplied struct "
2621 "I<spwd> I<*p> as a text line in the shadow password file format to the "
2622 "stream I<fp>. String entries with value NULL and numerical entries with "
2623 "value -1 are written as an empty string."
2625 "B<putspent>() 関数は与えられた struct I<spwd> I<*p> の内容を shadow パスワー"
2626 "ドファイル形式のテキスト行でストリーム I<fp> に書き出す。 空文字列として、 値"
2627 "が NULL の文字列エントリと値が -1 の数値エントリが 書き出される。"
2630 #: build/C/man3/getspnam.3:159
2632 "The B<lckpwdf>() function is intended to protect against multiple "
2633 "simultaneous accesses of the shadow password database. It tries to acquire "
2634 "a lock, and returns 0 on success, or -1 on failure (lock not obtained within "
2635 "15 seconds). The B<ulckpwdf>() function releases the lock again. Note "
2636 "that there is no protection against direct access of the shadow password "
2637 "file. Only programs that use B<lckpwdf>() will notice the lock."
2639 "B<lckpwdf>() 関数は、 shadow パスワード・データベースを 多重同時アクセスから"
2640 "守るためのものである。 この関数はロックの獲得を試み、 成功した場合は 0 を返"
2641 "す。 失敗した場合 (15 秒以内にロックが取得できなかった場合) は -1 を返す。 "
2642 "B<ulckpwdf>() 関数はロックを再び解放する。 shadow パスワードファイルへの直接"
2643 "アクセスから 保護する手段がない点に注意すること。 B<lckpwdf>() を使うプログ"
2647 #. SUN doesn't have sgetspent()
2649 #: build/C/man3/getspnam.3:164
2651 "These were the functions that formed the original shadow API. They are "
2654 "これらの関数はオリジナルの shadow API を構成していた関数であり、 いろいろなシ"
2658 #: build/C/man3/getspnam.3:164
2660 msgid "Reentrant versions"
2664 #: build/C/man3/getspnam.3:181
2666 "Analogous to the reentrant functions for the password database, glibc also "
2667 "has reentrant functions for the shadow password database. The B<getspnam_r>"
2668 "() function is like B<getspnam>() but stores the retrieved shadow password "
2669 "structure in the space pointed to by I<spbuf>. This shadow password "
2670 "structure contains pointers to strings, and these strings are stored in the "
2671 "buffer I<buf> of size I<buflen>. A pointer to the result (in case of "
2672 "success) or NULL (in case no entry was found or an error occurred) is stored "
2675 "パスワード・データベースに対するリエントラント版と同じように、 glibc には "
2676 "shadow パスワードファイルに対してリエントラント版がある。 B<getspnam_r>() 関"
2677 "数は B<getspnam>() と似ているが、取得した shadow パスワード構造体を "
2678 "I<spbuf> が指す領域に格納する。 shadow パスワード構造体は文字列群へのポインタ"
2679 "を含み、 これらの文字列群はサイズ I<buflen> のバッファ I<buf> に格納される。 "
2680 "I<*spbufp> には (成功した場合は) 結果へのポインタが格納され、 (エントリが見つ"
2681 "からなかった場合またはエラーが起こった場合は) NULL が格納される。"
2684 #: build/C/man3/getspnam.3:188
2686 "The functions B<getspent_r>(), B<fgetspent_r>(), and B<sgetspent_r>() are "
2687 "similarly analogous to their nonreentrant counterparts."
2689 "関数 B<getspent_r>(), B<fgetspent_r>(), B<sgetspent_r>() はそれぞれリエント"
2690 "ラントでないバージョンと同様の機能を持つ。"
2692 #. SUN doesn't have sgetspent_r()
2694 #: build/C/man3/getspnam.3:192
2696 "Some non-glibc systems also have functions with these names, often with "
2697 "different prototypes."
2699 "glibc でないシステムにもこれらと同じ名前の関数があるが、 プロトタイプが異なる"
2703 #: build/C/man3/getspnam.3:192
2709 #: build/C/man3/getspnam.3:194
2711 "The shadow password structure is defined in I<E<lt>shadow.hE<gt>> as follows:"
2713 "shadow パスワード構造体は I<E<lt>shadow.hE<gt>> で以下のように定義されている:"
2716 #: build/C/man3/getspnam.3:214
2719 #| "struct spwd {\n"
2720 #| " char *sp_namp; /* Login name */\n"
2721 #| " char *sp_pwdp; /* Encrypted password */\n"
2722 #| " long sp_lstchg; /* Date of last change (measured\n"
2723 #| " in days since 1970-01-01 00:00:00 +0000 (UTC)) */\n"
2724 #| " long sp_min; /* Min # of days between changes */\n"
2725 #| " long sp_max; /* Max # of days between changes */\n"
2726 #| " long sp_warn; /* # of days before password expires\n"
2727 #| " to warn user to change it */\n"
2728 #| " long sp_inact; /* # of days after password expires\n"
2729 #| " until account is disabled */\n"
2730 #| " long sp_expire; /* Date when account expires (measured\n"
2731 #| " in days since 1970-01-01 00:00:00 +0000 (UTC)) */\n"
2732 #| " unsigned long sp_flag; /* Reserved */\n"
2736 " char *sp_namp; /* Login name */\n"
2737 " char *sp_pwdp; /* Encrypted password */\n"
2738 " long sp_lstchg; /* Date of last change\n"
2739 " (measured in days since\n"
2740 " 1970-01-01 00:00:00 +0000 (UTC)) */\n"
2741 " long sp_min; /* Min # of days between changes */\n"
2742 " long sp_max; /* Max # of days between changes */\n"
2743 " long sp_warn; /* # of days before password expires\n"
2744 " to warn user to change it */\n"
2745 " long sp_inact; /* # of days after password expires\n"
2746 " until account is disabled */\n"
2747 " long sp_expire; /* Date when account expires\n"
2748 " (measured in days since\n"
2749 " 1970-01-01 00:00:00 +0000 (UTC)) */\n"
2750 " unsigned long sp_flag; /* Reserved */\n"
2754 " char *sp_namp; /* ログイン名 */\n"
2755 " char *sp_pwdp; /* 暗号化されたパスワード */\n"
2756 " long sp_lstchg; /* 最終更新日\n"
2757 " (1970-01-01 00:00:00 +0000 (UTC)) からの日数) */\n"
2758 " long sp_min; /* 変更が出来るようになるまでの最短日数 */\n"
2759 " long sp_max; /* 変更をしなくてもよい最長日数 */\n"
2760 " long sp_warn; /* パスワードが期限切れになる前に\n"
2761 " ユーザに変更の警告を出す日数 */\n"
2762 " long sp_inact; /* パスワードが期限切れになってから\n"
2763 " アカウントが無効になるまでの日数 */\n"
2764 " long sp_expire; /* アカウントが無効になる日付\n"
2765 " (1970-01-01 00:00:00 +0000 (UTC)) からの日数) */\n"
2766 " unsigned long sp_flag; /* 予約フィールド */\n"
2770 #: build/C/man3/getspnam.3:221
2772 "The functions that return a pointer return NULL if no more entries are "
2773 "available or if an error occurs during processing. The functions which have "
2774 "I<int> as the return value return 0 for success and -1 for failure."
2776 "ポインタを返す関数は、これ以上エントリがない場合や 処理中にエラーが発生した場"
2777 "合 NULL を返す。 I<int> を返り値として持つ関数は、 成功した場合 0 を返し、失"
2781 #: build/C/man3/getspnam.3:224
2783 "For the nonreentrant functions, the return value may point to static area, "
2784 "and may be overwritten by subsequent calls to these functions."
2786 "リエントラント版でない関数では、返り値が静的な領域を指しており、 引き続いてこ"
2787 "れらの関数を呼び出した場合に上書きされる可能性がある。"
2790 #: build/C/man3/getspnam.3:227
2792 "The reentrant functions return zero on success. In case of error, an error "
2793 "number is returned."
2795 "リエントラント版の関数は、成功した場合に 0 を返す。 エラーの場合は、エラー番"
2799 #: build/C/man3/getspnam.3:228
2805 #: build/C/man3/getspnam.3:231
2806 msgid "The caller does not have permission to access the shadow password file."
2810 #: build/C/man3/getspnam.3:234
2811 msgid "Supplied buffer is too small."
2812 msgstr "与えられたバッファが小さすぎる。"
2815 #: build/C/man3/getspnam.3:235
2817 msgid "I</etc/shadow>"
2818 msgstr "I</etc/shadow>"
2821 #: build/C/man3/getspnam.3:238
2822 msgid "local shadow password database file"
2823 msgstr "ローカルの shadow パスワード・データベースファイル"
2826 #: build/C/man3/getspnam.3:238
2828 msgid "I</etc/.pwd.lock>"
2829 msgstr "I</etc/.pwd.lock>"
2832 #: build/C/man3/getspnam.3:241
2837 #: build/C/man3/getspnam.3:247
2839 "The include file I<E<lt>paths.hE<gt>> defines the constant B<_PATH_SHADOW> "
2840 "to the pathname of the shadow password file."
2842 "インクルードファイル I<E<lt>paths.hE<gt>> は定数 B<_PATH_SHADOW> を定義してい"
2843 "る。 これは shadow パスワードファイルのパス名である。"
2846 #: build/C/man3/getspnam.3:251
2848 "The shadow password database and its associated API are not specified in "
2849 "POSIX.1-2001. However, many other systems provide a similar API."
2851 "shadow パスワード・データベースと関連 API は POSIX.1-2001 には記載されていな"
2852 "い。しかしながら、多くの他のシステムでも 同様の API が提供されている。"
2855 #: build/C/man3/getspnam.3:256
2856 msgid "B<getgrnam>(3), B<getpwnam>(3), B<getpwnam_r>(3), B<shadow>(5)"
2857 msgstr "B<getgrnam>(3), B<getpwnam>(3), B<getpwnam_r>(3), B<shadow>(5)"
2860 #: build/C/man5/group.5:26
2866 #: build/C/man5/group.5:29
2867 msgid "group - user group file"
2868 msgstr "group - ユーザーグループのファイル"
2871 #: build/C/man5/group.5:34
2873 "The I</etc/group> file is a text file that defines the groups on the "
2874 "system. There is one entry per line, with the following format:"
2876 "I</etc/group> ファイルは、そのシステムのグループを定義するテキスト\n"
2877 "ファイルである。 1 行に 1 エントリで、各行の形式は以下のとおりである。"
2880 #: build/C/man5/group.5:37
2881 msgid "group_name:password:GID:user_list"
2882 msgstr "group_name:password:GID:user_list"
2885 #: build/C/man5/group.5:40
2886 msgid "The fields are as follows:"
2887 msgstr "各フィールドは以下の通りである:"
2890 #: build/C/man5/group.5:40
2892 msgid "I<group_name>"
2893 msgstr "I<group_name>"
2896 #: build/C/man5/group.5:43
2897 msgid "the name of the group."
2901 #: build/C/man5/group.5:43 build/C/man5/passwd.5:91
2904 msgstr "I<password>"
2907 #: build/C/man5/group.5:47
2909 "the (encrypted) group password. If this field is empty, no password is "
2912 "(暗号化された) パスワード。このフィールドが空ならパスワードは必要ない。"
2915 #: build/C/man5/group.5:47 build/C/man5/passwd.5:103
2921 #: build/C/man5/group.5:50
2922 msgid "the numeric group ID."
2923 msgstr "グループ ID 番号。"
2926 #: build/C/man5/group.5:50
2928 msgid "I<user_list>"
2929 msgstr "I<user_list>"
2932 #: build/C/man5/group.5:53
2934 "a list of the usernames that are members of this group, separated by commas."
2936 "このグループのメンバーのユーザー名のリスト。 ユーザー名はコンマで区切られる。"
2939 #: build/C/man5/group.5:55
2944 #: build/C/man5/group.5:61
2946 "As the 4.2BSD B<initgroups>(3) man page says: No-one seems to keep I</etc/"
2947 "group> up-to-date."
2949 "4.2BSD の B<initgroups>(3) には次のように書かれている: 誰も I</etc/group> を"
2950 "最新の状態に保ってはいないようである。"
2953 #: build/C/man5/group.5:67
2954 msgid "B<login>(1), B<newgrp>(1), B<getgrent>(3), B<getgrnam>(3), B<passwd>(5)"
2956 "B<login>(1), B<newgrp>(1), B<getgrent>(3), B<getgrnam>(3), B<passwd>(5)"
2959 #: build/C/man3/initgroups.3:32
2965 #: build/C/man3/initgroups.3:32 build/C/man3/putpwent.3:30
2971 #: build/C/man3/initgroups.3:35
2972 msgid "initgroups - initialize the supplementary group access list"
2973 msgstr "initgroups - 追加のグループアクセスリストの初期化"
2976 #: build/C/man3/initgroups.3:41
2978 msgid "B<int initgroups(const char *>I<user>B<, gid_t >I<group>B<);>\n"
2979 msgstr "B<int initgroups(const char *>I<user>B<, gid_t >I<group>B<);>\n"
2982 #: build/C/man3/initgroups.3:50
2983 msgid "B<initgroups>(): _BSD_SOURCE"
2984 msgstr "B<initgroups>(): _BSD_SOURCE"
2987 #: build/C/man3/initgroups.3:58
2989 "The B<initgroups>() function initializes the group access list by reading "
2990 "the group database I</etc/group> and using all groups of which I<user> is a "
2991 "member. The additional group I<group> is also added to the list."
2993 "B<initgroups>() 関数はグループデータベース I</etc/group> を読み 込んで、"
2994 "I<user> が所属している全てのグループを使って、グループアク セスリストを初期化"
2995 "する。さらに、I<group> に示されるグループもグルー プアクセスリストに追加され"
2999 #: build/C/man3/initgroups.3:62
3000 msgid "The I<user> argument must be non-NULL."
3001 msgstr "I<user> 引数は NULL であってはならない。"
3004 #: build/C/man3/initgroups.3:69
3006 "The B<initgroups>() function returns 0 on success. On error, -1 is "
3007 "returned, and I<errno> is set appropriately."
3009 "B<initgroups>() 関数は、成功すると 0 を返す。 エラーの場合は -1 を返し、 "
3010 "I<errno> を適切に設定する。"
3013 #: build/C/man3/initgroups.3:73
3014 msgid "Insufficient memory to allocate group information structure."
3015 msgstr "グループ情報構造体を配置するためのメモリが不足している。"
3018 #: build/C/man3/initgroups.3:73
3024 #: build/C/man3/initgroups.3:78
3026 "The calling process has insufficient privilege. See the underlying system "
3027 "call B<setgroups>(2)."
3029 "呼出しプロセスが十分な特権を持っていない。 この関数の裏で実行されるシステム"
3030 "コール B<setgroups>(2) も参照のこと。"
3033 #: build/C/man3/initgroups.3:81
3035 msgid "I</etc/group>\t\tgroup database file\n"
3036 msgstr "I</etc/group>\t\tグループデータベースファイル\n"
3039 #: build/C/man3/initgroups.3:84
3040 msgid "SVr4, 4.3BSD."
3041 msgstr "SVr4, 4.3BSD."
3044 #: build/C/man3/initgroups.3:88
3045 msgid "B<getgroups>(2), B<setgroups>(2), B<credentials>(7)"
3046 msgstr "B<getgroups>(2), B<setgroups>(2), B<credentials>(7)"
3049 #: build/C/man5/passwd.5:30
3055 #: build/C/man5/passwd.5:30
3061 #: build/C/man5/passwd.5:33
3062 msgid "passwd - password file"
3063 msgstr "passwd - パスワードファイル"
3066 #: build/C/man5/passwd.5:41
3068 "The I</etc/passwd> file is a text file that describes user login accounts "
3069 "for the system. It should have read permission allowed for all users (many "
3070 "utilities, like B<ls>(1) use it to map user IDs to usernames), but write "
3071 "access only for the superuser."
3073 "I</etc/passwd> ファイルは、そのシステムのユーザのログインアカウントリス\n"
3074 "トを記述したテキストファイルである。パスワードファイルの読み出し許可は\n"
3075 "全ユーザーに対して与えるが(I<ls>(1) 等の多くのユーティリティではユーザー\n"
3076 "ID をユーザー名に 対応させるのに B<passwd> ファイルを使用する)、書き込\n"
3077 "み許可はスーパーユーザーにのみ与えるようにすべきである。"
3080 #: build/C/man5/passwd.5:53
3082 "In the good old days there was no great problem with this general read "
3083 "permission. Everybody could read the encrypted passwords, but the hardware "
3084 "was too slow to crack a well-chosen password, and moreover the basic "
3085 "assumption used to be that of a friendly user-community. These days many "
3086 "people run some version of the shadow password suite, where I</etc/passwd> "
3087 "has an \\(aqx\\(aq character in the password field, and the encrypted "
3088 "passwords are in I</etc/shadow>, which is readable by the superuser only."
3090 "古き良き時代には、この全ユーザーに対する読み取り許可は 特別な問題を起こ\n"
3091 "さなかった。誰でも暗号化されたパスワードを 読むことが出来たが、上手に選\n"
3092 "ばれたパスワードを破るのには 当時のハードウェアの速度はあまりに遅かった\n"
3093 "し、それに加えて 友好的なユーザー社会であることを基本的な前提としていた。\n"
3094 "最近では多くの人が、何らかのバージョンの shadow password suite\n"
3095 "(シャドウ・パスワード機能を実現するためのプログラム群) を動かしている。\n"
3096 "その場合 I</etc/passwd> ファイルのパスワード欄には\n"
3097 "\\(aqx\\(aq 文字が設定され、暗号化されたパスワードは\n"
3098 "I</etc/shadow> ファイルに保持される。 I</etc/shadow> ファイルはスーパー\n"
3099 "ユーザーだけが読み出すことができる。"
3102 #: build/C/man5/passwd.5:62
3104 "If the encrypted password, whether in I</etc/passwd> or in I</etc/shadow>, "
3105 "is an empty string, login is allowed without even asking for a password. "
3106 "Note that this functionality may be intentionally disabled in applications, "
3107 "or configurable (for example using the \"nullok\" or \"nonull\" arguments to "
3110 "I</etc/passwd> と I</etc/shadow> のどちらの場合でも暗号化パスワードが\n"
3111 "空文字列の場合、パスワードの問い合わせなしでのログインが許可される。\n"
3112 "この機能は、アプリケーションで意図的に無効されたり、\n"
3113 "設定可能 (例えば pam_unix.so の \"nullok\" や \"nonull\" 引き数など)\n"
3114 "になっていたりする場合がある点に注意すること。"
3117 #: build/C/man5/passwd.5:67
3119 "If the encrypted password in I</etc/passwd> is \"I<*NP*>\" (without the "
3120 "quotes), the shadow record should be obtained from an NIS+ server."
3122 "I</etc/passwd> の暗号化パスワードが \"I<*NP*>\" (クォートはなし) の場合、\n"
3123 "shadow レコードを NIS+ サーバから取得することを意味する。"
3126 #: build/C/man5/passwd.5:73
3128 "Regardless of whether shadow passwords are used, many system administrators "
3129 "use an asterisk (*) in the encrypted password field to make sure that this "
3130 "user can not authenticate him- or herself using a password. (But see NOTES "
3133 "shadow password が使われているかどうかにはよらず、多くのシステム管理者は、\n"
3134 "暗号化パスワード欄にアスタリスク (*) を設定することで、そのユーザーが\n"
3135 "パスワードでの認証が受けられないようにしている (下記の「注意」の項を参照)。"
3138 #: build/C/man5/passwd.5:78
3140 "If you create a new login, first put an asterisk (*) in the password field, "
3141 "then use B<passwd>(1) to set it."
3143 "新しいユーザーを登録する場合には、パスワード欄にアスタリスク (*) を設定してお"
3145 "B<passwd>(1) コマンドにより設定を行うようにすること。"
3148 #: build/C/man5/passwd.5:81
3150 "Each line of the file describes a single user, and contains seven colon-"
3153 "ファイルの 1 行は 1 ユーザの情報を表し、\n"
3154 "コロン区切りの 7 つの項目を含む。"
3157 #: build/C/man5/passwd.5:84
3158 msgid "name:password:UID:GID:GECOS:directory:shell"
3159 msgstr "name:password:UID:GID:GECOS:directory:shell"
3162 #: build/C/man5/passwd.5:87
3163 msgid "The field are as follows:"
3164 msgstr "各フィールドは以下の通りである:"
3167 #: build/C/man5/passwd.5:87
3173 #: build/C/man5/passwd.5:91
3174 msgid "This is the user's login name. It should not contain capital letters."
3175 msgstr "ユーザーのログイン名。大文字を含まないすべきである。"
3178 #: build/C/man5/passwd.5:98
3180 "This is either the encrypted user password, an asterisk (*), or the letter "
3181 "\\(aqx\\(aq. (See B<pwconv>(8) for an explanation of \\(aqx\\(aq.)"
3183 "暗号化されたユーザのパスワード、アスタリスク (*)、文字 \\(aqx\\(aq の\n"
3184 "いずれかである (\\(aqx\\(aq の説明については B<pwconv>(8) を参照)。"
3187 #: build/C/man5/passwd.5:98
3193 #: build/C/man5/passwd.5:103
3194 msgid "The privileged I<root> login account (superuser) has the user ID 0."
3196 "特権を持つ I<root> ログインアカウント (スーパーユーザ) は\n"
3200 #: build/C/man5/passwd.5:108
3202 "This is the numeric primary group ID for this user. (Additional groups for "
3203 "the user are defined in the system group file; see B<group>(5))."
3205 "このユーザのプライマリグループ ID の番号。\n"
3206 "(このユーザの追加のグループはシステムのグループ定義ファイル\n"
3207 "で定義される。 B<group>(5) を参照)。"
3210 #: build/C/man5/passwd.5:108
3216 #: build/C/man5/passwd.5:116
3218 "This field (sometimes called the \"comment field\") is optional and used "
3219 "only for informational purposes. Usually, it contains the full username. "
3220 "Some programs (for example, B<finger>(1)) display information from this "
3223 "本欄 (「コメント欄」と呼ばれることもある) は省略可能で、情報提供の\n"
3224 "目的のみに使われる。ユーザーのフルネームを設定することが多い。\n"
3225 "(B<finger>(1) などの) いくつかのプログラムでは、このフィールドの\n"
3229 #: build/C/man5/passwd.5:125
3231 "GECOS stands for \"General Electric Comprehensive Operating System\", which "
3232 "was renamed to GCOS when GE's large systems division was sold to Honeywell. "
3233 "Dennis Ritchie has reported: \"Sometimes we sent printer output or batch "
3234 "jobs to the GCOS machine. The gcos field in the password file was a place "
3235 "to stash the information for the $IDENTcard. Not elegant.\""
3237 "GECOS は General Electric Comprehensive Operating System を意味しており、\n"
3238 "GE 社の大規模システム部門が Honeywell 社に売却された際に GCOS へと変更\n"
3239 "された。Dennis Ritchie 氏は次のように言っている:「時々プリンタ出力や、\n"
3240 "バッチジョブを GCOS マシンに送ったりするが、パスワードファイルの \n"
3241 "gcos 欄は $IDENT カード用の情報を 隠しておくための場所なんだ。\n"
3245 #: build/C/man5/passwd.5:125
3247 msgid "I<directory>"
3248 msgstr "I<directory>"
3251 #: build/C/man5/passwd.5:132
3253 "This is the user's home directory: the initial directory where the user is "
3254 "placed after logging in. The value in this field is used to set the B<HOME> "
3255 "environment variable."
3257 "ユーザのホームディレクトリ、つまりログイン直後のそのユーザの\n"
3259 "このフィールドの値は B<HOME> 環境変数に設定される。"
3262 #: build/C/man5/passwd.5:132
3268 #: build/C/man5/passwd.5:142
3270 "This is the program to run at login (if empty, use I</bin/sh>). If set to a "
3271 "nonexistent executable, the user will be unable to login through B<login>"
3272 "(1). The value in this field is used to set the B<SHELL> environment "
3275 "ログイン時に動くプログラム名 (空欄の場合 I</bin/sh> が使われる)。\n"
3276 "存在しない実行ファイルが設定された場合、そのユーザは B<login>(1) による\n"
3277 "システムへのログインができなくなる。\n"
3278 "このフィールドの値は B<SHELL> 環境変数の値に設定される。"
3281 #: build/C/man5/passwd.5:148
3283 "If you want to create user groups, there must be an entry in I</etc/group>, "
3284 "or no group will exist."
3286 "ユーザーグループを作りたい場合には、そのグループが I</etc/group> の中に\n"
3287 "定義されていなければならない。そうしないとグループを作ったことにはならない。"
3290 #: build/C/man5/passwd.5:162
3292 "If the encrypted password is set to an asterisk (*), the user will be unable "
3293 "to login using B<login>(1), but may still login using B<rlogin>(1), run "
3294 "existing processes and initiate new ones through B<rsh>(1), B<cron>(8), B<at>"
3295 "(1), or mail filters, etc. Trying to lock an account by simply changing the "
3296 "shell field yields the same result and additionally allows the use of B<su>"
3299 "暗号化パスワードとしてアスタリスク (*) を設定すると、 B<login>(1) を\n"
3300 "使ってのログインができなくなるが、 B<rlogin>(1) ではまだログインができる"
3302 "B<rsh>(1), B<cron>(8), B<at>(1) やメールのフィルタ等を使い、現存するプロセス"
3304 "実行させたり、新たなプロセスを起動したりすることができる。\n"
3305 "使用する shell の欄を、単に変更することでアカウントを 使えないようにする\n"
3306 "のも同様の結果となる。その場合にはさらに B<su>(1) も有効なまま残ってしまう。"
3309 #: build/C/man5/passwd.5:171
3311 "B<login>(1), B<passwd>(1), B<su>(1), B<getpwent>(3), B<getpwnam>(3), B<crypt>"
3312 "(3), B<group>(5), B<shadow>(5)"
3314 "B<login>(1), B<passwd>(1), B<su>(1), B<getpwent>(3), B<getpwnam>(3), B<crypt>"
3315 "(3), B<group>(5), B<shadow>(5)"
3318 #: build/C/man3/putgrent.3:7
3324 #: build/C/man3/putgrent.3:7 build/C/man3/setaliasent.3:9
3330 #: build/C/man3/putgrent.3:10
3331 msgid "putgrent - write a group database entry to a file"
3332 msgstr "putgrent - グループデータベースエントリをファイルに書き込む"
3335 #: build/C/man3/putgrent.3:12
3336 msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */"
3337 msgstr "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */"
3340 #: build/C/man3/putgrent.3:16
3341 msgid "B<int putgrent(const struct group *>I<grp>B<, FILE *>I<fp>B<);>"
3342 msgstr "B<int putgrent(const struct group *>I<grp>B<, FILE *>I<fp>B<);>"
3345 #: build/C/man3/putgrent.3:25
3347 "The B<putgrent>() function is the counterpart for B<fgetgrent>(3). The "
3348 "function writes the content of the provided I<struct group> into the file "
3349 "pointed to by I<fp>. The list of group members must be NULL-terminated or "
3352 "B<putgrent>() 関数は B<fgetgrent>(3) の逆である。 この関数は与えられた "
3353 "I<struct group> を I<fp> で指されるファイルに書き込む。 グループメンバのリス"
3354 "トは、NULL で終端されるか、 NULL で初期化されなければならない。"
3357 #: build/C/man3/putgrent.3:27
3358 msgid "The I<struct group> is defined as follows:"
3359 msgstr "I<struct group> は以下のように定義される:"
3362 #: build/C/man3/putgrent.3:36
3366 " char *gr_name; /* group name */\n"
3367 " char *gr_passwd; /* group password */\n"
3368 " gid_t gr_gid; /* group ID */\n"
3369 " char **gr_mem; /* group members */\n"
3373 " char *gr_name; /* グループ名 */\n"
3374 " char *gr_passwd; /* グループパスワード */\n"
3375 " gid_t gr_gid; /* グループ ID */\n"
3376 " char **gr_mem; /* グループメンバ */\n"
3380 #: build/C/man3/putgrent.3:40
3381 msgid "The function returns zero on success, and a nonzero value on error."
3382 msgstr "この関数は、成功した場合は 0 を返し、エラーの場合は 0 以外の値を返す。"
3385 #: build/C/man3/putgrent.3:42
3386 msgid "This function is a GNU extension."
3387 msgstr "この関数は GNU による拡張である。"
3390 #: build/C/man3/putgrent.3:46
3391 msgid "B<fgetgrent>(3), B<getgrent>(3), B<group>(5)"
3392 msgstr "B<fgetgrent>(3), B<getgrent>(3), B<group>(5)"
3395 #: build/C/man3/putpwent.3:30
3401 #: build/C/man3/putpwent.3:33
3402 msgid "putpwent - write a password file entry"
3403 msgstr "putpwent - パスワードファイルエントリの書き込み"
3406 #: build/C/man3/putpwent.3:40
3408 msgid "B<int putpwent(const struct passwd *>I<p>B<, FILE *>I<stream>B<);>\n"
3409 msgstr "B<int putpwent(const struct passwd *>I<p>B<, FILE *>I<stream>B<);>\n"
3412 #: build/C/man3/putpwent.3:49
3413 msgid "B<putpwent>(): _SVID_SOURCE"
3414 msgstr "B<putpwent>(): _SVID_SOURCE"
3417 #: build/C/man3/putpwent.3:54
3419 "The B<putpwent>() function writes a password entry from the structure I<p> "
3420 "in the file associated with I<stream>."
3422 "B<putpwent>() 関数は、構造体 I<p> からのパスワードエントリを I<stream> に結"
3426 #: build/C/man3/putpwent.3:68
3430 " char *pw_name; /* username */\n"
3431 " char *pw_passwd; /* user password */\n"
3432 " uid_t pw_uid; /* user ID */\n"
3433 " gid_t pw_gid; /* group ID */\n"
3434 " char *pw_gecos; /* real name */\n"
3435 " char *pw_dir; /* home directory */\n"
3436 " char *pw_shell; /* shell program */\n"
3440 " char *pw_name; /* ユーザ名 */\n"
3441 " char *pw_passwd; /* ユーザのパスワード */\n"
3442 " uid_t pw_uid; /* ユーザ ID */\n"
3443 " gid_t pw_gid; /* グループ ID */\n"
3444 " char *pw_gecos; /* 本名 */\n"
3445 " char *pw_dir; /* ホームディレクトリ */\n"
3446 " char *pw_shell; /* シェルプログラム */\n"
3450 #: build/C/man3/putpwent.3:75
3452 "The B<putpwent>() function returns 0 on success, or -1 if an error occurs."
3454 "B<putpwent>() 関数は、成功した場合は 0 を、エラーが発生した場合は -1 を返"
3458 #: build/C/man3/putpwent.3:79
3459 msgid "Invalid (NULL) argument given."
3460 msgstr "無効な(NULL)引数が渡された。"
3463 #: build/C/man3/putpwent.3:89
3465 "B<endpwent>(3), B<fgetpwent>(3), B<getpw>(3), B<getpwent>(3), B<getpwnam>"
3466 "(3), B<getpwuid>(3), B<setpwent>(3)"
3468 "B<endpwent>(3), B<fgetpwent>(3), B<getpw>(3), B<getpwent>(3), B<getpwnam>"
3469 "(3), B<getpwuid>(3), B<setpwent>(3)"
3472 #: build/C/man3/setaliasent.3:9
3475 msgstr "SETALIASENT"
3478 #: build/C/man3/setaliasent.3:13
3480 "setaliasent, endaliasent, getaliasent, getaliasent_r, getaliasbyname, "
3481 "getaliasbyname_r - read an alias entry"
3483 "setaliasent, endaliasent, getaliasent, getaliasent_r, getaliasbyname, "
3484 "getaliasbyname_r - エイリアスエントリを読み込む"
3487 #: build/C/man3/setaliasent.3:15
3488 msgid "B<#include E<lt>aliases.hE<gt>>"
3489 msgstr "B<#include E<lt>aliases.hE<gt>>"
3492 #: build/C/man3/setaliasent.3:17
3493 msgid "B<void setaliasent(void);>"
3494 msgstr "B<void setaliasent(void);>"
3497 #: build/C/man3/setaliasent.3:19
3498 msgid "B<void endaliasent(void);>"
3499 msgstr "B<void endaliasent(void);>"
3502 #: build/C/man3/setaliasent.3:21
3503 msgid "B<struct aliasent *getaliasent(void);>"
3504 msgstr "B<struct aliasent *getaliasent(void);>"
3507 #: build/C/man3/setaliasent.3:23
3508 msgid "B<int getaliasent_r(struct aliasent *>I<result>B<,>"
3509 msgstr "B<int getaliasent_r(struct aliasent *>I<result>B<,>"
3512 #: build/C/man3/setaliasent.3:25 build/C/man3/setaliasent.3:31
3514 "B< char *>I<buffer>B<, size_t >I<buflen>B<, struct aliasent **>I<res>B<);>"
3516 "B< char *>I<buffer>B<, size_t >I<buflen>B<, struct aliasent **>I<res>B<);>"
3519 #: build/C/man3/setaliasent.3:27
3520 msgid "B<struct aliasent *getaliasbyname(const char *>I<name>B<);>"
3521 msgstr "B<struct aliasent *getaliasbyname(const char *>I<name>B<);>"
3524 #: build/C/man3/setaliasent.3:29
3526 "B<int getaliasbyname_r(const char *>I<name>B<, struct aliasent *>I<result>B<,"
3529 "B<int getaliasbyname_r(const char *>I<name>B<, struct aliasent *>I<result>B<,"
3533 #: build/C/man3/setaliasent.3:36
3535 "One of the databases available with the Name Service Switch (NSS) is the "
3536 "aliases database, that contains mail aliases. (To find out which databases "
3537 "are supported, try I<getent --help>.) Six functions are provided to access "
3538 "the aliases database."
3540 "ネームサービススイッチ (Name Service Switch, NSS) で 利用可能なデータベース"
3541 "の 1 つとして、 メールエイリアスを保持するエイリアスデータベースがある。 (ど"
3542 "のデータベースがサポートされているかを調べるには、 getent --help を実行するこ"
3543 "と。) エイリアスデータベースにアクセスするために、 6 つの関数が提供されてい"
3547 #: build/C/man3/setaliasent.3:43
3549 "The B<getaliasent>() function returns a pointer to a structure containing "
3550 "the group information from the aliases database. The first time it is "
3551 "called it returns the first entry; thereafter, it returns successive entries."
3553 "B<getaliasent>() 関数はエイリアスデータベースから取り出した グループ情報を含"
3554 "む構造体へのポインタを返す。 1 回目に関数が呼ばれたときには、最初のエントリを"
3555 "返す; それ以降はその後のエントリを返す。"
3558 #: build/C/man3/setaliasent.3:48
3560 "The B<setaliasent>() function rewinds the file pointer to the beginning of "
3561 "the aliases database."
3563 "B<setaliasent>() 関数はファイルポインタをエイリアスデータベースの先頭に巻き"
3567 #: build/C/man3/setaliasent.3:52
3568 msgid "The B<endaliasent>() function closes the aliases database."
3569 msgstr "B<endaliasent>() 関数はエイリアスデータベースをクローズする。"
3572 #: build/C/man3/setaliasent.3:59
3574 "B<getaliasent_r>() is the reentrant version of the previous function. The "
3575 "requested structure is stored via the first argument but the programmer "
3576 "needs to fill the other arguments also. Not providing enough space causes "
3577 "the function to fail."
3579 "B<getaliasent_r>() 関数は上記の関数のリエントラント版である。 要求された構造"
3580 "体は第 1 引き数に格納されるが、 プログラマは他の引き数も埋めてやる必要があ"
3581 "る。 充分な領域が与えられないと、この関数は失敗する。"
3584 #: build/C/man3/setaliasent.3:65
3586 "The function B<getaliasbyname>() takes the name argument and searches the "
3587 "aliases database. The entry is returned as a pointer to a I<struct "
3590 "関数 B<getaliasbyname>() は name 引き数をとり、エイリアスデータベースを検索"
3591 "する。 エントリは I<struct aliasent> へのポインタとして返される。"
3594 #: build/C/man3/setaliasent.3:72
3596 "B<getaliasbyname_r>() is the reentrant version of the previous function. "
3597 "The requested structure is stored via the second argument but the programmer "
3598 "needs to fill the other arguments also. Not providing enough space causes "
3599 "the function to fail."
3601 "B<getaliasbyname_r>() は上記の関数のリエントラント版である。 要求された構造"
3602 "体は第 2 引き数に格納されるが、 プログラマは他の引き数も埋めてやる必要があ"
3603 "る。 充分な領域が与えられないと、この関数は失敗する。"
3606 #: build/C/man3/setaliasent.3:77
3607 msgid "The I<struct aliasent> is defined in I<E<lt>aliases.hE<gt>>:"
3608 msgstr "I<struct aliasent> は I<E<lt>aliases.hE<gt>> で定義されている。"
3611 #: build/C/man3/setaliasent.3:86
3614 "struct aliasent {\n"
3615 " char *alias_name; /* alias name */\n"
3616 " size_t alias_members_len;\n"
3617 " char **alias_members; /* alias name list */\n"
3618 " int alias_local;\n"
3621 "struct aliasent {\n"
3622 " char *alias_name; /* エイリアス名 */\n"
3623 " size_t alias_members_len;\n"
3624 " char **alias_members; /* エイリアス名のリスト */\n"
3625 " int alias_local;\n"
3629 #: build/C/man3/setaliasent.3:94
3631 "The functions B<getaliasent_r>() and B<getaliasbyname_r>() return a "
3632 "nonzero value on error."
3634 "関数 B<getaliasent_r>() と B<getaliasbyname_r>() は、エラーの場合に 0 以外"
3638 #: build/C/man3/setaliasent.3:100
3640 "The default alias database is the file I</etc/aliases>. This can be changed "
3641 "in the I</etc/nsswitch.conf> file."
3643 "デフォルトのエイリアスデータベースは、ファイル I</etc/aliases> である。 これ"
3644 "は I</etc/nsswitch.conf> ファイルで変更できる。"
3647 #: build/C/man3/setaliasent.3:103
3649 "These routines are glibc-specific. The NeXT system has similar routines:"
3651 "このルーチンは glibc 固有のものである。 NeXT システムには同様のルーチンがあ"
3655 #: build/C/man3/setaliasent.3:107
3657 msgid "#include E<lt>aliasdb.hE<gt>\n"
3658 msgstr "#include E<lt>aliasdb.hE<gt>\n"
3661 #: build/C/man3/setaliasent.3:112
3664 "void alias_setent(void);\n"
3665 "void alias_endent(void);\n"
3666 "alias_ent *alias_getent(void);\n"
3667 "alias_ent *alias_getbyname(char *name);\n"
3669 "void alias_setent(void);\n"
3670 "void alias_endent(void);\n"
3671 "alias_ent *alias_getent(void);\n"
3672 "alias_ent *alias_getbyname(char *name);\n"
3675 #: build/C/man3/setaliasent.3:118
3677 "The following example compiles with I<gcc example.c -o example>. It will "
3678 "dump all names in the alias database."
3680 "以下の例は I<gcc example.c -o example> でコンパイルできる。 これはエイリアス"
3681 "データベースにある全ての名前をダンプする。"
3684 #: build/C/man3/setaliasent.3:124
3687 "#include E<lt>aliases.hE<gt>\n"
3688 "#include E<lt>stdio.hE<gt>\n"
3689 "#include E<lt>stdlib.hE<gt>\n"
3690 "#include E<lt>errno.hE<gt>\n"
3692 "#include E<lt>aliases.hE<gt>\n"
3693 "#include E<lt>stdio.hE<gt>\n"
3694 "#include E<lt>stdlib.hE<gt>\n"
3695 "#include E<lt>errno.hE<gt>\n"
3698 #: build/C/man3/setaliasent.3:143
3704 " struct aliasent *al;\n"
3707 " al = getaliasent();\n"
3708 " if (al == NULL)\n"
3710 " printf(\"Name: %s\\en\", al-E<gt>alias_name);\n"
3713 " perror(\"reading alias\");\n"
3714 " exit(EXIT_FAILURE);\n"
3717 " exit(EXIT_SUCCESS);\n"
3723 " struct aliasent *al;\n"
3726 " al = getaliasent();\n"
3727 " if (al == NULL)\n"
3729 " printf(\"Name: %s\\en\", al-E<gt>alias_name);\n"
3732 " perror(\"reading alias\");\n"
3733 " exit(EXIT_FAILURE);\n"
3736 " exit(EXIT_SUCCESS);\n"
3738 #. /etc/sendmail/aliases
3740 #. newaliases, postalias
3742 #: build/C/man3/setaliasent.3:153
3743 msgid "B<getgrent>(3), B<getpwent>(3), B<getspent>(3), B<aliases>(5)"
3744 msgstr "B<getgrent>(3), B<getpwent>(3), B<getspent>(3), B<aliases>(5)"
3746 #~ msgid "2010-02-25"
3747 #~ msgstr "2010-02-25"
3749 #~ msgid "2012-02-14"
3750 #~ msgstr "2012-02-14"
3752 #~ msgid "I<account>"
3753 #~ msgstr "I<account>"
3755 #~ msgid "the numeric user ID."
3756 #~ msgstr "ユーザー ID 番号。"
3758 #~ msgid "the numeric primary group ID for this user."
3759 #~ msgstr "ユーザーが属するプライマリグループ ID 番号。"
3761 #~ msgid "the user's B<$HOME> directory."
3762 #~ msgstr "ユーザーの B<$HOME> ディレクトリ。"
3765 #~ "The maximum needed size for I<buf> can be found using B<sysconf>(3) with "
3766 #~ "the argument B<_SC_GETGR_R_SIZE_MAX>."
3768 #~ "I<buf> に最大必要なサイズは、 B<sysconf>(3) に引き数 "
3769 #~ "B<_SC_GETGR_R_SIZE_MAX> を指定して実行することで分かる。"
3772 #~ "The maximum size needed for I<buf> can be found using B<sysconf>(3) with "
3773 #~ "the argument B<_SC_GETPW_R_SIZE_MAX>."
3775 #~ "I<buf> に必要な最大サイズは、 B<sysconf>(3) に引き数\n"
3776 #~ "B<_SC_GETPW_R_SIZE_MAX> を指定して実行することで分かる。"
3778 #~ msgid "2009-03-30"
3779 #~ msgstr "2009-03-30"
3781 #~ msgid "2009-10-17"
3782 #~ msgstr "2009-10-17"
3784 #~ msgid "The field descriptions are:"
3785 #~ msgstr "フィールドの説明:"
3788 #~ msgstr "password"
3793 #~ msgid "1998-01-05"
3794 #~ msgstr "1998-01-05"
3796 #~ msgid "There is one entry per line, and each line has the format:"
3798 #~ "パスワードファイルは 1 行ごとに 1 エントリを持ち、 各行の書式は以下の通り"