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
のいずれか一つのフラグを必ず指定しなければならない点も同じです。
引数
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_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)