Date: Sunday March 03, 2019 @ 20:40 Author: argrath Update of /cvsroot/perldocjp/docs/modules/File-Temp-0.12 In directory sf-cvs:/tmp/cvs-serv84068/modules/File-Temp-0.12 Modified Files: Temp.pod Log Message: cosmetic changes =================================================================== File: Temp.pod Status: Up-to-date Working revision: 1.5 Sun Mar 3 11:40:36 2019 Repository revision: 1.5 /cvsroot/perldocjp/docs/modules/File-Temp-0.12/Temp.pod,v Existing Tags: No Tags Exist -------------- next part -------------- Index: docs/modules/File-Temp-0.12/Temp.pod diff -u docs/modules/File-Temp-0.12/Temp.pod:1.4 docs/modules/File-Temp-0.12/Temp.pod:1.5 --- docs/modules/File-Temp-0.12/Temp.pod:1.4 Sun Mar 3 02:19:07 2019 +++ docs/modules/File-Temp-0.12/Temp.pod Sun Mar 3 20:40:36 2019 @@ -117,8 +117,10 @@ =end original C<File::Temp> ¤Ï¡¢°ÂÁ´¤ÊÊýË¡¤Ç¡¢¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¡¢¥ª¡¼¥×¥ó¤¹¤ë¤Î¤Ë¡¢ -»È¤¦¤³¤È¤¬½ÐÍè¤Þ¤¹¡£tempfile() ´Ø¿ô¤Ï¡¢¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤Î̾Á°¤È¡¢ -³«¤¤¤¿¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤òÊÖ¤·¤Þ¤¹¡£tempdir() ´Ø¿ô¤Ï¡¢ +»È¤¦¤³¤È¤¬½ÐÍè¤Þ¤¹¡£ +tempfile() ´Ø¿ô¤Ï¡¢¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤Î̾Á°¤È¡¢ +³«¤¤¤¿¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤òÊÖ¤·¤Þ¤¹¡£ +tempdir() ´Ø¿ô¤Ï¡¢ ¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤¹¤ë¤Î¤Ë¡¢»È¤ï¤ì¤Þ¤¹¡£ =begin original @@ -141,7 +143,7 @@ ÄɲäΥ»¥¥å¥ê¥Æ¥£¥ì¥Ù¥ë¤¬Ä󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£ ¤¿¤È¤¨¤Ð¡¢¥¹¥Æ¥£¥Ã¥¡¼¥Ó¥Ã¥È¤¬À¤³¦¤¬½ñ¤¹þ¤ß²Äǽ¤Ê¥Ç¥£¥ì¥¯¥È¥ê¤Ë ¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤ë¤«¤Î¥Á¥§¥Ã¥¯¤Ç¤¹¡£ -¾ÜºÙ¤Ï¡¢L<"safe_level">¤ò¸«¤Æ¤¯¤À¤µ¤¤¡£ +¾ÜºÙ¤Ï¡¢L<"safe_level"> ¤ò¸«¤Æ¤¯¤À¤µ¤¤¡£ =begin original @@ -151,9 +153,9 @@ =end original -°ìÈÌŪ¤ÊC¥é¥¤¥Ö¥é¥ê´Ø¿ô¤È¤Î¸ß´¹À¤Î¤¿¤á¤Ë¡¢ -mkstemp() ´Ø¿ô¤ÎÃç´Ö¤¬¡¢Perl¤Î¼ÂÁõ¤¬Ä󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£ -mkstemp(), mkstemps(), mkdtemp, mktemp ¤¬¤¢¤ê¤Þ¤¹¡£ +°ìÈÌŪ¤Ê C ¥é¥¤¥Ö¥é¥ê´Ø¿ô¤È¤Î¸ß´¹À¤Î¤¿¤á¤Ë¡¢ +mkstemp() ´Ø¿ô¤ÎÃç´Ö¤¬¡¢Perl ¤Î¼ÂÁõ¤¬Ä󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£ +mkstemp(), mkstemps(), mkdtemp(), mktemp() ¤¬¤¢¤ê¤Þ¤¹¡£ =begin original @@ -162,8 +164,8 @@ =end original -¤¯¤ï¤¨¤Æ¡¢É¸½à¤ÎL<POSIX|POSIX>¤Î¼ÂÁõ¤Ç¤¢¤ë¡¢tmpnam() ¤È¡¢tmpfile() -¤¬¡¢É¬Íפʤ顢Ä󶡤µ¤ì¤Þ¤¹¡£ +¤¯¤ï¤¨¤Æ¡¢É¸½à¤Î L<POSIX|POSIX> ¤Î¼ÂÁõ¤Ç¤¢¤ë¡¢tmpnam() ¤È¡¢tmpfile() ¤¬¡¢ +ɬÍפʤ顢Ä󶡤µ¤ì¤Þ¤¹¡£ =begin original @@ -174,10 +176,12 @@ =end original -mktemp(), tmpanam(), tempnam()¤Î¼ÂÁõ¤ÏÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£ -¤Ç¤¹¤¬¡¢ÍÑ¿´¤·¤Æ»È¤ï¤ì¤ë¤Ù¤¤Ç¤¹¡£¤È¤¤¤¦¤Î¤Ï¡¢¤³¤ì¤é¤Ï¡¢ +mktemp(), tmpanam(), tempnam() ¤Î¼ÂÁõ¤ÏÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£ +¤Ç¤¹¤¬¡¢ÍÑ¿´¤·¤Æ»È¤ï¤ì¤ë¤Ù¤¤Ç¤¹¡£ +¤È¤¤¤¦¤Î¤Ï¡¢¤³¤ì¤é¤Ï¡¢ ´Ø¿ô¤¬¸Æ¤Ð¤ì¤ë¤È¡¢ÂÅÅö¤Ê¥Õ¥¡¥¤¥ë̾¤À¤±¤òÊÖ¤·¤Þ¤¹¡£ -¥Õ¥¡¥¤¥ë¤¬¡¢¸Æ¤Ó½Ð¤·¤¿¿Í¤¬¥Õ¥¡¥¤¥ë¤ò³«¤¯»þ¤Ë¸ºß¤·¤Æ¤¤¤Ê¤¤¤³¤È¤òÊݾڤǤ¤Þ¤»¤ó¡£ +¥Õ¥¡¥¤¥ë¤¬¡¢¸Æ¤Ó½Ð¤·¤¿¿Í¤¬¥Õ¥¡¥¤¥ë¤ò³«¤¯»þ¤Ë¸ºß¤·¤Æ¤¤¤Ê¤¤¤³¤È¤ò +ÊݾڤǤ¤Þ¤»¤ó¡£ =head1 FUNCTIONS @@ -190,7 +194,8 @@ =end original -¤³¤Î¥»¥¯¥·¥ç¥ó¤Ç¤Ï¡¢¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤È¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤òÀ¸À®¤¹¤ë¤¿¤á¤Î¡¢ +¤³¤Î¥»¥¯¥·¥ç¥ó¤Ç¤Ï¡¢¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤È¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤ò +À¸À®¤¹¤ë¤¿¤á¤Î¡¢ ¿ä¾©¤µ¤ì¤ë¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£ =over 4 @@ -216,7 +221,7 @@ =end original -L<File::Spec>¤Îtmpdir() ´Ø¿ô¤ÇÆÃÄꤵ¤ì¤ë¡¢ +L<File::Spec> ¤Î tmpdir() ´Ø¿ô¤ÇÆÃÄꤵ¤ì¤ë¡¢ ¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ëÍѤΥǥ£¥ì¥¯¥È¥ê¤Ë¡¢¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£ ($fh, $filename) = tempfile($template); @@ -231,9 +236,10 @@ =end original ¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¡¢Ä󶡤µ¤ì¤¿¥Æ¥ó¥×¥ì¡¼¥È¤ò»È¤Ã¤Æ¡¢ -¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë¤¿¤á¤Ë¡¢ -Ê£¿ô¤Î`X'ʸ»ú¤Î¸å¤òÄɤ¦¤â¤Î¤¬¥é¥ó¥À¥à¤Êʸ»ú¤Ë¡¢ÃÖ¤´¹¤¨¤é¤ì¤Þ¤¹¡£ -¾¯¤Ê¤¯¤È¤â¡¢»Í¤Ä¤Î`X'ʸ»ú¤¬¥Æ¥ó¥×¥ì¡¼¥È¤ËÍ¿¤¨¤é¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ +¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£ +¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë¤¿¤á¤Ë¡¢ +Ê£¿ô¤Î `X' ʸ»ú¤Î¸å¤òÄɤ¦¤â¤Î¤¬¥é¥ó¥À¥à¤Êʸ»ú¤Ë¡¢ÃÖ¤´¹¤¨¤é¤ì¤Þ¤¹¡£ +¾¯¤Ê¤¯¤È¤â¡¢»Í¤Ä¤Î `X' ʸ»ú¤¬¥Æ¥ó¥×¥ì¡¼¥È¤ËÍ¿¤¨¤é¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ ($fh, $filename) = tempfile($template, SUFFIX => $suffix) @@ -246,7 +252,7 @@ =end original -`X'¤ÎÊÑ´¹¤Î¸å¤Ë¡¢ÀÜÈø»þ¤¬²Ã¤¨¤é¤ì¤ë¤³¤È¤ò½ü¤¤¤Æ¡¢Á°¤Î¤â¤Î¤È¡¢Æ±¤¸¤Ç¤¹¡£ +`X' ¤ÎÊÑ´¹¤Î¸å¤Ë¡¢ÀÜÈø»þ¤¬²Ã¤¨¤é¤ì¤ë¤³¤È¤ò½ü¤¤¤Æ¡¢Á°¤Î¤â¤Î¤È¡¢Æ±¤¸¤Ç¤¹¡£ ¾¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÇɬÍפȤµ¤ì¤ë¤È¤¤Ë¡¢ ¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤ËÆÃÊ̤γÈÄ¥»Ò¤¬¤¢¤ë¤è¤¦¤Ë¤·¤¿¤¤¤Ê¤é¡¢ÊØÍø¤Ç¤¹¡£ ¤Ç¤¹¤¬¡¢ºÇ¸å¤Î¡¢·Ù¹ð¤ò¸«¤Æ¤¯¤À¤µ¤¤¡£ @@ -279,7 +285,7 @@ ¥×¥í¥°¥é¥à¤¬exit¤·¤¿¤È¤¤Ë¡¢¼«Æ°Åª¤Ë¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤¬ºï½ü¤µ¤ì¤Þ¤¹¡£ ¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥Õ¥¡¥¤¥ë¤Ï¡¢¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤¬Í׵ᤵ¤ì¤ì¤Ðºï½ü¤µ¤ì¡¢ ¥Õ¥¡¥¤¥ë̾¤¬Í׵ᤵ¤ì¤ì¤ÐÊÝ»ý¤µ¤ì¤Þ¤¹¡£ -(¥Õ¥¡¥¤¥ë̾¤¬ÊÖ¤µ¤ì¤Ê¤¤)¥¹¥«¥é¥³¥ó¥Æ¥¥¹¥È¤Ç¤Ï¡¢exit¤«¡¢¥¯¥í¡¼¥º¤µ¤ì¤ì¤Ð¡¢ +(¥Õ¥¡¥¤¥ë̾¤¬ÊÖ¤µ¤ì¤Ê¤¤)¥¹¥«¥é¥³¥ó¥Æ¥¥¹¥È¤Ç¤Ï¡¢exit ¤«¡¢¥¯¥í¡¼¥º¤µ¤ì¤ì¤Ð¡¢ ¥Õ¥¡¥¤¥ë¤Ï¤¤¤Ä¤âºï½ü¤µ¤ì¤Þ¤¹¡£ =begin original @@ -292,9 +298,10 @@ =end original ¥Æ¥ó¥×¥ì¡¼¥È»ØÄꤷ¤Ê¤±¤ì¤Ð¡¢¥Æ¥ó¥×¥ì¡¼¥È¤Ï¤¤¤Ä¤â¡¢ -¼«Æ°Åª¤ËÀ¸À®¤µ¤ì¤Þ¤¹¡£¤³¤Î¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤Ï¡¢ -DIR¥ª¥×¥·¥ç¥ó¤Ç¡¢ÌÀ¼¨Åª¤Ë¥Ç¥£¥ì¥¯¥È¥ê¤¬»ØÄꤵ¤ì¤Ê¤±¤ì¤Ð¡¢ -tmpdir()(L<File::Spec>)¤ËÃÖ¤«¤ì¤Þ¤¹¡£ +¼«Æ°Åª¤ËÀ¸À®¤µ¤ì¤Þ¤¹¡£ +¤³¤Î¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤Ï¡¢ +DIR ¥ª¥×¥·¥ç¥ó¤Ç¡¢ÌÀ¼¨Åª¤Ë¥Ç¥£¥ì¥¯¥È¥ê¤¬»ØÄꤵ¤ì¤Ê¤±¤ì¤Ð¡¢ +tmpdir()(L<File::Spec>) ¤ËÃÖ¤«¤ì¤Þ¤¹¡£ $fh = tempfile( $template, DIR => $dir ); @@ -314,15 +321,16 @@ =end original ¥¹¥«¥é¥³¥ó¥Æ¥¥¹¥È¤Ç¸Æ¤Ð¤ë¤È¡¢¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤¬ÊÖ¤µ¤ì¡¢ -¥¯¥í¡¼¥º¤µ¤ì¤ë¤È(¤³¤Î¥É¥¥å¥á¥ó¥È¤Î¾¤Î¾ì½ê¤Ç¡¢tmpfile ¤ò¸«¤Æ¤¯¤À¤µ¤¤)¡¢ +¥¯¥í¡¼¥º¤µ¤ì¤ë¤È(¤³¤Î¥É¥¥å¥á¥ó¥È¤Î¾¤Î¾ì½ê¤Ç¡¢tmpfile() ¤ò¸«¤Æ¤¯¤À¤µ¤¤)¡¢ ¥Õ¥¡¥¤¥ë¤Ï¼«Æ°Åª¤Ëºï½ü¤µ¤ì¤Þ¤¹¡£ ¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤À¤±¤ò»ý¤Ä¤Î¤Ê¤é¡¢¤³¤ì¤Ï¹¥¤Þ¤ì¤ë¤ä¤êÊý¤Ç¤¹¡£ ¥Õ¥¡¥¤¥ë¥Í¡¼¥à¤ò¤¤¤¸¤¯¤ë¤³¤È¤Ç¡¢¶¥¹ç¾ò·ï¤òºî¤ë¤³¤È¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ³«¤¤¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤òºï½ü¤Ç¤¤Ê¤¤¡¢¤Þ¤¿¡¢¥Õ¥¡¥¤¥ë¤ò³«¤¤¤Æ¤¤¤ë¤È¡¢ ¥Æ¥ó¥Ý¥é¥ê¤È¤·¤Æ¡¢¥Õ¥¡¥¤¥ë¤Ë¥Þ¡¼¥¯¤ò¤Ä¤±¤ë¤³¤È¤Î¤Ç¤¤Ê¤¤¡¢¥·¥¹¥Æ¥à¤Ç¤Ï -(¤¿¤È¤¨¤Ð¡¢Windows NT¤Ï¡¢C<O_TEMPORARY>¥Õ¥é¥°¤ò»È¤¤¤Þ¤¹)¡¢ +(¤¿¤È¤¨¤Ð¡¢Windows NT ¤Ï¡¢C<O_TEMPORARY> ¥Õ¥é¥°¤ò»È¤¤¤Þ¤¹)¡¢ ¥Õ¥¡¥¤¥ë¤Ï¡¢¥×¥í¥°¥é¥à¤¬½ª¤ë¤È¤¤Ë¡¢ºï½üÍѤΥޡ¼¥¯¤¬¤Ä¤±¤é¤ì¤Þ¤¹ -(UNLINK¤ò1¤ËÀßÄꤹ¤ë¤Î¤ÈƱ¤¸)¡£C<UNLINK> ¥Õ¥é¥°¤Ï¡¢¤¢¤Ã¤Æ¤â̵»ë¤µ¤ì¤Þ¤¹¡£ +(UNLINK ¤ò 1 ¤ËÀßÄꤹ¤ë¤Î¤ÈƱ¤¸)¡£ +C<UNLINK> ¥Õ¥é¥°¤Ï¡¢¤¢¤Ã¤Æ¤â̵»ë¤µ¤ì¤Þ¤¹¡£ (undef, $filename) = tempfile($template, OPEN => 0); @@ -376,7 +384,7 @@ =end original -tmpdir() ¤Ç¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤·¤Þ¤¹(L<File::Spec|File::Spec>¤ò¸«¤Æ¤¯¤À¤µ¤¤)¡£ +tmpdir() ¤Ç¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤·¤Þ¤¹(L<File::Spec|File::Spec> ¤ò¸«¤Æ¤¯¤À¤µ¤¤)¡£ $tempdir = tempdir( $template ); @@ -390,9 +398,10 @@ =end original Ä󶡤µ¤ì¤¿¥Æ¥ó¥×¥ì¡¼¥È¤«¤é¡¢¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤·¤Þ¤¹¡£ -¤³¤Î¥Æ¥ó¥×¥ì¡¼¥È¤Ïtempfile()¤ÇÀâÌÀ¤µ¤ì¤¿¤â¤Î¤È»÷¤Æ¤¤¤Þ¤¹¡£ -¥Æ¥ó¥×¥ì¡¼¥È¤Î½ª¤ê¤Î¡¢`X'ʸ»ú¤Ï¥é¥ó¥À¥à¤Êʸ»ú¤ËÃÖ¤´¹¤¨¤é¤ì¡¢ -¥Ç¥£¥ì¥¯¥È¥ê̾¤òºî¤ê¤Þ¤¹¡£¥Æ¥ó¥×¥ì¡¼¥È¤Ë¤Ï¡¢¾¯¤Ê¤¯¤È¤â¡¢4¤Ä¤Î`X'ʸ»ú¤¬¤Ê¤±¤ì¤Ð¤¤¤±¤Þ¤»¤ó¡£ +¤³¤Î¥Æ¥ó¥×¥ì¡¼¥È¤Ï tempfile() ¤ÇÀâÌÀ¤µ¤ì¤¿¤â¤Î¤È»÷¤Æ¤¤¤Þ¤¹¡£ +¥Æ¥ó¥×¥ì¡¼¥È¤Î½ª¤ê¤Î¡¢`X' ʸ»ú¤Ï¥é¥ó¥À¥à¤Êʸ»ú¤ËÃÖ¤´¹¤¨¤é¤ì¡¢ +¥Ç¥£¥ì¥¯¥È¥ê̾¤òºî¤ê¤Þ¤¹¡£ +¥Æ¥ó¥×¥ì¡¼¥È¤Ë¤Ï¡¢¾¯¤Ê¤¯¤È¤â¡¢4 ¤Ä¤Î `X' ʸ»ú¤¬¤Ê¤±¤ì¤Ð¤¤¤±¤Þ¤»¤ó¡£ $tempdir = tempdir ( DIR => $dir ); @@ -417,9 +426,10 @@ =end original -Ä󶡤µ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê̾¤ò¡¢¥Æ¥ó¥×¥ì¡¼¥È¤Ëpreend¤·¤Þ¤¹¡£ +Ä󶡤µ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê̾¤ò¡¢¥Æ¥ó¥×¥ì¡¼¥È¤Ë preend ¤·¤Þ¤¹¡£ ¥Æ¥ó¥×¥ì¡¼¥È¤Ï¡¢¿Æ¥Ç¥£¥ì¥¯¥È¥ê¤Î»ÅÍͤ½¤Î¤â¤Î¤ò´Þ¤à¤Ù¤¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ -Ä󶡤µ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê¤¬¡¢prepend¤¹¤ëÁ°¤Ë¡¢¿Æ¥Ç¥£¥ì¥¯¥È¥ê¤Î»ÅÍͤϡ¢¥Æ¥ó¥×¥ì¡¼¥È¤«¤éºï½ü¤µ¤ì¤Þ¤¹¡£ +Ä󶡤µ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê¤¬¡¢prepend ¤¹¤ëÁ°¤Ë¡¢¿Æ¥Ç¥£¥ì¥¯¥È¥ê¤Î»ÅÍͤϡ¢ +¥Æ¥ó¥×¥ì¡¼¥È¤«¤éºï½ü¤µ¤ì¤Þ¤¹¡£ $tempdir = tempdir ( $template, TMPDIR => 1 ); @@ -430,8 +440,9 @@ =end original -Ä󶡤µ¤ì¤¿template¤ò»È¤¦¤È¡¢¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤Î¤¿¤á¤Îɸ½à¤Î¾ì½ê¤Ë¡¢ -¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤òºî¤ê¤Þ¤¹¡£¼¡¤Î¤è¤¦¤Ë¤¹¤ë¤Î¤ÈƱ¤¸¤Ç¤¹¡£ +Ä󶡤µ¤ì¤¿ template ¤ò»È¤¦¤È¡¢¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤Î¤¿¤á¤Îɸ½à¤Î¾ì½ê¤Ë¡¢ +¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤òºî¤ê¤Þ¤¹¡£ +¼¡¤Î¤è¤¦¤Ë¤¹¤ë¤Î¤ÈƱ¤¸¤Ç¤¹¡£ $tempdir = tempdir ( $template, DIR => File::Spec->tmpdir); @@ -444,10 +455,13 @@ =end original -¤Ç¤¹¤¬¡¢¾å¤ÎÊý¤¬¡¢Ã»¤¤¡£¿Æ¥Ç¥£¥ì¥¯¥È¥ê¤Î»ÅÍͤϥƥó¥×¥ì¡¼¥È¼«¿È¤«¤é¡¢ -¤Ï¤®¼è¤é¤ì¤Þ¤¹¡£C<TMPDIR>¥ª¥×¥·¥ç¥ó¤ÏC<DIR>¤¬¡¢ÌÀ¼¨Åª¤Ë¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤ì¤Ð¡¢ -̵»ë¤µ¤ì¤Þ¤¹¡£²Ã¤¨¤Æ¡¢¥Æ¥ó¥×¥ì¡¼¥È¤â¥Ç¥£¥ì¥¯¥È¥ê¤âÄ󶡤µ¤ì¤Ê¤±¤ì¤Ð¡¢ -C<TMPDIR>¤Ï¡¢°Å¤Ë¤Õ¤¯¤Þ¤ì¤Þ¤¹¡£ +¤Ç¤¹¤¬¡¢¾å¤ÎÊý¤¬¡¢Ã»¤¤¡£ +¿Æ¥Ç¥£¥ì¥¯¥È¥ê¤Î»ÅÍͤϥƥó¥×¥ì¡¼¥È¼«¿È¤«¤é¡¢ +¤Ï¤®¼è¤é¤ì¤Þ¤¹¡£ +C<TMPDIR> ¥ª¥×¥·¥ç¥ó¤Ï C<DIR> ¤¬¡¢ÌÀ¼¨Åª¤Ë¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤ì¤Ð¡¢ +̵»ë¤µ¤ì¤Þ¤¹¡£ +²Ã¤¨¤Æ¡¢¥Æ¥ó¥×¥ì¡¼¥È¤â¥Ç¥£¥ì¥¯¥È¥ê¤âÄ󶡤µ¤ì¤Ê¤±¤ì¤Ð¡¢ +C<TMPDIR> ¤Ï¡¢°Å¤Ë¤Õ¤¯¤Þ¤ì¤Þ¤¹¡£ $tempdir = tempdir( $template, CLEANUP => 1); @@ -465,12 +479,15 @@ =end original ¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤òÄ󶡤µ¤ì¤¿¥Æ¥ó¥×¥ì¡¼¥È¤ò»È¤Ã¤ÆºîÀ®¤·¤Þ¤¹¡£ -¤Ç¤¹¤¬¡¢¥×¥í¥°¥é¥à¤¬½ªÎ»¤¹¤ë¤È¤¤Ë¡¢¤½¤ì(¤È¡¢¤½¤ÎÃæ¤ÎÁ´¤Æ¤Î¥Õ¥¡¥¤¥ë)¤òºï½ü¤·¤è¤¦¤È¤·¤Þ¤¹¡£ -»î¤ß¤Ï¡¢¤³¤Î¥â¥¸¥å¡¼¥ë¤¬ºî¤Ã¤Æ¤¤¤Ê¤¤¤â¤Î¤Þ¤Ç¤â¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¡¢Á´¤Æ¤Î¥Õ¥¡¥¤¥ë¤ò -ºï½ü¤·¤è¤¦¤È¤·¤Þ¤¹ (otherwise why ask to clean it up?)¡£ -¥Ç¥£¥ì¥¯¥È¥ê¤Î½üµî¤Ï¡¢L<File::Path|File::Path>¤Îrmtree()´Ø¿ô¤Ç¡¢¹Ô¤Ê¤ï¤ì¤Þ¤¹¡£ +¤Ç¤¹¤¬¡¢¥×¥í¥°¥é¥à¤¬½ªÎ»¤¹¤ë¤È¤¤Ë¡¢¤½¤ì(¤È¡¢¤½¤ÎÃæ¤ÎÁ´¤Æ¤Î¥Õ¥¡¥¤¥ë)¤ò +ºï½ü¤·¤è¤¦¤È¤·¤Þ¤¹¡£ +»î¤ß¤Ï¡¢¤³¤Î¥â¥¸¥å¡¼¥ë¤¬ºî¤Ã¤Æ¤¤¤Ê¤¤¤â¤Î¤Þ¤Ç¤â¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¡¢ +Á´¤Æ¤Î¥Õ¥¡¥¤¥ë¤òºï½ü¤·¤è¤¦¤È¤·¤Þ¤¹ (otherwise why ask to clean it up?)¡£ +¥Ç¥£¥ì¥¯¥È¥ê¤Î½üµî¤Ï¡¢L<File::Path|File::Path> ¤Î rmtree() ´Ø¿ô¤Ç¡¢ +¹Ô¤Ê¤ï¤ì¤Þ¤¹¡£ ¤â¤Á¤í¤ó¡¢¥Æ¥ó¥×¥ì¡¼¥È¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¡¢ -¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢tempdir()¤Ëºî¤é¤ì¡¢¥×¥í¥°¥é¥à¤Î½ªÎ»»þ¤Ë¡¢ºï½ü¤µ¤ì¤Þ¤¹¡£ +¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢tempdir() ¤Ëºî¤é¤ì¡¢¥×¥í¥°¥é¥à¤Î½ªÎ»»þ¤Ë¡¢ +ºï½ü¤µ¤ì¤Þ¤¹¡£ =back @@ -485,8 +502,8 @@ =end original -²¼µ¤Î´Ø¿ô¤Ï¡¢temp¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë¥·¥¹¥Æ¥à¥³¡¼¥ë¤Î¡¢ -mktemp()¤ÎÃç´Ö¤Î¡¢Perl¤Î¼ÂÁõ¤Ç¤¹¡£ +²¼µ¤Î´Ø¿ô¤Ï¡¢temp ¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë¥·¥¹¥Æ¥à¥³¡¼¥ë¤Î¡¢ +mktemp() ¤ÎÃç´Ö¤Î¡¢Perl ¤Î¼ÂÁõ¤Ç¤¹¡£ =over 4 @@ -520,8 +537,9 @@ =end original -¥Æ¥ó¥×¥ì¡¼¥È¤Ï¡¢¤¤¤¯¤Ä¤«¤Î`X'¤¬¤Ä¤±¤é¤ì¤¿¥Õ¥¡¥¤¥ë̾¤Ç¤·¤ç¤¦¡£ -¤¿¤È¤¨¤Ð¡¢F</tmp/tmp.XXXX>¡£¸å¤Î X¤Ï¡¢¥æ¥Ë¡¼¥¯¤Ê±Ñ¿ô»ú¤ÎÁȹ礻¤ËÃÖ¤´¹¤¨¤é¤ì¤Þ¤¹¡£ +¥Æ¥ó¥×¥ì¡¼¥È¤Ï¡¢¤¤¤¯¤Ä¤«¤Î `X' ¤¬¤Ä¤±¤é¤ì¤¿¥Õ¥¡¥¤¥ë̾¤Ç¤·¤ç¤¦¡£ +¤¿¤È¤¨¤Ð¡¢F</tmp/tmp.XXXX>¡£ +¸å¤Î X ¤Ï¡¢¥æ¥Ë¡¼¥¯¤Ê±Ñ¿ô»ú¤ÎÁȹ礻¤ËÃÖ¤´¹¤¨¤é¤ì¤Þ¤¹¡£ =item B<mkstemps> @@ -533,7 +551,8 @@ =end original -mkstemp()¤Ë»÷¤Æ¤¤¤Þ¤¹¡£¤¿¤À¤·¡¢ÆÃÊ̤ʰú¿ô¤òÍ¿¤¨¤Æ¡¢ +mkstemp() ¤Ë»÷¤Æ¤¤¤Þ¤¹¡£ +¤¿¤À¤·¡¢ÆÃÊ̤ʰú¿ô¤òÍ¿¤¨¤Æ¡¢ ¥Æ¥ó¥×¥ì¡¼¥È¤ËÀÜÈø»ú¤òÄɲ乤뤳¤È¤¬¤Ç¤¤Þ¤¹¡£ ($fh, $name) = mkstemps( $template, $suffix ); @@ -545,8 +564,8 @@ =end original -Î㤨¤Ð¡¢C<testXXXXXX>¤Î¥Æ¥ó¥×¥ì¡¼¥È¤È¡¢C<.dat>¤ÎÀÜÈø»ú¤Ï¡¢ -F<testthGji_w.dat>¤Î¤è¤¦¤Ê¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë¤Ç¤·¤ç¤¦¡£ +Î㤨¤Ð¡¢C<testXXXXXX> ¤Î¥Æ¥ó¥×¥ì¡¼¥È¤È¡¢C<.dat> ¤ÎÀÜÈø»ú¤Ï¡¢ +F<testthGji_w.dat> ¤Î¤è¤¦¤Ê¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë¤Ç¤·¤ç¤¦¡£ =begin original @@ -567,7 +586,7 @@ ¥Æ¥ó¥×¥ì¡¼¥È¤«¤é¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤·¤Þ¤¹¡£ ¥ë¡¼¥Á¥ó¤Ë¤è¤Ã¤ÆÃÖ¤´¹¤¨¤é¤ì¤ë¥Æ¥ó¥×¥ì¡¼¥È¤Ï¡¢ -Ê£¿ô¤ÎX¤Ç½ª¤Ã¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ +Ê£¿ô¤Î X ¤Ç½ª¤Ã¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ $tmpdir_name = mkdtemp($template); @@ -579,7 +598,7 @@ =end original ºîÀ®¤µ¤ì¤¿¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤Î̾Á°¤òÊÖ¤·¤Þ¤¹¡£ -¼ºÇÔ¤¹¤ë¤Èundef¤¬ÊÖ¤ê¤Þ¤¹¡£ +¼ºÇÔ¤¹¤ë¤È undef ¤¬ÊÖ¤ê¤Þ¤¹¡£ =begin original @@ -609,7 +628,7 @@ =end original -¥Æ¥ó¥×¥ì¡¼¥È¤Ï¡¢mkstemp()¤ÇɬÍפȤµ¤ì¤ë¤Î¤ÈƱ¤¸¤Ç¤¹¡£ +¥Æ¥ó¥×¥ì¡¼¥È¤Ï¡¢mkstemp() ¤ÇɬÍפȤµ¤ì¤ë¤Î¤ÈƱ¤¸¤Ç¤¹¡£ =back @@ -625,8 +644,8 @@ =end original -¤³¤Î¥»¥¯¥·¥ç¥ó¤Ï¡¢¤³¤Î¥â¥¸¥å¡¼¥ë¤«¤é mkstemp()¤ò»È¤Ã¤Æ¤¤¤ë¡¢ -L<POSIX>¤ËÀâÌÀ¤µ¤ì¤Æ¤¤¤ë tmpnam()¤Ètmpfile()´Ø¿ô¤ÎºÆ¼ÂÁõ¤òÀâÌÀ¤·¤Æ¤¤¤Þ¤¹¡£ +¤³¤Î¥»¥¯¥·¥ç¥ó¤Ï¡¢¤³¤Î¥â¥¸¥å¡¼¥ë¤«¤é mkstemp() ¤ò»È¤Ã¤Æ¤¤¤ë¡¢ +L<POSIX> ¤ËÀâÌÀ¤µ¤ì¤Æ¤¤¤ë tmpnam() ¤È tmpfile() ´Ø¿ô¤ÎºÆ¼ÂÁõ¤òÀâÌÀ¤·¤Æ¤¤¤Þ¤¹¡£ =begin original @@ -640,12 +659,13 @@ =end original -L<POSIX|POSIX>¤Î¼ÂÁõ¤È¤Ï°ã¤¤¡¢¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤Ë»È¤ï¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê -¤Ï¡¢¥·¥¹¥Æ¥àÆâÉô¤Î¥Õ¥¡¥¤¥ë(C<P_tmpdir>)¤Ç»ØÄꤵ¤ì¤Æ¤¤¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢ -ñ½ã¤Ë¡¢L<File::Spec|File::Spec>¤Ë¤è¤Ã¤Æ¡¢tmpdir()¤¬ÊÖ¤¹¤â¤Î¤ÎÁªÂò¤Ë°Í¤Ã¤Æ¤¤¤Þ¤¹¡£ -¼ÂÁõ¤Ë¤è¤Ã¤Æ¤Ï¡¢¤³¤Î¾ì½ê¤Ï¡¢C<TMPDIR>´Ä¶ÊÑ¿ô¤Ë»È¤ï¤ì¤Æ¤¤¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£ +L<POSIX|POSIX> ¤Î¼ÂÁõ¤È¤Ï°ã¤¤¡¢¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤Ë»È¤ï¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢ +¥·¥¹¥Æ¥àÆâÉô¤Î¥Õ¥¡¥¤¥ë (C<P_tmpdir>) ¤Ç»ØÄꤵ¤ì¤Æ¤¤¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢ +ñ½ã¤Ë¡¢L<File::Spec|File::Spec> ¤Ë¤è¤Ã¤Æ¡¢tmpdir() ¤¬ÊÖ¤¹¤â¤Î¤ÎÁªÂò¤Ë +°Í¤Ã¤Æ¤¤¤Þ¤¹¡£ +¼ÂÁõ¤Ë¤è¤Ã¤Æ¤Ï¡¢¤³¤Î¾ì½ê¤Ï¡¢C<TMPDIR> ´Ä¶ÊÑ¿ô¤Ë»È¤ï¤ì¤Æ¤¤¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£ ¤³¤ì¤Ï¡¢°ÂÁ´¤Ç¤Ï¤Ê¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¡£ -¤³¤Î¤³¤È¤¬ÌäÂê¤Ê¤é¡¢Ã±½ã¤Ë¡¢mkstemp()¤ò»È¤¤¡¢¥Æ¥ó¥×¥ì¡¼¥È¤ò»ØÄꤷ¤Æ²¼¤µ¤¤¡£ +¤³¤Î¤³¤È¤¬ÌäÂê¤Ê¤é¡¢Ã±½ã¤Ë¡¢mkstemp() ¤ò»È¤¤¡¢¥Æ¥ó¥×¥ì¡¼¥È¤ò»ØÄꤷ¤Æ²¼¤µ¤¤¡£ =over 4 @@ -660,8 +680,10 @@ =end original -¥¹¥«¥é¥³¥ó¥Æ¥¥¹¥È¤Ç¸Æ¤Ð¤ì¤¿¤é¡¢(mktemp()¤ò»È¤¦)¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤Î(¥Ñ¥¹¤ò´Þ¤ó¤À)¥Õ¥ë¥Í¡¼¥à¤òÊÖ¤·¤Þ¤¹¡£ -¥Õ¥¡¥¤¥ë¤¬´û¤Ë¸ºß¤·¤Ê¤¤¤³¤È¤À¤±¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹¤¬¡¢¤½¤Î¾õÂÖ¤¬Å¬ÍѤµ¤ì³¤±¤ëÊݾڤϤ¢¤ê¤Þ¤»¤ó¡£ +¥¹¥«¥é¥³¥ó¥Æ¥¥¹¥È¤Ç¸Æ¤Ð¤ì¤¿¤é¡¢(mktemp() ¤ò»È¤¦)¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤Î +(¥Ñ¥¹¤ò´Þ¤ó¤À)¥Õ¥ë¥Í¡¼¥à¤òÊÖ¤·¤Þ¤¹¡£ +¥Õ¥¡¥¤¥ë¤¬´û¤Ë¸ºß¤·¤Ê¤¤¤³¤È¤À¤±¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹¤¬¡¢ +¤½¤Î¾õÂÖ¤¬Å¬ÍѤµ¤ì³¤±¤ëÊݾڤϤ¢¤ê¤Þ¤»¤ó¡£ $file = tmpnam(); @@ -674,8 +696,9 @@ =end original ÇÛÎó¥³¥ó¥Æ¥¥¹¥È¤Ç¸Æ¤Ð¤ì¤ë¤È¡¢¥Õ¥¡¥¤¥ë¤ò³«¤¯¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤È¡¢ -¥Õ¥¡¥¤¥ë̾¤¬ÊÖ¤ê¤Þ¤¹¡£Å¬Àڤʥƥó¥×¥ì¡¼¥È¤òÁȤßΩ¤Æ¤¿¸å¤Ë¡¢ -mkstemp()¤ò¸Æ¤Ö¤³¤È¤Ç¡¢À®¸ù¤·¤Þ¤¹¡£ +¥Õ¥¡¥¤¥ë̾¤¬ÊÖ¤ê¤Þ¤¹¡£ +ŬÀڤʥƥó¥×¥ì¡¼¥È¤òÁȤßΩ¤Æ¤¿¸å¤Ë¡¢ +mkstemp() ¤ò¸Æ¤Ö¤³¤È¤Ç¡¢À®¸ù¤·¤Þ¤¹¡£ ($fh, $file) = tmpnam(); @@ -697,7 +720,7 @@ ÆÃÄê¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤Ç¡¢ ¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤òÁªÂò¤¹¤ë¾ðÊó¤Ë¡¢ -L<File::Spec/tmpdir>¤ò¸«¤Æ¤¯¤À¤µ¤¤¡£ +L<File::Spec/tmpdir> ¤ò¸«¤Æ¤¯¤À¤µ¤¤¡£ =item B<tmpfile> @@ -730,7 +753,7 @@ =end original -¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤¬ºî¤é¤ì¤Ê¤±¤ì¤Ð¡¢undef¤¬ÊÖ¤ê¤Þ¤¹¡£ +¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤¬ºî¤é¤ì¤Ê¤±¤ì¤Ð¡¢undef ¤¬ÊÖ¤ê¤Þ¤¹¡£ ¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤¬¡¢NFS¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Î¾ì¹ç¡¢ ¸½ºß¤Î¤È¤³¤í¡¢¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢¤ª¤½¤é¤¯Æ°¤¤Þ¤»¤ó¡£ @@ -757,7 +780,8 @@ =end original -¥¤¥¯¥¹¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¤Î¤Ç¡¢´°Á´¤Ê¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò»È¤Ã¤Æµ½Ò¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ +¥¤¥¯¥¹¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¤Î¤Ç¡¢´°Á´¤Ê¥Ñ¥Ã¥±¡¼¥¸Ì¾¤ò»È¤Ã¤Æ +µ½Ò¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ =over 4 @@ -778,7 +802,7 @@ ¥Õ¥¡¥¤¥ë¤Ï´Ø¿ô¤¬¸Æ¤Ð¤ì¤¿¤½¤Î¤È¤¤Ë¸ºß¤·¤Æ¤¤¤Ê¤¤¤³¤È¤òÊݾڤµ¤ì¤Þ¤¹¡£ ¤Ç¤¹¤¬¡¢»þ·×¤¬¥«¥Á¤Ã¤È¤¤¤¦´Ö¤Ë´Ø¤·¤Æ¤Î¤ß¤ÎÊݾڤǤ¹¡£ ¤½¤Î¤è¤¦¤Ê¥Õ¥¡¥¤¥ë̾¤ò³«¤«¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤Ê¤é¡¢ -C<O_CREAT | O_EXCL>¤Ç¡¢C<sysopen>¤ÎŬÀڤʷÁ¤ò¾ï¤Ë»È¤Ã¤Æ¤¯¤À¤µ¤¤¡£ +C<O_CREAT | O_EXCL> ¤Ç¡¢C<sysopen> ¤ÎŬÀڤʷÁ¤ò¾ï¤Ë»È¤Ã¤Æ¤¯¤À¤µ¤¤¡£ $filename = File::Temp::tempnam( $dir, $prefix ); @@ -789,7 +813,7 @@ =end original -$dir/$prefixXXXXXXXXX ¤Ç¡¢mktemp()¤ò¼Â¹Ô¤¹¤ë¤Î¤ÈƱ¤¸¤Ç¤¹¡£ +$dir/$prefixXXXXXXXXX ¤Ç¡¢mktemp() ¤ò¼Â¹Ô¤¹¤ë¤Î¤ÈƱ¤¸¤Ç¤¹¡£ (Îã¤È¤·¤Æ¡¢unix ¤Î¥Õ¥¡¥¤¥ë¤Î´·Îã¤ò»È¤¤¤Þ¤¹) =begin original @@ -798,7 +822,7 @@ =end original -¤³¤Î´Ø¿ô¤Ï¡¢mktemp()¤ò»È¤¦¤Î¤Ç¡¢¶¥¹ç¾õÂÖ¤«¤éÈï³²¤òÈï¤ê¤¨¤Þ¤¹¡£ +¤³¤Î´Ø¿ô¤Ï¡¢mktemp() ¤ò»È¤¦¤Î¤Ç¡¢¶¥¹ç¾õÂÖ¤«¤éÈï³²¤òÈï¤ê¤¨¤Þ¤¹¡£ =back @@ -832,14 +856,17 @@ =end original ³«¤¤¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤È¡¢´ØÏ¢¤Ä¤±¤é¤ì¤¿¥Õ¥¡¥¤¥ë̾¤òÍ¿¤¨¤ë¤È¡¢ -°ÂÁ´¤Ë¡¢ºï½ü¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥Õ¥¡¥¤¥ë̾¤È¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤¬¡¢ -Ʊ¤¸¥Õ¥¡¥¤¥ë¤ò»Ø¤·¡¢¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯¤Î¿ô¤¬¡¢°ì¤Ä¤Ç¤¢¤ë¤³¤È)(stat()¤¬ÊÖ¤¹Á´¤Æ¤Î¥Õ¥£¡¼¥ë¥É¤¬Èæ³Ó¤µ¤ì¤Þ¤¹)¤ò +°ÂÁ´¤Ë¡¢ºï½ü¤·¤Þ¤¹¡£ +¤³¤ì¤Ï¡¢¥Õ¥¡¥¤¥ë̾¤È¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤¬¡¢ +Ʊ¤¸¥Õ¥¡¥¤¥ë¤ò»Ø¤·¡¢¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯¤Î¿ô¤¬¡¢°ì¤Ä¤Ç¤¢¤ë¤³¤È) +(stat()¤¬ÊÖ¤¹Á´¤Æ¤Î¥Õ¥£¡¼¥ë¥É¤¬Èæ³Ó¤µ¤ì¤Þ¤¹)¤ò ºÇ½é¤Ë¥Á¥§¥Ã¥¯¤¹¤ë¤³¤È¤Ç¡¢¼Â¸½¤·¤Þ¤¹¡£ ¤½¤ì¤«¤é¡¢¥Õ¥¡¥¤¥ë̾¤¬ºï½ü¤µ¤ì¤Æ¡¢¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤¬¡¢¤â¤¦°ìÅÙ¡¢ºÆ¤Ó¡¢ ¥Á¥§¥Ã¥¯¤µ¤ì¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤Î¥ê¥ó¥¯¤Î¿ô¤¬º£Å٤ϡ¢0¤Ç¤¢¤ë¤³¤È¤ò¸¡¾Ú¤·¤Þ¤¹¡£ -¤³¤Î¤³¤È¤Ï¡¢ÊÝ»ý¤·¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤Î¥Ç¥£¥¹¥¯¥ê¥×¥¿¤Èºï½ü¤µ¤ì¤¿¥Õ¥¡¥¤¥ë̾¤¬Æ±¤¸¤Ç¤¢¤ë¤³¤È¤ò -³Î¤«¤á¤ë¤Î¤Ë¡¢ºÇ¤â¼þÅþ¤Ç¤¹¡£¥¨¥é¡¼»þ¤Ë¤Ïµ¶¤¬Ê֤ꡣ¾õ¶·¤Ë¤è¤ê¡¢É¬ÍפȤµ¤ì¤Ê¤¤¤Î¤Ç¡¢ -¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤Ï¡¢ÊĤ¸¤é¤ì¤Þ¤»¤ó¡£ +¤³¤Î¤³¤È¤Ï¡¢ÊÝ»ý¤·¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤Î¥Ç¥£¥¹¥¯¥ê¥×¥¿¤Èºï½ü¤µ¤ì¤¿¥Õ¥¡¥¤¥ë̾¤¬ +Ʊ¤¸¤Ç¤¢¤ë¤³¤È¤ò³Î¤«¤á¤ë¤Î¤Ë¡¢ºÇ¤â¼þÅþ¤Ç¤¹¡£ +¥¨¥é¡¼»þ¤Ë¤Ïµ¶¤¬Ê֤ꡣ +¾õ¶·¤Ë¤è¤ê¡¢É¬ÍפȤµ¤ì¤Ê¤¤¤Î¤Ç¡¢¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤Ï¡¢ÊĤ¸¤é¤ì¤Þ¤»¤ó¡£ =begin original @@ -853,10 +880,13 @@ =end original -¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤è¤Ã¤Æ¤Ï(Î㤨¤Ð¡¢Windows NT)¡¢³«¤¤¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤òºï½ü¤Ç¤¤Ê¤¤¤â¤Î¤â¤¢¤ê¤Þ¤¹ -(¥Õ¥¡¥¤¥ë¤Ï¤Þ¤ºÊĤ¸¤é¤ì¤Ê¤±¤ì¤Ð¤¤¤±¤Þ¤»¤ó)¡£¤½¤ì¤é¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¡¢ +¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤è¤Ã¤Æ¤Ï(Î㤨¤Ð¡¢Windows NT)¡¢³«¤¤¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤ò +ºï½ü¤Ç¤¤Ê¤¤¤â¤Î¤â¤¢¤ê¤Þ¤¹ +(¥Õ¥¡¥¤¥ë¤Ï¤Þ¤ºÊĤ¸¤é¤ì¤Ê¤±¤ì¤Ð¤¤¤±¤Þ¤»¤ó)¡£ +¤½¤ì¤é¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¡¢ ¥×¥í¥°¥é¥à¤¬½ªÎ»¤·¡¢Îɤ¤¾õÂ֤ˤʤë¤Þ¤Ç¡¢¼ÂºÝ¤Îºï½ü¤Ï¿ø¤¨ÃÖ¤«¤ì¤Þ¤¹¡£ -¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤È¡¢¥Õ¥¡¥¤¥ë̾¤¬Æ±¤¸¤Î¤ò»Ø¤¹»ö¤ò³Î¤«¤á¤ë¤Þ¤Ç¡¢¥Á¥§¥Ã¥¯¤Ï¹Ô¤Ê¤ï¤ì¤Þ¤¹¡£ +¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤È¡¢¥Õ¥¡¥¤¥ë̾¤¬Æ±¤¸¤Î¤ò»Ø¤¹»ö¤ò³Î¤«¤á¤ë¤Þ¤Ç¡¢¥Á¥§¥Ã¥¯¤Ï +¹Ô¤Ê¤ï¤ì¤Þ¤¹¡£ (¤Ç¤¹¤¬¡¢ºÇ¸å¤Î¥Ö¥í¥Ã¥¯¤¬¼Â¹Ô¤µ¤ì¤¿»þÅÀ¤Ç¤Ê¤±¤ì¤Ð¡¢ ¿ø¤¨ÃÖ¤«¤ì¤¿ºï½ü¤Ï¥Õ¥¡¥¤¥ë¥Ï¥ó¥É¥ë¤Ë¥¢¥¯¥»¥¹¤·¤Ê¤¤¤Ç¤·¤ç¤¦¡£) @@ -872,12 +902,13 @@ =end original -¤µ¤é¤Ë¡¢Windows NT ¤Ï¡¢stat()¤¬Á´¤Æ¤Î¥Õ¥£¡¼¥ë¥É¤òÊÖ¤µ¤Ê¤¤¤³¤È¤¬Èæ³Ó¤µ¤ìÆÀ¤Þ¤¹¡£ -Î㤨¤Ð¡¢C<dev>¤È¡¢C<rdev>¥Õ¥£¡¼¥ë¥É¤Ï¡¢°ã¤Ã¤Æ¤¤¤Þ¤¹¡£ -¤Þ¤¿¡¢stat()¤¬ÊÖ¤¹¥Õ¥¡¥¤¥ë¤Î¥µ¥¤¥º¤Ï¡¢¾ï¤Ë¤Ï°ìÃפ·¤Þ¤»¤ó¡£ -C<stat(FH)>¤Ï¡¢C<stat(filename)>¤è¤ê¤â¡¢¶¸¤¤¤¬¤¢¤ê¤Þ¤»¤ó¡£ +¤µ¤é¤Ë¡¢Windows NT ¤Ï¡¢stat()¤¬Á´¤Æ¤Î¥Õ¥£¡¼¥ë¥É¤òÊÖ¤µ¤Ê¤¤¤³¤È¤¬ +Èæ³Ó¤µ¤ìÆÀ¤Þ¤¹¡£ +Î㤨¤Ð¡¢C<dev> ¤È¡¢C<rdev> ¥Õ¥£¡¼¥ë¥É¤Ï¡¢°ã¤Ã¤Æ¤¤¤Þ¤¹¡£ +¤Þ¤¿¡¢stat() ¤¬ÊÖ¤¹¥Õ¥¡¥¤¥ë¤Î¥µ¥¤¥º¤Ï¡¢¾ï¤Ë¤Ï°ìÃפ·¤Þ¤»¤ó¡£ +C<stat(FH)> ¤Ï¡¢C<stat(filename)> ¤è¤ê¤â¡¢¶¸¤¤¤¬¤¢¤ê¤Þ¤»¤ó¡£ »×¤¦¤Ë¡¢¥¥ã¥Ã¥·¥ó¥°¤ÎÌäÂê¤Ë¤è¤ê¡¢¥ª¡¼¥È¥Õ¥é¥Ã¥·¥å¤ò»È¤Ã¤Æ¤¤¤¿¤Ë¤»¤è¡¢ -(¤³¤ì¤Ï¡¢ÉáÄÌ¡¢°ì»þ¥Õ¥¡¥¤¥ë¤Ë½ñ¤¹þ¤ó¤À¸å¡¢¤½¤ì¤òC<unlink0>¤¬»î¤µ¤ì¤ëÁ°¤Ë¡¢ +(¤³¤ì¤Ï¡¢ÉáÄÌ¡¢°ì»þ¥Õ¥¡¥¤¥ë¤Ë½ñ¤¹þ¤ó¤À¸å¡¢¤½¤ì¤ò C<unlink0> ¤¬»î¤µ¤ì¤ëÁ°¤Ë¡¢ ¤·¤Ð¤é¤¯ÂԤĤ³¤È¤Ç¡¢Âнè¤Ç¤¤Þ¤¹¡£) =begin original @@ -918,7 +949,8 @@ =end original -¤³¤Î¥â¥¸¥å¡¼¥ë¤¬¡¢½èÍýÁ°¤Ë¡¢¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤«¡¢¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤ò¡¢°ÂÁ´¤Ë¥Á¥§¥Ã¥¯¤·¤è¤¦¤È¤¹¤ëÄøÅÙ¤ò¥³¥ó¥È¥í¡¼¥ë¤·¤Þ¤¹¡£ +¤³¤Î¥â¥¸¥å¡¼¥ë¤¬¡¢½èÍýÁ°¤Ë¡¢¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤«¡¢¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤ò¡¢ +°ÂÁ´¤Ë¥Á¥§¥Ã¥¯¤·¤è¤¦¤È¤¹¤ëÄøÅÙ¤ò¥³¥ó¥È¥í¡¼¥ë¤·¤Þ¤¹¡£ ¥ª¥×¥·¥ç¥ó: =over 8 @@ -937,9 +969,10 @@ ´ðËÜŪ¤Ê¥»¥¥å¥ê¥Æ¥£¤ÎÄøÅ٤ǡ¢°Ê²¼¤Î¤³¤È¤òÊݾڤ·¤Þ¤¹¡£ ¥Ç¥£¥ì¥¯¥È¥ê¤¬Â¸ºß¤·¡¢½ñ¤¹þ¤ß²Äǽ¤Ç¤¢¤ë¤³¤È¡£ -¥Õ¥¡¥¤¥ë¤ò³«¤¯Á°¤Ë¡¢umask()¤¬¸ÇÄꤵ¤ì¤Æ¤¤¤ë¤³¤È¡£ -¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤¬¡¢¤Þ¤À̵¤±¤ì¤Ð¡¢³«¤«¤ì¤Æ¤ª¤ê¡¢¶¥¹ç¾ò·ï¤¬Èò¤±¤é¤ì¤Æ¤¤¤ë¤³¤È¡£ -ºÇ¸å¤Ë¤Ï¡¢L<unlink0|"unlink0">´Ø¿ô¤¬»È¤ï¤ì¡¢¥Õ¥¡¥¤¥ë¤ò°ÂÁ´¤Ëºï½ü¤¹¤ë¤³¤È¡£ +¥Õ¥¡¥¤¥ë¤ò³«¤¯Á°¤Ë¡¢umask() ¤¬¸ÇÄꤵ¤ì¤Æ¤¤¤ë¤³¤È¡£ +¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤¬¡¢¤Þ¤À̵¤±¤ì¤Ð¡¢³«¤«¤ì¤Æ¤ª¤ê¡¢¶¥¹ç¾ò·ï¤¬ +Èò¤±¤é¤ì¤Æ¤¤¤ë¤³¤È¡£ +ºÇ¸å¤Ë¤Ï¡¢L<unlink0|"unlink0"> ´Ø¿ô¤¬»È¤ï¤ì¡¢¥Õ¥¡¥¤¥ë¤ò°ÂÁ´¤Ëºï½ü¤¹¤ë¤³¤È¡£ =item MEDIUM @@ -952,8 +985,9 @@ =end original -STANDARD¤Î°ÂÁ´À¤Ë²Ã¤¨¤Æ¡¢½ÐÎϥǥ£¥ì¥¯¥È¥ê¤¬ root¤«¡¢¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¥æ¡¼¥¶ -¤Î¤É¤Á¤é¤«¤Ë¤è¤Ã¤Æ¡¢½êͤµ¤ì¤Æ¤¤¤ë¤³¤È¤ò³Î¤«¤á¤ë¥Á¥§¥Ã¥¯¤ò¤·¤Þ¤¹¡£ +STANDARD ¤Î°ÂÁ´À¤Ë²Ã¤¨¤Æ¡¢½ÐÎϥǥ£¥ì¥¯¥È¥ê¤¬ root ¤«¡¢ +¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¥æ¡¼¥¶¤Î¤É¤Á¤é¤«¤Ë¤è¤Ã¤Æ¡¢ +½êͤµ¤ì¤Æ¤¤¤ë¤³¤È¤ò³Î¤«¤á¤ë¥Á¥§¥Ã¥¯¤ò¤·¤Þ¤¹¡£ ¥Ç¥£¥ì¥¯¥È¥ê¤¬Â¾¤Î¥°¥ë¡¼¥×¤«¥æ¡¼¥¶¤Ë¤è¤Ã¤Æ½ñ¤¹þ¤ß²Äǽ¤Ç¤¢¤ë¤Ê¤é¤Ð¡¢ ¥¹¥Æ¥£¥Ã¥¡¼¥Ó¥Ã¥È¤¬¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤ë¤³¤È¤ò³Î¤«¤á¤ë¥Á¥§¥Ã¥¯¤ò¤·¤Þ¤¹¡£ @@ -981,8 +1015,9 @@ =end original MEDIUM¤Î°ÂÁ´À¥Á¥§¥Ã¥¯¤Ë²Ã¤¨¤Æ¡¢L<POSIX|POSIX> sysconf() ´Ø¿ô¤ò»È¤Ã¤Æ¡¢ -``chown() giveaway''¤Î²ÄǽÀ¤â¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£ -¤â¤·¤³¤ì¤¬²Äǽ¤Ê¤é¡¢¤½¤ì¤¾¤ì¤Î¥Ñ¥¹¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢½çÈ֤ˡ¢°ÂÁ´¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£ +``chown() giveaway'' ¤Î²ÄǽÀ¤â¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£ +¤â¤·¤³¤ì¤¬²Äǽ¤Ê¤é¡¢¤½¤ì¤¾¤ì¤Î¥Ñ¥¹¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢½çÈ֤ˡ¢ +°ÂÁ´¤ò¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£ ¥ë¡¼¥È¥Ç¥£¥ì¥¯¥È¥ê¤Þ¤Ç¡¢Á̤äơ¢ºÆµ¢Åª¤Ë¥Á¥§¥Ã¥¯¤·¤Þ¤¹¡£ =begin original @@ -994,8 +1029,10 @@ =end original -L<POSIX|POSIX>¤ÎC<_PC_CHOWN_RESTRICTED>¥·¥ó¥Ü¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Ê¤¤¥×¥é¥Ã¥È¥Õ¥©¡¼¥à(¤¿¤È¤¨¤Ð¡¢Windows NT)¤Î¤¿¤á¤Ë¡¢ -¤³¤ì¤Ï¡¢``chown() giveaway'' ¤Ï¡¢²Äǽ¤Ç¤¢¤ê¡¢ºÆµ¢Åª¤Ê¥Æ¥¹¥È¤â¤Ê¤µ¤ì¤ë¤È²¾Äꤷ¤Þ¤¹¡£ +L<POSIX|POSIX> ¤Î C<_PC_CHOWN_RESTRICTED> ¥·¥ó¥Ü¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Ê¤¤ +¥×¥é¥Ã¥È¥Õ¥©¡¼¥à(¤¿¤È¤¨¤Ð¡¢Windows NT)¤Î¤¿¤á¤Ë¡¢ +¤³¤ì¤Ï¡¢``chown() giveaway'' ¤Ï¡¢²Äǽ¤Ç¤¢¤ê¡¢ºÆµ¢Åª¤Ê¥Æ¥¹¥È¤â¤Ê¤µ¤ì¤ë¤È +²¾Äꤷ¤Þ¤¹¡£ =back @@ -1028,11 +1065,12 @@ =end original -MEDIUM¤«¡¢HIGH¤Î¥»¥¥å¥ê¥Æ¥£¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤Ë¤Ï¡¢ -º£¤Î¤È¤³¤í¡¢¤¹¤¯¤Ê¤¯¤È¤â¡¢Perl v5.6.0¤ÇÆ°¤«¤µ¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ -¤³¤ì¤Ï¡¢Ã±½ã¤Ë¡¢°ÂÁ´¤Ê¥Æ¥¹¥È¤Ï¡¢v5.6.0¤è¤ê¸Å¤¤¥Ð¡¼¥¸¥ç¥ó¤Î perl¤Ç¤Ï¡¢ÍøÍѤǤ¤Ê¤¤¡¢ -<Fcntl|Fcntl>¤«¤é´Ø¿ô¤ò»È¤¦¤«¤é¤Ç¤¹¡£ -perl 5.6.0 ¤È¡¢5.005_03¤Î Fcntl¤Î¥Ð¡¼¥¸¥ç¥óÈֹ椬¡¢¤½¤ì¤é¤Ï°ã¤¦¤â¤Î¤Ç¤¢¤ë¤Ë¤â¤«¤«¤ï¤é¤º¡¢ +MEDIUM ¤«¡¢HIGH ¤Î¥»¥¥å¥ê¥Æ¥£¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤Ë¤Ï¡¢ +º£¤Î¤È¤³¤í¡¢¤¹¤¯¤Ê¤¯¤È¤â¡¢Perl v5.6.0 ¤ÇÆ°¤«¤µ¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£ +¤³¤ì¤Ï¡¢Ã±½ã¤Ë¡¢°ÂÁ´¤Ê¥Æ¥¹¥È¤Ï¡¢v5.6.0 ¤è¤ê¸Å¤¤¥Ð¡¼¥¸¥ç¥ó¤Î perl ¤Ç¤Ï¡¢ +ÍøÍѤǤ¤Ê¤¤¡¢<Fcntl|Fcntl> ¤«¤é´Ø¿ô¤ò»È¤¦¤«¤é¤Ç¤¹¡£ +perl 5.6.0 ¤È¡¢5.005_03 ¤Î Fcntl ¤Î¥Ð¡¼¥¸¥ç¥óÈֹ椬¡¢¤½¤ì¤é¤Ï +°ã¤¦¤â¤Î¤Ç¤¢¤ë¤Ë¤â¤«¤«¤ï¤é¤º¡¢ ¥Ð¡¼¥¸¥ç¥óÈֹ椬Ʊ¤¸¤Ç¤¢¤ë¤³¤È¤¬ÌäÂê¤Ç¤¹¡£ =begin original @@ -1046,7 +1084,7 @@ =end original -HIGH¤È¡¢MEDIUM¤Î°ÂÁ´¥ì¥Ù¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Ê¤¤OS(Win NT ¤ä OS/2)¤Ç¤Ï¡¢ +HIGH ¤È¡¢MEDIUM ¤Î°ÂÁ´¥ì¥Ù¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Ê¤¤ OS(Win NT ¤ä OS/2) ¤Ç¤Ï¡¢ ¤¤¤¯¤é¥ì¥Ù¥ë¤òÊѹ¹¤·¤è¤¦¤È¤·¤Æ¤â¡¢Ìµ»ë¤µ¤ì¤Þ¤¹¡£ Îã³°¤òµ¯¤³¤¹¤è¤ê¤â¤à¤·¤í¡¢Ìµ»ë¤¹¤ë¤È¸À¤¦·èÄê¤Ë¤è¤ê¡¢ ÆÃÊ̤ʥƥ¹¥È¤¬Å¬ÀڤǤʤ¤¥·¥¹¥Æ¥à¤Ç¤³¤ì¤é¤Î¥×¥í¥°¥é¥à¤¬¼ºÇÔ¤¹¤ë¤³¤È̵¤·¤Ë¡¢ @@ -1061,7 +1099,7 @@ =end original ¤â¤·¡¢¼ÂºÝ¤Ë¡¢Êѹ¹¤¬¼õ¤±Æþ¤ì¤é¤ì¤¿¤«¤É¤¦¤«¤ò¸«¤ëɬÍפ¬¤¢¤ë¤Ê¤é¡¢ -ñ¤Ë¡¢C<safe_level>¤ÎÊÖÃͤò¤òÄ´¤Ù¤Æ¤¯¤À¤µ¤¤¡£ +ñ¤Ë¡¢C<safe_level> ¤ÎÊÖÃͤò¤òÄ´¤Ù¤Æ¤¯¤À¤µ¤¤¡£ $newlevel = File::Temp->safe_level( File::Temp::HIGH ); die "Could not change to high security" @@ -1079,9 +1117,10 @@ =end original -¤³¤ì¤Ï¡¢root UID¤ò»²¾È¤¹¤ë¡¢¸½ºß¤Î¥·¥¹¥Æ¥à¤Ç¤â¤Ã¤È¤â¹â¤¤UID¤Ç¤¹¡£ -¤³¤ì¤Ï¡¢¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤¬¡¢Ã±½ã¤Ëroot¤Î¤â¤Î¤Ç¤¢¤ë¤Î¤Ç¤Ï¤Ê¤¯¤Æ¡¢ -¥·¥¹¥Æ¥àUID¤Î¤â¤Î(C<root>, C<bin>, C<sys> ¤Ê¤É)¤Ç¤¢¤ë¤³¤È¤ò³Î¤«¤á¤ë¤Î¤Ë¡¢»È¤ï¤ì¤Þ¤¹¡£ +¤³¤ì¤Ï¡¢root UID ¤ò»²¾È¤¹¤ë¡¢¸½ºß¤Î¥·¥¹¥Æ¥à¤Ç¤â¤Ã¤È¤â¹â¤¤ UID ¤Ç¤¹¡£ +¤³¤ì¤Ï¡¢¥Æ¥ó¥Ý¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê¤¬¡¢Ã±½ã¤Ë root ¤Î¤â¤Î¤Ç¤¢¤ë¤Î¤Ç¤Ï¤Ê¤¯¤Æ¡¢ +¥·¥¹¥Æ¥à UID ¤Î¤â¤Î(C<root>, C<bin>, C<sys> ¤Ê¤É)¤Ç¤¢¤ë¤³¤È¤ò³Î¤«¤á¤ë¤Î¤Ë¡¢ +»È¤ï¤ì¤Þ¤¹¡£ =begin original @@ -1090,7 +1129,7 @@ =end original -¿¤¯¤Îunix ¤Î¥·¥¹¥Æ¥à¤Ç¡¢C</tmp>¤Ï¡¢root ¤Î¤â¤Î¤Ç¤Ï¤Ê¤¤¤Î¤Ç¡¢ +¿¤¯¤Î unix ¤Î¥·¥¹¥Æ¥à¤Ç¡¢C</tmp> ¤Ï¡¢root ¤Î¤â¤Î¤Ç¤Ï¤Ê¤¤¤Î¤Ç¡¢ ¤³¤ì¤¬É¬ÍפȤµ¤ì¤Þ¤¹¡£ =begin original @@ -1100,7 +1139,7 @@ =end original -¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢10°Ê²¼¤Î¤â¤Î¤Ï¡¢¤É¤ó¤ÊUID¤â¡¢root UID¤ÈÁÛÄꤷ¤Þ¤¹¡£ +¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢10 °Ê²¼¤Î¤â¤Î¤Ï¡¢¤É¤ó¤Ê UID ¤â¡¢root UID ¤ÈÁÛÄꤷ¤Þ¤¹¡£ File::Temp->top_system_uid(10); my $topid = File::Temp->top_system_uid; @@ -1113,7 +1152,8 @@ =end original ɬÍפʤé¤Ð¡¢¤³¤ÎÃͤòÄ´À°¤·¤Æ¡¢¥»¥¥å¥ê¥Æ¥£¥Á¥§¥Ã¥¯¤ò²¼¤²¤ë¤³¤È¤â¤Ç¤¤Þ¤¹¡£ -¤³¤ÎÃͤϡ¢C<safe_level>¤¬¡¢MEDIUM°Ê¾å¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¡¢´ØÏ¢¤¬¤¢¤ê¤Þ¤¹¡£ +¤³¤ÎÃͤϡ¢C<safe_level> ¤¬¡¢MEDIUM °Ê¾å¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¡¢ +´ØÏ¢¤¬¤¢¤ê¤Þ¤¹¡£ =back @@ -1135,7 +1175,8 @@ ºÇ¹â¤Î¥»¥¥å¥ê¥Æ¥£¤Î¤¿¤á¤Ë¤Ï¡¢Â¸ºß¤¹¤ë¥Õ¥¡¥¤¥ë̾¤ò¡¢Ä´¤Ù¤³¤È¡¢ ºîÀ®¤¹¤ë¤³¤È¡¢ÆþÎϤ¹¤ë¤³¤È¤òÈò¤±¤ë¤è¤¦¤Ë¡¢ÅØÎϤ·¤Æ²¼¤µ¤¤¡£ ¥Õ¥¡¥¤¥ë¥Í¡¼¥à¤¬¡¢»ý¤Ã¤Æ¤¤¤ë¥Ï¥ó¥É¥ë¤ÈƱ¤¸¥Õ¥¡¥¤¥ë¤ËÀܳ¤·¤Æ¤¤¤ë¤³¤È -¤òÃΤê¤Þ¤»¤ó¡£¤½¤ì¤Ë¡¢¤½¤ì¤¬¡¢¤è¤ê¿¤¯¤Î¶¥¹ç¾õÂÖ¤ò°ú¤µ¯¤³¤¹¤À¤±¤Ç¤¢¤ë¤³¤È¤ò +¤òÃΤê¤Þ¤»¤ó¡£ +¤½¤ì¤Ë¡¢¤½¤ì¤¬¡¢¤è¤ê¿¤¯¤Î¶¥¹ç¾õÂÖ¤ò°ú¤µ¯¤³¤¹¤À¤±¤Ç¤¢¤ë¤³¤È¤ò ¥Á¥§¥Ã¥¯¤·¤è¤¦¤È¤Ï¤Ç¤¤Þ¤»¤ó(ÌõÃð:¡©)¡£ =begin original @@ -1149,9 +1190,10 @@ =end original ¥Õ¥¡¥¤¥ë¥Í¡¼¥à¤ò´üÂÔ¤¹¤ë¤â¤Î¤Ë¡¢¥Ï¥ó¥É¥ë¤òÅϤ¹É¬Íפ¬¤¢¤ë¤Ê¤é¡¢ -unix ¥·¥¹¥Æ¥à¤Ç¤Ï¡¢Ç¤°Õ¤Î¥×¥í¥°¥é¥à¤Î¤¿¤á¤Ë¡¢C<"/dev/fd/" . fileno($fh)> ¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤¡£ -¤Þ¤¿¤Ï¡¢¤è¤ê¡¢°ìÈÌŪ¤Ë¤Ï¡¢Perl¤Î¥×¥í¥°¥é¥à¤Î¤¿¤á¤Ë¡¢C<< "+<=&" . fileno($fh) >> -¤ò»È¤Ã¤Æ²¼¤µ¤¤¡£ +unix ¥·¥¹¥Æ¥à¤Ç¤Ï¡¢Ç¤°Õ¤Î¥×¥í¥°¥é¥à¤Î¤¿¤á¤Ë¡¢C<"/dev/fd/" . fileno($fh)> ¤ò +»È¤Ã¤Æ¤¯¤À¤µ¤¤¡£ +¤Þ¤¿¤Ï¡¢¤è¤ê¡¢°ìÈÌŪ¤Ë¤Ï¡¢Perl ¤Î¥×¥í¥°¥é¥à¤Î¤¿¤á¤Ë¡¢ +C<< "+<=&" . fileno($fh) >> ¤ò»È¤Ã¤Æ²¼¤µ¤¤¡£ ¾¤Î¥×¥í¥»¥¹¤Ë¤½¤ì¤òÅϤ¹Á°¤Ë¡¢¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿¤Ç¡¢close-on-exec ¥Ó¥Ã¥È ¤ò¥¯¥ê¥¢¤¹¤ëɬÍפ¬¤¢¤ë¤Ç¤½¤·¤ç¤¦¡£ @@ -1159,7 +1201,9 @@ fcntl($tmpfh, F_SETFD, 0) or die "Can't clear close-on-exec flag on temp fh: $!\n"; -=head2 ¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤ÈNFS +=head2 Temporary files and NFS + +(¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤ÈNFS) =begin original @@ -1172,11 +1216,12 @@ =end original -NFS¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ë¤¢¤ë¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤ò»È¤¦¤³¤È¤Ë´Ø¤·¤Æ¡¢ +NFS ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ë¤¢¤ë¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤ò»È¤¦¤³¤È¤Ë´Ø¤·¤Æ¡¢ ¤¤¤¯¤Ä¤«¤ÎÌäÂ꤬¤¢¤ê¡¢½ÐÍè¤ë¸Â¤ê¡¢¥í¡¼¥«¥ë¤Î¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤ò»È¤¦¤³¤È¤¬ -¿ä¾©¤µ¤ì¤Þ¤¹¡£¤¤¤¯¤Ä¤«¤Î¥»¥¥å¥ê¥Æ¥£¥Æ¥¹¥È¤Ï¡¢¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤¬¡¢ +¿ä¾©¤µ¤ì¤Þ¤¹¡£ +¤¤¤¯¤Ä¤«¤Î¥»¥¥å¥ê¥Æ¥£¥Æ¥¹¥È¤Ï¡¢¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤¬¡¢ ¥í¡¼¥«¥ë¤Ë¤Ê¤¤¾ì¹ç¡¢¤Û¤È¤ó¤É¤¿¤¤¤Æ¤¤¡¢¼ºÇÔ¤¹¤ë¤Ç¤·¤ç¤¦¡£ -¹¹¤Ë¡¢NFS±Û¤·¤ÎI/OÁàºî¤Ï¡¢¥í¡¼¥«¥ë¥Ç¥£¥¹¥¯¤ÈÈæ¤Ù¤Æ¡¢Îɤ¯¤Ê¤¤¤³¤È¤Ë +¹¹¤Ë¡¢NFS ±Û¤·¤Î I/O Áàºî¤Ï¡¢¥í¡¼¥«¥ë¥Ç¥£¥¹¥¯¤ÈÈæ¤Ù¤Æ¡¢Îɤ¯¤Ê¤¤¤³¤È¤Ë µ¤¤ò¤Ä¤±¤Æ²¼¤µ¤¤¡£ =head1 HISTORY @@ -1193,9 +1238,10 @@ =end original -¤â¤È¤â¤È¤Ï¡¢1999ǯ¤Î5·î¤Ë¥·¥¹¥Æ¥à¤Îmkstemp()´Ø¿ô¤Ø¤ÎXS¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤È¤·¤Æ¡¢ -Ëä¤Þ¤ì¤Þ¤·¤¿¡£2000ǯ5·î¤Ë¡¢OpenBSD¤Îmkstemp()¥³¡¼¥É¤¬¡¢¥³¡¼¥É¤Î¥»¥¥å¥ê¥Æ¥£¥Á¥§¥Ã¥¯ -¤ò¥È¡¼¥¿¥ë¤Ë¡¢¥³¥ó¥È¥í¡¼¥ë¤¹¤ë¤¿¤á¤Ë¡¢Perl¤Ë°Ü¿¢¤µ¤ì¤Þ¤·¤¿¡£ +¤â¤È¤â¤È¤Ï¡¢1999 ǯ¤Î 5 ·î¤Ë¥·¥¹¥Æ¥à¤Î mkstemp() ´Ø¿ô¤Ø¤Î +XS ¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤È¤·¤Æ¡¢Ëä¤Þ¤ì¤Þ¤·¤¿¡£ +2000 ǯ 5 ·î¤Ë¡¢OpenBSD ¤Î mkstemp() ¥³¡¼¥É¤¬¡¢¥³¡¼¥É¤Î¥»¥¥å¥ê¥Æ¥£¥Á¥§¥Ã¥¯¤ò +¥È¡¼¥¿¥ë¤Ë¡¢¥³¥ó¥È¥í¡¼¥ë¤¹¤ë¤¿¤á¤Ë¡¢Perl ¤Ë°Ü¿¢¤µ¤ì¤Þ¤·¤¿¡£ ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤Ë°Í¸¤·¤Ê¤¤´Ø¿ô¤Î¸ºß¤òÊݾڤ¹¤ë¤³¤È¤Ë¤Ê¤ê¡¢ °Ü¿¢À¤ò½õ¤±¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ @@ -1210,7 +1256,8 @@ =end original -¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤ò°·¤¦°ã¤Ã¤¿¼ÂÁõ¤Î¡¢L<IO::File>¤È¡¢L<File::MkTemp>¤â¸«¤Æ¤¯¤À¤µ¤¤¡£ +¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤ò°·¤¦°ã¤Ã¤¿¼ÂÁõ¤Î¡¢L<IO::File>¤È¡¢L<File::MkTemp> ¤â +¸«¤Æ¤¯¤À¤µ¤¤¡£ =head1 AUTHOR