aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libdiskfs/diskfs.h44
-rw-r--r--libnetfs/netfs.h41
-rw-r--r--libtrivfs/trivfs.h56
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__ */