From 661c276ff61cf93a40829a9c120e1c6690c2ca2e Mon Sep 17 00:00:00 2001 From: midipix Date: Sun, 30 Jul 2017 21:21:21 +0000 Subject: subsystem interfaces: integrated ipc object directory handlers. --- include/ntapi/nt_object.h | 29 +++++++++++++++++++++++++++++ include/ntapi/ntapi.h | 2 ++ 2 files changed, 31 insertions(+) (limited to 'include') diff --git a/include/ntapi/nt_object.h b/include/ntapi/nt_object.h index 68aa6a5..1dad1d8 100644 --- a/include/ntapi/nt_object.h +++ b/include/ntapi/nt_object.h @@ -378,12 +378,27 @@ typedef struct _nt_directory_basic_information { } nt_directory_basic_information; +typedef struct _nt_ipc_object_directory_guid { + wchar16_t uscore_guid; + wchar16_t pgrp_guid[36]; +} nt_ipc_object_directory_guid, nt_ipc_objdir_guid; + + +typedef struct _nt_ipc_object_directory_name { + wchar16_t base_named_objects[17]; + wchar16_t backslash; + wchar16_t prefix[6]; + nt_ipc_objdir_guid objdir_guid; +} nt_ipc_object_directory_name, nt_ipc_objdir_name; + + typedef struct _nt_keyed_object_directory_guid { wchar16_t uscore_guid; wchar16_t pgrp_guid[36]; wchar16_t uscore_key; } nt_keyed_object_directory_guid, nt_keyed_objdir_guid; + typedef struct _nt_keyed_object_directory_name { wchar16_t base_named_objects[17]; wchar16_t backslash; @@ -489,6 +504,20 @@ typedef int32_t __stdcall ntapi_zw_query_symbolic_link_object( __out size_t * returned_length); /* extension functions */ +typedef int32_t __stdcall ntapi_tt_open_ipc_object_directory( + __out void ** hdir, + __in uint32_t desired_access, + __in const wchar16_t prefix[6], + __in nt_guid * guid); + +typedef int32_t __stdcall ntapi_tt_create_ipc_object_directory_entry( + __out void ** hentry, + __in uint32_t desired_access, + __in void * hdir, + __in void * htarget, + __in nt_unicode_string * target_name, + __in uint32_t key); + typedef int32_t __stdcall ntapi_tt_create_keyed_object_directory( __out void ** hdir, __in uint32_t desired_access, diff --git a/include/ntapi/ntapi.h b/include/ntapi/ntapi.h index 5aa97bd..bf066bd 100644 --- a/include/ntapi/ntapi.h +++ b/include/ntapi/ntapi.h @@ -366,6 +366,8 @@ typedef struct _ntapi_vtbl { /* extension functions */ /* nt_object.h */ + ntapi_tt_open_ipc_object_directory * tt_open_ipc_object_directory; + ntapi_tt_create_ipc_object_directory_entry * tt_create_ipc_object_directory_entry; ntapi_tt_create_keyed_object_directory * tt_create_keyed_object_directory; ntapi_tt_open_keyed_object_directory * tt_open_keyed_object_directory; ntapi_tt_create_keyed_object_directory_entry * tt_create_keyed_object_directory_entry; -- cgit v1.2.3