diff options
Diffstat (limited to 'third_party/rust/mach2/src/mach_port.rs')
-rw-r--r-- | third_party/rust/mach2/src/mach_port.rs | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/third_party/rust/mach2/src/mach_port.rs b/third_party/rust/mach2/src/mach_port.rs new file mode 100644 index 0000000000..e14a08e957 --- /dev/null +++ b/third_party/rust/mach2/src/mach_port.rs @@ -0,0 +1,35 @@ +//! This module corresponds to `mach/mach_port.h` + +use kern_return::kern_return_t; +use mach_types::ipc_space_t; +use message::mach_msg_type_name_t; +use port::{mach_port_delta_t, mach_port_name_t, mach_port_right_t, mach_port_t}; + +extern "C" { + pub fn mach_port_allocate( + task: ipc_space_t, + right: mach_port_right_t, + name: *mut mach_port_name_t, + ) -> kern_return_t; + pub fn mach_port_destroy(task: ipc_space_t, name: mach_port_name_t) -> kern_return_t; + pub fn mach_port_deallocate(task: ipc_space_t, name: mach_port_name_t) -> kern_return_t; + pub fn mach_port_insert_right( + task: ipc_space_t, + name: mach_port_name_t, + poly: mach_port_t, + polyPoly: mach_msg_type_name_t, + ) -> kern_return_t; + pub fn mach_port_extract_right( + task: ipc_space_t, + name: mach_port_name_t, + msgt_name: mach_msg_type_name_t, + poly: *mut mach_port_t, + polyPoly: *mut mach_msg_type_name_t, + ) -> kern_return_t; + pub fn mach_port_mod_refs( + task: ipc_space_t, + name: mach_port_name_t, + right: mach_port_right_t, + delta: mach_port_delta_t, + ) -> kern_return_t; +} |