diff options
author | midipix <writeonce@midipix.org> | 2017-07-30 21:21:21 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2017-07-31 08:43:34 -0400 |
commit | 661c276ff61cf93a40829a9c120e1c6690c2ca2e (patch) | |
tree | 5133a3cb33f7b25ce555e70c8373f518d0cfc7e6 /include | |
parent | 4a2e495c3aae5ba119844ba689c1eb282c1f49a8 (diff) | |
download | ntapi-661c276ff61cf93a40829a9c120e1c6690c2ca2e.tar.bz2 ntapi-661c276ff61cf93a40829a9c120e1c6690c2ca2e.tar.xz |
subsystem interfaces: integrated ipc object directory handlers.
Diffstat (limited to 'include')
-rw-r--r-- | include/ntapi/nt_object.h | 29 | ||||
-rw-r--r-- | include/ntapi/ntapi.h | 2 |
2 files changed, 31 insertions, 0 deletions
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; |