OSDN Git Service

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