00001 #ifndef CHIRP_LOCAL_H 00002 #define CHIRP_LOCAL_H 00003 00004 #include "chirp_client.h" 00005 #include "link.h" 00006 00007 #include <sys/types.h> 00008 #include <stdio.h> 00009 00010 INT64_T chirp_local_open( const char *path, INT64_T flags, INT64_T mode ); 00011 INT64_T chirp_local_close( int fd ); 00012 INT64_T chirp_local_pread( int fd, void *buffer, INT64_T length, INT64_T offset ); 00013 INT64_T chirp_local_pwrite( int fd, const void *buffer, INT64_T length, INT64_T offset ); 00014 INT64_T chirp_local_sread( int fd, void *buffer, INT64_T length, INT64_T stride_length, INT64_T stride_skip, INT64_T offset ); 00015 INT64_T chirp_local_swrite( int fd, const void *buffer, INT64_T length, INT64_T stride_length, INT64_T stride_skip, INT64_T offset ); 00016 INT64_T chirp_local_fstat( int fd, struct chirp_stat *buf ); 00017 INT64_T chirp_local_fstatfs( int fd, struct chirp_statfs *buf ); 00018 INT64_T chirp_local_fchown( int fd, INT64_T uid, INT64_T gid ); 00019 INT64_T chirp_local_fchmod( int fd, INT64_T mode ); 00020 INT64_T chirp_local_ftruncate( int fd, INT64_T length ); 00021 INT64_T chirp_local_fsync( int fd ); 00022 00023 void * chirp_local_opendir( const char *path ); 00024 char * chirp_local_readdir( void *dir ); 00025 void chirp_local_closedir( void *dir ); 00026 00027 INT64_T chirp_local_getfile( const char *path, struct link *link, time_t stoptime ); 00028 INT64_T chirp_local_putfile( const char *path, struct link *link, INT64_T length, INT64_T mode, time_t stoptime ); 00029 00030 INT64_T chirp_local_mkfifo( const char *path ); 00031 INT64_T chirp_local_unlink( const char *path ); 00032 INT64_T chirp_local_rename( const char *path, const char *newpath ); 00033 INT64_T chirp_local_link( const char *path, const char *newpath ); 00034 INT64_T chirp_local_symlink( const char *path, const char *newpath ); 00035 INT64_T chirp_local_readlink( const char *path, char *buf, INT64_T length ); 00036 INT64_T chirp_local_mkdir( const char *path, INT64_T mode ); 00037 INT64_T chirp_local_rmdir( const char *path ); 00038 INT64_T chirp_local_stat( const char *path, struct chirp_stat *buf ); 00039 INT64_T chirp_local_lstat( const char *path, struct chirp_stat *buf ); 00040 INT64_T chirp_local_statfs( const char *path, struct chirp_statfs *buf ); 00041 INT64_T chirp_local_access( const char *path, INT64_T mode ); 00042 INT64_T chirp_local_chmod( const char *path, INT64_T mode ); 00043 INT64_T chirp_local_chown( const char *path, INT64_T uid, INT64_T gid ); 00044 INT64_T chirp_local_lchown( const char *path, INT64_T uid, INT64_T gid ); 00045 INT64_T chirp_local_truncate( const char *path, INT64_T length ); 00046 INT64_T chirp_local_utime( const char *path, time_t actime, time_t modtime ); 00047 INT64_T chirp_local_md5( const char *path, unsigned char digest[16] ); 00048 00049 INT64_T chirp_local_lsalloc( const char *path, char *alloc_path, INT64_T *total, INT64_T *inuse ); 00050 INT64_T chirp_local_mkalloc( const char *path, INT64_T size, INT64_T mode ); 00051 00052 INT64_T chirp_local_file_size( const char *path ); 00053 INT64_T chirp_local_fd_size( int fd ); 00054 00055 void chirp_local_bandwidth_limit_set( int bytes_per_second ); 00056 00057 #endif