Name

gfs_pio_sendfile — receive a Gfarm file to local machine

Synopsis

#include <gfarm/gfarm.h>
gfarm_error_t gfs_pio_sendfile( w_gf,  
  w_off,  
  r_fd,  
  r_off,  
  len,  
  sentp);  
GFS_File w_gf;
gfarm_off_t w_off;
int r_fd;
gfarm_off_t r_off;
gfarm_off_t len;
gfarm_off_t * sentp;
 

DESCRIPTION

Sends len bytes of data from the position specified by the offset r_off in a local file which is pointed by a file descriptor r_fd, to the position specified by the offset w_off of a Gfarm file w_gf. If len is -1, this function transfers until the end of the file. The transfered bytes will be stored to the memory pointed by sentp when sentp is not NULL. If len is a positive value, and the value pointed by sentp is less than len, that means the transfer reached EOF.

RETURN VALUES

GFARM_ERR_NO_ERROR

The function terminated successfully.

GFARM_ERR_OPERATION_NOT_PERMITTED

gf does not specify a regular file.

GFARM_ERR_BAD_FILE_DESCRIPTOR

The file descripter specified by gf is not a valid or is not open for reading.

GFARM_ERR_NO_FILE_SYSTEM_NODE

There is no available file system node.

GFARM_ERR_NO_MEMORY

Insufficient memory was available.

Others

An error except the above occurred. The reason is shown by gfarm_error_string(3).

SEE ALSO

gfs_pio_create(3), gfs_pio_open(3), gfs_pio_write(3), gfs_pio_recvfile(3)