Name

gfs_pio_recvfile — ファイルをローカルマシンに取り込む

Synopsis

#include <gfarm/gfarm.h>
gfarm_error_t gfs_pio_recvfile( r_gf,  
  r_off,  
  w_fd,  
  w_off,  
  len,  
  recvp);  
GFS_File r_gf;
gfarm_off_t r_off;
int w_fd;
gfarm_off_t w_off;
gfarm_off_t len;
gfarm_off_t * recvp;
 

DESCRIPTION

Gfarm ファイル r_gf の オフセット r_off から、 ファイルディスクリプタ w_fd で指定したローカルファイルの オフセット w_off へ、 len バイトだけ、ファイルの内容を転送します。 len が -1 の場合は、ファイル末尾までの転送を意味します。 recvpNULL 以外であれば、 転送されたバイト数を recvp の指す先に返します。 len が正の値で、 recvp の指す先に返った値が len 未満の場合は、 EOF に到達したことをを意味します。

RETURN VALUES

GFARM_ERR_NO_ERROR

正常終了を示します。

GFARM_ERR_OPERATION_NOT_PERMITTED

gf で指定されるファイルがレギュラーファイルではありません。

GFARM_ERR_BAD_FILE_DESCRIPTOR

gf で指定されるファイルディスクリプタが不正、 あるいは読込可能でオープンされていません。

GFARM_ERR_NO_FILE_SYSTEM_NODE

利用可能なファイルシステムノードがありません。

GFARM_ERR_NO_MEMORY

メモリ不足のため処理を中止しました。

その他

上記以外のエラーが生じたことを示します。 gfarm_error_string(3) によりエラーの原因を文字列に変換することができます。

SEE ALSO

gfs_pio_create(3), gfs_pio_open(3), gfs_pio_read(3), gfs_pio_sendfile(3)