1 .\" Copyright (c) 2003 Andries Brouwer (aeb@cwi.nl) and
2 .\" Walter Harms (walter.harms@informatik.uni-oldenburg.de)
4 .\" Distributed under GPL
6 .\" Japanese Version Copyright (c) 2004 Yuichi SATO
7 .\" all rights reserved.
8 .\" Translated 2004-08-20, Yuichi SATO <ysato444@yahoo.co.jp>
10 .TH GETSPNAM 3 2010-02-25 "GNU" "Linux Programmer's Manual"
12 getspnam, getspnam_r, getspent, getspent_r, setspent, endspent,fgetspent, fgetspent_r, sgetspent, sgetspent_r, putspent, lckpwdf, ulckpwdf \- shadow ¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤Î¥¨¥ó¥È¥ê¤ò¼èÆÀ¤¹¤ë
15 /* °ìÈÌŪ¤Ê shadow ¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë API */
17 .B #include <shadow.h>
19 .BI "struct spwd *getspnam(const char *" name );
21 .B struct spwd *getspent(void);
23 .B void setspent(void);
25 .B void endspent(void);
27 .BI "struct spwd *fgetspent(FILE *" fp );
29 .BI "struct spwd *sgetspent(const char *" s );
31 .BI "int putspent(struct spwd *" p ", FILE *" fp );
35 .B int ulckpwdf(void);
37 /* GNU ÈǤˤª¤±¤ë³ÈÄ¥ */
39 .B #include <shadow.h>
41 .BI "int getspent_r(struct spwd *" spbuf ,
43 .BI " char *" buf ", size_t " buflen ", struct spwd **" spbufp );
45 .BI "int getspnam_r(const char *" name ", struct spwd *" spbuf ,
47 .BI " char *" buf ", size_t " buflen ", struct spwd **" spbufp );
49 .BI "int fgetspent_r(FILE *" fp ", struct spwd *" spbuf ,
51 .BI " char *" buf ", size_t " buflen ", struct spwd **" spbufp );
53 .BI "int sgetspent_r(const char *" s ", struct spwd *" spbuf ,
55 .BI " char *" buf ", size_t " buflen ", struct spwd **" spbufp );
59 glibc ¸þ¤±¤Îµ¡Ç½¸¡ºº¥Þ¥¯¥í¤ÎÍ×·ï
60 .RB ( feature_test_macros (7)
70 _BSD_SOURCE || _SVID_SOURCE
74 ÀΤϰŹ沽¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤ò¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤Ë
75 ¸«¤¨¤ë¤è¤¦¤Ë¸ø³«¤·¤Æ¤ª¤¤¤Æ¤â°ÂÁ´¤À¤È¹Í¤¨¤é¤ì¤Æ¤¤¤¿¡£
76 Julianne Frances Haugh ¤Ï shadow ¥Ñ¥¹¥ï¡¼¥É¡¦¥¹¥¤¡¼¥È¤ò¼ÂÁõ¤·¤¿¡£
77 ¤³¤ì¤Ï°Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤ò¡¢root ¤Î¤ß¤¬Æɤळ¤È¤¬¤Ç¤¤ë
78 shadow ¥Ñ¥¹¥ï¡¼¥É¡¦¥Ç¡¼¥¿¥Ù¡¼¥¹ (Î㤨¤Ð¡¢
79 ¥í¡¼¥«¥ë¤Î shadow ¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë
84 °Ê²¼¤ÇÀâÌÀ¤¹¤ë´Ø¿ô¤Ï¡¢ÅÁÅýŪ¤Ê¥Ñ¥¹¥ï¡¼¥É¡¦¥Ç¡¼¥¿¥Ù¡¼¥¹¤ËÂФ¹¤ë
85 ´Ø¿ô¤Ë»÷¤Æ¤¤¤ë (Î㤨¤Ð
90 .\" FIXME °Ê²¼¤ò°ì»þŪ¤Ë¥³¥á¥ó¥È¥¢¥¦¥È¤·¤¿¡£
91 .\" PAM ¤È nsswitch.conf ¤Î´Ø·¸¤Ë¤Ä¤¤¤Æ¤Ï¡¢¥æ¡¼¥¶¡¢¥°¥ë¡¼¥×¡¢shadow
92 .\" ¥Ñ¥¹¥ï¡¼¥É¤Î´Ø¿ô¤Ë¤Ä¤¤¤Æ¤Î¥Ú¡¼¥¸¤«¤é»²¾È¤µ¤ì¤ë¤É¤³¤«¤Ë¤Ï¤Ã¤¤ê¤È
93 .\" µºÜ¤·¤Æ¤ª¤¯É¬Íפ¬¤¢¤ë¡£
96 .\" ¤³¤Î shadow ¥Ñ¥¹¥ï¡¼¥É¤ÎÀßÄê¤Ï
97 .\" PAM (pluggable authentication modules) ¤Ç¼è¤êÂؤ¨¤ë¤³¤È¤¬¤Ç¤¤ë¡£
98 .\" ¸½ºß¤Î¤È¤³¤í¡¢¤É¤Î¾ðÊ󸻤ò»ÈÍѤ¹¤ë¤«¤Ï
99 .\" .I /etc/nsswitch.conf
100 .\" ¥Õ¥¡¥¤¥ë¤Ëµ½Ò¤µ¤ì¤ë¡£
105 ¤Ë¥Þ¥Ã¥Á¤¹¤ë shadow ¥Ñ¥¹¥ï¡¼¥É¡¦¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¥¨¥ó¥È¥ê¤ò
106 Í×ÁÇËè¤Ëʬ²ò¤·¡¢³ÆÍ×ÁǤò³ÊǼ¤·¤¿¹½Â¤ÂΤؤΥݥ¤¥ó¥¿¤òÊÖ¤¹¡£
109 ´Ø¿ô¤Ï shadow ¥Ñ¥¹¥ï¡¼¥É¡¦¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¤ª¤±¤ë¼¡¤Î¥¨¥ó¥È¥ê¤Ø¤Î¥Ý¥¤¥ó¥¿¤òÊÖ¤¹¡£
110 ÆþÎÏ¥¹¥È¥ê¡¼¥à¤Ë¤ª¤±¤ë°ÌÃ֤ϡ¢
113 Æɤ߹þ¤ß¤¬½ª¤ï¤Ã¤¿¸å¤Ë¡¢
115 ¤ò¸Æ¤Ó½Ð¤¹¤È¡¢¥ê¥½¡¼¥¹¤ò²òÊü¤Ç¤¤ë¡£
116 .\" ºÇ½é¤Ë getspent() ¤ò¸Æ¤Ó½Ð¤¹Á°¤Ë¡¢
117 .\" setspent() ¤ò¸Æ¤Ó½Ð¤µ¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¥·¥¹¥Æ¥à¤â¤¢¤ë¡£
118 .\" glibc ¤Ç¤Ï¤½¤ÎɬÍפ¬¤Ê¤¤¡£
125 ¤Ç°ÅÌۤΤ¦¤Á¤Ë¥ª¡¼¥×¥ó¤µ¤ì¤ë¥¹¥È¥ê¡¼¥à¤Ç¤Ï¤Ê¤¯¡¢Í¿¤¨¤é¤ì¤¿¥¹¥È¥ê¡¼¥à¤ò»È¤¦¡£
128 ´Ø¿ô¤ÏÍ¿¤¨¤é¤ì¤¿Ê¸»úÎó
135 ´Ø¿ô¤ÏÍ¿¤¨¤é¤ì¤¿ struct
138 ¤ÎÆâÍƤò shadow ¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë·Á¼°¤Î¥Æ¥¥¹¥È¹Ô¤Ç¥¹¥È¥ê¡¼¥à
142 Ãͤ¬ NULL ¤Îʸ»úÎ󥨥ó¥È¥ê¤ÈÃͤ¬ \-1 ¤Î¿ôÃÍ¥¨¥ó¥È¥ê¤¬
146 ´Ø¿ô¤Ï¡¢ shadow ¥Ñ¥¹¥ï¡¼¥É¡¦¥Ç¡¼¥¿¥Ù¡¼¥¹¤ò
147 ¿½ÅƱ»þ¥¢¥¯¥»¥¹¤«¤é¼é¤ë¤¿¤á¤Î¤â¤Î¤Ç¤¢¤ë¡£
148 ¤³¤Î´Ø¿ô¤Ï¥í¥Ã¥¯¤Î³ÍÆÀ¤ò»î¤ß¡¢
149 À®¸ù¤·¤¿¾ì¹ç¤Ï 0 ¤òÊÖ¤¹¡£
150 ¼ºÇÔ¤·¤¿¾ì¹ç (15 ÉðÊÆâ¤Ë¥í¥Ã¥¯¤¬¼èÆÀ¤Ç¤¤Ê¤«¤Ã¤¿¾ì¹ç) ¤Ï \-1 ¤òÊÖ¤¹¡£
152 ´Ø¿ô¤Ï¥í¥Ã¥¯¤òºÆ¤Ó²òÊü¤¹¤ë¡£
153 shadow ¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤Ø¤ÎľÀÜ¥¢¥¯¥»¥¹¤«¤é
154 Êݸ¤ë¼êÃʤ¬¤Ê¤¤ÅÀ¤ËÃí°Õ¤¹¤ë¤³¤È¡£
156 ¤ò»È¤¦¥×¥í¥°¥é¥à¤À¤±¤¬¥í¥Ã¥¯¤òÄÌÃΤǤ¤ë¡£
158 ¤³¤ì¤é¤Î´Ø¿ô¤Ï¥ª¥ê¥¸¥Ê¥ë¤Î shadow API ¤ò¹½À®¤·¤Æ¤¤¤¿´Ø¿ô¤Ç¤¢¤ê¡¢
159 ¤¤¤í¤¤¤í¤Ê¥·¥¹¥Æ¥à¤Ç¹¤¯ÍøÍѲÄǽ¤Ç¤¢¤ë¡£
160 .\" libc5 ¤Ç¤âÍøÍѲÄǽ¤Ç¤¢¤ë¡£
161 .\" SUN ¤Ë¤Ï sgetspent() ¤¬¤Ê¤¤¡£
163 ¥Ñ¥¹¥ï¡¼¥É¡¦¥Ç¡¼¥¿¥Ù¡¼¥¹¤ËÂФ¹¤ë¥ê¥¨¥ó¥È¥é¥ó¥ÈÈǤÈƱ¤¸¤è¤¦¤Ë¡¢
164 glibc ¤Ë¤Ï shadow ¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¥ê¥¨¥ó¥È¥é¥ó¥ÈÈǤ¬¤¢¤ë¡£
168 ¤È»÷¤Æ¤¤¤ë¤¬¡¢¼èÆÀ¤·¤¿ shadow ¥Ñ¥¹¥ï¡¼¥É¹½Â¤ÂΤò
170 ¤¬»Ø¤¹Îΰè¤Ë³ÊǼ¤¹¤ë¡£
171 shadow ¥Ñ¥¹¥ï¡¼¥É¹½Â¤ÂΤÏʸ»úÎ󷲤ؤΥݥ¤¥ó¥¿¤ò´Þ¤ß¡¢
172 ¤³¤ì¤é¤Îʸ»úÎ󷲤ϥµ¥¤¥º
178 ¤Ë¤Ï (À®¸ù¤·¤¿¾ì¹ç¤Ï) ·ë²Ì¤Ø¤Î¥Ý¥¤¥ó¥¿¤¬³ÊǼ¤µ¤ì¡¢
179 (¥¨¥ó¥È¥ê¤¬¸«¤Ä¤«¤é¤Ê¤«¤Ã¤¿¾ì¹ç¤Þ¤¿¤Ï¥¨¥é¡¼¤¬µ¯¤³¤Ã¤¿¾ì¹ç¤Ï)
186 ¤Ï¤½¤ì¤¾¤ì¥ê¥¨¥ó¥È¥é¥ó¥È¤Ç¤Ê¤¤¥Ð¡¼¥¸¥ç¥ó¤ÈƱÍͤε¡Ç½¤ò»ý¤Ä¡£
188 glibc ¤Ç¤Ê¤¤¥·¥¹¥Æ¥à¤Ë¤â¤³¤ì¤é¤ÈƱ¤¸Ì¾Á°¤Î´Ø¿ô¤¬¤¢¤ë¤¬¡¢
189 ¥×¥í¥È¥¿¥¤¥×¤¬°Û¤Ê¤ë¤³¤È¤â¿¤¤¡£
190 .\" SUN ¤Ë¤Ï sgetspent_r() ¤¬¤Ê¤¤¡£
192 shadow ¥Ñ¥¹¥ï¡¼¥É¹½Â¤ÂÎ¤Ï \fI<shadow.h>\fP ¤Ç°Ê²¼¤Î¤è¤¦¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ë:
197 char *sp_namp; /* ¥í¥°¥¤¥ó̾ */
198 char *sp_pwdp; /* °Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É */
199 long sp_lstchg; /* ºÇ½ª¹¹¿·Æü
200 (1970-01-01 00:00:00 +0000 (UTC)) ¤«¤é¤ÎÆü¿ô) */
201 long sp_min; /* Êѹ¹¤¬½ÐÍè¤ë¤è¤¦¤Ë¤Ê¤ë¤Þ¤Ç¤ÎºÇûÆü¿ô */
202 long sp_max; /* Êѹ¹¤ò¤·¤Ê¤¯¤Æ¤â¤è¤¤ºÇĹÆü¿ô */
203 long sp_warn; /* ¥Ñ¥¹¥ï¡¼¥É¤¬´ü¸ÂÀÚ¤ì¤Ë¤Ê¤ëÁ°¤Ë
204 ¥æ¡¼¥¶¤ËÊѹ¹¤Î·Ù¹ð¤ò½Ð¤¹Æü¿ô */
205 long sp_inact; /* ¥Ñ¥¹¥ï¡¼¥É¤¬´ü¸ÂÀÚ¤ì¤Ë¤Ê¤Ã¤Æ¤«¤é
206 ¥¢¥«¥¦¥ó¥È¤¬Ìµ¸ú¤Ë¤Ê¤ë¤Þ¤Ç¤ÎÆü¿ô */
207 long sp_expire; /* ¥¢¥«¥¦¥ó¥È¤¬Ìµ¸ú¤Ë¤Ê¤ëÆüÉÕ
208 (1970-01-01 00:00:00 +0000 (UTC)) ¤«¤é¤ÎÆü¿ô) */
209 unsigned long sp_flag; /* ͽÌó¥Õ¥£¡¼¥ë¥É */
214 ¥Ý¥¤¥ó¥¿¤òÊÖ¤¹´Ø¿ô¤Ï¡¢¤³¤ì°Ê¾å¥¨¥ó¥È¥ê¤¬¤Ê¤¤¾ì¹ç¤ä
215 ½èÍýÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç NULL ¤òÊÖ¤¹¡£
216 \fIint\fP ¤òÊÖ¤êÃͤȤ·¤Æ»ý¤Ä´Ø¿ô¤Ï¡¢
217 À®¸ù¤·¤¿¾ì¹ç 0 ¤òÊÖ¤·¡¢¼ºÇÔ¤·¤¿¾ì¹ç \-1 ¤òÊÖ¤¹¡£
219 ¥ê¥¨¥ó¥È¥é¥ó¥ÈÈǤǤʤ¤´Ø¿ô¤Ç¤Ï¡¢ÊÖ¤êÃͤ¬ÀÅŪ¤ÊÎΰè¤ò»Ø¤·¤Æ¤ª¤ê¡¢
220 °ú¤Â³¤¤¤Æ¤³¤ì¤é¤Î´Ø¿ô¤ò¸Æ¤Ó½Ð¤·¤¿¾ì¹ç¤Ë¾å½ñ¤¤µ¤ì¤ë²ÄǽÀ¤¬¤¢¤ë¡£
222 ¥ê¥¨¥ó¥È¥é¥ó¥ÈÈǤδؿô¤Ï¡¢À®¸ù¤·¤¿¾ì¹ç¤Ë 0 ¤òÊÖ¤¹¡£
223 ¥¨¥é¡¼¤Î¾ì¹ç¤Ï¡¢¥¨¥é¡¼Èֹ椬ÊÖ¤µ¤ì¤ë¡£
227 Í¿¤¨¤é¤ì¤¿¥Ð¥Ã¥Õ¥¡¤¬¾®¤µ¤¹¤®¤ë¡£
231 ¥í¡¼¥«¥ë¤Î shadow ¥Ñ¥¹¥ï¡¼¥É¡¦¥Ç¡¼¥¿¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë
241 ¤³¤ì¤Ï shadow ¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹Ì¾¤Ç¤¢¤ë¡£
243 shadow ¥Ñ¥¹¥ï¡¼¥É¡¦¥Ç¡¼¥¿¥Ù¡¼¥¹¤È´ØÏ¢ API ¤Ï POSIX.1-2001
244 ¤Ë¤ÏµºÜ¤µ¤ì¤Æ¤¤¤Ê¤¤¡£¤·¤«¤·¤Ê¤¬¤é¡¢Â¿¤¯¤Î¾¤Î¥·¥¹¥Æ¥à¤Ç¤â
245 ƱÍͤΠAPI ¤¬Ä󶡤µ¤ì¤Æ¤¤¤ë¡£