OSDN Git Service

(split) LDP: Translation snapshots.
[linuxjm/LDP_man-pages.git] / po4a / pwdgrp / po / ja.po
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.
5 #
6 msgid ""
7 msgstr ""
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2012-04-23 07:54+0900\n"
10 "PO-Revision-Date: 2012-04-25 01:04+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
13 "Language: \n"
14 "MIME-Version: 1.0\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
17
18 #. type: TH
19 #: build/C/man3/fgetgrent.3:28
20 #, no-wrap
21 msgid "FGETGRENT"
22 msgstr "FGETGRENT"
23
24 #. type: TH
25 #: build/C/man3/fgetgrent.3:28 build/C/man3/fgetpwent.3:31
26 #, no-wrap
27 msgid "2008-07-10"
28 msgstr "2008-07-10"
29
30 #. type: TH
31 #: build/C/man3/fgetgrent.3:28 build/C/man3/fgetpwent.3:31
32 #: build/C/man3/getgrent_r.3:23 build/C/man3/getgrouplist.3:27
33 #: build/C/man3/getpw.3:30 build/C/man3/getpwent.3:31
34 #: build/C/man3/getpwent_r.3:23 build/C/man3/getpwnam.3:35
35 #: build/C/man3/getspnam.3:6 build/C/man3/initgroups.3:30
36 #: build/C/man3/putgrent.3:4 build/C/man3/putpwent.3:28
37 #: build/C/man3/setaliasent.3:6
38 #, no-wrap
39 msgid "GNU"
40 msgstr "GNU"
41
42 #. type: TH
43 #: build/C/man3/fgetgrent.3:28 build/C/man3/fgetpwent.3:31
44 #: build/C/man5/ftpusers.5:17 build/C/man3/getgrent.3:28
45 #: build/C/man3/getgrent_r.3:23 build/C/man3/getgrnam.3:31
46 #: build/C/man3/getgrouplist.3:27 build/C/man3/getpw.3:30
47 #: build/C/man3/getpwent.3:31 build/C/man3/getpwent_r.3:23
48 #: build/C/man3/getpwnam.3:35 build/C/man3/getspnam.3:6
49 #: build/C/man5/group.5:25 build/C/man3/initgroups.3:30
50 #: build/C/man5/passwd.5:29 build/C/man3/putgrent.3:4
51 #: build/C/man3/putpwent.3:28 build/C/man3/setaliasent.3:6
52 #, no-wrap
53 msgid "Linux Programmer's Manual"
54 msgstr "Linux Programmer's Manual"
55
56 #. type: SH
57 #: build/C/man3/fgetgrent.3:29 build/C/man3/fgetpwent.3:32
58 #: build/C/man5/ftpusers.5:18 build/C/man3/getgrent.3:29
59 #: build/C/man3/getgrent_r.3:24 build/C/man3/getgrnam.3:32
60 #: build/C/man3/getgrouplist.3:28 build/C/man3/getpw.3:31
61 #: build/C/man3/getpwent.3:32 build/C/man3/getpwent_r.3:24
62 #: build/C/man3/getpwnam.3:36 build/C/man3/getspnam.3:7
63 #: build/C/man5/group.5:26 build/C/man3/initgroups.3:31
64 #: build/C/man5/passwd.5:30 build/C/man3/putgrent.3:5
65 #: build/C/man3/putpwent.3:29 build/C/man3/setaliasent.3:7
66 #, no-wrap
67 msgid "NAME"
68 msgstr "名前"
69
70 #. type: Plain text
71 #: build/C/man3/fgetgrent.3:31
72 msgid "fgetgrent - get group file entry"
73 msgstr "fgetgrent - グループファイルエントリの取り出し"
74
75 #. type: SH
76 #: build/C/man3/fgetgrent.3:31 build/C/man3/fgetpwent.3:34
77 #: build/C/man3/getgrent.3:31 build/C/man3/getgrent_r.3:26
78 #: build/C/man3/getgrnam.3:34 build/C/man3/getgrouplist.3:30
79 #: build/C/man3/getpw.3:33 build/C/man3/getpwent.3:34
80 #: build/C/man3/getpwent_r.3:26 build/C/man3/getpwnam.3:38
81 #: build/C/man3/getspnam.3:11 build/C/man3/initgroups.3:33
82 #: build/C/man3/putgrent.3:7 build/C/man3/putpwent.3:31
83 #: build/C/man3/setaliasent.3:10
84 #, no-wrap
85 msgid "SYNOPSIS"
86 msgstr "書式"
87
88 #. type: Plain text
89 #: build/C/man3/fgetgrent.3:36
90 #, no-wrap
91 msgid ""
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"
95 msgstr ""
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"
99
100 #. type: Plain text
101 #: build/C/man3/fgetgrent.3:38
102 #, no-wrap
103 msgid "B<struct group *fgetgrent(FILE *>I<stream>B<);>\n"
104 msgstr "B<struct group *fgetgrent(FILE *>I<stream>B<);>\n"
105
106 #. type: Plain text
107 #: build/C/man3/fgetgrent.3:43 build/C/man3/fgetpwent.3:46
108 #: build/C/man3/getgrent.3:46 build/C/man3/getgrent_r.3:42
109 #: build/C/man3/getgrnam.3:55 build/C/man3/getgrouplist.3:40
110 #: build/C/man3/getpwent.3:49 build/C/man3/getpwent_r.3:42
111 #: build/C/man3/getpwnam.3:59 build/C/man3/getspnam.3:59
112 #: build/C/man3/initgroups.3:44 build/C/man3/putpwent.3:43
113 msgid ""
114 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
115 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
116
117 #. type: Plain text
118 #: build/C/man3/fgetgrent.3:47
119 msgid "B<fgetgrent>(): _SVID_SOURCE"
120 msgstr "B<fgetgrent>(): _SVID_SOURCE"
121
122 #. type: SH
123 #: build/C/man3/fgetgrent.3:47 build/C/man3/fgetpwent.3:50
124 #: build/C/man5/ftpusers.5:20 build/C/man3/getgrent.3:66
125 #: build/C/man3/getgrent_r.3:50 build/C/man3/getgrnam.3:65
126 #: build/C/man3/getgrouplist.3:44 build/C/man3/getpw.3:41
127 #: build/C/man3/getpwent.3:60 build/C/man3/getpwent_r.3:49
128 #: build/C/man3/getpwnam.3:69 build/C/man3/getspnam.3:70
129 #: build/C/man5/group.5:28 build/C/man3/initgroups.3:48
130 #: build/C/man5/passwd.5:32 build/C/man3/putgrent.3:13
131 #: build/C/man3/putpwent.3:47 build/C/man3/setaliasent.3:28
132 #, no-wrap
133 msgid "DESCRIPTION"
134 msgstr "説明"
135
136 #. type: Plain text
137 #: build/C/man3/fgetgrent.3:61
138 msgid ""
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))."
144 msgstr ""
145 "B<fgetgrent>()  関数は、 I<stream> で参照されるファイルから取り出したグループ"
146 "情報 を含む構造体へのポインタを返す。最初に呼び出された時は 最初のエントリを"
147 "返し、それ以降は、次のエントリを返す。 I<stream> で参照されるファイルは、 I</"
148 "etc/group> と同じ形式でなければならない (B<group>(5)  参照)。"
149
150 #. type: Plain text
151 #: build/C/man3/fgetgrent.3:63 build/C/man3/getgrent.3:90
152 #: build/C/man3/getgrent_r.3:67 build/C/man3/getgrnam.3:84
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>> で以下のように定義されている:"
155
156 #. type: Plain text
157 #: build/C/man3/fgetgrent.3:72
158 #, no-wrap
159 msgid ""
160 "struct group {\n"
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"
165 "};\n"
166 msgstr ""
167 "struct group {\n"
168 "    char   *gr_name;        /* グループ名 */\n"
169 "    char   *gr_passwd;      /* グループのパスワード */\n"
170 "    gid_t   gr_gid;         /* グループ ID */\n"
171 "    char  **gr_mem;         /* グループのメンバ */\n"
172 "};\n"
173
174 #. type: SH
175 #: build/C/man3/fgetgrent.3:74 build/C/man3/fgetpwent.3:79
176 #: build/C/man3/getgrent.3:104 build/C/man3/getgrent_r.3:100
177 #: build/C/man3/getgrnam.3:128 build/C/man3/getgrouplist.3:76
178 #: build/C/man3/getpw.3:70 build/C/man3/getpwent.3:101
179 #: build/C/man3/getpwent_r.3:102 build/C/man3/getpwnam.3:135
180 #: build/C/man3/getspnam.3:212 build/C/man3/initgroups.3:60
181 #: build/C/man3/putgrent.3:35 build/C/man3/putpwent.3:68
182 #: build/C/man3/setaliasent.3:85
183 #, no-wrap
184 msgid "RETURN VALUE"
185 msgstr "返り値"
186
187 #. type: Plain text
188 #: build/C/man3/fgetgrent.3:81
189 msgid ""
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."
192 msgstr ""
193 "B<fgetgrent>()  関数は I<group> 構造体へのポインタを返す。 これ以上エントリが"
194 "無いか、エラーが発生した場合は NULL を返す。"
195
196 #. type: SH
197 #: build/C/man3/fgetgrent.3:81 build/C/man3/fgetpwent.3:86
198 #: build/C/man3/getgrent.3:127 build/C/man3/getgrent_r.3:107
199 #: build/C/man3/getgrnam.3:166 build/C/man3/getpw.3:76
200 #: build/C/man3/getpwent.3:123 build/C/man3/getpwent_r.3:109
201 #: build/C/man3/getpwnam.3:173 build/C/man3/getspnam.3:223
202 #: build/C/man3/initgroups.3:67 build/C/man3/putpwent.3:73
203 #, no-wrap
204 msgid "ERRORS"
205 msgstr "エラー"
206
207 #. type: TP
208 #: build/C/man3/fgetgrent.3:82 build/C/man3/fgetpwent.3:87
209 #: build/C/man3/getgrent.3:140 build/C/man3/getgrnam.3:188
210 #: build/C/man3/getpw.3:85 build/C/man3/getpwent.3:138
211 #: build/C/man3/getpwnam.3:195 build/C/man3/initgroups.3:68
212 #, no-wrap
213 msgid "B<ENOMEM>"
214 msgstr "B<ENOMEM>"
215
216 #.  not in POSIX
217 #.  to allocate the group structure, or to allocate buffers
218 #. type: Plain text
219 #: build/C/man3/fgetgrent.3:87 build/C/man3/getgrent.3:146
220 #: build/C/man3/getgrnam.3:195
221 msgid "Insufficient memory to allocate I<group> structure."
222 msgstr "I<group> 構造体を割り当てるためのメモリが不十分。"
223
224 #. type: SH
225 #: build/C/man3/fgetgrent.3:87 build/C/man3/fgetpwent.3:96
226 #: build/C/man3/getgrent.3:153 build/C/man3/getgrent_r.3:115
227 #: build/C/man3/getgrnam.3:202 build/C/man3/getgrouplist.3:96
228 #: build/C/man3/getpw.3:94 build/C/man3/getpwent.3:152
229 #: build/C/man3/getpwent_r.3:117 build/C/man3/getpwnam.3:209
230 #: build/C/man3/getspnam.3:240 build/C/man3/initgroups.3:80
231 #: build/C/man3/putgrent.3:37 build/C/man3/putpwent.3:77
232 #: build/C/man3/setaliasent.3:97
233 #, no-wrap
234 msgid "CONFORMING TO"
235 msgstr "準拠"
236
237 #. type: Plain text
238 #: build/C/man3/fgetgrent.3:89 build/C/man3/fgetpwent.3:98
239 #: build/C/man3/putpwent.3:79
240 msgid "SVr4."
241 msgstr "SVr4."
242
243 #. type: SH
244 #: build/C/man3/fgetgrent.3:89 build/C/man3/fgetpwent.3:98
245 #: build/C/man5/ftpusers.5:47 build/C/man3/getgrent.3:155
246 #: build/C/man3/getgrent_r.3:182 build/C/man3/getgrnam.3:225
247 #: build/C/man3/getgrouplist.3:187 build/C/man3/getpw.3:103
248 #: build/C/man3/getpwent.3:157 build/C/man3/getpwent_r.3:179
249 #: build/C/man3/getpwnam.3:305 build/C/man3/getspnam.3:244
250 #: build/C/man5/group.5:60 build/C/man3/initgroups.3:82
251 #: build/C/man5/passwd.5:131 build/C/man3/putgrent.3:39
252 #: build/C/man3/putpwent.3:79 build/C/man3/setaliasent.3:141
253 #, no-wrap
254 msgid "SEE ALSO"
255 msgstr "関連項目"
256
257 #. type: Plain text
258 #: build/C/man3/fgetgrent.3:99
259 msgid ""
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)"
262 msgstr ""
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)"
265
266 #. type: SH
267 #: build/C/man3/fgetgrent.3:99 build/C/man3/fgetpwent.3:109
268 #: build/C/man5/ftpusers.5:51 build/C/man3/getgrent.3:163
269 #: build/C/man3/getgrent_r.3:189 build/C/man3/getgrnam.3:232
270 #: build/C/man3/getgrouplist.3:193 build/C/man3/getpw.3:112
271 #: build/C/man3/getpwent.3:165 build/C/man3/getpwent_r.3:187
272 #: build/C/man3/getpwnam.3:315 build/C/man3/getspnam.3:249
273 #: build/C/man5/group.5:66 build/C/man3/initgroups.3:86
274 #: build/C/man5/passwd.5:139 build/C/man3/putgrent.3:43
275 #: build/C/man3/putpwent.3:87 build/C/man3/setaliasent.3:150
276 #, no-wrap
277 msgid "COLOPHON"
278 msgstr "この文書について"
279
280 #. type: Plain text
281 #: build/C/man3/fgetgrent.3:106 build/C/man3/fgetpwent.3:116
282 #: build/C/man5/ftpusers.5:58 build/C/man3/getgrent.3:170
283 #: build/C/man3/getgrent_r.3:196 build/C/man3/getgrnam.3:239
284 #: build/C/man3/getgrouplist.3:200 build/C/man3/getpw.3:119
285 #: build/C/man3/getpwent.3:172 build/C/man3/getpwent_r.3:194
286 #: build/C/man3/getpwnam.3:322 build/C/man3/getspnam.3:256
287 #: build/C/man5/group.5:73 build/C/man3/initgroups.3:93
288 #: build/C/man5/passwd.5:146 build/C/man3/putgrent.3:50
289 #: build/C/man3/putpwent.3:94 build/C/man3/setaliasent.3:157
290 msgid ""
291 "This page is part of release 3.38 of the Linux I<man-pages> project.  A "
292 "description of the project, and information about reporting bugs, can be "
293 "found at http://www.kernel.org/doc/man-pages/."
294 msgstr ""
295 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.38 の一部である。\n"
296 "プロジェクトの説明とバグ報告に関する情報は\n"
297 "http://www.kernel.org/doc/man-pages/ に書かれている。"
298
299 #. type: TH
300 #: build/C/man3/fgetpwent.3:31
301 #, no-wrap
302 msgid "FGETPWENT"
303 msgstr "FGETPWENT"
304
305 #. type: Plain text
306 #: build/C/man3/fgetpwent.3:34
307 msgid "fgetpwent - get password file entry"
308 msgstr "fgetpwent - パスワードファイルエントリの取り出し"
309
310 #. type: Plain text
311 #: build/C/man3/fgetpwent.3:39 build/C/man3/putpwent.3:36
312 #, no-wrap
313 msgid ""
314 "B<#include E<lt>stdio.hE<gt>>\n"
315 "B<#include E<lt>sys/types.hE<gt>>\n"
316 "B<#include E<lt>pwd.hE<gt>>\n"
317 msgstr ""
318 "B<#include E<lt>stdio.hE<gt>>\n"
319 "B<#include E<lt>sys/types.hE<gt>>\n"
320 "B<#include E<lt>pwd.hE<gt>>\n"
321
322 #. type: Plain text
323 #: build/C/man3/fgetpwent.3:41
324 #, no-wrap
325 msgid "B<struct passwd *fgetpwent(FILE *>I<stream>B<);>\n"
326 msgstr "B<struct passwd *fgetpwent(FILE *>I<stream>B<);>\n"
327
328 #. type: Plain text
329 #: build/C/man3/fgetpwent.3:50
330 msgid "B<fgetpwent>(): _SVID_SOURCE"
331 msgstr "B<fgetpwent>(): _SVID_SOURCE"
332
333 #. type: Plain text
334 #: build/C/man3/fgetpwent.3:63
335 msgid ""
336 "The B<fgetpwent>()  function returns a pointer to a structure containing the "
337 "broken out fields of a line in the file I<stream>.  The first time it is "
338 "called it returns the first entry; thereafter, it returns successive "
339 "entries.  The file referred to by I<stream> must have the same format as I</"
340 "etc/passwd> (see B<passwd>(5))."
341 msgstr ""
342 "B<fgetpwent>()  関数は、I<stream> から得られた行を分解したフィールド を含む構"
343 "造体へのポインタを返す。 最初に呼び出された時には最初のエントリを返し、それ以"
344 "降は 次のエントリを返す。 I<stream> で参照されるファイルは I</etc/passwd> と"
345 "同じ形式でなければならない (B<passwd>(5)  参照)。"
346
347 #. type: Plain text
348 #: build/C/man3/fgetpwent.3:65 build/C/man3/getpw.3:53
349 #: build/C/man3/getpwent.3:84 build/C/man3/getpwent_r.3:66
350 #: build/C/man3/getpwnam.3:88 build/C/man3/putpwent.3:54
351 msgid "The I<passwd> structure is defined in I<E<lt>pwd.hE<gt>> as follows:"
352 msgstr "I<passwd> 構造体は、I<E<lt>pwd.hE<gt>> で以下のように定義されている:"
353
354 #. type: Plain text
355 #: build/C/man3/fgetpwent.3:77
356 #, no-wrap
357 msgid ""
358 "struct passwd {\n"
359 "    char   *pw_name;       /* username */\n"
360 "    char   *pw_passwd;     /* user password */\n"
361 "    uid_t   pw_uid;        /* user ID */\n"
362 "    gid_t   pw_gid;        /* group ID */\n"
363 "    char   *pw_gecos;      /* real name */\n"
364 "    char   *pw_dir;        /* home directory */\n"
365 "    char   *pw_shell;      /* shell program */\n"
366 "};\n"
367 msgstr ""
368 "struct passwd {\n"
369 "    char   *pw_name;       /* ユーザ名 */\n"
370 "    char   *pw_passwd;     /* ユーザのパスワード */\n"
371 "    uid_t   pw_uid;        /* ユーザ ID */\n"
372 "    gid_t   pw_gid;        /* グループ ID */\n"
373 "    char   *pw_gecos;      /* 実名 */\n"
374 "    char   *pw_dir;        /* ホームディレクトリ */\n"
375 "    char   *pw_shell;      /* シェルプログラム */\n"
376 "};\n"
377
378 #. type: Plain text
379 #: build/C/man3/fgetpwent.3:86
380 msgid ""
381 "The B<fgetpwent>()  function returns a pointer to a I<passwd> structure, or "
382 "NULL if there are no more entries or an error occurs."
383 msgstr ""
384 "B<fgetpwent>()  関数は、 I<passwd> 構造体へのポインタを返す。 これ以上エント"
385 "リが無いか、エラーが発生した場合は NULL を返す。"
386
387 #.  not in POSIX
388 #.  This structure is static, allocated 0 or 1 times. No memory leak. (libc45)
389 #. type: Plain text
390 #: build/C/man3/fgetpwent.3:92 build/C/man3/getpw.3:90
391 #: build/C/man3/getpwent.3:145 build/C/man3/getpwnam.3:202
392 msgid "Insufficient memory to allocate I<passwd> structure."
393 msgstr "I<passwd> 構造体に割り当てるメモリが十分なかった。"
394
395 #. type: SH
396 #: build/C/man3/fgetpwent.3:92 build/C/man5/ftpusers.5:45
397 #: build/C/man3/getgrent.3:149 build/C/man3/getgrnam.3:198
398 #: build/C/man3/getpw.3:90 build/C/man3/getpwent.3:148
399 #: build/C/man3/getpwnam.3:205 build/C/man3/getspnam.3:227
400 #: build/C/man5/group.5:52 build/C/man3/initgroups.3:76
401 #: build/C/man5/passwd.5:111 build/C/man3/setaliasent.3:91
402 #, no-wrap
403 msgid "FILES"
404 msgstr "ファイル"
405
406 #. type: Plain text
407 #: build/C/man3/fgetpwent.3:93 build/C/man3/getpw.3:91
408 #: build/C/man3/getpwent.3:149 build/C/man3/getpwnam.3:206
409 #: build/C/man5/passwd.5:113
410 #, no-wrap
411 msgid "I</etc/passwd>"
412 msgstr "I</etc/passwd>"
413
414 #. type: Plain text
415 #: build/C/man3/fgetpwent.3:96 build/C/man3/getpw.3:94
416 msgid "password database file"
417 msgstr "パスワードデータベースファイル"
418
419 #. type: Plain text
420 #: build/C/man3/fgetpwent.3:109
421 msgid ""
422 "B<endpwent>(3), B<fgetpwent_r>(3), B<fopen>(3), B<getpw>(3), B<getpwent>(3), "
423 "B<getpwnam>(3), B<getpwuid>(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
424 msgstr ""
425 "B<endpwent>(3), B<fgetpwent_r>(3), B<fopen>(3), B<getpw>(3), B<getpwent>(3), "
426 "B<getpwnam>(3), B<getpwuid>(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
427
428 #. type: TH
429 #: build/C/man5/ftpusers.5:17
430 #, no-wrap
431 msgid "FTPUSERS"
432 msgstr "FTPUSERS"
433
434 #. type: TH
435 #: build/C/man5/ftpusers.5:17
436 #, no-wrap
437 msgid "2000-08-27"
438 msgstr "2000-08-27"
439
440 #. type: TH
441 #: build/C/man5/ftpusers.5:17 build/C/man5/group.5:25 build/C/man5/passwd.5:29
442 #, no-wrap
443 msgid "Linux"
444 msgstr "Linux"
445
446 #. type: Plain text
447 #: build/C/man5/ftpusers.5:20
448 msgid "ftpusers - list of users that may not log in via the FTP daemon"
449 msgstr "ftpusers - FTP デーモン経由でのログインを許さないユーザーのリスト"
450
451 #. type: Plain text
452 #: build/C/man5/ftpusers.5:39
453 msgid ""
454 "The text file B<ftpusers> contains a list of users that may not log in using "
455 "the File Transfer Protocol (FTP) server daemon.  This file is used not "
456 "merely for system administration purposes but for improving security within "
457 "a TCP/IP networked environment.  It will typically contain a list of the "
458 "users that either have no business using ftp or have too many privileges to "
459 "be allowed to log in through the FTP server daemon.  Such users usually "
460 "include root, daemon, bin, uucp, and news.  If your FTP server daemon "
461 "doesn't use B<ftpusers> then it is suggested that you read its documentation "
462 "to find out how to block access for certain users.  Washington University "
463 "FTP server Daemon (wuftpd) and Professional FTP Daemon (proftpd) are known "
464 "to make use of B<ftpusers>."
465 msgstr ""
466 "B<ftpusers> はテキストファイルで、File Transfer Protocol (FTP) サーバーデーモ"
467 "ン を利用してのログインを許さないユーザーをリストしたものである。 このファイ"
468 "ルは単にシステム管理のためだけでなく、 TCP/IP ネットワーク環境でのセキュリ"
469 "ティを向上させるのにも利用できる。 通常は、ftp を用いた作業を行わないユーザー"
470 "や、 FTP サーバーデーモン経由でのログインを許すには 権限が大きすぎるユーザー"
471 "をリストしておく。 このようなユーザーには、例えば root, daemon, bin, uucp, "
472 "news などが含まれる。 お使いの FTP サーバーデーモンが B<ftpusers> を用いない"
473 "場合は、そのデーモンのドキュメントを読んで、 特定のユーザーのアクセスをブロッ"
474 "クするやり方を学んでおくことをすすめる。 Washington University FTP サーバー"
475 "デーモン (wuftpd) と Professional FTP デーモン (proftpd) とは、 B<ftpusers> "
476 "を利用することがわかっている。"
477
478 #. type: SS
479 #: build/C/man5/ftpusers.5:39
480 #, no-wrap
481 msgid "Format"
482 msgstr "フォーマット"
483
484 #. type: Plain text
485 #: build/C/man5/ftpusers.5:45
486 msgid ""
487 "The format of B<ftpusers> is very simple.  There is one account name (or "
488 "username) per line.  Lines starting with a # are ignored."
489 msgstr ""
490 "B<ftpusers> のフォーマットは非常に単純であり、 アカウント名 (またはユーザー"
491 "名) を各行に書くだけである。 # で始まる行は無視される。"
492
493 #. type: Plain text
494 #: build/C/man5/ftpusers.5:47
495 msgid "I</etc/ftpusers>"
496 msgstr "I</etc/ftpusers>"
497
498 #. type: Plain text
499 #: build/C/man5/ftpusers.5:51
500 msgid "B<passwd>(5), B<proftpd>(8), B<wuftpd>(8)"
501 msgstr "B<passwd>(5), B<proftpd>(8), B<wuftpd>(8)"
502
503 #. type: TH
504 #: build/C/man3/getgrent.3:28
505 #, no-wrap
506 msgid "GETGRENT"
507 msgstr "GETGRENT"
508
509 #. type: TH
510 #: build/C/man3/getgrent.3:28 build/C/man3/getgrent_r.3:23
511 #: build/C/man3/getgrnam.3:31 build/C/man3/getpw.3:30
512 #: build/C/man3/getpwent.3:31 build/C/man3/getpwent_r.3:23
513 #: build/C/man3/getpwnam.3:35 build/C/man5/group.5:25
514 #, no-wrap
515 msgid "2010-10-21"
516 msgstr "2010-10-21"
517
518 #. type: Plain text
519 #: build/C/man3/getgrent.3:31
520 msgid "getgrent, setgrent, endgrent - get group file entry"
521 msgstr "getgrent, setgrent, endgrent - グループファイルエントリの取得"
522
523 #. type: Plain text
524 #: build/C/man3/getgrent.3:35 build/C/man3/getgrnam.3:38
525 #: build/C/man3/initgroups.3:37
526 #, no-wrap
527 msgid ""
528 "B<#include E<lt>sys/types.hE<gt>>\n"
529 "B<#include E<lt>grp.hE<gt>>\n"
530 msgstr ""
531 "B<#include E<lt>sys/types.hE<gt>>\n"
532 "B<#include E<lt>grp.hE<gt>>\n"
533
534 #. type: Plain text
535 #: build/C/man3/getgrent.3:37
536 #, no-wrap
537 msgid "B<struct group *getgrent(void);>\n"
538 msgstr "B<struct group *getgrent(void);>\n"
539
540 #. type: Plain text
541 #: build/C/man3/getgrent.3:39
542 #, no-wrap
543 msgid "B<void setgrent(void);>\n"
544 msgstr "B<void setgrent(void);>\n"
545
546 #. type: Plain text
547 #: build/C/man3/getgrent.3:41
548 #, no-wrap
549 msgid "B<void endgrent(void);>\n"
550 msgstr "B<void endgrent(void);>\n"
551
552 #. type: Plain text
553 #: build/C/man3/getgrent.3:51
554 msgid "B<setgrent>():"
555 msgstr "B<setgrent>():"
556
557 #. type: Plain text
558 #: build/C/man3/getgrent.3:54
559 msgid ""
560 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
561 "\\ &&\\ _XOPEN_SOURCE_EXTENDED ||"
562 msgstr ""
563 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
564 "\\ &&\\ _XOPEN_SOURCE_EXTENDED ||"
565
566 #. type: Plain text
567 #: build/C/man3/getgrent.3:56
568 msgid "/* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
569 msgstr "/* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
570
571 #. type: Plain text
572 #: build/C/man3/getgrent.3:60
573 msgid "B<getgrent>(), B<endgrent>():"
574 msgstr "B<getgrent>(), B<endgrent>():"
575
576 #. type: Plain text
577 #: build/C/man3/getgrent.3:63
578 msgid ""
579 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
580 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
581 msgstr ""
582 "_SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
583 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
584
585 #. type: Plain text
586 #: build/C/man3/getgrent.3:78
587 msgid ""
588 "The B<getgrent>()  function returns a pointer to a structure containing the "
589 "broken-out fields of a record in the group database (e.g., the local group "
590 "file I</etc/group>, NIS, and LDAP).  The first time B<getgrent>()  is "
591 "called, it returns the first entry; thereafter, it returns successive "
592 "entries."
593 msgstr ""
594 "B<getgrent>()  関数は、グループ・データベースから取得したエントリを 要素毎に"
595 "分解し、各要素を格納した構造体へのポインタを返す (グループ・データベースの"
596 "例: ローカルのグループファイル I</etc/group>, NIS, LDAP)。 B<getgrent>()  "
597 "は、最初に呼び出された時は最初のエントリを返し、 それ以降は呼び出される毎に次"
598 "のエントリを返す。"
599
600 #. type: Plain text
601 #: build/C/man3/getgrent.3:83
602 msgid ""
603 "The B<setgrent>()  function rewinds to the beginning of the group database, "
604 "to allow repeated scans."
605 msgstr ""
606 "B<setgrent>()  関数を使うと、もう一度読み込めるように、 グループ・データベー"
607 "スの先頭に戻る。"
608
609 #. type: Plain text
610 #: build/C/man3/getgrent.3:88
611 msgid ""
612 "The B<endgrent>()  function is used to close the group database after all "
613 "processing has been performed."
614 msgstr ""
615 "B<endgrent>()  関数は、全ての処理が終わった後にグループ・ データベースをク"
616 "ローズする。"
617
618 #. type: Plain text
619 #: build/C/man3/getgrent.3:99 build/C/man3/getgrnam.3:93
620 #, no-wrap
621 msgid ""
622 "struct group {\n"
623 "    char   *gr_name;       /* group name */\n"
624 "    char   *gr_passwd;     /* group password */\n"
625 "    gid_t   gr_gid;        /* group ID */\n"
626 "    char  **gr_mem;        /* group members */\n"
627 "};\n"
628 msgstr ""
629 "struct group {\n"
630 "    char   *gr_name;       /* グループ名 */\n"
631 "    char   *gr_passwd;     /* グループのパスワード */\n"
632 "    gid_t   gr_gid;        /* グループ ID */\n"
633 "    char  **gr_mem;        /* グループのメンバ */\n"
634 "};\n"
635
636 #. type: Plain text
637 #: build/C/man3/getgrent.3:104 build/C/man3/getgrent_r.3:81
638 #: build/C/man3/getgrnam.3:98
639 msgid ""
640 "For more information about the fields of this structure, see B<group>(5)."
641 msgstr "この構造体のフィールドの詳細は B<group>(5)  を参照のこと。"
642
643 #. type: Plain text
644 #: build/C/man3/getgrent.3:111
645 msgid ""
646 "The B<getgrent>()  function returns a pointer to a I<group> structure, or "
647 "NULL if there are no more entries or an error occurs."
648 msgstr ""
649 "B<getgrent>()  関数は I<group> 構造体へのポインタを返す。 これ以上エントリが"
650 "無いか、エラーが発生した場合は NULL を返す。"
651
652 #. type: Plain text
653 #: build/C/man3/getgrent.3:118
654 msgid ""
655 "Upon error, I<errno> may be set.  If one wants to check I<errno> after the "
656 "call, it should be set to zero before the call."
657 msgstr ""
658 "エラーが発生すると、 I<errno> が適切に設定される。 この関数の呼び出し後に "
659 "I<errno> をチェックしたい場合は、呼び出し前に I<errno> を 0 に設定しておかな"
660 "いといけない。"
661
662 #. type: Plain text
663 #: build/C/man3/getgrent.3:127
664 msgid ""
665 "The return value may point to a static area, and may be overwritten by "
666 "subsequent calls to B<getgrent>(), B<getgrgid>(3), or B<getgrnam>(3).  (Do "
667 "not pass the returned pointer to B<free>(3).)"
668 msgstr ""
669 "返り値は静的な領域を指しており、その後の B<getgrent>(), B<getgrgid>(3), "
670 "B<getgrnam>(3)  の呼び出しで上書きされるかもしれない。 (返されたポインタを "
671 "B<free>(3)  に渡さないこと。)"
672
673 #. type: TP
674 #: build/C/man3/getgrent.3:128 build/C/man3/getgrnam.3:174
675 #: build/C/man3/getpwent.3:124 build/C/man3/getpwnam.3:181
676 #, no-wrap
677 msgid "B<EINTR>"
678 msgstr "B<EINTR>"
679
680 #. type: Plain text
681 #: build/C/man3/getgrent.3:131 build/C/man3/getgrnam.3:177
682 #: build/C/man3/getpwent.3:127 build/C/man3/getpwnam.3:184
683 msgid "A signal was caught."
684 msgstr "シグナルが捕捉された。"
685
686 #. type: TP
687 #: build/C/man3/getgrent.3:131 build/C/man3/getgrnam.3:177
688 #: build/C/man3/getpwent.3:127 build/C/man3/getpwnam.3:184
689 #, no-wrap
690 msgid "B<EIO>"
691 msgstr "B<EIO>"
692
693 #. type: Plain text
694 #: build/C/man3/getgrent.3:134 build/C/man3/getgrnam.3:180
695 #: build/C/man3/getpwent.3:130 build/C/man3/getpwnam.3:187
696 msgid "I/O error."
697 msgstr "I/O エラー。"
698
699 #. type: TP
700 #: build/C/man3/getgrent.3:134 build/C/man3/getgrnam.3:180
701 #: build/C/man3/getpwent.3:130 build/C/man3/getpwnam.3:187
702 #, no-wrap
703 msgid "B<EMFILE>"
704 msgstr "B<EMFILE>"
705
706 #. type: Plain text
707 #: build/C/man3/getgrent.3:137
708 msgid "The calling process already has too many open files."
709 msgstr "呼び出したプロセスが既にファイルをオープンし過ぎている。"
710
711 #. type: TP
712 #: build/C/man3/getgrent.3:137 build/C/man3/getgrnam.3:185
713 #: build/C/man3/getpwent.3:135 build/C/man3/getpwnam.3:192
714 #, no-wrap
715 msgid "B<ENFILE>"
716 msgstr "B<ENFILE>"
717
718 #. type: Plain text
719 #: build/C/man3/getgrent.3:140
720 msgid "Too many open files in the system."
721 msgstr "システム上にオープンされたファイルが多過ぎる。"
722
723 #. type: TP
724 #: build/C/man3/getgrent.3:146 build/C/man3/getgrent_r.3:111
725 #: build/C/man3/getgrnam.3:195 build/C/man3/getpwent.3:145
726 #: build/C/man3/getpwent_r.3:113 build/C/man3/getpwnam.3:202
727 #: build/C/man3/getspnam.3:224
728 #, no-wrap
729 msgid "B<ERANGE>"
730 msgstr "B<ERANGE>"
731
732 #. type: Plain text
733 #: build/C/man3/getgrent.3:149 build/C/man3/getgrnam.3:198
734 #: build/C/man3/getpwent.3:148 build/C/man3/getpwnam.3:205
735 msgid "Insufficient buffer space supplied."
736 msgstr "与えられたバッファ空間が不十分である。"
737
738 #. type: TP
739 #: build/C/man3/getgrent.3:150 build/C/man3/getgrnam.3:199
740 #, no-wrap
741 msgid "I</etc/group>"
742 msgstr "I</etc/group>"
743
744 #. type: Plain text
745 #: build/C/man3/getgrent.3:153 build/C/man3/getgrnam.3:202
746 msgid "local group database file"
747 msgstr "ローカルのグループ・データベースファイル"
748
749 #. type: Plain text
750 #: build/C/man3/getgrent.3:155 build/C/man3/getgrnam.3:204
751 msgid "SVr4, 4.3BSD, POSIX.1-2001."
752 msgstr "SVr4, 4.3BSD, POSIX.1-2001."
753
754 #. type: Plain text
755 #: build/C/man3/getgrent.3:163
756 msgid ""
757 "B<fgetgrent>(3), B<getgrent_r>(3), B<getgrgid>(3), B<getgrnam>(3), "
758 "B<getgrouplist>(3), B<putgrent>(3), B<group>(5)"
759 msgstr ""
760 "B<fgetgrent>(3), B<getgrent_r>(3), B<getgrgid>(3), B<getgrnam>(3)  "
761 "B<getgrouplist>(3), B<putgrent>(3), B<group>(5)"
762
763 #. type: TH
764 #: build/C/man3/getgrent_r.3:23
765 #, no-wrap
766 msgid "GETGRENT_R"
767 msgstr "GETGRENT_R"
768
769 #. type: Plain text
770 #: build/C/man3/getgrent_r.3:26
771 msgid "getgrent_r, fgetgrent_r - get group file entry reentrantly"
772 msgstr ""
773 "getgrent_r, fgetgrent_r - グループファイルエントリをリエントラント "
774 "(reentrant) に取り出す"
775
776 #. type: Plain text
777 #: build/C/man3/getgrent_r.3:29
778 #, no-wrap
779 msgid "B<#include E<lt>grp.hE<gt>>\n"
780 msgstr "B<#include E<lt>grp.hE<gt>>\n"
781
782 #. type: Plain text
783 #: build/C/man3/getgrent_r.3:31
784 #, no-wrap
785 msgid "B<int getgrent_r(struct group *>I<gbuf>B<, char *>I<buf>B<,>\n"
786 msgstr "B<int getgrent_r(struct group *>I<gbuf>B<, char *>I<buf>B<,>\n"
787
788 #. type: Plain text
789 #: build/C/man3/getgrent_r.3:33
790 #, no-wrap
791 msgid "B<               size_t >I<buflen>B<, struct group **>I<gbufp>B<);>\n"
792 msgstr "B<               size_t >I<buflen>B<, struct group **>I<gbufp>B<);>\n"
793
794 #. type: Plain text
795 #: build/C/man3/getgrent_r.3:35
796 #, no-wrap
797 msgid "B<int fgetgrent_r(FILE *>I<fp>B<, struct group *>I<gbuf>B<, char *>I<buf>B<,>\n"
798 msgstr "B<int fgetgrent_r(FILE *>I<fp>B<, struct group *>I<gbuf>B<, char *>I<buf>B<,>\n"
799
800 #. type: Plain text
801 #: build/C/man3/getgrent_r.3:37
802 #, no-wrap
803 msgid "B<                size_t >I<buflen>B<, struct group **>I<gbufp>B<);>\n"
804 msgstr "B<                size_t >I<buflen>B<, struct group **>I<gbufp>B<);>\n"
805
806 #.  FIXME . The FTM requirements seem inconsistent here.  File a glibc bug?
807 #. type: Plain text
808 #: build/C/man3/getgrent_r.3:47
809 msgid "B<getgrent_r>(): _GNU_SOURCE"
810 msgstr "B<getgrent_r>(): _GNU_SOURCE"
811
812 #. type: Plain text
813 #: build/C/man3/getgrent_r.3:50
814 msgid "B<fgetgrent_r>(): _SVID_SOURCE"
815 msgstr "B<fgetgrent_r>(): _SVID_SOURCE"
816
817 #. type: Plain text
818 #: build/C/man3/getgrent_r.3:63
819 msgid ""
820 "The functions B<getgrent_r>()  and B<fgetgrent_r>()  are the reentrant "
821 "versions of B<getgrent>(3)  and B<fgetgrent>(3).  The former reads the next "
822 "group entry from the stream initialized by B<setgrent>(3).  The latter reads "
823 "the next group entry from the stream I<fp>."
824 msgstr ""
825 "関数 B<getgrent_r>()  と B<fgetgrent_r>()  は B<getgrent>(3)  と B<fgetgrent>"
826 "(3)  のリエントラント版である。 前者は、 B<setgrent>(3)  によって初期化された"
827 "ストリームから、次のグループファイルのエントリを読み込む。 後者は、ストリー"
828 "ム I<fp> から次のグループファイルのエントリを読み込む。"
829
830 #. type: Plain text
831 #: build/C/man3/getgrent_r.3:76
832 #, no-wrap
833 msgid ""
834 "struct group {\n"
835 "    char    *gr_name;     /* group name */\n"
836 "    char    *gr_passwd;   /* group password */\n"
837 "    gid_t    gr_gid;      /* group ID */\n"
838 "    char   **gr_mem;      /* group members */\n"
839 "};\n"
840 msgstr ""
841 "struct group {\n"
842 "    char    *gr_name;     /* グループ名 */\n"
843 "    char    *gr_passwd;   /* グループパスワード */\n"
844 "    gid_t    gr_gid;      /* グループ ID */\n"
845 "    char   **gr_mem;      /* グループメンバ */\n"
846 "};\n"
847
848 #. type: Plain text
849 #: build/C/man3/getgrent_r.3:100
850 msgid ""
851 "The nonreentrant functions return a pointer to static storage, where this "
852 "static storage contains further pointers to group name, password and "
853 "members.  The reentrant functions described here return all of that in "
854 "caller-provided buffers.  First of all there is the buffer I<gbuf> that can "
855 "hold a I<struct group>.  And next the buffer I<buf> of size I<buflen> that "
856 "can hold additional strings.  The result of these functions, the I<struct "
857 "group> read from the stream, is stored in the provided buffer I<*gbuf>, and "
858 "a pointer to this I<struct group> is returned in I<*gbufp>."
859 msgstr ""
860 "リエントラントでない関数は静的な格納領域へのポインタを返す。 この静的な格納領"
861 "域には、更にグループ名・パスワード・ メンバへのポインタが含まれる。 ここで説"
862 "明されているリエントラントな関数は、 呼び出し側から提供されるバッファにグルー"
863 "プ名など全てを返す。 最初の引き数として I<struct group> を保持できるバッファ "
864 "I<gbuf> がある。 次にその他の文字列を保持できるサイズ I<buflen> のバッファ "
865 "I<buf> がある。 これらの関数の結果 (ストリームから読み込まれた I<struct "
866 "group>) は、 提供されたバッファ I<*gbuf> に格納され、この I<struct group> へ"
867 "のポインタは I<*gbufp> に返される。"
868
869 #. type: Plain text
870 #: build/C/man3/getgrent_r.3:107
871 msgid ""
872 "On success, these functions return 0 and I<*gbufp> is a pointer to the "
873 "I<struct group>.  On error, these functions return an error value and "
874 "I<*gbufp> is NULL."
875 msgstr ""
876 "成功した場合、これらの関数は 0 を返し、 *I<gbufp> は I<struct group> へのポイ"
877 "ンタとなる。 エラーの場合、これらの関数はエラー値を返し、 *I<gbufp> は NULL "
878 "になる。"
879
880 #. type: TP
881 #: build/C/man3/getgrent_r.3:108 build/C/man3/getpw.3:81
882 #: build/C/man3/getpwent_r.3:110
883 #, no-wrap
884 msgid "B<ENOENT>"
885 msgstr "B<ENOENT>"
886
887 #. type: Plain text
888 #: build/C/man3/getgrent_r.3:111 build/C/man3/getpwent_r.3:113
889 msgid "No more entries."
890 msgstr "次のエントリがない。"
891
892 #. type: Plain text
893 #: build/C/man3/getgrent_r.3:115 build/C/man3/getpwent_r.3:117
894 msgid "Insufficient buffer space supplied.  Try again with larger buffer."
895 msgstr ""
896 "十分なバッファ空間が与えられていない。 もっと大きなバッファで再度実行するこ"
897 "と。"
898
899 #. type: Plain text
900 #: build/C/man3/getgrent_r.3:120 build/C/man3/getpwent_r.3:122
901 msgid ""
902 "These functions are GNU extensions, done in a style resembling the POSIX "
903 "version of functions like B<getpwnam_r>(3).  Other systems use prototype"
904 msgstr ""
905 "これらの関数は GNU 拡張であり、POSIX 版の関数 B<getpwnam_r>(3)  の形式に似せ"
906 "てある。 他のシステムでは以下のプロトタイプが使われている。"
907
908 #. type: Plain text
909 #: build/C/man3/getgrent_r.3:125
910 #, no-wrap
911 msgid ""
912 "struct group *getgrent_r(struct group *grp, char *buf,\n"
913 "                         int buflen);\n"
914 msgstr ""
915 "struct group *getgrent_r(struct group *grp, char *buf,\n"
916 "                         int buflen);\n"
917
918 #. type: Plain text
919 #: build/C/man3/getgrent_r.3:129 build/C/man3/getpwent_r.3:131
920 msgid "or, better,"
921 msgstr "より良いものでは、以下のようになっている。"
922
923 #. type: Plain text
924 #: build/C/man3/getgrent_r.3:134
925 #, no-wrap
926 msgid ""
927 "int getgrent_r(struct group *grp, char *buf, int buflen,\n"
928 "               FILE **gr_fp);\n"
929 msgstr ""
930 "int getgrent_r(struct group *grp, char *buf, int buflen,\n"
931 "               FILE **gr_fp);\n"
932
933 #. type: SH
934 #: build/C/man3/getgrent_r.3:136 build/C/man3/getgrnam.3:204
935 #: build/C/man3/getpwent_r.3:139 build/C/man3/getpwnam.3:214
936 #: build/C/man5/passwd.5:113
937 #, no-wrap
938 msgid "NOTES"
939 msgstr "注意"
940
941 #. type: Plain text
942 #: build/C/man3/getgrent_r.3:141
943 msgid ""
944 "The function B<getgrent_r>()  is not really reentrant since it shares the "
945 "reading position in the stream with all other threads."
946 msgstr ""
947 "関数 B<getgrent_r>()  は本当のリエントラントではない。 なぜなら、ストリームの"
948 "読み込み位置を 他の全てのスレッドと共有しているためである。"
949
950 #. type: SH
951 #: build/C/man3/getgrent_r.3:141 build/C/man3/getgrouplist.3:107
952 #: build/C/man3/getpwent_r.3:144 build/C/man3/getpwnam.3:253
953 #: build/C/man3/setaliasent.3:111
954 #, no-wrap
955 msgid "EXAMPLE"
956 msgstr "例"
957
958 #. type: Plain text
959 #: build/C/man3/getgrent_r.3:148
960 #, no-wrap
961 msgid ""
962 "#define _GNU_SOURCE\n"
963 "#include E<lt>grp.hE<gt>\n"
964 "#include E<lt>stdio.hE<gt>\n"
965 "#include E<lt>stdlib.hE<gt>\n"
966 "#define BUFLEN 4096\n"
967 msgstr ""
968 "#define _GNU_SOURCE\n"
969 "#include E<lt>grp.hE<gt>\n"
970 "#include E<lt>stdio.hE<gt>\n"
971 "#include E<lt>stdlib.hE<gt>\n"
972 "#define BUFLEN 4096\n"
973
974 #. type: Plain text
975 #: build/C/man3/getgrent_r.3:155
976 #, no-wrap
977 msgid ""
978 "int\n"
979 "main(void)\n"
980 "{\n"
981 "    struct group grp, *grpp;\n"
982 "    char buf[BUFLEN];\n"
983 "    int i;\n"
984 msgstr ""
985 "int\n"
986 "main(void)\n"
987 "{\n"
988 "    struct group grp, *grpp;\n"
989 "    char buf[BUFLEN];\n"
990 "    int i;\n"
991
992 #. type: Plain text
993 #: build/C/man3/getgrent_r.3:172
994 #, no-wrap
995 msgid ""
996 "    setgrent();\n"
997 "    while (1) {\n"
998 "        i = getgrent_r(&grp, buf, BUFLEN, &grpp);\n"
999 "        if (i)\n"
1000 "            break;\n"
1001 "        printf(\"%s (%d):\", grpp-E<gt>gr_name, grpp-E<gt>gr_gid);\n"
1002 "        for (i = 0; ; i++) {\n"
1003 "            if (grpp-E<gt>gr_mem[i] == NULL)\n"
1004 "                break;\n"
1005 "            printf(\" %s\", grpp-E<gt>gr_mem[i]);\n"
1006 "        }\n"
1007 "        printf(\"\\en\");\n"
1008 "    }\n"
1009 "    endgrent();\n"
1010 "    exit(EXIT_SUCCESS);\n"
1011 "}\n"
1012 msgstr ""
1013 "    setgrent();\n"
1014 "    while (1) {\n"
1015 "        i = getgrent_r(&grp, buf, BUFLEN, &grpp);\n"
1016 "        if (i)\n"
1017 "            break;\n"
1018 "        printf(\"%s (%d):\", grpp-E<gt>gr_name, grpp-E<gt>gr_gid);\n"
1019 "        for (i = 0; ; i++) {\n"
1020 "            if (grpp-E<gt>gr_mem[i] == NULL)\n"
1021 "                break;\n"
1022 "            printf(\" %s\", grpp-E<gt>gr_mem[i]);\n"
1023 "        }\n"
1024 "        printf(\"\\en\");\n"
1025 "    }\n"
1026 "    endgrent();\n"
1027 "    exit(EXIT_SUCCESS);\n"
1028 "}\n"
1029
1030 #. type: Plain text
1031 #: build/C/man3/getgrent_r.3:189
1032 msgid ""
1033 "B<fgetgrent>(3), B<getgrent>(3), B<getgrgid>(3), B<getgrnam>(3), B<putgrent>"
1034 "(3), B<group>(5)"
1035 msgstr ""
1036 "B<fgetgrent>(3), B<getgrent>(3), B<getgrgid>(3), B<getgrnam>(3), B<putgrent>"
1037 "(3), B<group>(5)"
1038
1039 #. type: TH
1040 #: build/C/man3/getgrnam.3:31
1041 #, no-wrap
1042 msgid "GETGRNAM"
1043 msgstr "GETGRNAM"
1044
1045 #. type: Plain text
1046 #: build/C/man3/getgrnam.3:34
1047 msgid "getgrnam, getgrnam_r, getgrgid, getgrgid_r - get group file entry"
1048 msgstr ""
1049 "getgrnam, getgrnam_r, getgrgid, getgrgid_r - グループファイルエントリの取り出"
1050 "し"
1051
1052 #. type: Plain text
1053 #: build/C/man3/getgrnam.3:40
1054 #, no-wrap
1055 msgid "B<struct group *getgrnam(const char *>I<name>B<);>\n"
1056 msgstr "B<struct group *getgrnam(const char *>I<name>B<);>\n"
1057
1058 #. type: Plain text
1059 #: build/C/man3/getgrnam.3:42
1060 #, no-wrap
1061 msgid "B<struct group *getgrgid(gid_t >I<gid>B<);>\n"
1062 msgstr "B<struct group *getgrgid(gid_t >I<gid>B<);>\n"
1063
1064 #. type: Plain text
1065 #: build/C/man3/getgrnam.3:44
1066 #, no-wrap
1067 msgid "B<int getgrnam_r(const char *>I<name>B<, struct group *>I<grp>B<,>\n"
1068 msgstr "B<int getgrnam_r(const char *>I<name>B<, struct group *>I<grp>B<,>\n"
1069
1070 #. type: Plain text
1071 #: build/C/man3/getgrnam.3:46 build/C/man3/getgrnam.3:50
1072 #, no-wrap
1073 msgid "B<          char *>I<buf>B<, size_t >I<buflen>B<, struct group **>I<result>B<);>\n"
1074 msgstr "B<          char *>I<buf>B<, size_t >I<buflen>B<, struct group **>I<result>B<);>\n"
1075
1076 #. type: Plain text
1077 #: build/C/man3/getgrnam.3:48
1078 #, no-wrap
1079 msgid "B<int getgrgid_r(gid_t >I<gid>B<, struct group *>I<grp>B<,>\n"
1080 msgstr "B<int getgrgid_r(gid_t >I<gid>B<, struct group *>I<grp>B<,>\n"
1081
1082 #. type: Plain text
1083 #: build/C/man3/getgrnam.3:60
1084 msgid "B<getgrnam_r>(), B<getgrgid_r>():"
1085 msgstr "B<getgrnam_r>(), B<getgrgid_r>():"
1086
1087 #. type: Plain text
1088 #: build/C/man3/getgrnam.3:63 build/C/man3/getpwnam.3:67
1089 msgid ""
1090 "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _BSD_SOURCE || _SVID_SOURCE "
1091 "|| _POSIX_SOURCE"
1092 msgstr ""
1093 "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _BSD_SOURCE || _SVID_SOURCE "
1094 "|| _POSIX_SOURCE"
1095
1096 #. type: Plain text
1097 #: build/C/man3/getgrnam.3:75
1098 msgid ""
1099 "The B<getgrnam>()  function returns a pointer to a structure containing the "
1100 "broken-out fields of the record in the group database (e.g., the local group "
1101 "file I</etc/group>, NIS, and LDAP)  that matches the group name I<name>."
1102 msgstr ""
1103 "B<getgrnam>()  関数は、グループ名 I<name> にマッチするグループ・データベース"
1104 "のエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す (パス"
1105 "ワード・データベースの例: ローカルのグループファイル I</etc/group>, NIS, "
1106 "LDAP)。"
1107
1108 #. type: Plain text
1109 #: build/C/man3/getgrnam.3:82
1110 msgid ""
1111 "The B<getgrgid>()  function returns a pointer to a structure containing the "
1112 "broken-out fields of the record in the group database that matches the group "
1113 "ID I<gid>."
1114 msgstr ""
1115 "B<getgrgid>()  関数は、グループ ID I<uid> にマッチするグループ・データベース"
1116 "のエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す。"
1117
1118 #. type: Plain text
1119 #: build/C/man3/getgrnam.3:121
1120 msgid ""
1121 "The B<getgrnam_r>()  and B<getgrgid_r>()  functions obtain the same "
1122 "information as B<getgrnam>()  and B<getgrgid>(), but store the retrieved "
1123 "I<group> structure in the space pointed to by I<grp>.  The string fields "
1124 "pointed to by the members of the I<group> structure are stored in the buffer "
1125 "I<buf> of size I<buflen>.  A pointer to the result (in case of success) or "
1126 "NULL (in case no entry was found or an error occurred) is stored in "
1127 "I<*result>."
1128 msgstr ""
1129 "B<getgrnam_r>() と B<getgrgid_r>() 関数は、それぞれ B<getgrnam>() と\n"
1130 "B<getgrgid>() と同じ情報を取得するが、取得した I<group> 構造体を\n"
1131 "I<grp> が指す領域に格納する。I<group> 構造体のメンバーが指す文字列は、\n"
1132 "サイズ I<buflen> のバッファ I<buf> に格納される。成功した場合\n"
1133 "I<*gbufp> には結果へのポインタが格納される。エントリが見つからなかった\n"
1134 "場合やエラーが発生した場合には I<*result> には NULL が入る。"
1135
1136 #. type: Plain text
1137 #: build/C/man3/getgrnam.3:128
1138 msgid ""
1139 "The maximum needed size for I<buf> can be found using B<sysconf>(3)  with "
1140 "the argument B<_SC_GETGR_R_SIZE_MAX>."
1141 msgstr ""
1142 "I<buf> に最大必要なサイズは、 B<sysconf>(3)  に引き数 "
1143 "B<_SC_GETGR_R_SIZE_MAX> を指定して実行することで分かる。"
1144
1145 #. type: Plain text
1146 #: build/C/man3/getgrnam.3:143
1147 msgid ""
1148 "The B<getgrnam>()  and B<getgrgid>()  functions return a pointer to a "
1149 "I<group> structure, or NULL if the matching entry is not found or an error "
1150 "occurs.  If an error occurs, I<errno> is set appropriately.  If one wants to "
1151 "check I<errno> after the call, it should be set to zero before the call."
1152 msgstr ""
1153 "B<getgrnam>()  と B<getgrgid>()  関数は、 I<group> 構造体へのポインタを返"
1154 "す。 マッチするエントリが見つからなかった場合や、 エラーが発生した場合は "
1155 "NULL を返す。 エラーが起こった場合、 I<errno> が適切に設定される。 呼び出しの"
1156 "後で I<errno> をチェックしたい場合は、 呼び出しの前に (この値を) 0 に設定して"
1157 "おくべきである。"
1158
1159 #. type: Plain text
1160 #: build/C/man3/getgrnam.3:152
1161 msgid ""
1162 "The return value may point to a static area, and may be overwritten by "
1163 "subsequent calls to B<getgrent>(3), B<getgrgid>(), or B<getgrnam>().  (Do "
1164 "not pass the returned pointer to B<free>(3).)"
1165 msgstr ""
1166 "返り値は静的な領域を指しており、その後の B<getgrent>(3), B<getgrgid>(), "
1167 "B<getgrnam>()  の呼び出しで上書きされるかもしれない。 (返されたポインタを "
1168 "B<free>(3)  に渡さないこと。)"
1169
1170 #. type: Plain text
1171 #: build/C/man3/getgrnam.3:166
1172 msgid ""
1173 "On success, B<getgrnam_r>()  and B<getgrgid_r>()  return zero, and set "
1174 "I<*result> to I<grp>.  If no matching group record was found, these "
1175 "functions return 0 and store NULL in I<*result>.  In case of error, an error "
1176 "number is returned, and NULL is stored in I<*result>."
1177 msgstr ""
1178 "成功すると、 B<getgrnam_r>()  と B<getgrgid_r>()  は 0 を返し、 I<*result> "
1179 "に I<grp> を設定する。 マッチするグループ・エントリが見つからなかった場合に"
1180 "は、 0 を返し、 I<*result> に NULL を設定する。 エラーの場合、エラー番号を返"
1181 "し、 I<*result> に NULL を設定する。"
1182
1183 #. type: TP
1184 #: build/C/man3/getgrnam.3:167 build/C/man3/getpwnam.3:174
1185 #, no-wrap
1186 msgid "B<0> or B<ENOENT> or B<ESRCH> or B<EBADF> or B<EPERM> or ... "
1187 msgstr "B<0> または B<ENOENT> または B<ESRCH> または B<EBADF> または B<EPERM> または ... "
1188
1189 #. type: Plain text
1190 #: build/C/man3/getgrnam.3:174
1191 msgid "The given I<name> or I<gid> was not found."
1192 msgstr "指定された I<name> または I<gid> が見つからなかった。"
1193
1194 #. type: Plain text
1195 #: build/C/man3/getgrnam.3:185 build/C/man3/getpwent.3:135
1196 #: build/C/man3/getpwnam.3:192
1197 msgid ""
1198 "The maximum number (B<OPEN_MAX>)  of files was open already in the calling "
1199 "process."
1200 msgstr ""
1201 "呼び出し元プロセスがオープンしているファイル数が すでに上限 (B<OPEN_MAX>)  で"
1202 "あった。"
1203
1204 #. type: Plain text
1205 #: build/C/man3/getgrnam.3:188 build/C/man3/getpwent.3:138
1206 #: build/C/man3/getpwnam.3:195
1207 msgid "The maximum number of files was open already in the system."
1208 msgstr "システムでオープンされているファイル数がすでに上限であった。"
1209
1210 #.  more precisely:
1211 #.  AIX 5.1 - gives ESRCH
1212 #.  OSF1 4.0g - gives EWOULDBLOCK
1213 #.  libc, glibc up to version 2.6, Irix 6.5 - give ENOENT
1214 #.  glibc since version 2.7 - give 0
1215 #.  FreeBSD 4.8, OpenBSD 3.2, NetBSD 1.6 - give EPERM
1216 #.  SunOS 5.8 - gives EBADF
1217 #.  Tru64 5.1b, HP-UX-11i, SunOS 5.7 - give 0
1218 #. type: Plain text
1219 #: build/C/man3/getgrnam.3:225
1220 msgid ""
1221 "The formulation given above under \"RETURN VALUE\" is from POSIX.1-2001.  It "
1222 "does not call \"not found\" an error, hence does not specify what value "
1223 "I<errno> might have in this situation.  But that makes it impossible to "
1224 "recognize errors.  One might argue that according to POSIX I<errno> should "
1225 "be left unchanged if an entry is not found.  Experiments on various UNIX-"
1226 "like systems shows that lots of different values occur in this situation: 0, "
1227 "ENOENT, EBADF, ESRCH, EWOULDBLOCK, EPERM and probably others."
1228 msgstr ""
1229 "上記の「返り値」以下の記述は POSIX.1-2001 に拠る。 この標準は「(エントリが) "
1230 "見つからないこと」をエラーとしていないので、 そのような場合に I<errno> がどの"
1231 "ような値になるかを定めていない。 そのため、エラーを認識することは不可能であ"
1232 "る。 POSIX に準拠して、エントリが見つからない場合は I<errno> を変更しないよう"
1233 "にすべきである、と主張する人もいるかもしれない。 様々な UNIX 系のシステムで試"
1234 "してみると、そのような場合には 0, ENOENT, EBADF, ESRCH, EWOULDBLOCK, EPERM と"
1235 "いった様々な値が返される。 他の値が返されるかもしれない。"
1236
1237 #. type: Plain text
1238 #: build/C/man3/getgrnam.3:232
1239 msgid ""
1240 "B<endgrent>(3), B<fgetgrent>(3), B<getgrent>(3), B<getpwnam>(3), B<setgrent>"
1241 "(3), B<group>(5)"
1242 msgstr ""
1243 "B<endgrent>(3), B<fgetgrent>(3), B<getgrent>(3), B<getpwnam>(3), B<setgrent>"
1244 "(3), B<group>(5)"
1245
1246 #. type: TH
1247 #: build/C/man3/getgrouplist.3:27
1248 #, no-wrap
1249 msgid "GETGROUPLIST"
1250 msgstr "GETGROUPLIST"
1251
1252 #. type: TH
1253 #: build/C/man3/getgrouplist.3:27
1254 #, no-wrap
1255 msgid "2008-07-03"
1256 msgstr "2009-07-03"
1257
1258 #. type: Plain text
1259 #: build/C/man3/getgrouplist.3:30
1260 msgid "getgrouplist - get list of groups to which a user belongs"
1261 msgstr "getgrouplist - ユーザが所属するグループのリストを取得する"
1262
1263 #. type: Plain text
1264 #: build/C/man3/getgrouplist.3:32 build/C/man3/putgrent.3:11
1265 msgid "B<#include E<lt>grp.hE<gt>>"
1266 msgstr "B<#include E<lt>grp.hE<gt>>"
1267
1268 #. type: Plain text
1269 #: build/C/man3/getgrouplist.3:34
1270 msgid "B<int getgrouplist(const char *>I<user>B<, gid_t >I<group>B<,>"
1271 msgstr "B<int getgrouplist(const char *>I<user>B<, gid_t >I<group>B<,>"
1272
1273 #. type: Plain text
1274 #: build/C/man3/getgrouplist.3:36
1275 msgid "B< gid_t *>I<groups>B<, int *>I<ngroups>B<);>"
1276 msgstr "B< gid_t *>I<groups>B<, int *>I<ngroups>B<);>"
1277
1278 #. type: Plain text
1279 #: build/C/man3/getgrouplist.3:44
1280 msgid "B<getgrouplist>(): _BSD_SOURCE"
1281 msgstr "B<getgrouplist>(): _BSD_SOURCE"
1282
1283 #. type: Plain text
1284 #: build/C/man3/getgrouplist.3:56
1285 msgid ""
1286 "The B<getgrouplist>()  function scans the group database (see B<group>(5))  "
1287 "to obtain the list of groups that I<user> belongs to.  Up to I<*ngroups> of "
1288 "these groups are returned in the array I<groups>."
1289 msgstr ""
1290 "B<getgrouplist>()  関数は、グループデータベース (B<group>(5)  参照) を調べ"
1291 "て、 I<user> が所属するグループのリストを取得する。 見つかったグループのうち"
1292 "最大 I<*ngroups> 個のグループが、配列 I<groups> に格納されて返される。"
1293
1294 #. type: Plain text
1295 #: build/C/man3/getgrouplist.3:66
1296 msgid ""
1297 "If it was not among the groups defined for I<user> in the group database, "
1298 "then I<group> is included in the list of groups returned by B<getgrouplist>"
1299 "(); typically this argument is specified as the group ID from the password "
1300 "record for I<user>."
1301 msgstr ""
1302 "引き数 I<group> がグループデータベースに I<user> が所属するグループがなかった"
1303 "場合、 B<getgrouplist>()  が返すグループのリストに引き数 I<group> も追加され"
1304 "る。 通常は、この引き数にはユーザ I<user> のパスワードレコードに書かれている"
1305 "グループ ID を指定する。"
1306
1307 #. type: Plain text
1308 #: build/C/man3/getgrouplist.3:76
1309 msgid ""
1310 "The I<ngroups> argument is a value-result argument: on return it always "
1311 "contains the number of groups found for I<user>, including I<group>; this "
1312 "value may be greater than the number of groups stored in I<groups>."
1313 msgstr ""
1314 "引き数 I<ngroups> は、値渡しと結果の両方に使用される引き数 (value-result "
1315 "argument) であり、 リターン時には、常に I<group> も含めた I<user> が所属する"
1316 "グループ数が格納される。 この値は I<groups> に格納されたグループ数より大きく"
1317 "なる可能性がある。"
1318
1319 #. type: Plain text
1320 #: build/C/man3/getgrouplist.3:84
1321 msgid ""
1322 "If the number of groups of which I<user> is a member is less than or equal "
1323 "to I<*ngroups>, then the value I<*ngroups> is returned."
1324 msgstr ""
1325 "I<user> が所属しているグループ数が I<*ngroups> 以下の場合、 I<*ngroups> の値"
1326 "が返される。"
1327
1328 #. type: Plain text
1329 #: build/C/man3/getgrouplist.3:94
1330 msgid ""
1331 "If the user is a member of more than I<*ngroups> groups, then B<getgrouplist>"
1332 "()  returns -1.  In this case the value returned in I<*ngroups> can be used "
1333 "to resize the buffer passed to a further call B<getgrouplist>()."
1334 msgstr ""
1335 "指定されたユーザが I<*ngroups> より多くのグループに所属している場合、 "
1336 "B<getgrouplist>()  は -1 を返す。 この場合、 I<*ngroups> で返される値を使っ"
1337 "て、バッファのサイズを変更してから、 B<getgrouplist>()  をもう一度呼び出すこ"
1338 "とができる。"
1339
1340 #. type: SH
1341 #: build/C/man3/getgrouplist.3:94
1342 #, no-wrap
1343 msgid "VERSIONS"
1344 msgstr "バージョン"
1345
1346 #. type: Plain text
1347 #: build/C/man3/getgrouplist.3:96
1348 msgid "This function is present since glibc 2.2.4."
1349 msgstr "この関数は glibc 2.2.4 から存在する。"
1350
1351 #. type: Plain text
1352 #: build/C/man3/getgrouplist.3:98
1353 msgid "This function is nonstandard; it appears on most BSDs."
1354 msgstr "この関数は非標準である。ほとんどの BSD に存在する。"
1355
1356 #. type: SH
1357 #: build/C/man3/getgrouplist.3:98 build/C/man3/getpw.3:96
1358 #: build/C/man5/group.5:54
1359 #, no-wrap
1360 msgid "BUGS"
1361 msgstr "バグ"
1362
1363 #. type: Plain text
1364 #: build/C/man3/getgrouplist.3:107
1365 msgid ""
1366 "In glibc versions before 2.3.3, the implementation of this function contains "
1367 "a buffer-overrun bug: it returns the complete list of groups for I<user> in "
1368 "the array I<groups>, even when the number of groups exceeds I<*ngroups>."
1369 msgstr ""
1370 "バージョン 2.3.3 より前の glibc では、 この関数の実装にはバッファオーバーフ"
1371 "ローのバグがあり、 I<user> が所属するグループ数が I<*ngroups> より多い場合で"
1372 "あっても、 I<user> が所属するグループの全リストを配列 I<groups> に格納してし"
1373 "まう。"
1374
1375 #. type: Plain text
1376 #: build/C/man3/getgrouplist.3:116
1377 msgid ""
1378 "The program below displays the group list for the user named in its first "
1379 "command-line argument.  The second command-line argument specifies the "
1380 "I<ngroups> value to be supplied to B<getgrouplist>().  The following shell "
1381 "session shows examples of the use of this program:"
1382 msgstr ""
1383 "以下のプログラムは、一つ目のコマンドライン引き数で指定された名前のユーザ が所"
1384 "属するグループのリストを表示する。 二番目のコマンドライン引き数には、 "
1385 "B<getgrouplist>()  に渡す I<ngroups> の値を指定する。 以下のシェルのセッショ"
1386 "ンはこのプログラムの使用例を示したものである。"
1387
1388 #. type: Plain text
1389 #: build/C/man3/getgrouplist.3:126
1390 #, no-wrap
1391 msgid ""
1392 "$B< ./a.out cecilia 0>\n"
1393 "getgrouplist() returned -1; ngroups = 3\n"
1394 "$B< ./a.out cecilia 3>\n"
1395 "ngroups = 3\n"
1396 "16 (dialout)\n"
1397 "33 (video)\n"
1398 "100 (users)\n"
1399 msgstr ""
1400 "$B< ./a.out cecilia 0>\n"
1401 "getgrouplist() returned -1; ngroups = 3\n"
1402 "$B< ./a.out cecilia 3>\n"
1403 "ngroups = 3\n"
1404 "16 (dialout)\n"
1405 "33 (video)\n"
1406 "100 (users)\n"
1407
1408 #. type: SS
1409 #: build/C/man3/getgrouplist.3:128
1410 #, no-wrap
1411 msgid "Program source"
1412 msgstr "プログラムのソース"
1413
1414 #. type: Plain text
1415 #: build/C/man3/getgrouplist.3:135
1416 #, no-wrap
1417 msgid ""
1418 "#include E<lt>stdio.hE<gt>\n"
1419 "#include E<lt>stdlib.hE<gt>\n"
1420 "#include E<lt>grp.hE<gt>\n"
1421 "#include E<lt>pwd.hE<gt>\n"
1422 msgstr ""
1423 "#include E<lt>stdio.hE<gt>\n"
1424 "#include E<lt>stdlib.hE<gt>\n"
1425 "#include E<lt>grp.hE<gt>\n"
1426 "#include E<lt>pwd.hE<gt>\n"
1427
1428 #. type: Plain text
1429 #: build/C/man3/getgrouplist.3:143
1430 #, no-wrap
1431 msgid ""
1432 "int\n"
1433 "main(int argc, char *argv[])\n"
1434 "{\n"
1435 "    int j, ngroups;\n"
1436 "    gid_t *groups;\n"
1437 "    struct passwd *pw;\n"
1438 "    struct group *gr;\n"
1439 msgstr ""
1440 "int\n"
1441 "main(int argc, char *argv[])\n"
1442 "{\n"
1443 "    int j, ngroups;\n"
1444 "    gid_t *groups;\n"
1445 "    struct passwd *pw;\n"
1446 "    struct group *gr;\n"
1447
1448 #. type: Plain text
1449 #: build/C/man3/getgrouplist.3:148
1450 #, no-wrap
1451 msgid ""
1452 "    if (argc != 3) {\n"
1453 "        fprintf(stderr, \"Usage: %s E<lt>userE<gt> E<lt>ngroupsE<gt>\\en\", argv[0]);\n"
1454 "        exit(EXIT_FAILURE);\n"
1455 "    }\n"
1456 msgstr ""
1457 "    if (argc != 3) {\n"
1458 "        fprintf(stderr, \"Usage: %s E<lt>userE<gt> E<lt>ngroupsE<gt>\\en\", argv[0]);\n"
1459 "        exit(EXIT_FAILURE);\n"
1460 "    }\n"
1461
1462 #. type: Plain text
1463 #: build/C/man3/getgrouplist.3:150
1464 #, no-wrap
1465 msgid "    ngroups = atoi(argv[2]);\n"
1466 msgstr "    ngroups = atoi(argv[2]);\n"
1467
1468 #. type: Plain text
1469 #: build/C/man3/getgrouplist.3:156
1470 #, no-wrap
1471 msgid ""
1472 "    groups = malloc(ngroups * sizeof (gid_t));\n"
1473 "    if (groups == NULL) {\n"
1474 "        perror(\"malloc\");\n"
1475 "        exit(EXIT_FAILURE);\n"
1476 "    }\n"
1477 msgstr ""
1478 "    groups = malloc(ngroups * sizeof (gid_t));\n"
1479 "    if (groups == NULL) {\n"
1480 "        perror(\"malloc\");\n"
1481 "        exit(EXIT_FAILURE);\n"
1482 "    }\n"
1483
1484 #. type: Plain text
1485 #: build/C/man3/getgrouplist.3:158
1486 #, no-wrap
1487 msgid "    /* Fetch passwd structure (contains first group ID for user) */\n"
1488 msgstr "    /* Fetch passwd structure (contains first group ID for user) */\n"
1489
1490 #. type: Plain text
1491 #: build/C/man3/getgrouplist.3:164
1492 #, no-wrap
1493 msgid ""
1494 "    pw = getpwnam(argv[1]);\n"
1495 "    if (pw == NULL) {\n"
1496 "        perror(\"getpwnam\");\n"
1497 "        exit(EXIT_SUCCESS);\n"
1498 "    }\n"
1499 msgstr ""
1500 "    pw = getpwnam(argv[1]);\n"
1501 "    if (pw == NULL) {\n"
1502 "        perror(\"getpwnam\");\n"
1503 "        exit(EXIT_SUCCESS);\n"
1504 "    }\n"
1505
1506 #. type: Plain text
1507 #: build/C/man3/getgrouplist.3:166
1508 #, no-wrap
1509 msgid "    /* Retrieve group list */\n"
1510 msgstr "    /* Retrieve group list */\n"
1511
1512 #. type: Plain text
1513 #: build/C/man3/getgrouplist.3:172
1514 #, no-wrap
1515 msgid ""
1516 "    if (getgrouplist(argv[1], pw-E<gt>pw_gid, groups, &ngroups) == -1) {\n"
1517 "        fprintf(stderr, \"getgrouplist() returned -1; ngroups = %d\\en\",\n"
1518 "                ngroups);\n"
1519 "\texit(EXIT_FAILURE);\n"
1520 "    }\n"
1521 msgstr ""
1522 "    if (getgrouplist(argv[1], pw-E<gt>pw_gid, groups, &ngroups) == -1) {\n"
1523 "        fprintf(stderr, \"getgrouplist() returned -1; ngroups = %d\\en\",\n"
1524 "                ngroups);\n"
1525 "\texit(EXIT_FAILURE);\n"
1526 "    }\n"
1527
1528 #. type: Plain text
1529 #: build/C/man3/getgrouplist.3:174
1530 #, no-wrap
1531 msgid "    /* Display list of retrieved groups, along with group names */\n"
1532 msgstr "    /* Display list of retrieved groups, along with group names */\n"
1533
1534 #. type: Plain text
1535 #: build/C/man3/getgrouplist.3:183
1536 #, no-wrap
1537 msgid ""
1538 "    fprintf(stderr, \"ngroups = %d\\en\", ngroups);\n"
1539 "    for (j = 0; j E<lt> ngroups; j++) {\n"
1540 "        printf(\"%d\", groups[j]);\n"
1541 "        gr = getgrgid(groups[j]);\n"
1542 "        if (gr != NULL)\n"
1543 "            printf(\" (%s)\", gr-E<gt>gr_name);\n"
1544 "        printf(\"\\en\");\n"
1545 "    }\n"
1546 msgstr ""
1547 "    fprintf(stderr, \"ngroups = %d\\en\", ngroups);\n"
1548 "    for (j = 0; j E<lt> ngroups; j++) {\n"
1549 "        printf(\"%d\", groups[j]);\n"
1550 "        gr = getgrgid(groups[j]);\n"
1551 "        if (gr != NULL)\n"
1552 "            printf(\" (%s)\", gr-E<gt>gr_name);\n"
1553 "        printf(\"\\en\");\n"
1554 "    }\n"
1555
1556 #. type: Plain text
1557 #: build/C/man3/getgrouplist.3:186
1558 #, no-wrap
1559 msgid ""
1560 "    exit(EXIT_SUCCESS);\n"
1561 "}\n"
1562 msgstr ""
1563 "    exit(EXIT_SUCCESS);\n"
1564 "}\n"
1565
1566 #. type: Plain text
1567 #: build/C/man3/getgrouplist.3:193
1568 msgid ""
1569 "B<getgroups>(2), B<setgroups>(2), B<getgrent>(3), B<group>(5), B<passwd>(5)"
1570 msgstr ""
1571 "B<getgroups>(2), B<setgroups>(2), B<getgrent>(3), B<group>(5), B<passwd>(5)"
1572
1573 #. type: TH
1574 #: build/C/man3/getpw.3:30
1575 #, no-wrap
1576 msgid "GETPW"
1577 msgstr "GETPW"
1578
1579 #. type: Plain text
1580 #: build/C/man3/getpw.3:33
1581 msgid "getpw - Re-construct password line entry"
1582 msgstr "getpw - パスワード行エントリを取得する"
1583
1584 #. type: Plain text
1585 #: build/C/man3/getpw.3:38
1586 #, no-wrap
1587 msgid ""
1588 "B<#define _GNU_SOURCE>             /* See feature_test_macros(7) */\n"
1589 "B<#include E<lt>sys/types.hE<gt>>\n"
1590 "B<#include E<lt>pwd.hE<gt>>\n"
1591 msgstr ""
1592 "B<#define _GNU_SOURCE>             /* feature_test_macros(7) 参照 */\n"
1593 "B<#include E<lt>sys/types.hE<gt>>\n"
1594 "B<#include E<lt>pwd.hE<gt>>\n"
1595
1596 #. type: Plain text
1597 #: build/C/man3/getpw.3:40
1598 #, no-wrap
1599 msgid "B<int getpw(uid_t >I<uid>B<, char *>I<buf>B<);>\n"
1600 msgstr "B<int getpw(uid_t >I<uid>B<, char *>I<buf>B<);>\n"
1601
1602 #. type: Plain text
1603 #: build/C/man3/getpw.3:47
1604 msgid ""
1605 "The B<getpw>()  function reconstructs the password line entry for the given "
1606 "user ID I<uid> in the buffer I<buf>.  The returned buffer contains a line of "
1607 "format"
1608 msgstr ""
1609 "B<getpw>()  関数は、バッファ I<buf> に指定ユーザ ID I<uid> の パスワード行エ"
1610 "ントリを取得する。 返されるバッファは、以下の形式の行を含む。"
1611
1612 #. type: Plain text
1613 #: build/C/man3/getpw.3:50
1614 msgid "B<name:passwd:uid:gid:gecos:dir:shell>"
1615 msgstr "B<name:passwd:uid:gid:gecos:dir:shell>"
1616
1617 #. type: Plain text
1618 #: build/C/man3/getpw.3:65 build/C/man3/getpwent.3:96
1619 #: build/C/man3/getpwnam.3:100
1620 #, no-wrap
1621 msgid ""
1622 "struct passwd {\n"
1623 "    char   *pw_name;       /* username */\n"
1624 "    char   *pw_passwd;     /* user password */\n"
1625 "    uid_t   pw_uid;        /* user ID */\n"
1626 "    gid_t   pw_gid;        /* group ID */\n"
1627 "    char   *pw_gecos;      /* user information */\n"
1628 "    char   *pw_dir;        /* home directory */\n"
1629 "    char   *pw_shell;      /* shell program */\n"
1630 "};\n"
1631 msgstr ""
1632 "struct passwd {\n"
1633 "    char   *pw_name;       /* ユーザ名 */\n"
1634 "    char   *pw_passwd;     /* ユーザのパスワード */\n"
1635 "    uid_t   pw_uid;        /* ユーザ ID */\n"
1636 "    gid_t   pw_gid;        /* グループ ID */\n"
1637 "    char   *pw_gecos;      /* ユーザ情報 */\n"
1638 "    char   *pw_dir;        /* ホームディレクトリ */\n"
1639 "    char   *pw_shell;      /* シェルプログラム */\n"
1640 "};\n"
1641
1642 #. type: Plain text
1643 #: build/C/man3/getpw.3:70 build/C/man3/getpwent.3:101
1644 #: build/C/man3/getpwent_r.3:83
1645 msgid ""
1646 "For more information about the fields of this structure, see B<passwd>(5)."
1647 msgstr "この構造体のフィールドの詳細は B<passwd>(5)  を参照のこと。"
1648
1649 #. type: Plain text
1650 #: build/C/man3/getpw.3:76
1651 msgid ""
1652 "The B<getpw>()  function returns 0 on success; on error, it returns -1, and "
1653 "I<errno> is set to indicate the error."
1654 msgstr ""
1655 "B<getpw>()  関数は、成功した場合 0 を返す; エラーが発生した場合 -1 を返し、エ"
1656 "ラーを 示すために I<error> がセットされる。"
1657
1658 #. type: TP
1659 #: build/C/man3/getpw.3:77 build/C/man3/putpwent.3:74
1660 #, no-wrap
1661 msgid "B<EINVAL>"
1662 msgstr "B<EINVAL>"
1663
1664 #. type: Plain text
1665 #: build/C/man3/getpw.3:81
1666 msgid "I<buf> is NULL."
1667 msgstr "I<buf> が NULL。"
1668
1669 #. type: Plain text
1670 #: build/C/man3/getpw.3:85
1671 msgid "No user corresponding to I<uid>."
1672 msgstr "I<uid> に対応するユーザがいない。"
1673
1674 #. type: Plain text
1675 #: build/C/man3/getpw.3:96
1676 msgid "SVr2."
1677 msgstr "SVr2"
1678
1679 #. type: Plain text
1680 #: build/C/man3/getpw.3:103
1681 msgid ""
1682 "The B<getpw>()  function is dangerous as it may overflow the provided buffer "
1683 "I<buf>.  It is obsoleted by B<getpwuid>(3)."
1684 msgstr ""
1685 "B<getpw>()  関数は、与えられたバッファ I<buf> がオーバーフローするかもしれな"
1686 "いので危険である。 この関数は B<getpwuid>(3)  によって古いものとなった。"
1687
1688 #. type: Plain text
1689 #: build/C/man3/getpw.3:112
1690 msgid ""
1691 "B<endpwent>(3), B<fgetpwent>(3), B<getpwent>(3), B<getpwnam>(3), B<getpwuid>"
1692 "(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
1693 msgstr ""
1694 "B<endpwent>(3), B<fgetpwent>(3), B<getpwent>(3), B<getpwnam>(3), B<getpwuid>"
1695 "(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
1696
1697 #. type: TH
1698 #: build/C/man3/getpwent.3:31
1699 #, no-wrap
1700 msgid "GETPWENT"
1701 msgstr "GETPWENT"
1702
1703 #. type: Plain text
1704 #: build/C/man3/getpwent.3:34
1705 msgid "getpwent, setpwent, endpwent - get password file entry"
1706 msgstr "getpwent, setpwent, endpwent - パスワードファイルのエントリの取得"
1707
1708 #. type: Plain text
1709 #: build/C/man3/getpwent.3:38 build/C/man3/getpwnam.3:42
1710 #, no-wrap
1711 msgid ""
1712 "B<#include E<lt>sys/types.hE<gt>>\n"
1713 "B<#include E<lt>pwd.hE<gt>>\n"
1714 msgstr ""
1715 "B<#include E<lt>sys/types.hE<gt>>\n"
1716 "B<#include E<lt>pwd.hE<gt>>\n"
1717
1718 #. type: Plain text
1719 #: build/C/man3/getpwent.3:40
1720 #, no-wrap
1721 msgid "B<struct passwd *getpwent(void);>\n"
1722 msgstr "B<struct passwd *getpwent(void);>\n"
1723
1724 #. type: Plain text
1725 #: build/C/man3/getpwent.3:42
1726 #, no-wrap
1727 msgid "B<void setpwent(void);>\n"
1728 msgstr "B<void setpwent(void);>\n"
1729
1730 #. type: Plain text
1731 #: build/C/man3/getpwent.3:44
1732 #, no-wrap
1733 msgid "B<void endpwent(void);>\n"
1734 msgstr "B<void endpwent(void);>\n"
1735
1736 #. type: Plain text
1737 #: build/C/man3/getpwent.3:55
1738 msgid "B<getpwent>(), B<setpwent>(), B<endpwent>():"
1739 msgstr "B<getpwent>(), B<setpwent>(), B<endpwent>():"
1740
1741 #. type: Plain text
1742 #: build/C/man3/getpwent.3:58
1743 msgid ""
1744 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
1745 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
1746 msgstr ""
1747 "_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE"
1748 "\\ &&\\ _XOPEN_SOURCE_EXTENDED"
1749
1750 #. type: Plain text
1751 #: build/C/man3/getpwent.3:72
1752 msgid ""
1753 "The B<getpwent>()  function returns a pointer to a structure containing the "
1754 "broken-out fields of a record from the password database (e.g., the local "
1755 "password file I</etc/passwd>, NIS, and LDAP).  The first time B<getpwent>()  "
1756 "is called, it returns the first entry; thereafter, it returns successive "
1757 "entries."
1758 msgstr ""
1759 "B<getpwent>()  関数は、パスワード・データベースから取得したエントリを 要素毎"
1760 "に分解し、各要素を格納した構造体へのポインタを返す (パスワード・データベース"
1761 "の例: ローカルのパスワードファイル I</etc/passwd>, NIS, LDAP)。 B<getpwent>"
1762 "()  は、最初に呼び出された時は最初のエントリを返し、それ以降は 呼び出される毎"
1763 "に次のエントリを返す。"
1764
1765 #. type: Plain text
1766 #: build/C/man3/getpwent.3:77
1767 msgid ""
1768 "The B<setpwent>()  function rewinds to the beginning of the password "
1769 "database."
1770 msgstr "B<setpwent>()  関数を使うと、パスワード・データベースの先頭に戻る。"
1771
1772 #. type: Plain text
1773 #: build/C/man3/getpwent.3:82
1774 msgid ""
1775 "The B<endpwent>()  function is used to close the password database after all "
1776 "processing has been performed."
1777 msgstr ""
1778 "B<endpwent>()  関数は、全ての処理が終わった後にパスワード・ データベースをク"
1779 "ローズする。"
1780
1781 #. type: Plain text
1782 #: build/C/man3/getpwent.3:114
1783 msgid ""
1784 "The B<getpwent>()  function returns a pointer to a I<passwd> structure, or "
1785 "NULL if there are no more entries or an error occurs.  If an error occurs, "
1786 "I<errno> is set appropriately.  If one wants to check I<errno> after the "
1787 "call, it should be set to zero before the call."
1788 msgstr ""
1789 "B<getpwent>()  関数は I<passwd> 構造体へのポインタを返す。 これ以上エントリが"
1790 "無いか、エラーが発生した場合は NULL を返す。 エラーが発生すると、 I<errno> が"
1791 "適切に設定される。 この関数の呼び出し後に I<errno> をチェックしたい場合は、呼"
1792 "び出し前に I<errno> を 0 に設定しておかないといけない。"
1793
1794 #. type: Plain text
1795 #: build/C/man3/getpwent.3:123
1796 msgid ""
1797 "The return value may point to a static area, and may be overwritten by "
1798 "subsequent calls to B<getpwent>(), B<getpwnam>(3), or B<getpwuid>(3).  (Do "
1799 "not pass the returned pointer to B<free>(3).)"
1800 msgstr ""
1801 "返り値は静的な領域を指しており、その後の B<getpwent>(), B<getpwnam>(3), "
1802 "B<getpwuid>(3)  の呼び出しで上書きされるかもしれない。 (返されたポインタを "
1803 "B<free>(3)  に渡さないこと。)"
1804
1805 #. type: Plain text
1806 #: build/C/man3/getpwent.3:152 build/C/man3/getpwnam.3:209
1807 msgid "local password database file"
1808 msgstr "ローカルのパスワード・データベースファイル"
1809
1810 #. type: Plain text
1811 #: build/C/man3/getpwent.3:157 build/C/man3/getpwnam.3:214
1812 msgid ""
1813 "SVr4, 4.3BSD, POSIX.1-2001.  The I<pw_gecos> field is not specified in "
1814 "POSIX, but is present on most implementations."
1815 msgstr ""
1816 "SVr4, 4.3BSD, POSIX.1-2001.  I<pw_gecos> フィールドは POSIX では規定されてい"
1817 "ないが、 ほとんどの実装に存在する。"
1818
1819 #. type: Plain text
1820 #: build/C/man3/getpwent.3:165
1821 msgid ""
1822 "B<fgetpwent>(3), B<getpw>(3), B<getpwent_r>(3), B<getpwnam>(3), B<getpwuid>"
1823 "(3), B<putpwent>(3), B<passwd>(5)"
1824 msgstr ""
1825 "B<fgetpwent>(3), B<getpw>(3), B<getpwent_r>(3), B<getpwnam>(3), B<getpwuid>"
1826 "(3), B<putpwent>(3), B<passwd>(5)"
1827
1828 #. type: TH
1829 #: build/C/man3/getpwent_r.3:23
1830 #, no-wrap
1831 msgid "GETPWENT_R"
1832 msgstr "GETPWENT_R"
1833
1834 #. type: Plain text
1835 #: build/C/man3/getpwent_r.3:26
1836 msgid "getpwent_r, fgetpwent_r - get passwd file entry reentrantly"
1837 msgstr ""
1838 "getpwent_r, fgetpwent_r - パスワードファイルのエントリを リエントラントで取り"
1839 "出す"
1840
1841 #. type: Plain text
1842 #: build/C/man3/getpwent_r.3:29
1843 #, no-wrap
1844 msgid "B<#include E<lt>pwd.hE<gt>>\n"
1845 msgstr "B<#include E<lt>pwd.hE<gt>>\n"
1846
1847 #. type: Plain text
1848 #: build/C/man3/getpwent_r.3:31
1849 #, no-wrap
1850 msgid "B<int getpwent_r(struct passwd *>I<pwbuf>B<, char *>I<buf>B<,>\n"
1851 msgstr "B<int getpwent_r(struct passwd *>I<pwbuf>B<, char *>I<buf>B<,>\n"
1852
1853 #. type: Plain text
1854 #: build/C/man3/getpwent_r.3:33
1855 #, no-wrap
1856 msgid "B<               size_t >I<buflen>B<, struct passwd **>I<pwbufp>B<);>\n"
1857 msgstr "B<               size_t >I<buflen>B<, struct passwd **>I<pwbufp>B<);>\n"
1858
1859 #. type: Plain text
1860 #: build/C/man3/getpwent_r.3:35
1861 #, no-wrap
1862 msgid "B<int fgetpwent_r(FILE *>I<fp>B<, struct passwd *>I<pwbuf>B<, char *>I<buf>B<,>\n"
1863 msgstr "B<int fgetpwent_r(FILE *>I<fp>B<, struct passwd *>I<pwbuf>B<, char *>I<buf>B<,>\n"
1864
1865 #. type: Plain text
1866 #: build/C/man3/getpwent_r.3:37
1867 #, no-wrap
1868 msgid "B<                size_t >I<buflen>B<, struct passwd **>I<pwbufp>B<);>\n"
1869 msgstr "B<                size_t >I<buflen>B<, struct passwd **>I<pwbufp>B<);>\n"
1870
1871 #. type: Plain text
1872 #: build/C/man3/getpwent_r.3:46
1873 msgid "B<getpwent_r>(), _BSD_SOURCE || _SVID_SOURCE"
1874 msgstr "B<getpwent_r>(), _BSD_SOURCE || _SVID_SOURCE"
1875
1876 #. type: Plain text
1877 #: build/C/man3/getpwent_r.3:49
1878 msgid "B<fgetpwent_r>(): _SVID_SOURCE"
1879 msgstr "B<fgetpwent_r>(): _SVID_SOURCE"
1880
1881 #. type: Plain text
1882 #: build/C/man3/getpwent_r.3:62
1883 msgid ""
1884 "The functions B<getpwent_r>()  and B<fgetpwent_r>()  are the reentrant "
1885 "versions of B<getpwent>(3)  and B<fgetpwent>(3).  The former reads the next "
1886 "passwd entry from the stream initialized by B<setpwent>(3).  The latter "
1887 "reads the next passwd entry from the stream I<fp>."
1888 msgstr ""
1889 "関数 B<getpwent_r>()  と B<fgetpwent_r>()  は B<getpwent>(3)  と B<fgetpwent>"
1890 "(3)  のリエントラント (reentrant) 版である。 前者は、 B<setpwent>(3)  によっ"
1891 "て初期化されたストリームから、次のパスワードエントリを読み込む。 後者は、スト"
1892 "リーム I<fp> から次のパスワードエントリを読み込む。"
1893
1894 #. type: Plain text
1895 #: build/C/man3/getpwent_r.3:78
1896 #, no-wrap
1897 msgid ""
1898 "struct passwd {\n"
1899 "    char    *pw_name;      /* username */\n"
1900 "    char    *pw_passwd;    /* user password */\n"
1901 "    uid_t    pw_uid;       /* user ID */\n"
1902 "    gid_t    pw_gid;       /* group ID */\n"
1903 "    char    *pw_gecos;     /* user information */\n"
1904 "    char    *pw_dir;       /* home directory */\n"
1905 "    char    *pw_shell;     /* shell program */\n"
1906 "};\n"
1907 msgstr ""
1908 "struct passwd {\n"
1909 "    char    *pw_name;      /* ユーザ名 */\n"
1910 "    char    *pw_passwd;    /* ユーザのパスワード */\n"
1911 "    uid_t    pw_uid;       /* ユーザ ID */\n"
1912 "    gid_t    pw_gid;       /* グループ ID */\n"
1913 "    char    *pw_gecos;     /* ユーザ情報 */\n"
1914 "    char    *pw_dir;       /* ホームディレクトリ */\n"
1915 "    char    *pw_shell;     /* シェルプログラム */\n"
1916 "};\n"
1917
1918 #. type: Plain text
1919 #: build/C/man3/getpwent_r.3:102
1920 msgid ""
1921 "The nonreentrant functions return a pointer to static storage, where this "
1922 "static storage contains further pointers to user name, password, gecos "
1923 "field, home directory and shell.  The reentrant functions described here "
1924 "return all of that in caller-provided buffers.  First of all there is the "
1925 "buffer I<pwbuf> that can hold a I<struct passwd>.  And next the buffer "
1926 "I<buf> of size I<buflen> that can hold additional strings.  The result of "
1927 "these functions, the I<struct passwd> read from the stream, is stored in the "
1928 "provided buffer I<*pwbuf>, and a pointer to this I<struct passwd> is "
1929 "returned in I<*pwbufp>."
1930 msgstr ""
1931 "リエントラントでない関数は静的な格納領域へのポインタを返す。 この静的な格納領"
1932 "域には、更にユーザ名・パスワード・gecos フィールド・ ホームディレクトリ・シェ"
1933 "ルへのポインタが含まれる。 ここで説明されているリエントラント版の関数は、 呼"
1934 "び出し側から提供されるバッファにユーザ名など全てを返す。 最初の引き数として "
1935 "I<struct passwd> を保持できるバッファ I<pwbuf> がある。 次にその他の文字列を"
1936 "保持できるサイズ I<buflen> のバッファ I<buf> がある。 これらの関数の結果 (ス"
1937 "トリームから読み込まれた I<struct passwd>) は、 提供されたバッファ I<*pwbuf> "
1938 "に格納され、この I<struct passwd> へのポインタは I<*pwbufp> に返される。"
1939
1940 #. type: Plain text
1941 #: build/C/man3/getpwent_r.3:109
1942 msgid ""
1943 "On success, these functions return 0 and I<*pwbufp> is a pointer to the "
1944 "I<struct passwd>.  On error, these functions return an error value and "
1945 "I<*pwbufp> is NULL."
1946 msgstr ""
1947 "成功した場合、これらの関数は 0 を返し、 I<*pwbufp> は I<struct passwd> へのポ"
1948 "インタとなる。 エラーの場合、これらの関数はエラー値を返し、 I<*pwbufp> は "
1949 "NULL になる。"
1950
1951 #. type: Plain text
1952 #: build/C/man3/getpwent_r.3:127
1953 #, no-wrap
1954 msgid ""
1955 "struct passwd *\n"
1956 "getpwent_r(struct passwd *pwd, char *buf, int buflen);\n"
1957 msgstr ""
1958 "struct passwd *\n"
1959 "getpwent_r(struct passwd *pwd, char *buf, int buflen);\n"
1960
1961 #. type: Plain text
1962 #: build/C/man3/getpwent_r.3:137
1963 #, no-wrap
1964 msgid ""
1965 "int\n"
1966 "getpwent_r(struct passwd *pwd, char *buf, int buflen,\n"
1967 "           FILE **pw_fp);\n"
1968 msgstr ""
1969 "int\n"
1970 "getpwent_r(struct passwd *pwd, char *buf, int buflen,\n"
1971 "           FILE **pw_fp);\n"
1972
1973 #. type: Plain text
1974 #: build/C/man3/getpwent_r.3:144
1975 msgid ""
1976 "The function B<getpwent_r>()  is not really reentrant since it shares the "
1977 "reading position in the stream with all other threads."
1978 msgstr ""
1979 "関数 B<getpwent_r>()  は本当のリエントラントではない。 なぜなら、ストリームの"
1980 "読み込み位置を 他の全てのスレッドと共有しているためである。"
1981
1982 #. type: Plain text
1983 #: build/C/man3/getpwent_r.3:150
1984 #, no-wrap
1985 msgid ""
1986 "#define _GNU_SOURCE\n"
1987 "#include E<lt>pwd.hE<gt>\n"
1988 "#include E<lt>stdio.hE<gt>\n"
1989 "#define BUFLEN 4096\n"
1990 msgstr ""
1991 "#define _GNU_SOURCE\n"
1992 "#include E<lt>pwd.hE<gt>\n"
1993 "#include E<lt>stdio.hE<gt>\n"
1994 "#define BUFLEN 4096\n"
1995
1996 #. type: Plain text
1997 #: build/C/man3/getpwent_r.3:157
1998 #, no-wrap
1999 msgid ""
2000 "int\n"
2001 "main(void)\n"
2002 "{\n"
2003 "    struct passwd pw, *pwp;\n"
2004 "    char buf[BUFLEN];\n"
2005 "    int i;\n"
2006 msgstr ""
2007 "int\n"
2008 "main(void)\n"
2009 "{\n"
2010 "    struct passwd pw, *pwp;\n"
2011 "    char buf[BUFLEN];\n"
2012 "    int i;\n"
2013
2014 #. type: Plain text
2015 #: build/C/man3/getpwent_r.3:169
2016 #, no-wrap
2017 msgid ""
2018 "    setpwent();\n"
2019 "    while (1) {\n"
2020 "        i = getpwent_r(&pw, buf, BUFLEN, &pwp);\n"
2021 "        if (i)\n"
2022 "            break;\n"
2023 "        printf(\"%s (%d)\\etHOME %s\\etSHELL %s\\en\", pwp-E<gt>pw_name,\n"
2024 "               pwp-E<gt>pw_uid, pwp-E<gt>pw_dir, pwp-E<gt>pw_shell);\n"
2025 "    }\n"
2026 "    endpwent();\n"
2027 "    exit(EXIT_SUCCESS);\n"
2028 "}\n"
2029 msgstr ""
2030 "    setpwent();\n"
2031 "    while (1) {\n"
2032 "        i = getpwent_r(&pw, buf, BUFLEN, &pwp);\n"
2033 "        if (i)\n"
2034 "            break;\n"
2035 "        printf(\"%s (%d)\\etHOME %s\\etSHELL %s\\en\", pwp-E<gt>pw_name,\n"
2036 "               pwp-E<gt>pw_uid, pwp-E<gt>pw_dir, pwp-E<gt>pw_shell);\n"
2037 "    }\n"
2038 "    endpwent();\n"
2039 "    exit(EXIT_SUCCESS);\n"
2040 "}\n"
2041
2042 #. type: Plain text
2043 #: build/C/man3/getpwent_r.3:187
2044 msgid ""
2045 "B<fgetpwent>(3), B<getpw>(3), B<getpwent>(3), B<getpwnam>(3), B<getpwuid>"
2046 "(3), B<putpwent>(3), B<passwd>(5)"
2047 msgstr ""
2048 "B<fgetpwent>(3), B<getpw>(3), B<getpwent>(3), B<getpwnam>(3), B<getpwuid>"
2049 "(3), B<putpwent>(3), B<passwd>(5)"
2050
2051 #. type: TH
2052 #: build/C/man3/getpwnam.3:35
2053 #, no-wrap
2054 msgid "GETPWNAM"
2055 msgstr "GETPWNAM"
2056
2057 #. type: Plain text
2058 #: build/C/man3/getpwnam.3:38
2059 msgid "getpwnam, getpwnam_r, getpwuid, getpwuid_r - get password file entry"
2060 msgstr ""
2061 "getpwnam, getpwnam_r, getpwuid, getpwuid_r - パスワードファイルのエントリの取"
2062 "得"
2063
2064 #. type: Plain text
2065 #: build/C/man3/getpwnam.3:44
2066 #, no-wrap
2067 msgid "B<struct passwd *getpwnam(const char *>I<name>B<);>\n"
2068 msgstr "B<struct passwd *getpwnam(const char *>I<name>B<);>\n"
2069
2070 #. type: Plain text
2071 #: build/C/man3/getpwnam.3:46
2072 #, no-wrap
2073 msgid "B<struct passwd *getpwuid(uid_t >I<uid>B<);>\n"
2074 msgstr "B<struct passwd *getpwuid(uid_t >I<uid>B<);>\n"
2075
2076 #. type: Plain text
2077 #: build/C/man3/getpwnam.3:48
2078 #, no-wrap
2079 msgid "B<int getpwnam_r(const char *>I<name>B<, struct passwd *>I<pwd>B<,>\n"
2080 msgstr "B<int getpwnam_r(const char *>I<name>B<, struct passwd *>I<pwd>B<,>\n"
2081
2082 #. type: Plain text
2083 #: build/C/man3/getpwnam.3:50 build/C/man3/getpwnam.3:54
2084 #, no-wrap
2085 msgid "B<            char *>I<buf>B<, size_t >I<buflen>B<, struct passwd **>I<result>B<);>\n"
2086 msgstr "B<            char *>I<buf>B<, size_t >I<buflen>B<, struct passwd **>I<result>B<);>\n"
2087
2088 #. type: Plain text
2089 #: build/C/man3/getpwnam.3:52
2090 #, no-wrap
2091 msgid "B<int getpwuid_r(uid_t >I<uid>B<, struct passwd *>I<pwd>B<,>\n"
2092 msgstr "B<int getpwuid_r(uid_t >I<uid>B<, struct passwd *>I<pwd>B<,>\n"
2093
2094 #. type: Plain text
2095 #: build/C/man3/getpwnam.3:64
2096 msgid "B<getpwnam_r>(), B<getpwuid_r>():"
2097 msgstr "B<getpwnam_r>(), B<getpwuid_r>():"
2098
2099 #. type: Plain text
2100 #: build/C/man3/getpwnam.3:79
2101 msgid ""
2102 "The B<getpwnam>()  function returns a pointer to a structure containing the "
2103 "broken-out fields of the record in the password database (e.g., the local "
2104 "password file I</etc/passwd>, NIS, and LDAP)  that matches the username "
2105 "I<name>."
2106 msgstr ""
2107 "B<getpwnam>()  関数は、ユーザ名 I<name> にマッチするパスワード・データベース"
2108 "のエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す (パス"
2109 "ワード・データベースの例: ローカルのパスワードファイル I</etc/passwd>, NIS, "
2110 "LDAP)。"
2111
2112 #. type: Plain text
2113 #: build/C/man3/getpwnam.3:86
2114 msgid ""
2115 "The B<getpwuid>()  function returns a pointer to a structure containing the "
2116 "broken-out fields of the record in the password database that matches the "
2117 "user ID I<uid>."
2118 msgstr ""
2119 "B<getpwuid>()  関数は、ユーザ ID I<uid> にマッチするパスワード・データベース"
2120 "のエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返す。"
2121
2122 #. type: Plain text
2123 #: build/C/man3/getpwnam.3:106
2124 msgid "See B<passwd>(5)  for more information about these fields."
2125 msgstr "これらのフィールドの詳しい情報については B<passwd>(5) を参照のこと。"
2126
2127 #. type: Plain text
2128 #: build/C/man3/getpwnam.3:128
2129 msgid ""
2130 "The B<getpwnam_r>()  and B<getpwuid_r>()  functions obtain the same "
2131 "information as B<getpwnam>()  and B<getpwuid>(), but store the retrieved "
2132 "I<passwd> structure in the space pointed to by I<pwd>.  The string fields "
2133 "pointed to by the members of the I<passwd> structure are stored in the "
2134 "buffer I<buf> of size I<buflen>.  A pointer to the result (in case of "
2135 "success) or NULL (in case no entry was found or an error occurred) is stored "
2136 "in I<*result>."
2137 msgstr ""
2138 "B<getpwnam_r>() と B<getpwuid_r>() 関数は、それぞれB<getpwnam>() と\n"
2139 "B<getpwuid>() と同じ情報を取得するが、取得した I<passwd> 構造体を\n"
2140 "I<pwd> が指す領域に格納する。I<passwd> 構造体のメンバーが指す文字列は、\n"
2141 "サイズ I<buflen> のバッファ I<buf> に格納される。成功した場合\n"
2142 "I<*result> には結果へのポインタが格納される。エントリが見つからなかった\n"
2143 "場合やエラーが発生した場合には I<*result> には NULL が入る。"
2144
2145 #. type: Plain text
2146 #: build/C/man3/getpwnam.3:135
2147 msgid ""
2148 "The maximum size needed for I<buf> can be found using B<sysconf>(3)  with "
2149 "the argument B<_SC_GETPW_R_SIZE_MAX>."
2150 msgstr ""
2151 "I<buf> に必要な最大サイズは、 B<sysconf>(3) に引き数\n"
2152 "B<_SC_GETPW_R_SIZE_MAX> を指定して実行することで分かる。"
2153
2154 #. type: Plain text
2155 #: build/C/man3/getpwnam.3:150
2156 msgid ""
2157 "The B<getpwnam>()  and B<getpwuid>()  functions return a pointer to a "
2158 "I<passwd> structure, or NULL if the matching entry is not found or an error "
2159 "occurs.  If an error occurs, I<errno> is set appropriately.  If one wants to "
2160 "check I<errno> after the call, it should be set to zero before the call."
2161 msgstr ""
2162 "B<getpwnam>()  と B<getpwuid>()  関数は、 I<passwd> 構造体へのポインタを返"
2163 "す。 一致するエントリが見つからなかった場合や、エラーが発生した場合は NULL を"
2164 "返す。 エラーが起こった場合、 I<errno> が適切に設定される。 呼び出しの後で "
2165 "I<errno> をチェックしたい場合は、 呼び出しの前に (この値を) 0 に設定しておく"
2166 "べきである。"
2167
2168 #. type: Plain text
2169 #: build/C/man3/getpwnam.3:159
2170 msgid ""
2171 "The return value may point to a static area, and may be overwritten by "
2172 "subsequent calls to B<getpwent>(3), B<getpwnam>(), or B<getpwuid>().  (Do "
2173 "not pass the returned pointer to B<free>(3).)"
2174 msgstr ""
2175 "返り値は静的な領域を指しており、その後の B<getpwent>(3), B<getpwnam>(), "
2176 "B<getpwuid>()  の呼び出しで上書きされるかもしれない。 (返されたポインタを "
2177 "B<free>(3)  に渡さないこと。)"
2178
2179 #. type: Plain text
2180 #: build/C/man3/getpwnam.3:173
2181 msgid ""
2182 "On success, B<getpwnam_r>()  and B<getpwuid_r>()  return zero, and set "
2183 "I<*result> to I<pwd>.  If no matching password record was found, these "
2184 "functions return 0 and store NULL in I<*result>.  In case of error, an error "
2185 "number is returned, and NULL is stored in I<*result>."
2186 msgstr ""
2187 "成功すると、 B<getpwnam_r>()  と B<getpwuid_r>()  は 0 を返し、 I<*result> "
2188 "に I<pwd> を設定する。 マッチするパスワード・エントリが見つからなかった場合に"
2189 "は、 0 を返し、 I<*result> に NULL を設定する。 エラーの場合、エラー番号を返"
2190 "し、 I<*result> に NULL を設定する。"
2191
2192 #. type: Plain text
2193 #: build/C/man3/getpwnam.3:181
2194 msgid "The given I<name> or I<uid> was not found."
2195 msgstr "指定された I<name> または I<uid> が見つからなかった。"
2196
2197 #.  more precisely:
2198 #.  AIX 5.1 - gives ESRCH
2199 #.  OSF1 4.0g - gives EWOULDBLOCK
2200 #.  libc, glibc up to version 2.6, Irix 6.5 - give ENOENT
2201 #.  glibc since version 2.7 - give 0
2202 #.  FreeBSD 4.8, OpenBSD 3.2, NetBSD 1.6 - give EPERM
2203 #.  SunOS 5.8 - gives EBADF
2204 #.  Tru64 5.1b, HP-UX-11i, SunOS 5.7 - give 0
2205 #. type: Plain text
2206 #: build/C/man3/getpwnam.3:235
2207 msgid ""
2208 "The formulation given above under \"RETURN VALUE\" is from POSIX.1-2001.  It "
2209 "does not call \"not found\" an error, and hence does not specify what value "
2210 "I<errno> might have in this situation.  But that makes it impossible to "
2211 "recognize errors.  One might argue that according to POSIX I<errno> should "
2212 "be left unchanged if an entry is not found.  Experiments on various UNIX-"
2213 "like systems show that lots of different values occur in this situation: 0, "
2214 "ENOENT, EBADF, ESRCH, EWOULDBLOCK, EPERM and probably others."
2215 msgstr ""
2216 "上記の「返り値」以下の記述は POSIX.1-2001 に拠る。 この標準は「(エントリが) "
2217 "見つからないこと」をエラーとしていないので、 そのような場合に I<errno> がどの"
2218 "ような値になるかを定めていない。 そのため、エラーを認識することは不可能であ"
2219 "る。 POSIX に準拠して、エントリが見つからない場合は I<errno> を変更しないよう"
2220 "にすべきである、と主張する人もいるかもしれない。 様々な UNIX 系のシステムで試"
2221 "してみると、そのような場合には 0, ENOENT, EBADF, ESRCH, EWOULDBLOCK, EPERM と"
2222 "いった様々な値が返される。 他の値が返されるかもしれない。"
2223
2224 #. type: Plain text
2225 #: build/C/man3/getpwnam.3:253
2226 msgid ""
2227 "The I<pw_dir> field contains the name of the initial working directory of "
2228 "the user.  Login programs use the value of this field to initialize the "
2229 "B<HOME> environment variable for the login shell.  An application that wants "
2230 "to determine its user's home directory should inspect the value of B<HOME> "
2231 "(rather than the value I<getpwuid(getuid())-E<gt>pw_dir>)  since this allows "
2232 "the user to modify their notion of \"the home directory\" during a login "
2233 "session.  To determine the (initial) home directory of another user, it is "
2234 "necessary to use I<getpwnam(\"username\")-E<gt>pw_dir> or similar."
2235 msgstr ""
2236 "フィールド I<pw_dir> には、ユーザの作業ディレクトリ名の初期値が格納される。 "
2237 "ログインプロセスは、このフィールドの値を使って、 ログインシェルの B<HOME> 環"
2238 "境変数を初期化する。 アプリケーションが、ユーザのホーム・ディレクトリを決定す"
2239 "る場合には、 (I<getpwuid(getuid())-E<gt>pw_dir> の値ではなく)  B<HOME> の値を"
2240 "検査するようにすべきである。 なぜなら、このようにすることで、ユーザがログイ"
2241 "ン・セッション中で 「ホーム・ディレクトリ」の意味を変更できるようになるからで"
2242 "ある。 別のユーザのホーム・ディレクトリ (の初期値) を知るには I<getpwnam"
2243 "(\"username\")-E<gt>pw_dir> か同様の方法を使う必要がある。"
2244
2245 #. type: Plain text
2246 #: build/C/man3/getpwnam.3:258
2247 msgid ""
2248 "The program below demonstrates the use of B<getpwnam_r>()  to find the full "
2249 "username and user ID for the username supplied as a command-line argument."
2250 msgstr ""
2251 "以下のプログラムは B<getpwnam_r>()  の使用例を示したもので、コマンドライン引"
2252 "き数で渡されたユーザ名に対する 完全なユーザ名とユーザ ID を探すものである。"
2253
2254 #. type: Plain text
2255 #: build/C/man3/getpwnam.3:265
2256 #, no-wrap
2257 msgid ""
2258 "#include E<lt>pwd.hE<gt>\n"
2259 "#include E<lt>stdio.hE<gt>\n"
2260 "#include E<lt>stdlib.hE<gt>\n"
2261 "#include E<lt>unistd.hE<gt>\n"
2262 "#include E<lt>errno.hE<gt>\n"
2263 msgstr ""
2264 "#include E<lt>pwd.hE<gt>\n"
2265 "#include E<lt>stdio.hE<gt>\n"
2266 "#include E<lt>stdlib.hE<gt>\n"
2267 "#include E<lt>unistd.hE<gt>\n"
2268 "#include E<lt>errno.hE<gt>\n"
2269
2270 #. type: Plain text
2271 #: build/C/man3/getpwnam.3:274
2272 #, no-wrap
2273 msgid ""
2274 "int\n"
2275 "main(int argc, char *argv[])\n"
2276 "{\n"
2277 "    struct passwd pwd;\n"
2278 "    struct passwd *result;\n"
2279 "    char *buf;\n"
2280 "    size_t bufsize;\n"
2281 "    int s;\n"
2282 msgstr ""
2283 "int\n"
2284 "main(int argc, char *argv[])\n"
2285 "{\n"
2286 "    struct passwd pwd;\n"
2287 "    struct passwd *result;\n"
2288 "    char *buf;\n"
2289 "    size_t bufsize;\n"
2290 "    int s;\n"
2291
2292 #. type: Plain text
2293 #: build/C/man3/getpwnam.3:279
2294 #, no-wrap
2295 msgid ""
2296 "    if (argc != 2) {\n"
2297 "        fprintf(stderr, \"Usage: %s username\\en\", argv[0]);\n"
2298 "        exit(EXIT_FAILURE);\n"
2299 "    }\n"
2300 msgstr ""
2301 "    if (argc != 2) {\n"
2302 "        fprintf(stderr, \"Usage: %s username\\en\", argv[0]);\n"
2303 "        exit(EXIT_FAILURE);\n"
2304 "    }\n"
2305
2306 #. type: Plain text
2307 #: build/C/man3/getpwnam.3:283
2308 #, no-wrap
2309 msgid ""
2310 "    bufsize = sysconf(_SC_GETPW_R_SIZE_MAX);\n"
2311 "    if (bufsize == -1)          /* Value was indeterminate */\n"
2312 "        bufsize = 16384;        /* Should be more than enough */\n"
2313 msgstr ""
2314 "    bufsize = sysconf(_SC_GETPW_R_SIZE_MAX);\n"
2315 "    if (bufsize == -1)          /* 値を決定できなかった */\n"
2316 "        bufsize = 16384;        /* 十分大きな値にすべき */\n"
2317
2318 #. type: Plain text
2319 #: build/C/man3/getpwnam.3:289
2320 #, no-wrap
2321 msgid ""
2322 "    buf = malloc(bufsize);\n"
2323 "    if (buf == NULL) {\n"
2324 "        perror(\"malloc\");\n"
2325 "        exit(EXIT_FAILURE);\n"
2326 "    }\n"
2327 msgstr ""
2328 "    buf = malloc(bufsize);\n"
2329 "    if (buf == NULL) {\n"
2330 "        perror(\"malloc\");\n"
2331 "        exit(EXIT_FAILURE);\n"
2332 "    }\n"
2333
2334 #. type: Plain text
2335 #: build/C/man3/getpwnam.3:300
2336 #, no-wrap
2337 msgid ""
2338 "    s = getpwnam_r(argv[1], &pwd, buf, bufsize, &result);\n"
2339 "    if (result == NULL) {\n"
2340 "        if (s == 0)\n"
2341 "            printf(\"Not found\\en\");\n"
2342 "        else {\n"
2343 "            errno = s;\n"
2344 "            perror(\"getpwnam_r\");\n"
2345 "        }\n"
2346 "        exit(EXIT_FAILURE);\n"
2347 "    }\n"
2348 msgstr ""
2349 "    s = getpwnam_r(argv[1], &pwd, buf, bufsize, &result);\n"
2350 "    if (result == NULL) {\n"
2351 "        if (s == 0)\n"
2352 "            printf(\"Not found\\en\");\n"
2353 "        else {\n"
2354 "            errno = s;\n"
2355 "            perror(\"getpwnam_r\");\n"
2356 "        }\n"
2357 "        exit(EXIT_FAILURE);\n"
2358 "    }\n"
2359
2360 #. type: Plain text
2361 #: build/C/man3/getpwnam.3:304
2362 #, no-wrap
2363 msgid ""
2364 "    printf(\"Name: %s; UID: %ld\\en\", pwd.pw_gecos, (long) pwd.pw_uid);\n"
2365 "    exit(EXIT_SUCCESS);\n"
2366 "}\n"
2367 msgstr ""
2368 "    printf(\"Name: %s; UID: %ld\\en\", pwd.pw_gecos, (long) pwd.pw_uid);\n"
2369 "    exit(EXIT_SUCCESS);\n"
2370 "}\n"
2371
2372 #. type: Plain text
2373 #: build/C/man3/getpwnam.3:315
2374 msgid ""
2375 "B<endpwent>(3), B<fgetpwent>(3), B<getgrnam>(3), B<getpw>(3), B<getpwent>"
2376 "(3), B<getspnam>(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
2377 msgstr ""
2378 "B<endpwent>(3), B<fgetpwent>(3), B<getgrnam>(3), B<getpw>(3), B<getpwent>"
2379 "(3), B<getspnam>(3), B<putpwent>(3), B<setpwent>(3), B<passwd>(5)"
2380
2381 #. type: TH
2382 #: build/C/man3/getspnam.3:6
2383 #, no-wrap
2384 msgid "GETSPNAM"
2385 msgstr "GETSPNAM"
2386
2387 #. type: TH
2388 #: build/C/man3/getspnam.3:6
2389 #, no-wrap
2390 msgid "2010-02-25"
2391 msgstr "2010-02-25"
2392
2393 #. type: Plain text
2394 #: build/C/man3/getspnam.3:11
2395 msgid ""
2396 "getspnam, getspnam_r, getspent, getspent_r, setspent, endspent, fgetspent, "
2397 "fgetspent_r, sgetspent, sgetspent_r, putspent, lckpwdf, ulckpwdf - get "
2398 "shadow password file entry"
2399 msgstr ""
2400 "getspnam, getspnam_r, getspent, getspent_r, setspent, endspent,fgetspent, "
2401 "fgetspent_r, sgetspent, sgetspent_r, putspent, lckpwdf, ulckpwdf - shadow パ"
2402 "スワードファイルのエントリを取得する"
2403
2404 #. type: Plain text
2405 #: build/C/man3/getspnam.3:14
2406 #, no-wrap
2407 msgid "/* General shadow password file API */\n"
2408 msgstr "/* 一般的な shadow パスワードファイル API */\n"
2409
2410 #. type: Plain text
2411 #: build/C/man3/getspnam.3:16 build/C/man3/getspnam.3:38
2412 #, no-wrap
2413 msgid "B<#include E<lt>shadow.hE<gt>>\n"
2414 msgstr "B<#include E<lt>shadow.hE<gt>>\n"
2415
2416 #. type: Plain text
2417 #: build/C/man3/getspnam.3:18
2418 #, no-wrap
2419 msgid "B<struct spwd *getspnam(const char *>I<name>B<);>\n"
2420 msgstr "B<struct spwd *getspnam(const char *>I<name>B<);>\n"
2421
2422 #. type: Plain text
2423 #: build/C/man3/getspnam.3:20
2424 #, no-wrap
2425 msgid "B<struct spwd *getspent(void);>\n"
2426 msgstr "B<struct spwd *getspent(void);>\n"
2427
2428 #. type: Plain text
2429 #: build/C/man3/getspnam.3:22
2430 #, no-wrap
2431 msgid "B<void setspent(void);>\n"
2432 msgstr "B<void setspent(void);>\n"
2433
2434 #. type: Plain text
2435 #: build/C/man3/getspnam.3:24
2436 #, no-wrap
2437 msgid "B<void endspent(void);>\n"
2438 msgstr "B<void endspent(void);>\n"
2439
2440 #. type: Plain text
2441 #: build/C/man3/getspnam.3:26
2442 #, no-wrap
2443 msgid "B<struct spwd *fgetspent(FILE *>I<fp>B<);>\n"
2444 msgstr "B<struct spwd *fgetspent(FILE *>I<fp>B<);>\n"
2445
2446 #. type: Plain text
2447 #: build/C/man3/getspnam.3:28
2448 #, no-wrap
2449 msgid "B<struct spwd *sgetspent(const char *>I<s>B<);>\n"
2450 msgstr "B<struct spwd *sgetspent(const char *>I<s>B<);>\n"
2451
2452 #. type: Plain text
2453 #: build/C/man3/getspnam.3:30
2454 #, no-wrap
2455 msgid "B<int putspent(struct spwd *>I<p>B<, FILE *>I<fp>B<);>\n"
2456 msgstr "B<int putspent(struct spwd *>I<p>B<, FILE *>I<fp>B<);>\n"
2457
2458 #. type: Plain text
2459 #: build/C/man3/getspnam.3:32
2460 #, no-wrap
2461 msgid "B<int lckpwdf(void);>\n"
2462 msgstr "B<int lckpwdf(void);>\n"
2463
2464 #. type: Plain text
2465 #: build/C/man3/getspnam.3:34
2466 #, no-wrap
2467 msgid "B<int ulckpwdf(void);>\n"
2468 msgstr "B<int ulckpwdf(void);>\n"
2469
2470 #. type: Plain text
2471 #: build/C/man3/getspnam.3:36
2472 #, no-wrap
2473 msgid "/* GNU extension */\n"
2474 msgstr "/* GNU 版における拡張 */\n"
2475
2476 #. type: Plain text
2477 #: build/C/man3/getspnam.3:40
2478 #, no-wrap
2479 msgid "B<int getspent_r(struct spwd *>I<spbuf>B<,>\n"
2480 msgstr "B<int getspent_r(struct spwd *>I<spbuf>B<,>\n"
2481
2482 #. type: Plain text
2483 #: build/C/man3/getspnam.3:42 build/C/man3/getspnam.3:46
2484 #: build/C/man3/getspnam.3:50 build/C/man3/getspnam.3:54
2485 #, no-wrap
2486 msgid "B<        char *>I<buf>B<, size_t >I<buflen>B<, struct spwd **>I<spbufp>B<);>\n"
2487 msgstr "B<        char *>I<buf>B<, size_t >I<buflen>B<, struct spwd **>I<spbufp>B<);>\n"
2488
2489 #. type: Plain text
2490 #: build/C/man3/getspnam.3:44
2491 #, no-wrap
2492 msgid "B<int getspnam_r(const char *>I<name>B<, struct spwd *>I<spbuf>B<,>\n"
2493 msgstr "B<int getspnam_r(const char *>I<name>B<, struct spwd *>I<spbuf>B<,>\n"
2494
2495 #. type: Plain text
2496 #: build/C/man3/getspnam.3:48
2497 #, no-wrap
2498 msgid "B<int fgetspent_r(FILE *>I<fp>B<, struct spwd *>I<spbuf>B<,>\n"
2499 msgstr "B<int fgetspent_r(FILE *>I<fp>B<, struct spwd *>I<spbuf>B<,>\n"
2500
2501 #. type: Plain text
2502 #: build/C/man3/getspnam.3:52
2503 #, no-wrap
2504 msgid "B<int sgetspent_r(const char *>I<s>B<, struct spwd *>I<spbuf>B<,>\n"
2505 msgstr "B<int sgetspent_r(const char *>I<s>B<, struct spwd *>I<spbuf>B<,>\n"
2506
2507 #. type: Plain text
2508 #: build/C/man3/getspnam.3:66
2509 msgid "B<getspent_r>(), B<getspnam_r>(), B<fgetspent_r>(), B<sgetspent_r>():"
2510 msgstr "B<getspent_r>(), B<getspnam_r>(), B<fgetspent_r>(), B<sgetspent_r>():"
2511
2512 #. type: Plain text
2513 #: build/C/man3/getspnam.3:68
2514 msgid "_BSD_SOURCE || _SVID_SOURCE"
2515 msgstr "_BSD_SOURCE || _SVID_SOURCE"
2516
2517 #. type: Plain text
2518 #: build/C/man3/getspnam.3:82
2519 msgid ""
2520 "Long ago it was considered safe to have encrypted passwords openly visible "
2521 "in the password file.  When computers got faster and people got more "
2522 "security-conscious, this was no longer acceptable.  Julianne Frances Haugh "
2523 "implemented the shadow password suite that keeps the encrypted passwords in "
2524 "the shadow password database (e.g., the local shadow password file I</etc/"
2525 "shadow>, NIS, and LDAP), readable only by root."
2526 msgstr ""
2527 "昔は暗号化されたパスワードをパスワードファイルに 見えるように公開しておいても"
2528 "安全だと考えられていた。 Julianne Frances Haugh は shadow パスワード・スイー"
2529 "トを実装した。 これは暗号化されたパスワードを、root のみが読むことができる "
2530 "shadow パスワード・データベース (例えば、 ローカルの shadow パスワードファイ"
2531 "ル I</etc/shadow>, NIS, LDAP)  に保持する。"
2532
2533 #.  FIXME I've commented out the following for the
2534 #.  moment.  The relationship between PAM and nsswitch.conf needs
2535 #.  to be clearly documented in one place, which is pointed to by
2536 #.  the pages for the user, group, and shadow password functions.
2537 #.  (Jul 2005, mtk)
2538 #.  This shadow password setup has been superseded by PAM
2539 #.  (pluggable authentication modules), and the file
2540 #.  .I /etc/nsswitch.conf
2541 #.  now describes the sources to be used.
2542 #. type: Plain text
2543 #: build/C/man3/getspnam.3:99
2544 msgid ""
2545 "The functions described below resemble those for the traditional password "
2546 "database (e.g., see B<getpwnam>(3)  and B<getpwent>(3))."
2547 msgstr ""
2548 "以下で説明する関数は、伝統的なパスワード・データベースに対する 関数に似てい"
2549 "る (例えば B<getpwnam>(3)  や B<getpwent>(3)  を参照)。"
2550
2551 #. type: Plain text
2552 #: build/C/man3/getspnam.3:106
2553 msgid ""
2554 "The B<getspnam>()  function returns a pointer to a structure containing the "
2555 "broken-out fields of the record in the shadow password database that matches "
2556 "the username I<name>."
2557 msgstr ""
2558 "B<getspnam>()  関数は、ユーザ名 I<name> にマッチする shadow パスワード・デー"
2559 "タベースのエントリを 要素毎に分解し、各要素を格納した構造体へのポインタを返"
2560 "す。"
2561
2562 #.  some systems require a call of setspent() before the first getspent()
2563 #.  glibc does not
2564 #. type: Plain text
2565 #: build/C/man3/getspnam.3:118
2566 msgid ""
2567 "The B<getspent>()  function returns a pointer to the next entry in the "
2568 "shadow password database.  The position in the input stream is initialized "
2569 "by B<setspent>().  When done reading, the program may call B<endspent>()  so "
2570 "that resources can be deallocated."
2571 msgstr ""
2572 "B<getspent>()  関数は shadow パスワード・データベースにおける次のエントリへの"
2573 "ポインタを返す。 入力ストリームにおける位置は、 B<setspent>()  で初期化され"
2574 "る。 読み込みが終わった後に、 B<endspent>()  を呼び出すと、リソースを解放でき"
2575 "る。"
2576
2577 #. type: Plain text
2578 #: build/C/man3/getspnam.3:125
2579 msgid ""
2580 "The B<fgetspent>()  function is similar to B<getspent>()  but uses the "
2581 "supplied stream instead of the one implicitly opened by B<setspent>()."
2582 msgstr ""
2583 "B<fgetspent>()  関数は B<getspent>()  に似ているが、 B<setspent>()  で暗黙の"
2584 "うちにオープンされるストリームではなく、与えられたストリームを使う。"
2585
2586 #. type: Plain text
2587 #: build/C/man3/getspnam.3:132
2588 msgid ""
2589 "The B<sgetspent>()  function parses the supplied string I<s> into a struct "
2590 "I<spwd>."
2591 msgstr ""
2592 "B<sgetspent>()  関数は与えられた文字列 I<s> を解析し struct I<spwd> に格納す"
2593 "る。"
2594
2595 #. type: Plain text
2596 #: build/C/man3/getspnam.3:142
2597 msgid ""
2598 "The B<putspent>()  function writes the contents of the supplied struct "
2599 "I<spwd> I<*p> as a text line in the shadow password file format to the "
2600 "stream I<fp>.  String entries with value NULL and numerical entries with "
2601 "value -1 are written as an empty string."
2602 msgstr ""
2603 "B<putspent>()  関数は与えられた struct I<spwd> I<*p> の内容を shadow パスワー"
2604 "ドファイル形式のテキスト行でストリーム I<fp> に書き出す。 空文字列として、 値"
2605 "が NULL の文字列エントリと値が -1 の数値エントリが 書き出される。"
2606
2607 #. type: Plain text
2608 #: build/C/man3/getspnam.3:157
2609 msgid ""
2610 "The B<lckpwdf>()  function is intended to protect against multiple "
2611 "simultaneous accesses of the shadow password database.  It tries to acquire "
2612 "a lock, and returns 0 on success, or -1 on failure (lock not obtained within "
2613 "15 seconds).  The B<ulckpwdf>()  function releases the lock again.  Note "
2614 "that there is no protection against direct access of the shadow password "
2615 "file.  Only programs that use B<lckpwdf>()  will notice the lock."
2616 msgstr ""
2617 "B<lckpwdf>()  関数は、 shadow パスワード・データベースを 多重同時アクセスから"
2618 "守るためのものである。 この関数はロックの獲得を試み、 成功した場合は 0 を返"
2619 "す。 失敗した場合 (15 秒以内にロックが取得できなかった場合) は -1 を返す。 "
2620 "B<ulckpwdf>()  関数はロックを再び解放する。 shadow パスワードファイルへの直接"
2621 "アクセスから 保護する手段がない点に注意すること。 B<lckpwdf>()  を使うプログ"
2622 "ラムだけがロックを通知できる。"
2623
2624 #.  Also in libc5
2625 #.  SUN doesn't have sgetspent()
2626 #. type: Plain text
2627 #: build/C/man3/getspnam.3:162
2628 msgid ""
2629 "These were the functions that formed the original shadow API.  They are "
2630 "widely available."
2631 msgstr ""
2632 "これらの関数はオリジナルの shadow API を構成していた関数であり、 いろいろなシ"
2633 "ステムで広く利用可能である。"
2634
2635 #. type: SS
2636 #: build/C/man3/getspnam.3:162
2637 #, no-wrap
2638 msgid "Reentrant versions"
2639 msgstr "リエントラント版"
2640
2641 #. type: Plain text
2642 #: build/C/man3/getspnam.3:179
2643 msgid ""
2644 "Analogous to the reentrant functions for the password database, glibc also "
2645 "has reentrant functions for the shadow password database.  The B<getspnam_r>"
2646 "()  function is like B<getspnam>()  but stores the retrieved shadow password "
2647 "structure in the space pointed to by I<spbuf>.  This shadow password "
2648 "structure contains pointers to strings, and these strings are stored in the "
2649 "buffer I<buf> of size I<buflen>.  A pointer to the result (in case of "
2650 "success) or NULL (in case no entry was found or an error occurred) is stored "
2651 "in I<*spbufp>."
2652 msgstr ""
2653 "パスワード・データベースに対するリエントラント版と同じように、 glibc には "
2654 "shadow パスワードファイルに対してリエントラント版がある。 B<getspnam_r>()  関"
2655 "数は B<getspnam>()  と似ているが、取得した shadow パスワード構造体を "
2656 "I<spbuf> が指す領域に格納する。 shadow パスワード構造体は文字列群へのポインタ"
2657 "を含み、 これらの文字列群はサイズ I<buflen> のバッファ I<buf> に格納される。 "
2658 "I<*spbufp> には (成功した場合は) 結果へのポインタが格納され、 (エントリが見つ"
2659 "からなかった場合またはエラーが起こった場合は)  NULL が格納される。"
2660
2661 #. type: Plain text
2662 #: build/C/man3/getspnam.3:186
2663 msgid ""
2664 "The functions B<getspent_r>(), B<fgetspent_r>(), and B<sgetspent_r>()  are "
2665 "similarly analogous to their nonreentrant counterparts."
2666 msgstr ""
2667 "関数 B<getspent_r>(), B<fgetspent_r>(), B<sgetspent_r>()  はそれぞれリエント"
2668 "ラントでないバージョンと同様の機能を持つ。"
2669
2670 #.  SUN doesn't have sgetspent_r()
2671 #. type: Plain text
2672 #: build/C/man3/getspnam.3:190
2673 msgid ""
2674 "Some non-glibc systems also have functions with these names, often with "
2675 "different prototypes."
2676 msgstr ""
2677 "glibc でないシステムにもこれらと同じ名前の関数があるが、 プロトタイプが異なる"
2678 "ことも多い。"
2679
2680 #. type: SS
2681 #: build/C/man3/getspnam.3:190
2682 #, no-wrap
2683 msgid "Structure"
2684 msgstr "構造体"
2685
2686 #. type: Plain text
2687 #: build/C/man3/getspnam.3:192
2688 msgid ""
2689 "The shadow password structure is defined in I<E<lt>shadow.hE<gt>> as follows:"
2690 msgstr ""
2691 "shadow パスワード構造体は I<E<lt>shadow.hE<gt>> で以下のように定義されている:"
2692
2693 #. type: Plain text
2694 #: build/C/man3/getspnam.3:210
2695 #, no-wrap
2696 msgid ""
2697 "struct spwd {\n"
2698 "    char *sp_namp;     /* Login name */\n"
2699 "    char *sp_pwdp;     /* Encrypted password */\n"
2700 "    long  sp_lstchg;   /* Date of last change (measured\n"
2701 "                          in days since 1970-01-01 00:00:00 +0000 (UTC)) */\n"
2702 "    long  sp_min;      /* Min # of days between changes */\n"
2703 "    long  sp_max;      /* Max # of days between changes */\n"
2704 "    long  sp_warn;     /* # of days before password expires\n"
2705 "                          to warn user to change it */\n"
2706 "    long  sp_inact;    /* # of days after password expires\n"
2707 "                          until account is disabled */\n"
2708 "    long  sp_expire;   /* Date when account expires (measured\n"
2709 "                          in days since 1970-01-01 00:00:00 +0000 (UTC)) */\n"
2710 "    unsigned long sp_flag;  /* Reserved */\n"
2711 "};\n"
2712 msgstr ""
2713 "struct spwd {\n"
2714 "    char *sp_namp;     /* ログイン名 */\n"
2715 "    char *sp_pwdp;     /* 暗号化されたパスワード */\n"
2716 "    long  sp_lstchg;   /* 最終更新日\n"
2717 "                          (1970-01-01 00:00:00 +0000 (UTC)) からの日数) */\n"
2718 "    long  sp_min;      /* 変更が出来るようになるまでの最短日数 */\n"
2719 "    long  sp_max;      /* 変更をしなくてもよい最長日数 */\n"
2720 "    long  sp_warn;     /* パスワードが期限切れになる前に\n"
2721 "                          ユーザに変更の警告を出す日数 */\n"
2722 "    long  sp_inact;    /* パスワードが期限切れになってから\n"
2723 "                          アカウントが無効になるまでの日数 */\n"
2724 "    long  sp_expire;   /* アカウントが無効になる日付\n"
2725 "                          (1970-01-01 00:00:00 +0000 (UTC)) からの日数) */\n"
2726 "    unsigned long sp_flag;  /* 予約フィールド */\n"
2727 "};\n"
2728
2729 #. type: Plain text
2730 #: build/C/man3/getspnam.3:217
2731 msgid ""
2732 "The functions that return a pointer return NULL if no more entries are "
2733 "available or if an error occurs during processing.  The functions which have "
2734 "I<int> as the return value return 0 for success and -1 for failure."
2735 msgstr ""
2736 "ポインタを返す関数は、これ以上エントリがない場合や 処理中にエラーが発生した場"
2737 "合 NULL を返す。 I<int> を返り値として持つ関数は、 成功した場合 0 を返し、失"
2738 "敗した場合 -1 を返す。"
2739
2740 #. type: Plain text
2741 #: build/C/man3/getspnam.3:220
2742 msgid ""
2743 "For the nonreentrant functions, the return value may point to static area, "
2744 "and may be overwritten by subsequent calls to these functions."
2745 msgstr ""
2746 "リエントラント版でない関数では、返り値が静的な領域を指しており、 引き続いてこ"
2747 "れらの関数を呼び出した場合に上書きされる可能性がある。"
2748
2749 #. type: Plain text
2750 #: build/C/man3/getspnam.3:223
2751 msgid ""
2752 "The reentrant functions return zero on success.  In case of error, an error "
2753 "number is returned."
2754 msgstr ""
2755 "リエントラント版の関数は、成功した場合に 0 を返す。 エラーの場合は、エラー番"
2756 "号が返される。"
2757
2758 #. type: Plain text
2759 #: build/C/man3/getspnam.3:227
2760 msgid "Supplied buffer is too small."
2761 msgstr "与えられたバッファが小さすぎる。"
2762
2763 #. type: TP
2764 #: build/C/man3/getspnam.3:228
2765 #, no-wrap
2766 msgid "I</etc/shadow>"
2767 msgstr "I</etc/shadow>"
2768
2769 #. type: Plain text
2770 #: build/C/man3/getspnam.3:231
2771 msgid "local shadow password database file"
2772 msgstr "ローカルの shadow パスワード・データベースファイル"
2773
2774 #. type: TP
2775 #: build/C/man3/getspnam.3:231
2776 #, no-wrap
2777 msgid "I</etc/.pwd.lock>"
2778 msgstr "I</etc/.pwd.lock>"
2779
2780 #. type: Plain text
2781 #: build/C/man3/getspnam.3:234
2782 msgid "lock file"
2783 msgstr "ロックファイル"
2784
2785 #. type: Plain text
2786 #: build/C/man3/getspnam.3:240
2787 msgid ""
2788 "The include file I<E<lt>paths.hE<gt>> defines the constant B<_PATH_SHADOW> "
2789 "to the pathname of the shadow password file."
2790 msgstr ""
2791 "インクルードファイル I<E<lt>paths.hE<gt>> は定数 B<_PATH_SHADOW> を定義してい"
2792 "る。 これは shadow パスワードファイルのパス名である。"
2793
2794 #. type: Plain text
2795 #: build/C/man3/getspnam.3:244
2796 msgid ""
2797 "The shadow password database and its associated API are not specified in "
2798 "POSIX.1-2001.  However, many other systems provide a similar API."
2799 msgstr ""
2800 "shadow パスワード・データベースと関連 API は POSIX.1-2001 には記載されていな"
2801 "い。しかしながら、多くの他のシステムでも 同様の API が提供されている。"
2802
2803 #. type: Plain text
2804 #: build/C/man3/getspnam.3:249
2805 msgid "B<getgrnam>(3), B<getpwnam>(3), B<getpwnam_r>(3), B<shadow>(5)"
2806 msgstr "B<getgrnam>(3), B<getpwnam>(3), B<getpwnam_r>(3), B<shadow>(5)"
2807
2808 #. type: TH
2809 #: build/C/man5/group.5:25
2810 #, no-wrap
2811 msgid "GROUP"
2812 msgstr "GROUP"
2813
2814 #. type: Plain text
2815 #: build/C/man5/group.5:28
2816 msgid "group - user group file"
2817 msgstr "group - ユーザーグループのファイル"
2818
2819 #. type: Plain text
2820 #: build/C/man5/group.5:33
2821 msgid ""
2822 "The I</etc/group> file is a text file that defines the groups on the "
2823 "system.  There is one entry per line, with the following format:"
2824 msgstr ""
2825 "I</etc/group> ファイルは、そのシステムのグループを定義するテキスト\n"
2826 "ファイルである。 1 行に 1 エントリで、各行の形式は以下のとおりである。"
2827
2828 #. type: Plain text
2829 #: build/C/man5/group.5:36
2830 msgid "group_name:password:GID:user_list"
2831 msgstr "group_name:password:GID:user_list"
2832
2833 #. type: Plain text
2834 #: build/C/man5/group.5:39
2835 msgid "The fields are as follows:"
2836 msgstr "各フィールドは以下の通りである:"
2837
2838 #. type: TP
2839 #: build/C/man5/group.5:39
2840 #, no-wrap
2841 msgid "I<group_name>"
2842 msgstr "I<group_name>"
2843
2844 #. type: Plain text
2845 #: build/C/man5/group.5:42
2846 msgid "the name of the group."
2847 msgstr "グループの名前。"
2848
2849 #. type: TP
2850 #: build/C/man5/group.5:42 build/C/man5/passwd.5:75
2851 #, no-wrap
2852 msgid "I<password>"
2853 msgstr "I<password>"
2854
2855 #. type: Plain text
2856 #: build/C/man5/group.5:46
2857 msgid ""
2858 "the (encrypted) group password.  If this field is empty, no password is "
2859 "needed."
2860 msgstr ""
2861 "(暗号化された) パスワード。このフィールドが空ならパスワードは必要ない。"
2862
2863 #. type: TP
2864 #: build/C/man5/group.5:46 build/C/man5/passwd.5:84
2865 #, no-wrap
2866 msgid "I<GID>"
2867 msgstr "I<GID>"
2868
2869 #. type: Plain text
2870 #: build/C/man5/group.5:49
2871 msgid "the numeric group ID."
2872 msgstr "グループ ID 番号。"
2873
2874 #. type: TP
2875 #: build/C/man5/group.5:49
2876 #, no-wrap
2877 msgid "I<user_list>"
2878 msgstr "I<user_list>"
2879
2880 #. type: Plain text
2881 #: build/C/man5/group.5:52
2882 msgid ""
2883 "a list of the usernames that are members of this group, separated by commas."
2884 msgstr ""
2885 "このグループのメンバーのユーザー名のリスト。 ユーザー名はコンマで区切られる。"
2886
2887 #. type: Plain text
2888 #: build/C/man5/group.5:54
2889 msgid "/etc/group"
2890 msgstr "/etc/group"
2891
2892 #. type: Plain text
2893 #: build/C/man5/group.5:60
2894 msgid ""
2895 "As the 4.2BSD B<initgroups>(3)  man page says: No-one seems to keep I</etc/"
2896 "group> up-to-date."
2897 msgstr ""
2898 "4.2BSD の B<initgroups>(3)  には次のように書かれている: 誰も I</etc/group> を"
2899 "最新の状態に保ってはいないようである。"
2900
2901 #. type: Plain text
2902 #: build/C/man5/group.5:66
2903 msgid "B<login>(1), B<newgrp>(1), B<getgrent>(3), B<getgrnam>(3), B<passwd>(5)"
2904 msgstr ""
2905 "B<login>(1), B<newgrp>(1), B<getgrent>(3), B<getgrnam>(3), B<passwd>(5)"
2906
2907 #. type: TH
2908 #: build/C/man3/initgroups.3:30
2909 #, no-wrap
2910 msgid "INITGROUPS"
2911 msgstr "INITGROUPS"
2912
2913 #. type: TH
2914 #: build/C/man3/initgroups.3:30 build/C/man3/putpwent.3:28
2915 #, no-wrap
2916 msgid "2007-07-26"
2917 msgstr "2007-07-26"
2918
2919 #. type: Plain text
2920 #: build/C/man3/initgroups.3:33
2921 msgid "initgroups - initialize the supplementary group access list"
2922 msgstr "initgroups - 追加のグループアクセスリストの初期化"
2923
2924 #. type: Plain text
2925 #: build/C/man3/initgroups.3:39
2926 #, no-wrap
2927 msgid "B<int initgroups(const char *>I<user>B<, gid_t >I<group>B<);>\n"
2928 msgstr "B<int initgroups(const char *>I<user>B<, gid_t >I<group>B<);>\n"
2929
2930 #. type: Plain text
2931 #: build/C/man3/initgroups.3:48
2932 msgid "B<initgroups>(): _BSD_SOURCE"
2933 msgstr "B<initgroups>(): _BSD_SOURCE"
2934
2935 #. type: Plain text
2936 #: build/C/man3/initgroups.3:56
2937 msgid ""
2938 "The B<initgroups>()  function initializes the group access list by reading "
2939 "the group database I</etc/group> and using all groups of which I<user> is a "
2940 "member.  The additional group I<group> is also added to the list."
2941 msgstr ""
2942 "B<initgroups>()  関数はグループデータベース I</etc/group> を読み 込んで、"
2943 "I<user> が所属している全てのグループを使って、グループアク セスリストを初期化"
2944 "する。さらに、I<group> に示されるグループもグルー プアクセスリストに追加され"
2945 "る。"
2946
2947 #. type: Plain text
2948 #: build/C/man3/initgroups.3:60
2949 msgid "The I<user> argument must be non-NULL."
2950 msgstr "I<user> 引数は NULL であってはならない。"
2951
2952 #. type: Plain text
2953 #: build/C/man3/initgroups.3:67
2954 msgid ""
2955 "The B<initgroups>()  function returns 0 on success.  On error, -1 is "
2956 "returned, and I<errno> is set appropriately."
2957 msgstr ""
2958 "B<initgroups>()  関数は、成功すると 0 を返す。 エラーの場合は -1 を返し、 "
2959 "I<errno> を適切に設定する。"
2960
2961 #. type: Plain text
2962 #: build/C/man3/initgroups.3:71
2963 msgid "Insufficient memory to allocate group information structure."
2964 msgstr "グループ情報構造体を配置するためのメモリが不足している。"
2965
2966 #. type: TP
2967 #: build/C/man3/initgroups.3:71
2968 #, no-wrap
2969 msgid "B<EPERM>"
2970 msgstr "B<EPERM>"
2971
2972 #. type: Plain text
2973 #: build/C/man3/initgroups.3:76
2974 msgid ""
2975 "The calling process has insufficient privilege.  See the underlying system "
2976 "call B<setgroups>(2)."
2977 msgstr ""
2978 "呼出しプロセスが十分な特権を持っていない。 この関数の裏で実行されるシステム"
2979 "コール B<setgroups>(2)  も参照のこと。"
2980
2981 #. type: Plain text
2982 #: build/C/man3/initgroups.3:79
2983 #, no-wrap
2984 msgid "I</etc/group>\t\tgroup database file\n"
2985 msgstr "I</etc/group>\t\tグループデータベースファイル\n"
2986
2987 #. type: Plain text
2988 #: build/C/man3/initgroups.3:82
2989 msgid "SVr4, 4.3BSD."
2990 msgstr "SVr4, 4.3BSD."
2991
2992 #. type: Plain text
2993 #: build/C/man3/initgroups.3:86
2994 msgid "B<getgroups>(2), B<setgroups>(2), B<credentials>(7)"
2995 msgstr "B<getgroups>(2), B<setgroups>(2), B<credentials>(7)"
2996
2997 #. type: TH
2998 #: build/C/man5/passwd.5:29
2999 #, no-wrap
3000 msgid "PASSWD"
3001 msgstr "PASSWD"
3002
3003 #. type: TH
3004 #: build/C/man5/passwd.5:29
3005 #, no-wrap
3006 msgid "2012-02-14"
3007 msgstr "2012-02-14"
3008
3009 #. type: Plain text
3010 #: build/C/man5/passwd.5:32
3011 msgid "passwd - password file"
3012 msgstr "passwd - パスワードファイル"
3013
3014 #. type: Plain text
3015 #: build/C/man5/passwd.5:40
3016 msgid ""
3017 "The I</etc/passwd> file is a text file that describes user login accounts "
3018 "for the system.  It should have read permission allowed for all users (many "
3019 "utilities, like B<ls>(1)  use it to map user IDs to usernames), but write "
3020 "access only for the superuser."
3021 msgstr ""
3022 "I</etc/passwd> ファイルは、そのシステムのユーザのログインアカウントリス\n"
3023 "トを記述したテキストファイルである。パスワードファイルの読み出し許可は\n"
3024 "全ユーザーに対して与えるが(I<ls>(1) 等の多くのユーティリティではユーザー\n"
3025 "ID をユーザー名に 対応させるのに B<passwd> ファイルを使用する)、書き込\n"
3026 "み許可はスーパーユーザーにのみ与えるようにすべきである。"
3027
3028 #. type: Plain text
3029 #: build/C/man5/passwd.5:52
3030 msgid ""
3031 "In the good old days there was no great problem with this general read "
3032 "permission.  Everybody could read the encrypted passwords, but the hardware "
3033 "was too slow to crack a well-chosen password, and moreover the basic "
3034 "assumption used to be that of a friendly user-community.  These days many "
3035 "people run some version of the shadow password suite, where I</etc/passwd> "
3036 "has an \\(aqx\\(aq character in the password field, and the encrypted "
3037 "passwords are in I</etc/shadow>, which is readable by the superuser only."
3038 msgstr ""
3039 "古き良き時代には、この全ユーザーに対する読み取り許可は 特別な問題を起こ\n"
3040 "さなかった。誰でも暗号化されたパスワードを 読むことが出来たが、上手に選\n"
3041 "ばれたパスワードを破るのには 当時のハードウェアの速度はあまりに遅かった\n"
3042 "し、それに加えて 友好的なユーザー社会であることを基本的な前提としていた。\n"
3043 "最近では多くの人が、何らかのバージョンの shadow password suite\n"
3044 "(シャドウ・パスワード機能を実現するためのプログラム群) を動かしている。\n"
3045 "その場合 I</etc/passwd> ファイルのパスワード欄には\n"
3046 "\\(aqx\\(aq 文字が設定され、暗号化されたパスワードは\n"
3047 "I</etc/shadow> ファイルに保持される。 I</etc/shadow> ファイルはスーパー\n"
3048 "ユーザーだけが読み出すことができる。"
3049
3050 #. type: Plain text
3051 #: build/C/man5/passwd.5:58
3052 msgid ""
3053 "Regardless of whether shadow passwords are used, many system administrators "
3054 "use an asterisk (*) in the encrypted password field to make sure that this "
3055 "user can not authenticate him- or herself using a password.  (But see NOTES "
3056 "below.)"
3057 msgstr ""
3058 "shadow password が使われているかどうかにはよらず、多くのシステム管理者は、\n"
3059 "暗号化パスワード欄にアスタリスク (*) を設定することで、そのユーザーが\n"
3060 "パスワードでの認証が受けられないようにしている (下記の「注意」の項を参照)。"
3061
3062 #. type: Plain text
3063 #: build/C/man5/passwd.5:63
3064 msgid ""
3065 "If you create a new login, first put an asterisk (*) in the password field, "
3066 "then use B<passwd>(1)  to set it."
3067 msgstr ""
3068 "新しいユーザーを登録する場合には、パスワード欄にアスタリスク (*) を設定しておき、\n"
3069 "B<passwd>(1) コマンドにより設定を行うようにすること。"
3070
3071 #. type: Plain text
3072 #: build/C/man5/passwd.5:65
3073 msgid ""
3074 "Each line of the file describes a single user, and has the following format:"
3075 msgstr "ファイルの 1 行が 1 ユーザの情報を表し、書式は以下の通りである。"
3076
3077 #. type: Plain text
3078 #: build/C/man5/passwd.5:68
3079 msgid "account:password:UID:GID:GECOS:directory:shell"
3080 msgstr "account:password:UID:GID:GECOS:directory:shell"
3081
3082 #. type: Plain text
3083 #: build/C/man5/passwd.5:71
3084 msgid "The field are as follows:"
3085 msgstr "各フィールドは以下の通りである:"
3086
3087 #. type: TP
3088 #: build/C/man5/passwd.5:71
3089 #, no-wrap
3090 msgid "I<account>"
3091 msgstr "I<account>"
3092
3093 #. type: Plain text
3094 #: build/C/man5/passwd.5:75
3095 msgid ""
3096 "the name of the user on the system.  It should not contain capital letters."
3097 msgstr "そのシステムでのユーザー名。大文字を含まないようにする。"
3098
3099 #. type: Plain text
3100 #: build/C/man5/passwd.5:81
3101 msgid ""
3102 "the encrypted user password, an asterisk (*), or the letter \\(aqx\\(aq.  "
3103 "(See B<pwconv>(8)  for an explanation of \\(aqx\\(aq.)"
3104 msgstr ""
3105 "ユーザーの暗号化されたパスワード、アスタリスク、または文字 \\(aqx\\(aq "
3106 "(\\(aqx\\(aq の説明については B<pwconv>(8)  を参照)。"
3107
3108 #. type: TP
3109 #: build/C/man5/passwd.5:81
3110 #, no-wrap
3111 msgid "I<UID>"
3112 msgstr "I<UID>"
3113
3114 #. type: Plain text
3115 #: build/C/man5/passwd.5:84
3116 msgid "the numeric user ID."
3117 msgstr "ユーザー ID 番号。"
3118
3119 #. type: Plain text
3120 #: build/C/man5/passwd.5:87
3121 msgid "the numeric primary group ID for this user."
3122 msgstr "ユーザーが属するプライマリグループ ID 番号。"
3123
3124 #. type: TP
3125 #: build/C/man5/passwd.5:87
3126 #, no-wrap
3127 msgid "I<GECOS>"
3128 msgstr "I<GECOS>"
3129
3130 #. type: Plain text
3131 #: build/C/man5/passwd.5:99
3132 msgid ""
3133 "This field is optional and used only for informational purposes.  Usually, "
3134 "it contains the full username.  GECOS stands for \"General Electric "
3135 "Comprehensive Operating System\", which was renamed to GCOS when GE's large "
3136 "systems division was sold to Honeywell.  Dennis Ritchie has reported: "
3137 "\"Sometimes we sent printer output or batch jobs to the GCOS machine.  The "
3138 "gcos field in the password file was a place to stash the information for the "
3139 "$IDENTcard.  Not elegant.\""
3140 msgstr ""
3141 "本欄は省略可能で、情報提供の目的のみに使われる。ユーザーのフルネームを\n"
3142 "設定することが多い。GECOS は General Electric Comprehensive Operating\n"
3143 "System を意味しており、GE 社の大規模システム部門が Honeywell 社に売却さ\n"
3144 "れた際に GCOS へと変更された。Dennis Ritchie 氏は次のように言っている:\n"
3145 "「時々プリンタ出力や、バッチジョブを GCOS マシンに送ったりするが、 パ\n"
3146 "スワードファイルの gcos 欄は $IDENT カード用の情報を 隠しておくための場\n"
3147 "所なんだ。まるっきりエレガントじゃない。」"
3148
3149 #. type: TP
3150 #: build/C/man5/passwd.5:99
3151 #, no-wrap
3152 msgid "I<directory>"
3153 msgstr "I<directory>"
3154
3155 #. type: Plain text
3156 #: build/C/man5/passwd.5:104
3157 msgid "the user's B<$HOME> directory."
3158 msgstr "ユーザーの B<$HOME> ディレクトリ。"
3159
3160 #. type: TP
3161 #: build/C/man5/passwd.5:104
3162 #, no-wrap
3163 msgid "I<shell>"
3164 msgstr "I<shell>"
3165
3166 #. type: Plain text
3167 #: build/C/man5/passwd.5:111
3168 msgid ""
3169 "the program to run at login (if empty, use I</bin/sh>).  If set to a "
3170 "nonexistent executable, the user will be unable to login through B<login>(1)."
3171 msgstr ""
3172 "ログイン時に動くプログラム名 (空欄の場合 I</bin/sh> が使われる)。 存在しない"
3173 "実行プログラムが設定された場合、 B<login>(1)  によるシステムへのログインはで"
3174 "きなくなる。"
3175
3176 #. type: Plain text
3177 #: build/C/man5/passwd.5:117
3178 msgid ""
3179 "If you want to create user groups, there must be an entry in I</etc/group>, "
3180 "or no group will exist."
3181 msgstr ""
3182 "ユーザーグループを作りたい場合には、そのグループが I</etc/group> の中に\n"
3183 "定義されていなければならない。そうしないとグループを作ったことにはならない。"
3184
3185 #. type: Plain text
3186 #: build/C/man5/passwd.5:131
3187 msgid ""
3188 "If the encrypted password is set to an asterisk (*), the user will be unable "
3189 "to login using B<login>(1), but may still login using B<rlogin>(1), run "
3190 "existing processes and initiate new ones through B<rsh>(1), B<cron>(8), B<at>"
3191 "(1), or mail filters, etc.  Trying to lock an account by simply changing the "
3192 "shell field yields the same result and additionally allows the use of B<su>"
3193 "(1)."
3194 msgstr ""
3195 "暗号化パスワードとしてアスタリスク (*) を設定すると、 B<login>(1) を\n"
3196 "使ってのログインができなくなるが、 B<rlogin>(1) ではまだログインができるし、\n"
3197 "B<rsh>(1), B<cron>(8), B<at>(1) やメールのフィルタ等を使い、現存するプロセスを\n"
3198 "実行させたり、新たなプロセスを起動したりすることができる。\n"
3199 "使用する shell の欄を、単に変更することでアカウントを 使えないようにする\n"
3200 "のも同様の結果となる。その場合にはさらに B<su>(1) も有効なまま残ってしまう。"
3201
3202 #. type: Plain text
3203 #: build/C/man5/passwd.5:139
3204 msgid ""
3205 "B<login>(1), B<passwd>(1), B<su>(1), B<getpwent>(3), B<getpwnam>(3), B<group>"
3206 "(5), B<shadow>(5)"
3207 msgstr ""
3208 "B<login>(1), B<passwd>(1), B<su>(1), B<getpwent>(3), B<getpwnam>(3), B<group>"
3209 "(5), B<shadow>(5)"
3210
3211 #. type: TH
3212 #: build/C/man3/putgrent.3:4
3213 #, no-wrap
3214 msgid "PUTGRENT"
3215 msgstr "PUTGRENT"
3216
3217 #. type: TH
3218 #: build/C/man3/putgrent.3:4 build/C/man3/setaliasent.3:6
3219 #, no-wrap
3220 msgid "2003-09-09"
3221 msgstr "2003-09-09"
3222
3223 #. type: Plain text
3224 #: build/C/man3/putgrent.3:7
3225 msgid "putgrent - write a group database entry to a file"
3226 msgstr "putgrent - グループデータベースエントリをファイルに書き込む"
3227
3228 #. type: Plain text
3229 #: build/C/man3/putgrent.3:9
3230 msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */"
3231 msgstr "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */"
3232
3233 #. type: Plain text
3234 #: build/C/man3/putgrent.3:13
3235 msgid "B<int putgrent(const struct group *>I<grp>B<, FILE *>I<fp>B<);>"
3236 msgstr "B<int putgrent(const struct group *>I<grp>B<, FILE *>I<fp>B<);>"
3237
3238 #. type: Plain text
3239 #: build/C/man3/putgrent.3:22
3240 msgid ""
3241 "The B<putgrent>()  function is the counterpart for B<fgetgrent>(3).  The "
3242 "function writes the content of the provided I<struct group> into the file "
3243 "pointed to by I<fp>.  The list of group members must be NULL-terminated or "
3244 "NULL-initialized."
3245 msgstr ""
3246 "B<putgrent>()  関数は B<fgetgrent>(3)  の逆である。 この関数は与えられた "
3247 "I<struct group> を I<fp> で指されるファイルに書き込む。 グループメンバのリス"
3248 "トは、NULL で終端されるか、 NULL で初期化されなければならない。"
3249
3250 #. type: Plain text
3251 #: build/C/man3/putgrent.3:24
3252 msgid "The I<struct group> is defined as follows:"
3253 msgstr "I<struct group> は以下のように定義される:"
3254
3255 #. type: Plain text
3256 #: build/C/man3/putgrent.3:33
3257 #, no-wrap
3258 msgid ""
3259 "struct group {\n"
3260 "    char   *gr_name;      /* group name */\n"
3261 "    char   *gr_passwd;    /* group password */\n"
3262 "    gid_t   gr_gid;       /* group ID */\n"
3263 "    char  **gr_mem;       /* group members */\n"
3264 "};\n"
3265 msgstr ""
3266 "struct group {\n"
3267 "    char   *gr_name;      /* グループ名 */\n"
3268 "    char   *gr_passwd;    /* グループパスワード */\n"
3269 "    gid_t   gr_gid;       /* グループ ID */\n"
3270 "    char  **gr_mem;       /* グループメンバ */\n"
3271 "};\n"
3272
3273 #. type: Plain text
3274 #: build/C/man3/putgrent.3:37
3275 msgid "The function returns zero on success, and a nonzero value on error."
3276 msgstr "この関数は、成功した場合は 0 を返し、エラーの場合は 0 以外の値を返す。"
3277
3278 #. type: Plain text
3279 #: build/C/man3/putgrent.3:39
3280 msgid "This function is a GNU extension."
3281 msgstr "この関数は GNU による拡張である。"
3282
3283 #. type: Plain text
3284 #: build/C/man3/putgrent.3:43
3285 msgid "B<fgetgrent>(3), B<getgrent>(3), B<group>(5)"
3286 msgstr "B<fgetgrent>(3), B<getgrent>(3), B<group>(5)"
3287
3288 #. type: TH
3289 #: build/C/man3/putpwent.3:28
3290 #, no-wrap
3291 msgid "PUTPWENT"
3292 msgstr "PUTPWENT"
3293
3294 #. type: Plain text
3295 #: build/C/man3/putpwent.3:31
3296 msgid "putpwent - write a password file entry"
3297 msgstr "putpwent - パスワードファイルエントリの書き込み"
3298
3299 #. type: Plain text
3300 #: build/C/man3/putpwent.3:38
3301 #, no-wrap
3302 msgid "B<int putpwent(const struct passwd *>I<p>B<, FILE *>I<stream>B<);>\n"
3303 msgstr "B<int putpwent(const struct passwd *>I<p>B<, FILE *>I<stream>B<);>\n"
3304
3305 #. type: Plain text
3306 #: build/C/man3/putpwent.3:47
3307 msgid "B<putpwent>(): _SVID_SOURCE"
3308 msgstr "B<putpwent>(): _SVID_SOURCE"
3309
3310 #. type: Plain text
3311 #: build/C/man3/putpwent.3:52
3312 msgid ""
3313 "The B<putpwent>()  function writes a password entry from the structure I<p> "
3314 "in the file associated with I<stream>."
3315 msgstr ""
3316 "B<putpwent>()  関数は、構造体 I<p> からのパスワードエントリを I<stream> に結"
3317 "びつけられたファイルに書き込む。"
3318
3319 #. type: Plain text
3320 #: build/C/man3/putpwent.3:66
3321 #, no-wrap
3322 msgid ""
3323 "struct passwd {\n"
3324 "    char    *pw_name;        /* username */\n"
3325 "    char    *pw_passwd;      /* user password */\n"
3326 "    uid_t    pw_uid;         /* user ID */\n"
3327 "    gid_t    pw_gid;         /* group ID */\n"
3328 "    char    *pw_gecos;       /* real name */\n"
3329 "    char    *pw_dir;         /* home directory */\n"
3330 "    char    *pw_shell;       /* shell program */\n"
3331 "};\n"
3332 msgstr ""
3333 "struct passwd {\n"
3334 "    char    *pw_name;        /* ユーザ名 */\n"
3335 "    char    *pw_passwd;      /* ユーザのパスワード */\n"
3336 "    uid_t    pw_uid;         /* ユーザ ID */\n"
3337 "    gid_t    pw_gid;         /* グループ ID */\n"
3338 "    char    *pw_gecos;       /* 本名 */\n"
3339 "    char    *pw_dir;         /* ホームディレクトリ */\n"
3340 "    char    *pw_shell;       /* シェルプログラム */\n"
3341 "};\n"
3342
3343 #. type: Plain text
3344 #: build/C/man3/putpwent.3:73
3345 msgid ""
3346 "The B<putpwent>()  function returns 0 on success, or -1 if an error occurs."
3347 msgstr ""
3348 "B<putpwent>()  関数は、成功した場合は 0 を、エラーが発生した場合は -1 を返"
3349 "す。"
3350
3351 #. type: Plain text
3352 #: build/C/man3/putpwent.3:77
3353 msgid "Invalid (NULL) argument given."
3354 msgstr "無効な(NULL)引数が渡された。"
3355
3356 #. type: Plain text
3357 #: build/C/man3/putpwent.3:87
3358 msgid ""
3359 "B<endpwent>(3), B<fgetpwent>(3), B<getpw>(3), B<getpwent>(3), B<getpwnam>"
3360 "(3), B<getpwuid>(3), B<setpwent>(3)"
3361 msgstr ""
3362 "B<endpwent>(3), B<fgetpwent>(3), B<getpw>(3), B<getpwent>(3), B<getpwnam>"
3363 "(3), B<getpwuid>(3), B<setpwent>(3)"
3364
3365 #. type: TH
3366 #: build/C/man3/setaliasent.3:6
3367 #, no-wrap
3368 msgid "SETALIASENT"
3369 msgstr "SETALIASENT"
3370
3371 #. type: Plain text
3372 #: build/C/man3/setaliasent.3:10
3373 msgid ""
3374 "setaliasent, endaliasent, getaliasent, getaliasent_r, getaliasbyname, "
3375 "getaliasbyname_r - read an alias entry"
3376 msgstr ""
3377 "setaliasent, endaliasent, getaliasent, getaliasent_r, getaliasbyname, "
3378 "getaliasbyname_r - エイリアスエントリを読み込む"
3379
3380 #. type: Plain text
3381 #: build/C/man3/setaliasent.3:12
3382 msgid "B<#include E<lt>aliases.hE<gt>>"
3383 msgstr "B<#include E<lt>aliases.hE<gt>>"
3384
3385 #. type: Plain text
3386 #: build/C/man3/setaliasent.3:14
3387 msgid "B<void setaliasent(void);>"
3388 msgstr "B<void setaliasent(void);>"
3389
3390 #. type: Plain text
3391 #: build/C/man3/setaliasent.3:16
3392 msgid "B<void endaliasent(void);>"
3393 msgstr "B<void endaliasent(void);>"
3394
3395 #. type: Plain text
3396 #: build/C/man3/setaliasent.3:18
3397 msgid "B<struct aliasent *getaliasent(void);>"
3398 msgstr "B<struct aliasent *getaliasent(void);>"
3399
3400 #. type: Plain text
3401 #: build/C/man3/setaliasent.3:20
3402 msgid "B<int getaliasent_r(struct aliasent *>I<result>B<,>"
3403 msgstr "B<int getaliasent_r(struct aliasent *>I<result>B<,>"
3404
3405 #. type: Plain text
3406 #: build/C/man3/setaliasent.3:22 build/C/man3/setaliasent.3:28
3407 msgid ""
3408 "B< char *>I<buffer>B<, size_t >I<buflen>B<, struct aliasent **>I<res>B<);>"
3409 msgstr ""
3410 "B< char *>I<buffer>B<, size_t >I<buflen>B<, struct aliasent **>I<res>B<);>"
3411
3412 #. type: Plain text
3413 #: build/C/man3/setaliasent.3:24
3414 msgid "B<struct aliasent *getaliasbyname(const char *>I<name>B<);>"
3415 msgstr "B<struct aliasent *getaliasbyname(const char *>I<name>B<);>"
3416
3417 #. type: Plain text
3418 #: build/C/man3/setaliasent.3:26
3419 msgid ""
3420 "B<int getaliasbyname_r(const char *>I<name>B<, struct aliasent *>I<result>B<,"
3421 ">"
3422 msgstr ""
3423 "B<int getaliasbyname_r(const char *>I<name>B<, struct aliasent *>I<result>B<,"
3424 ">"
3425
3426 #. type: Plain text
3427 #: build/C/man3/setaliasent.3:33
3428 msgid ""
3429 "One of the databases available with the Name Service Switch (NSS)  is the "
3430 "aliases database, that contains mail aliases.  (To find out which databases "
3431 "are supported, try I<getent --help>.)  Six functions are provided to access "
3432 "the aliases database."
3433 msgstr ""
3434 "ネームサービススイッチ (Name Service Switch, NSS) で 利用可能なデータベース"
3435 "の 1 つとして、 メールエイリアスを保持するエイリアスデータベースがある。 (ど"
3436 "のデータベースがサポートされているかを調べるには、 getent --help を実行するこ"
3437 "と。)  エイリアスデータベースにアクセスするために、 6 つの関数が提供されてい"
3438 "る。"
3439
3440 #. type: Plain text
3441 #: build/C/man3/setaliasent.3:40
3442 msgid ""
3443 "The B<getaliasent>()  function returns a pointer to a structure containing "
3444 "the group information from the aliases database.  The first time it is "
3445 "called it returns the first entry; thereafter, it returns successive entries."
3446 msgstr ""
3447 "B<getaliasent>()  関数はエイリアスデータベースから取り出した グループ情報を含"
3448 "む構造体へのポインタを返す。 1 回目に関数が呼ばれたときには、最初のエントリを"
3449 "返す; それ以降はその後のエントリを返す。"
3450
3451 #. type: Plain text
3452 #: build/C/man3/setaliasent.3:45
3453 msgid ""
3454 "The B<setaliasent>()  function rewinds the file pointer to the beginning of "
3455 "the aliases database."
3456 msgstr ""
3457 "B<setaliasent>()  関数はファイルポインタをエイリアスデータベースの先頭に巻き"
3458 "戻す。"
3459
3460 #. type: Plain text
3461 #: build/C/man3/setaliasent.3:49
3462 msgid "The B<endaliasent>()  function closes the aliases database."
3463 msgstr "B<endaliasent>()  関数はエイリアスデータベースをクローズする。"
3464
3465 #. type: Plain text
3466 #: build/C/man3/setaliasent.3:56
3467 msgid ""
3468 "B<getaliasent_r>()  is the reentrant version of the previous function.  The "
3469 "requested structure is stored via the first argument but the programmer "
3470 "needs to fill the other arguments also.  Not providing enough space causes "
3471 "the function to fail."
3472 msgstr ""
3473 "B<getaliasent_r>()  関数は上記の関数のリエントラント版である。 要求された構造"
3474 "体は第 1 引き数に格納されるが、 プログラマは他の引き数も埋めてやる必要があ"
3475 "る。 充分な領域が与えられないと、この関数は失敗する。"
3476
3477 #. type: Plain text
3478 #: build/C/man3/setaliasent.3:62
3479 msgid ""
3480 "The function B<getaliasbyname>()  takes the name argument and searches the "
3481 "aliases database.  The entry is returned as a pointer to a I<struct "
3482 "aliasent>."
3483 msgstr ""
3484 "関数 B<getaliasbyname>()  は name 引き数をとり、エイリアスデータベースを検索"
3485 "する。 エントリは I<struct aliasent> へのポインタとして返される。"
3486
3487 #. type: Plain text
3488 #: build/C/man3/setaliasent.3:69
3489 msgid ""
3490 "B<getaliasbyname_r>()  is the reentrant version of the previous function.  "
3491 "The requested structure is stored via the second argument but the programmer "
3492 "needs to fill the other arguments also.  Not providing enough space causes "
3493 "the function to fail."
3494 msgstr ""
3495 "B<getaliasbyname_r>()  は上記の関数のリエントラント版である。 要求された構造"
3496 "体は第 2 引き数に格納されるが、 プログラマは他の引き数も埋めてやる必要があ"
3497 "る。 充分な領域が与えられないと、この関数は失敗する。"
3498
3499 #. type: Plain text
3500 #: build/C/man3/setaliasent.3:74
3501 msgid "The I<struct aliasent> is defined in I<E<lt>aliases.hE<gt>>:"
3502 msgstr "I<struct aliasent> は I<E<lt>aliases.hE<gt>> で定義されている。"
3503
3504 #. type: Plain text
3505 #: build/C/man3/setaliasent.3:83
3506 #, no-wrap
3507 msgid ""
3508 "struct aliasent {\n"
3509 "    char    *alias_name;             /* alias name */\n"
3510 "    size_t   alias_members_len;\n"
3511 "    char   **alias_members;          /* alias name list */\n"
3512 "    int      alias_local;\n"
3513 "};\n"
3514 msgstr ""
3515 "struct aliasent {\n"
3516 "    char    *alias_name;             /* エイリアス名 */\n"
3517 "    size_t   alias_members_len;\n"
3518 "    char   **alias_members;          /* エイリアス名のリスト */\n"
3519 "    int      alias_local;\n"
3520 "};\n"
3521
3522 #. type: Plain text
3523 #: build/C/man3/setaliasent.3:91
3524 msgid ""
3525 "The functions B<getaliasent_r>()  and B<getaliasbyname_r>()  return a "
3526 "nonzero value on error."
3527 msgstr ""
3528 "関数 B<getaliasent_r>()  と B<getaliasbyname_r>()  は、エラーの場合に 0 以外"
3529 "の値を返す。"
3530
3531 #. type: Plain text
3532 #: build/C/man3/setaliasent.3:97
3533 msgid ""
3534 "The default alias database is the file I</etc/aliases>.  This can be changed "
3535 "in the I</etc/nsswitch.conf> file."
3536 msgstr ""
3537 "デフォルトのエイリアスデータベースは、ファイル I</etc/aliases> である。 これ"
3538 "は I</etc/nsswitch.conf> ファイルで変更できる。"
3539
3540 #. type: Plain text
3541 #: build/C/man3/setaliasent.3:100
3542 msgid ""
3543 "These routines are glibc-specific.  The NeXT system has similar routines:"
3544 msgstr ""
3545 "このルーチンは glibc 固有のものである。 NeXT システムには同様のルーチンがあ"
3546 "る。"
3547
3548 #. type: Plain text
3549 #: build/C/man3/setaliasent.3:104
3550 #, no-wrap
3551 msgid "#include E<lt>aliasdb.hE<gt>\n"
3552 msgstr "#include E<lt>aliasdb.hE<gt>\n"
3553
3554 #. type: Plain text
3555 #: build/C/man3/setaliasent.3:109
3556 #, no-wrap
3557 msgid ""
3558 "void alias_setent(void);\n"
3559 "void alias_endent(void);\n"
3560 "alias_ent *alias_getent(void);\n"
3561 "alias_ent *alias_getbyname(char *name);\n"
3562 msgstr ""
3563 "void alias_setent(void);\n"
3564 "void alias_endent(void);\n"
3565 "alias_ent *alias_getent(void);\n"
3566 "alias_ent *alias_getbyname(char *name);\n"
3567
3568 #. type: Plain text
3569 #: build/C/man3/setaliasent.3:115
3570 msgid ""
3571 "The following example compiles with I<gcc example.c -o example>.  It will "
3572 "dump all names in the alias database."
3573 msgstr ""
3574 "以下の例は I<gcc example.c -o example> でコンパイルできる。 これはエイリアス"
3575 "データベースにある全ての名前をダンプする。"
3576
3577 #. type: Plain text
3578 #: build/C/man3/setaliasent.3:121
3579 #, no-wrap
3580 msgid ""
3581 "#include E<lt>aliases.hE<gt>\n"
3582 "#include E<lt>stdio.hE<gt>\n"
3583 "#include E<lt>stdlib.hE<gt>\n"
3584 "#include E<lt>errno.hE<gt>\n"
3585 msgstr ""
3586 "#include E<lt>aliases.hE<gt>\n"
3587 "#include E<lt>stdio.hE<gt>\n"
3588 "#include E<lt>stdlib.hE<gt>\n"
3589 "#include E<lt>errno.hE<gt>\n"
3590
3591 #. type: Plain text
3592 #: build/C/man3/setaliasent.3:140
3593 #, no-wrap
3594 msgid ""
3595 "int\n"
3596 "main(void)\n"
3597 "{\n"
3598 "    struct aliasent *al;\n"
3599 "    setaliasent();\n"
3600 "    for (;;) {\n"
3601 "        al = getaliasent();\n"
3602 "        if (al == NULL)\n"
3603 "            break;\n"
3604 "        printf(\"Name: %s\\en\", al-E<gt>alias_name);\n"
3605 "    }\n"
3606 "    if (errno) {\n"
3607 "        perror(\"reading alias\");\n"
3608 "        exit(EXIT_FAILURE);\n"
3609 "    }\n"
3610 "    endaliasent();\n"
3611 "    exit(EXIT_SUCCESS);\n"
3612 "}\n"
3613 msgstr ""
3614 "int\n"
3615 "main(void)\n"
3616 "{\n"
3617 "    struct aliasent *al;\n"
3618 "    setaliasent();\n"
3619 "    for (;;) {\n"
3620 "        al = getaliasent();\n"
3621 "        if (al == NULL)\n"
3622 "            break;\n"
3623 "        printf(\"Name: %s\\en\", al-E<gt>alias_name);\n"
3624 "    }\n"
3625 "    if (errno) {\n"
3626 "        perror(\"reading alias\");\n"
3627 "        exit(EXIT_FAILURE);\n"
3628 "    }\n"
3629 "    endaliasent();\n"
3630 "    exit(EXIT_SUCCESS);\n"
3631
3632 #.  /etc/sendmail/aliases
3633 #.  Yellow Pages
3634 #.  newaliases, postalias
3635 #. type: Plain text
3636 #: build/C/man3/setaliasent.3:150
3637 msgid "B<getgrent>(3), B<getpwent>(3), B<getspent>(3), B<aliases>(5)"
3638 msgstr "B<getgrent>(3), B<getpwent>(3), B<getspent>(3), B<aliases>(5)"
3639
3640 #~ msgid "2009-03-30"
3641 #~ msgstr "2009-03-30"
3642
3643 #~ msgid "2009-10-17"
3644 #~ msgstr "2009-10-17"
3645
3646 #~ msgid "The field descriptions are:"
3647 #~ msgstr "フィールドの説明:"
3648
3649 #~ msgid "password"
3650 #~ msgstr "password"
3651
3652 #~ msgid "GID"
3653 #~ msgstr "GID"
3654
3655 #~ msgid "1998-01-05"
3656 #~ msgstr "1998-01-05"
3657
3658 #~ msgid "There is one entry per line, and each line has the format:"
3659 #~ msgstr ""
3660 #~ "パスワードファイルは 1 行ごとに 1 エントリを持ち、 各行の書式は以下の通り"
3661 #~ "である:"