Provided by: libgfarm-dev_2.7.17+dfsg-1build2_amd64
NAME
gfs_pio_create - Gfarmファイルシステムのファイルの作成
SYNOPSIS
#include <gfarm/gfarm.h> gfarm_error_t gfs_pio_create(const char * gfarm_url, int flags, gfarm_mode_t mode, GFS_File * gfp);
DESCRIPTION
指定した gfarm_url に、モード mode でファイルを新規作成し、 GFS_File 構造体を gfp の指す先 に返します。 引数 flags は、 gfs_pio_open() の第二引数と同じ意味を持ちます。 GFARM_FILE_RDONLY、 GFARM_FILE_WRONLY、 GFARM_FILE_RDWR のいずれか一つのフラグを必ず指定しなければならない点も 同じです。 ただし、 gfs_pio_create() に特有のフラグとして、 GFARM_FILE_EXCLUSIVE を指定す ることができます。この指定を行なった場合、 ファイルが既に存在する場合は、ファイルのオープ ンに失敗します。 引数 flags の値として GFARM_FILE_TRUNC が必要な場合は、 明示的に指定する必要がありますの で、ご注意ください。
RETURN VALUES
GFARM_ERR_NO_ERROR 正常終了を示します。 GFARM_ERR_IS_A_DIRECTORY 指定されたファイルはディレクトリです。 GFARM_ERR_IS_A_SYMBOLIC_LINK 指定されたファイルはシンボリックリンクです。 GFARM_ERR_OPERATION_NOT_PERMITTED 指定されたファイルはファイルではありません。 GFARM_ERR_NOT_A_DIRECTORY 指定したパス名の親ディレクトリが、ディレクトリではありません。 GFARM_ERR_PERMISSION_DENIED 指定されたファイルに対し、 flags で指定されたモードでアクセスする権限がないか、その親 ディレクトリへの 書き込み権限がありません。 あるいは、メタデータサーバへの認証に失敗し ました。 GFARM_ERR_NO_MEMORY メモリ不足のため処理を中止しました。 GFARM_ERR_INVALID_ARGUMENT flags の指定が不正です。 GFARM_ERR_GFARM_URL_HOST_IS_MISSING gfarm_url で指定されたGfarm URLにおいて、 メタデータサーバが指定されていません。 GFARM_ERR_GFARM_URL_PORT_IS_MISSING gfarm_url で指定されたGfarm URLにおいて、 メタデータサーバのポート番号が指定されていま せん。 GFARM_ERR_UNKNOWN_HOST 指定されたメタデータサーバのアドレス解決ができません。 GFARM_ERR_TOO_MANY_OPEN_FILES プロセスにおけるオープン可能なファイル数の限界に達しました。 GFARM_ERR_TOO_MANY_OPEN_FILES_IN_SYSTEM システムにおけるオープンできるファイル数の限界に達しました。 GFARM_ERR_NETWORK_IS_UNREACHABLE メタデータサーバに到達できません。 GFARM_ERR_OPERATION_TIMED_OUT メタデータサーバへの接続がタイムアウトをおこしました。 GFARM_ERR_PROTOCOL メタデータサーバとの通信にプロトコルエラーが発生しました。 GFARM_ERR_BROKEN_PIPE メタデータサーバとの通信が切断しました。 GFARM_ERR_PROTOCOL_NOT_SUPPORTED 指定された認証プロトコルはサポートしていません。 GFARM_ERR_AUTHENTICATION メタデータサーバに対する認証に失敗しました。 GFARM_ERR_ALREADY_EXISTS flags引数に GFARM_FILE_EXCLUSIVEフラグが指定されたが、 ファイルが既に存在しました。 その他 上記以外のエラーが生じたことを示します。 gfarm_error_string(3) によりエラーの原因を文 字列に変換することができます。
SEE ALSO
gfs_pio_close(3), gfs_pio_create(3), gfs_pio_eof(3), gfs_pio_error(3), gfs_pio_flush(3), gfs_pio_getc(3), gfs_pio_getline(3), gfs_pio_open(3), gfs_pio_putc(3), gfs_pio_putline(3), gfs_pio_puts(3), gfs_pio_read(3), gfs_pio_seek(3), gfs_pio_ungetc(3), gfs_pio_write(3)