OSDN Git Service

(split) LDP: Release pages for LDP v3.39.
[linuxjm/LDP_man-pages.git] / release / man3 / mkstemp.3
index eda8fce..5308e7f 100644 (file)
 .\" Modified 990328, aeb
 .\" 2008-06-19, mtk, Added mkostemp(); various other changes
 .\"
-.\" Japanese Version Copyright (c) 1997 Kazuyuki Tanisako
-.\"         all rights reserved.
-.\" Translated 1997-05-17, Kazuyuki Tanisako <tanisako@osa.dec-j.co.jp>
-.\" Modified 1997-05-27, Kazuyuki Tanisako <tanisako@osa.dec-j.co.jp>
-.\" Modified 1998-02-05, Kazuyuki Tanisako <tanisako@osa.dec-j.co.jp>
-.\" Modified 1998-09-27, Kazuyuki Tanisako <tanisako@osa.dec-j.co.jp>
-.\" Modified 1999-04-10, Kazuyuki Tanisako <tanisako@osa.dec.com>
-.\" Updated 2001-01-17, Kentaro Shirakata <argrath@ub32.org>
-.\" Updated 2005-02-26, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
-.\" Updated 2008-08-10, Akihiro MOTOKI, LDP v3.05
+.\"*******************************************************************
 .\"
-.\"WORD:       temporary file  一時ファイル
-.\"WORD:       read/write      リード/ライト
-.\"WORD:       permissions     許可
+.\" This file was generated with po4a. Translate the source file.
 .\"
-.TH MKSTEMP 3  2008-06-19 "GNU" "Linux Programmer's Manual"
+.\"*******************************************************************
+.TH MKSTEMP 3 2010\-09\-26 GNU "Linux Programmer's Manual"
 .SH 名前
 mkstemp, mkostemp \- 他と重ならない名前を持つ一時ファイルを作成する
 .SH 書式
 .nf
-.B #include <stdlib.h>
+\fB#include <stdlib.h>\fP
 .sp
-.BI "int mkstemp(char *" template );
+\fBint mkstemp(char *\fP\fItemplate\fP\fB);\fP
 .sp
-.BI "int mkostemp (char *" template ", int " flags );
+\fBint mkostemp(char *\fP\fItemplate\fP\fB, int \fP\fIflags\fP\fB);\fP
+.sp
+\fBint mkstemps(char *\fP\fItemplate\fP\fB, int \fP\fIsuffixlen\fP\fB);\fP
+.sp
+\fBint mkostemps(char *\fP\fItemplate\fP\fB, int \fP\fIsuffixlen\fP\fB, int \fP\fIflags\fP\fB);\fP
 .fi
 .sp
 .in -4n
-glibc 向けの機能検査マクロの要件
-.RB ( feature_test_macros (7)
-参照):
+glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7)  参照):
 .in
 .sp
-.BR mkstemp ():
-_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500
+\fBmkstemp\fP():
+.ad l
+.RS 4
+.PD 0
+_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED
+.br
+|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\ >=\ 200112L
+.PD
+.RE
+.ad b
+.PP
+\fBmkostemp\fP(): _GNU_SOURCE
+.br
+\fBmkstemps\fP(): _BSD_SOURCE || _SVID_SOURCE
 .br
-.BR mkostemp ():
-_GNU_SOURCE
-\"O .SH DESCRIPTION
+\fBmkostemps\fP(): _GNU_SOURCE
 .SH 説明
-関数
-.BR mkstemp ()
-は引数
-.I template
-から他と重ならない一時ファイル名を生成し、
-そのファイルの作成とオープンを行い、
+関数 \fBmkstemp\fP()  は引数 \fItemplate\fP から他と重ならない一時ファイル名を生成し、 そのファイルの作成とオープンを行い、
 そのファイルに対するオープン済みのファイルディスクリプタを返す。
 
-引数
-.I template
-で指示する文字列の後ろの 6 文字は XXXXXX である必要がある。
-この部分がファイル名を他と重ならないようにする文字で置き換えられる。
-.I template
-は書き換えられるため、文字列定数ではなく文字配列として
+引数 \fItemplate\fP で指示する文字列の後ろの 6 文字は XXXXXX である必要がある。
+この部分がファイル名を他と重ならないようにする文字で置き換えられる。 \fItemplate\fP は書き換えられるため、文字列定数ではなく文字配列として
 宣言するようにしなければならない。
 
-ファイルは許可モード 0600 で作成され、所有者のみが読み書き可能である
-(glibc バージョン 2.06 以前では、ファイルは許可モード 0666 で作成され、
-全てのユーザが読み書き可能であった)。
-返されるファイルディスクリプタで、このファイルへの読み書き両方のアクセスが
-可能である。
-呼び出し者がそのファイルを作成するプロセスであることを保証するために、
-ファイルは
-.BR open (2)
-の
-.B O_EXCL
+ファイルは許可モード 0600 で作成され、所有者のみが読み書き可能である (glibc バージョン 2.06 以前では、ファイルは許可モード 0666
+で作成され、 全てのユーザが読み書き可能であった)。 返されるファイルディスクリプタで、このファイルへの読み書き両方のアクセスが 可能である。
+呼び出し者がそのファイルを作成するプロセスであることを保証するために、 ファイルは \fBopen\fP(2)  の \fBO_EXCL\fP
 フラグ付きでオープンされる。
 
-.BR mkostemp ()
-は
-.BR mkstemp ()
-と同様だが、
-.BR open (2)
-に渡されるフラグ
-.RB O_APPEND ,
-.B O_SYNC
-など) を
-.I flags
-で指定できる点が異なる
+\fBmkostemp\fP() 関数は \fBmkstemp\fP() と同様だが、\fBopen\fP(2) に渡される
+フラグ O_APPEND\fB,\fP \fBO_SYNC\fP など) を \fIflags\fP で指定できる点が異なる
+
+\fBmkstemps\fP() 関数は \fBmkstemp\fP() と同様だが、 \fItemplate\fP 内の文字列に長さ
+が \fIsuffixlen\fP 文字の接尾辞 (suffix) が含まれる点が異なる。
+したがって、 \fItemplate\fP は \fIprefixXXXXXXsuffix\fP の形式となる。
+文字列 XXXXXX の部分は \fBmkstemp\fP() により更新される。
+
+\fBmkostemps\fP() と \fBmkstemps\fP() の関係は、
+\fBmkostemp\fP() と \fBmkstemp\fP() の関係と同じである。
 .SH 返り値
-成功すると、これらの関数は一時ファイルのファイルディスクリプタを返す。
-エラーの場合は、\-1 を返し、
-.I errno
-を適切に設定する。
+成功すると、これらの関数は一時ファイルのファイルディスクリプタを返す。 エラーの場合は、\-1 を返し、 \fIerrno\fP を適切に設定する。
 .SH エラー
-.TP
-.B EEXIST
-すでに同じ名前を持つファイルが存在した。
-\fItemplate\fP の内容は不定である。
-.TP
-.B EINVAL
-引数 \fItemplate\fP で指示された文字配列の後ろの 6 文字が XXXXXX でない。
-\fItemplate\fP の内容は変化しない。
+.TP 
+\fBEEXIST\fP
+すでに同じ名前を持つファイルが存在した。 \fItemplate\fP の内容は不定である。
+.TP 
+\fBEINVAL\fP
+\fBmkstemp\fP() と \fBmkostemp\fP() の場合:
+\fItemplate\fP の最後の 6 文字が XXXXXX でなかった。
+この場合、\fItemplate\fP は変更されない。
+.sp
+\fBmkstemps\fP() と \fBmkostemps\fP() の場合:
+\fItemplate\fP の長さが \fI(6 + suffixlen)\fP 文字より短い、または
+\fItemplate\fP の接尾辞の直前の 6 文字が XXXXXX ではなかった。
 .PP
-これらの関数は
-.BR open (2)
-に書かわれているエラーのいずれかで失敗することもある。
+これらの関数は \fBopen\fP(2) に書かれているエラーのいずれかで失敗することもある。
 .SH バージョン
-.BR mkostemp ()
-は glibc 2.7 以降で利用可能である。
+\fBmkostemp\fP() は glibc 2.7 以降で利用できる。
+\fBmkstemps\fP() と \fBmkostemps\fP() は glibc 2.11 以降で利用できる。
 .SH 準拠
-.BR mkstemp ():
-4.3BSD, POSIX.1-2001.
-.BR mkostemp ():
-glibc による拡張。
+\fBmkstemp\fP(): 4.3BSD, POSIX.1\-2001.
+
+.\" mkstemps() appears to be at least on the BSDs, Mac OS X, Solaris,
+.\" and Tru64.
+\fBmkstemps\fP(): 標準化されていないが、他のいくつかのシステムにも存在する。
+
+\fBmkostemp\fP() と \fBmkostemps\fP(): glibc による拡張。
 .SH 注意
-許可モード 0666 でファイルを作成するという古い動作は、
-セキュリティ上のリスクになる場合がある。
-特に他の Unix では許可モードとして 0600 を使うため、
-プログラムを移植する際、この細かな違いを見落とす可能性が
-あるからだ。
+許可モード 0666 でファイルを作成するという古い動作は、 セキュリティ上のリスク
+になる場合がある。 特に他の UNIX では許可モードとして 0600 を使うため、
+プログラムを移植する際、この細かな違いを見落とす可能性があるからだ。
 
-より一般的には、
-.BR mkstemp ()
-の POSIX 規定ではファイルモードについて何も述べていない。
-従って、アプリケーションは
-.BR mkstemp ()
-(や
-.BR mkostemp ())
-を呼び出す前にファイルモード生成マスク
-.RB ( umask (2)
-参照) が適切に設定されているか確認するべきである。
+より一般的には、 \fBmkstemp\fP()  の POSIX 規定ではファイルモードについて何も述べていない。 従って、アプリケーションは
+\fBmkstemp\fP()  (や \fBmkostemp\fP())  を呼び出す前にファイルモード生成マスク (\fBumask\fP(2)  参照)
+が適切に設定されているか確認するべきである。
 
-.BR mktemp ()
-のプロトタイプ宣言は、libc4, libc5, glibc1 では
-.I <unistd.h>
-に含まれる; glibc2 では POSIX.1 に準拠し
-.I <stdlib.h>
-に含まれている。
+\fBmktemp\fP()  のプロトタイプ宣言は、libc4, libc5, glibc1 では \fI<unistd.h>\fP に含まれる;
+glibc2 では POSIX.1 に準拠し \fI<stdlib.h>\fP に含まれている。
 .SH 関連項目
-.BR mkdtemp (3),
-.BR mktemp (3),
-.BR tempnam (3),
-.BR tmpfile (3),
-.BR tmpnam (3)
+\fBmkdtemp\fP(3), \fBmktemp\fP(3), \fBtempnam\fP(3), \fBtmpfile\fP(3), \fBtmpnam\fP(3)