1 /* Part of libhgfs - (c) 2009, D.C. van Moolenbroek */ 2 3 /* attr.c */ 4 #define attr_get PREFIX(attr_get) 5 void attr_get(struct sffs_attr *attr); 6 int hgfs_getattr(char *path, struct sffs_attr *attr); 7 int hgfs_setattr(char *path, struct sffs_attr *attr); 8 9 /* backdoor.s */ 10 #define backdoor PREFIX(backdoor) 11 #define backdoor_in PREFIX(backdoor_in) 12 #define backdoor_out PREFIX(backdoor_out) 13 u32_t backdoor(u32_t ptr[6]); 14 u32_t backdoor_in(u32_t ptr[6]); 15 u32_t backdoor_out(u32_t ptr[6]); 16 17 /* channel.c */ 18 #define channel_open PREFIX(channel_open) 19 #define channel_close PREFIX(channel_close) 20 #define channel_send PREFIX(channel_send) 21 #define channel_recv PREFIX(channel_recv) 22 int channel_open(struct channel *ch, u32_t type); 23 void channel_close(struct channel *ch); 24 int channel_send(struct channel *ch, char *buf, int len); 25 int channel_recv(struct channel *ch, char *buf, int max); 26 27 /* dir.c */ 28 int hgfs_opendir(char *path, sffs_dir_t *handle); 29 int hgfs_readdir(sffs_dir_t handle, unsigned int index, char *buf, size_t size, 30 struct sffs_attr *attr); 31 int hgfs_closedir(sffs_dir_t handle); 32 33 /* error.c */ 34 #define error_convert PREFIX(error_convert) 35 int error_convert(int err); 36 37 /* file.c */ 38 int hgfs_open(char *path, int flags, int mode, sffs_file_t *handle); 39 ssize_t hgfs_read(sffs_file_t handle, char *buf, size_t size, u64_t offset); 40 ssize_t hgfs_write(sffs_file_t handle, char *buf, size_t len, u64_t offset); 41 int hgfs_close(sffs_file_t handle); 42 size_t hgfs_readbuf(char **ptr); 43 size_t hgfs_writebuf(char **ptr); 44 45 /* info.c */ 46 int hgfs_queryvol(char *path, u64_t *free, u64_t *total); 47 48 /* link.c */ 49 int hgfs_mkdir(char *path, int mode); 50 int hgfs_unlink(char *path); 51 int hgfs_rmdir(char *path); 52 int hgfs_rename(char *opath, char *npath); 53 54 /* path.c */ 55 #define path_put PREFIX(path_put) 56 #define path_get PREFIX(path_get) 57 void path_put(char *path); 58 int path_get(char *path, int max); 59 60 /* rpc.c */ 61 #define rpc_open PREFIX(rpc_open) 62 #define rpc_query PREFIX(rpc_query) 63 #define rpc_test PREFIX(rpc_test) 64 #define rpc_close PREFIX(rpc_close) 65 int rpc_open(void); 66 int rpc_query(void); 67 int rpc_test(void); 68 void rpc_close(void); 69 70 /* time.c */ 71 #define time_init PREFIX(time_init) 72 #define time_put PREFIX(time_put) 73 #define time_get PREFIX(time_get) 74 void time_init(void); 75 void time_put(struct timespec *tsp); 76 void time_get(struct timespec *tsp); 77