#ifndef _NT_MSQ_H_ #define _NT_MSQ_H_ #include "nt_abi.h" #include "nt_object.h" /* semaphore command flags */ #define NT_MSQ_FLAG_NOWAIT (0x0800) #define NT_MSQ_FLAG_NOERROR (0x1000) /* msgqueue info */ typedef struct __attr_ptr_size_aligned__ _nt_msq_info { void * hport; void * section; void * section_addr; size_t section_size; void * hevent; void * apc_routine; void * apc_context; int32_t msqkey; int32_t msqid; int32_t msqspid; int32_t msqrpid; intptr_t msqrank; uintptr_t msqslots; uintptr_t msqcbytes; uintptr_t msqqbytes; uint32_t msqscnt; uint32_t msqrcnt; nt_filetime msqstime; nt_filetime msqrtime; nt_filetime msqctime; uint32_t ipcuid; uint32_t ipcgid; uint32_t ipccuid; uint32_t ipccgid; uint32_t ipcmode; int32_t ipcseq; uint32_t ntaccess; uint32_t ntattr; uint32_t ntshare; uint32_t ntoptions; nt_iosb ntiosb; nt_iosb * riosb; } nt_msq_info; #endif