diff options
Diffstat (limited to 'libtrivfs/trivfs.h')
-rw-r--r-- | libtrivfs/trivfs.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/libtrivfs/trivfs.h b/libtrivfs/trivfs.h index 1e298dc4..6e087f31 100644 --- a/libtrivfs/trivfs.h +++ b/libtrivfs/trivfs.h @@ -261,4 +261,40 @@ error_t trivfs_add_port_bucket (struct port_bucket **bucket); if it was allocated by trivfs_add_port_bucket. */ void trivfs_remove_port_bucket (struct port_bucket *bucket); + +/* This stuff is for the sake of MiG stubs and could be in a private + header. But it might be handy for users that override parts of the + library. Moreover, since the stub headers will use all the imports we + need for the stubs, we couldn't make the stub headers public without + making this public too. */ + +typedef struct trivfs_protid *trivfs_protid_t; +typedef struct trivfs_control *trivfs_control_t; + +struct trivfs_protid *_trivfs_begin_using_protid (mach_port_t); +void _trivfs_end_using_protid (struct trivfs_protid *); +struct trivfs_control *_trivfs_begin_using_control (mach_port_t); +void _trivfs_end_using_control (struct trivfs_control *); + +/* Vectors of dynamically allocated port classes/buckets. */ + +/* Protid port classes. */ +extern struct port_class **trivfs_dynamic_protid_port_classes; +extern size_t trivfs_num_dynamic_protid_port_classes; + +/* Control port classes. */ +extern struct port_class **trivfs_dynamic_control_port_classes; +extern size_t trivfs_num_dynamic_control_port_classes; + +/* Port buckets. */ +extern struct port_bucket **trivfs_dynamic_port_buckets; +extern size_t trivfs_num_dynamic_port_buckets; + +/* These are the MiG-generated headers that declare prototypes + for the server functions. */ +#include <hurd/trivfs_fs_S.h> +#include <hurd/trivfs_io_S.h> +#include <hurd/trivfs_fsys_S.h> + + #endif /* __TRIVFS_H__ */ |