diff options
author | midipix <writeonce@midipix.org> | 2017-09-08 22:22:22 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2017-09-08 22:49:30 -0400 |
commit | 47f21a54cf74e2ec0fc7aa7e3ee06ab5087600a6 (patch) | |
tree | 99d6b4aa390f16e0891877479e5adb4de005d59d /include/ntapi/nt_msq.h | |
parent | a6563a605d7906252921503e89eae8da00eb599c (diff) | |
download | ntapi-47f21a54cf74e2ec0fc7aa7e3ee06ab5087600a6.tar.bz2 ntapi-47f21a54cf74e2ec0fc7aa7e3ee06ab5087600a6.tar.xz |
integrated msgqueue client side interfaces.
Diffstat (limited to 'include/ntapi/nt_msq.h')
-rw-r--r-- | include/ntapi/nt_msq.h | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/include/ntapi/nt_msq.h b/include/ntapi/nt_msq.h index 1aff629..d84b318 100644 --- a/include/ntapi/nt_msq.h +++ b/include/ntapi/nt_msq.h @@ -46,4 +46,101 @@ typedef struct __attr_ptr_size_aligned__ _nt_msq_info { } nt_msq_info; +/* msgqueue client interfaces */ +typedef int32_t __stdcall ntapi_msq_create( + __in void * hport, + __out nt_msq_info * msq, + __in uint32_t access, + __in nt_object_attributes * oa, + __out nt_iosb * iosb, + __in uint32_t share, + __in uint32_t nslots); + + +typedef int32_t __stdcall ntapi_msq_open( + __in void * hport, + __out nt_msq_info * msq, + __in uint32_t access, + __in nt_object_attributes * oa, + __out nt_iosb * iosb, + __in uint32_t share, + __in uint32_t nslots); + + +typedef int32_t __stdcall ntapi_msq_send( + __in nt_msq_info * msq, + __in void * hevent __optional, + __in nt_io_apc_routine * apc_routine __optional, + __in void * apc_context __optional, + __in const void * buffer, + __in size_t len, + __in intptr_t rank, + __in uint32_t options, + __out nt_io_status_block * iosb); + + +typedef int32_t __stdcall ntapi_msq_recv( + __in nt_msq_info * msq, + __in void * hevent __optional, + __in nt_io_apc_routine * apc_routine __optional, + __in void * apc_context __optional, + __out void * buffer, + __in size_t len, + __in intptr_t rank, + __in uint32_t options, + __out nt_io_status_block * iosb); + + +typedef int32_t __stdcall ntapi_msq_fcntl( + __in nt_msq_info * msq, + __in void * hevent __optional, + __in nt_io_apc_routine * apc_routine __optional, + __in void * apc_context __optional, + __out nt_iosb * iosb, + __in uint32_t tty_control_code, + __in void * input_buffer __optional, + __in uint32_t input_buffer_length, + __out void * output_buffer __optional, + __in uint32_t output_buffer_length); + + +typedef int32_t __stdcall ntapi_msq_ioctl( + __in nt_msq_info * msq, + __in void * hevent __optional, + __in nt_io_apc_routine * apc_routine __optional, + __in void * apc_context __optional, + __out nt_iosb * iosb, + __in uint32_t ipc_control_code, + __in void * input_buffer __optional, + __in uint32_t input_buffer_length, + __out void * output_buffer __optional, + __in uint32_t output_buffer_length); + + +typedef int32_t __stdcall ntapi_msq_query( + __in nt_msq_info * msq, + __out nt_io_status_block * iosb, + __out void * sem_info, + __in uint32_t sem_info_length, + __in int32_t sem_ipc_cmd); + + +typedef int32_t __stdcall ntapi_msq_set( + __in nt_msq_info * msq, + __out nt_io_status_block * iosb, + __in void * sem_info, + __in uint32_t sem_info_length, + __in int32_t sem_ipc_cmd); + + +typedef int32_t __stdcall ntapi_msq_cancel( + __in nt_msq_info * msq, + __out nt_iosb * iosb); + + +typedef int32_t __stdcall ntapi_msq_free( + __in nt_msq_info * msq, + __out nt_iosb * iosb); + + #endif |