diff options
-rw-r--r-- | libdiskfs/diskfs.h | 44 | ||||
-rw-r--r-- | libnetfs/netfs.h | 41 | ||||
-rw-r--r-- | libtrivfs/trivfs.h | 56 |
3 files changed, 141 insertions, 0 deletions
diff --git a/libdiskfs/diskfs.h b/libdiskfs/diskfs.h index 4fdeaac2..c949ec07 100644 --- a/libdiskfs/diskfs.h +++ b/libdiskfs/diskfs.h @@ -1159,4 +1159,48 @@ struct store *diskfs_init_main (struct argp *startup_argp, /* Make errors go somewhere reasonable. */ void diskfs_console_stdio (); + +/* The following extracts from io_S.h and fs_S.h catch loff_t erroneously + written off_t and stat64 erroneously written stat, + or missing -D_FILE_OFFSET_BITS=64 build flag. */ + +typedef struct protid *protid_t; + +kern_return_t diskfs_S_io_write (protid_t io_object, + data_t data, + mach_msg_type_number_t dataCnt, + loff_t offset, + vm_size_t *amount); + +kern_return_t diskfs_S_io_read (protid_t io_object, + data_t *data, + mach_msg_type_number_t *dataCnt, + loff_t offset, + vm_size_t amount); + +kern_return_t diskfs_S_io_seek (protid_t io_object, + loff_t offset, + int whence, + loff_t *newp); + +kern_return_t diskfs_S_io_stat (protid_t stat_object, + io_statbuf_t *stat_info); + +kern_return_t diskfs_S_file_set_size (protid_t trunc_file, + loff_t new_size); + +kern_return_t diskfs_S_file_get_storage_info (protid_t file, + portarray_t *ports, + mach_msg_type_name_t *portsPoly, + mach_msg_type_number_t *portsCnt, + intarray_t *ints, + mach_msg_type_number_t *intsCnt, + off_array_t *offsets, + mach_msg_type_number_t *offsetsCnt, + data_t *data, + mach_msg_type_number_t *dataCnt); + +kern_return_t diskfs_S_file_statfs (protid_t file, + fsys_statfsbuf_t *info); + #endif /* hurd/diskfs.h */ diff --git a/libnetfs/netfs.h b/libnetfs/netfs.h index 3d51b74b..625aa963 100644 --- a/libnetfs/netfs.h +++ b/libnetfs/netfs.h @@ -482,5 +482,46 @@ extern auth_t netfs_auth_server_port; typedef struct protid *protid_t; typedef struct netfs_control *control_t; + +/* The following extracts from io_S.h and fs_S.h catch loff_t erroneously + written off_t and stat64 erroneously written stat, + or missing -D_FILE_OFFSET_BITS=64 build flag. */ + +kern_return_t netfs_S_io_write (protid_t io_object, + data_t data, + mach_msg_type_number_t dataCnt, + loff_t offset, + vm_size_t *amount); + +kern_return_t netfs_S_io_read (protid_t io_object, + data_t *data, + mach_msg_type_number_t *dataCnt, + loff_t offset, + vm_size_t amount); + +kern_return_t netfs_S_io_seek (protid_t io_object, + loff_t offset, + int whence, + loff_t *newp); + +kern_return_t netfs_S_io_stat (protid_t stat_object, + io_statbuf_t *stat_info); + +kern_return_t netfs_S_file_set_size (protid_t trunc_file, + loff_t new_size); + +kern_return_t netfs_S_file_get_storage_info (protid_t file, + portarray_t *ports, + mach_msg_type_name_t *portsPoly, + mach_msg_type_number_t *portsCnt, + intarray_t *ints, + mach_msg_type_number_t *intsCnt, + off_array_t *offsets, + mach_msg_type_number_t *offsetsCnt, + data_t *data, + mach_msg_type_number_t *dataCnt); + +kern_return_t netfs_S_file_statfs (protid_t file, + fsys_statfsbuf_t *info); #endif /* _HURD_NETFS_H_ */ diff --git a/libtrivfs/trivfs.h b/libtrivfs/trivfs.h index ddeb29a8..1f0c5071 100644 --- a/libtrivfs/trivfs.h +++ b/libtrivfs/trivfs.h @@ -252,4 +252,60 @@ void trivfs_remove_port_bucket (struct port_bucket *bucket); typedef struct trivfs_protid *trivfs_protid_t; typedef struct trivfs_control *trivfs_control_t; + +/* The following extracts from io_S.h and fs_S.h catch loff_t erroneously + written off_t and stat64 erroneously written stat, + or missing -D_FILE_OFFSET_BITS=64 build flag. */ + +kern_return_t trivfs_S_io_write (trivfs_protid_t io_object, + mach_port_t reply, + mach_msg_type_name_t replyPoly, + data_t data, + mach_msg_type_number_t dataCnt, + loff_t offset, + vm_size_t *amount); + +kern_return_t trivfs_S_io_read (trivfs_protid_t io_object, + mach_port_t reply, + mach_msg_type_name_t replyPoly, + data_t *data, + mach_msg_type_number_t *dataCnt, + loff_t offset, + vm_size_t amount); + +kern_return_t trivfs_S_io_seek (trivfs_protid_t io_object, + mach_port_t reply, + mach_msg_type_name_t replyPoly, + loff_t offset, + int whence, + loff_t *newp); + +kern_return_t trivfs_S_io_stat (trivfs_protid_t stat_object, + mach_port_t reply, + mach_msg_type_name_t replyPoly, + io_statbuf_t *stat_info); + +kern_return_t trivfs_S_file_set_size (trivfs_protid_t trunc_file, + mach_port_t reply, + mach_msg_type_name_t replyPoly, + loff_t new_size); + +kern_return_t trivfs_S_file_get_storage_info (trivfs_protid_t file, + mach_port_t reply, + mach_msg_type_name_t replyPoly, + portarray_t *ports, + mach_msg_type_name_t *portsPoly, + mach_msg_type_number_t *portsCnt, + intarray_t *ints, + mach_msg_type_number_t *intsCnt, + off_array_t *offsets, + mach_msg_type_number_t *offsetsCnt, + data_t *data, + mach_msg_type_number_t *dataCnt); + +kern_return_t trivfs_S_file_statfs (trivfs_protid_t file, + mach_port_t reply, + mach_msg_type_name_t replyPoly, + fsys_statfsbuf_t *info); + #endif /* __TRIVFS_H__ */ |