2
Copyright (C) 2003-2004 Douglas Thain and the University of Wisconsin
3
Copyright (C) 2005- The University of Notre Dame
4
This software is distributed under the GNU General Public License.
5
See the file COPYING for details.
11
#include "pfs_types.h"
13
#include <sys/types.h>
15
#include <sys/statfs.h>
26
int pfs_open( const char *path, int flags, mode_t mode );
27
int pfs_pipe( int *fds );
29
int pfs_close( int fd );
30
pfs_ssize_t pfs_read( int fd, void *data, pfs_size_t length );
31
pfs_ssize_t pfs_write( int fd, const void *data, pfs_size_t length );
32
pfs_ssize_t pfs_pread( int fd, void *data, pfs_size_t length, pfs_off_t offset );
33
pfs_ssize_t pfs_pwrite( int fd, const void *data, pfs_size_t length, pfs_off_t offset );
34
pfs_ssize_t pfs_readv( int fd, const struct iovec *vector, int count );
35
pfs_ssize_t pfs_writev( int fd, const struct iovec *vector, int count );
36
pfs_off_t pfs_lseek( int fd, pfs_off_t offset, int whence );
38
int pfs_ftruncate( int fd, pfs_off_t length );
39
int pfs_fstat( int fd, struct pfs_stat *buf );
40
int pfs_fstatfs( int fd, struct pfs_statfs *buf );
41
int pfs_fsync( int fd );
42
int pfs_fchdir( int fd );
43
int pfs_fcntl( int fd, int cmd, void *arg );
44
int pfs_ioctl( int fd, int cmd, void *arg );
45
int pfs_fchmod( int fd, mode_t mode );
46
int pfs_fchown( int fd, uid_t uid, gid_t gid );
47
int pfs_flock( int fd, int op );
49
int pfs_select( int n, fd_set *rfds, fd_set *wfds, fd_set *efds, struct timeval *timeout );
50
int pfs_poll( struct pollfd *ufds, unsigned nfds, int timeout );
51
int pfs_chdir( const char *path );
52
char * pfs_getcwd( char *path, pfs_size_t size );
53
int pfs_dup( int old );
54
int pfs_dup2( int old, int nfd );
56
int pfs_stat( const char *name, struct pfs_stat *buf );
57
int pfs_statfs( const char *path, struct pfs_statfs *buf );
58
int pfs_lstat( const char *name, struct pfs_stat *buf );
59
int pfs_access( const char *name, mode_t mode );
60
int pfs_chmod( const char *name, mode_t mode );
61
int pfs_chown( const char *name, uid_t uid, gid_t gid );
62
int pfs_lchown( const char *name, uid_t uid, gid_t gid );
63
int pfs_truncate( const char *path, pfs_off_t length );
64
int pfs_utime( const char *path, struct utimbuf *buf );
65
int pfs_unlink( const char *name );
66
int pfs_rename( const char *old_name, const char *new_name );
67
int pfs_link( const char *oldpath, const char *newpath );
68
int pfs_symlink( const char *oldpath, const char *newpath );
69
int pfs_readlink( const char *path, char *buf, pfs_size_t size );
70
int pfs_mknod( const char *path, mode_t mode, dev_t dev );
71
int pfs_mkdir( const char *path, mode_t mode );
72
int pfs_rmdir( const char *path );
73
struct dirent * pfs_fdreaddir( int fd );
75
int pfs_socket( int domain, int type, int protocol );
76
int pfs_socketpair( int domain, int type, int protocol, int *fds );
77
int pfs_accept( int fd, struct sockaddr *addr, int * addrlen );
78
int pfs_bind( int fd, const struct sockaddr *addr, int addrlen );
79
int pfs_connect( int fd, const struct sockaddr *addr, int addrlen );
80
int pfs_getpeername( int fd, struct sockaddr *addr, int * addrlen );
81
int pfs_getsockname( int fd, struct sockaddr *addr, int * addrlen );
82
int pfs_getsockopt( int fd, int level, int option, void *value, int * length );
83
int pfs_listen( int fd, int backlog );
84
int pfs_recv( int fd, void *data, int length, int flags );
85
int pfs_recvfrom( int fd, void *data, int length, int flags, struct sockaddr *addr, int * addrlength);
86
int pfs_recvmsg( int fd, struct msghdr *msg, int flags );
87
int pfs_send( int fd, const void *data, int length, int flags );
88
int pfs_sendmsg( int fd, const struct msghdr *msg, int flags );
89
int pfs_sendto( int fd, const void *data, int length, int flags, const struct sockaddr *addr, int addrlength );
90
int pfs_setsockopt( int fd, int level, int option, const void *value, int length );
91
int pfs_shutdown( int fd, int how );
93
int pfs_mkalloc( const char *path, pfs_ssize_t size, mode_t mode );
94
int pfs_lsalloc( const char *path, char *alloc_path, pfs_ssize_t *avail, pfs_ssize_t *inuse );
96
int pfs_whoami( const char *path, char *buf, int size );
97
int pfs_getacl( const char *path, char *buf, int size );
98
int pfs_setacl( const char *path, const char *subject, const char *rights );
99
int pfs_locate( const char *path, char* buf, int size );
100
int pfs_copyfile( const char *source, const char *target );
101
int pfs_md5( const char *path, unsigned char *digest );
102
int pfs_timeout( const char *str );
104
int pfs_get_real_fd( int fd );
105
int pfs_get_full_name( int fd, char *name );
106
int pfs_get_local_name( const char *rpath, char *lpath, char *firstline, int length );
107
int pfs_is_nonblocking( int fd );
108
int pfs_resolve_name( const char *path, struct pfs_name *pname );