|
HOME > Linux Tips ( 目次 ) > Linux コマンド 一覧表 > m > mkstemp - ライブラリコールの説明 mkstemp - ライブラリコールの説明 - Linux コマンド集 一覧表名前mkstemp - 他と重ならない名前を持つテンポラリファイルを作成する 書式
#include <stdlib.h> 説明関数 mkstemp () は引数 template から他と重ならない テンポラリファイル名を作成する。引数 template で指示する文字列 の後ろの 6 文字は XXXXXX である必要がある。この部分がファイル名を他と重ならない ようにする文字で置き換えられる。ファイルはアクセスモードがリード/ライト、 そして許可モードが0666 (glibc 2.0.6 及びそれ以前の場合)、 0600 (glibc 2.0.7 及びそれ以降)で作成される。 template は書き換えられるため、文字列定数ではなく文字配列として宣言するようにしなければならない。 mkstemp ()が正常終了する時は、われわれが唯一のユーザーであることを保証するために、 テンポラリファイルは open (2) の O_EXCL 属性でオープンされる。 返り値成功すると、関数 mkstemp () はテンポラリファイルの ファイルディスクリプタを返す。エラーの場合は、-1 を返し、 errno を適切に設定する。 エラー
注意
古い動作(許可モード 0666 でファイルを作成する)はセキュリティ上のリスク
になる場合がある。特に他の Unix では許可モードとして 0600 を使うため、
プログラムを移植する際、この細かな違いを見落とす可能性が
あるからだ。
準拠4.3BSD, POSIX.1-2001 備考libc4, libc5, glibc1 でのプロトタイプ宣言は <unistd.h> に含まれる; glibc2 では Single Unix Specification に従って <stdlib.h> に含まれている。 関連項目
|
|