ReactOS  0.4.14-dev-77-gd9e7c48
obfuncs.h
Go to the documentation of this file.
1 /*++ NDK Version: 0098
2 
3 Copyright (c) Alex Ionescu. All rights reserved.
4 
5 Header Name:
6 
7  obfuncs.h
8 
9 Abstract:
10 
11  Function definitions for the Object Manager
12 
13 Author:
14 
15  Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006
16 
17 --*/
18 
19 #ifndef _OBFUNCS_H
20 #define _OBFUNCS_H
21 
22 //
23 // Dependencies
24 //
25 #include <umtypes.h>
26 #include <pstypes.h>
27 #include <obtypes.h>
28 
29 #ifdef __cplusplus
30 extern "C" {
31 #endif
32 
33 #ifndef NTOS_MODE_USER
34 
35 //
36 // Object Functions
37 //
40 NTAPI
46 );
47 
50 NTAPI
54 );
55 
58 NTAPI
60  _In_opt_ KPROCESSOR_MODE ObjectAttributesAccessMode,
64  _Inout_opt_ PVOID ParseContext,
65  _In_ ULONG ObjectSize,
66  _In_opt_ ULONG PagedPoolCharge,
67  _In_opt_ ULONG NonPagedPoolCharge,
69 );
70 
73 NTAPI
75  _In_ PUNICODE_STRING TypeName,
76  _In_ POBJECT_TYPE_INITIALIZER ObjectTypeInitializer,
79 );
80 
82 VOID
83 NTAPI
87 );
88 
90 ULONG
91 NTAPI
94 );
95 
98 NTAPI
100  _In_ PSECURITY_DESCRIPTOR InputSecurityDescriptor,
101  _Out_ PSECURITY_DESCRIPTOR *OutputSecurityDescriptor,
102  _In_ ULONG RefBias
103 );
104 
106 NTSTATUS
107 NTAPI
114  _Inout_opt_ PVOID ParseContext,
116 );
117 
119 NTSTATUS
120 NTAPI
128  _Inout_opt_ PVOID ParseContext,
130 );
131 
133 VOID
134 NTAPI
138 );
139 
141 NTSTATUS
142 NTAPI
144  _In_ PVOID Object,
147 );
148 
150 BOOLEAN
151 NTAPI
154  _In_ PVOID Object,
158 );
159 
161 VOID
162 NTAPI
165 );
166 
167 #endif
168 
169 //
170 // Native Calls
171 //
173 NTSTATUS
174 NTAPI
175 NtClose(
177 );
178 
181 NTSTATUS
182 NTAPI
184  _In_ PUNICODE_STRING SubsystemName,
185  _In_opt_ PVOID HandleId,
187 );
188 
190 NTSTATUS
191 NTAPI
196 );
197 
199 NTSTATUS
200 NTAPI
202  _Out_ PHANDLE SymbolicLinkHandle,
206 );
207 
210 NTSTATUS
211 NTAPI
213  _In_ PUNICODE_STRING SubsystemName,
214  _In_opt_ PVOID HandleId,
216 );
217 
219 NTSTATUS
220 NTAPI
222  _In_ HANDLE SourceProcessHandle,
229 );
230 
232 NTSTATUS
233 NTAPI
236 );
237 
239 NTSTATUS
240 NTAPI
243 );
244 
246 NTSTATUS
247 NTAPI
252 );
253 
255 NTSTATUS
256 NTAPI
258  _Out_ PHANDLE JobHandle,
261 );
262 
264 NTSTATUS
265 NTAPI
267  _Out_ PHANDLE SymbolicLinkHandle,
270 );
271 
273 NTSTATUS
274 NTAPI
283 );
284 
288 NTSTATUS
289 NTAPI
296 );
297 
301 NTSTATUS
302 NTAPI
309 );
310 
312 NTSTATUS
313 NTAPI
315  _In_ HANDLE SymLinkObjHandle,
317  _Out_opt_ PULONG DataWritten
318 );
319 
321 NTSTATUS
322 NTAPI
324  _In_ HANDLE ObjectHandle,
328 );
329 
331 NTSTATUS
332 NTAPI
337 );
338 
340 NTSTATUS
341 NTAPI
343  _In_ HANDLE SignalObject,
344  _In_ HANDLE WaitObject,
347 );
348 
350 NTSTATUS
351 NTAPI
353  _In_ ULONG Count,
354  _In_ HANDLE Object[],
358 );
359 
360 NTSTATUS
361 NTAPI
364  _In_ PLONG Handles,
367  _In_opt_ PLARGE_INTEGER TimeOut
368 );
369 
371 NTSTATUS
372 NTAPI
377 );
378 
379 NTSYSAPI
380 NTSTATUS
381 NTAPI
382 ZwClose(
384 );
385 
386 NTSYSAPI
387 NTSTATUS
388 NTAPI
390  _In_ PUNICODE_STRING SubsystemName,
391  _In_ PVOID HandleId,
393 );
394 
395 NTSYSAPI
396 NTSTATUS
397 NTAPI
402 );
403 
404 NTSYSAPI
405 NTSTATUS
406 NTAPI
408  _Out_ PHANDLE SymbolicLinkHandle,
412 );
413 
414 NTSYSAPI
415 NTSTATUS
416 NTAPI
418  _In_ PUNICODE_STRING SubsystemName,
419  _In_ PVOID HandleId,
421 );
422 
424 NTSYSAPI
425 NTSTATUS
426 NTAPI
427 ZwDuplicateObject(
428  _In_ HANDLE SourceProcessHandle,
435 );
436 
437 NTSYSAPI
438 NTSTATUS
439 NTAPI
442 );
443 
444 NTSYSAPI
445 NTSTATUS
446 NTAPI
449 );
450 
451 NTSYSAPI
452 NTSTATUS
453 NTAPI
458 );
459 
460 NTSYSAPI
461 NTSTATUS
462 NTAPI
464  _Out_ PHANDLE JobHandle,
467 );
468 
469 NTSYSAPI
470 NTSTATUS
471 NTAPI
473  _Out_ PHANDLE SymbolicLinkHandle,
476 );
477 
479 NTSYSAPI
480 NTSTATUS
481 NTAPI
482 ZwQueryDirectoryObject(
490 );
491 
492 NTSYSAPI
493 NTSTATUS
494 NTAPI
496  _In_ HANDLE ObjectHandle,
500 );
501 
502 NTSYSAPI
503 NTSTATUS
504 NTAPI
506  _In_ HANDLE SignalObject,
507  _In_ HANDLE WaitObject,
510 );
511 
512 NTSYSAPI
513 NTSTATUS
514 NTAPI
516  _In_ ULONG Count,
517  _In_ HANDLE Object[],
521 );
522 
523 #ifdef NTOS_MODE_USER
524 
526 NTSYSAPI
527 NTSTATUS
528 NTAPI
529 ZwQueryObject(
535 );
536 
538 NTSYSAPI
539 NTSTATUS
540 NTAPI
541 ZwQuerySecurityObject(
545  _In_ ULONG Length,
547 );
548 
550 NTSYSAPI
551 NTSTATUS
552 NTAPI
553 ZwQuerySymbolicLinkObject(
554  _In_ HANDLE LinkHandle,
557 );
558 
560 NTSYSAPI
561 NTSTATUS
562 NTAPI
563 ZwSetSecurityObject(
567 );
568 
572 NTSYSAPI
573 NTSTATUS
574 NTAPI
575 ZwWaitForSingleObject(
579 );
580 
581 #endif /* NTOS_MODE_USER */
582 
583 #ifdef __cplusplus
584 }; // extern "C"
585 #endif
586 
587 #endif
_In_ OBJECT_INFORMATION_CLASS _In_ ULONG _Out_opt_ PULONG ReturnLength
Definition: obfuncs.h:294
NTSYSCALLAPI NTSTATUS NTAPI NtQueryDirectoryObject(_In_ HANDLE DirectoryHandle, _Out_ PVOID Buffer, _In_ ULONG BufferLength, _In_ BOOLEAN ReturnSingleEntry, _In_ BOOLEAN RestartScan, _Inout_ PULONG Context, _Out_opt_ PULONG ReturnLength)
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
Definition: conport.c:35
ObjectType
Definition: metafile.c:80
_In_ PVOID _In_ BOOLEAN Alertable
Definition: exfuncs.h:452
_In_ HANDLE _In_opt_ HANDLE _Out_opt_ PHANDLE _In_ ACCESS_MASK _In_ ULONG HandleAttributes
Definition: obfuncs.h:429
NTSYSCALLAPI NTSTATUS NTAPI NtOpenSymbolicLinkObject(_Out_ PHANDLE SymbolicLinkHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
Type
Definition: Type.h:6
#define _Out_writes_bytes_to_(size, count)
Definition: no_sal2.h:374
NTKERNELAPI NTSTATUS NTAPI ObCreateObjectType(_In_ PUNICODE_STRING TypeName, _In_ POBJECT_TYPE_INITIALIZER ObjectTypeInitializer, _Reserved_ PVOID Reserved, _Out_ POBJECT_TYPE *ObjectType)
NTSYSCALLAPI NTSTATUS NTAPI NtCreateSymbolicLinkObject(_Out_ PHANDLE SymbolicLinkHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ PUNICODE_STRING Name)
_In_ USHORT _In_ ULONG _In_ PSOCKADDR _In_ PSOCKADDR _Reserved_ ULONG _In_opt_ PVOID _In_opt_ const WSK_CLIENT_CONNECTION_DISPATCH _In_opt_ PEPROCESS _In_opt_ PETHREAD _In_opt_ PSECURITY_DESCRIPTOR SecurityDescriptor
Definition: wsk.h:182
NTSYSAPI NTSTATUS NTAPI ZwClose(_In_ HANDLE Handle)
_Out_ PVOID _In_ ULONG _In_ BOOLEAN ReturnSingleEntry
Definition: obfuncs.h:484
_In_ HANDLE _In_opt_ HANDLE _Out_opt_ PHANDLE _In_ ACCESS_MASK _In_ ULONG _In_ ULONG Options
Definition: obfuncs.h:429
_In_ HANDLE _In_opt_ HANDLE _Out_opt_ PHANDLE _In_ ACCESS_MASK DesiredAccess
Definition: obfuncs.h:429
_In_ SECURITY_INFORMATION SecurityInformation
Definition: obfuncs.h:305
LONG NTSTATUS
Definition: precomp.h:26
_Inout_opt_ PACCESS_STATE PassedAccessState
Definition: obfuncs.h:71
static HANDLE DirectoryHandle
Definition: ObType.c:48
NTSYSAPI NTSTATUS NTAPI ZwOpenDirectoryObject(_Out_ PHANDLE FileHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
NTSYSCALLAPI NTSTATUS NTAPI NtMakeTemporaryObject(_In_ HANDLE Handle)
NTSYSCALLAPI NTSTATUS NTAPI NtOpenJobObject(_Out_ PHANDLE JobHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
_Inout_ __drv_aliasesMem PSLIST_ENTRY _Inout_ PSLIST_ENTRY _In_ ULONG Count
Definition: exfuncs.h:1015
#define NTSYSCALLAPI
Definition: ntbasedef.h:204
IN CINT OUT PVOID ObjectInformation
Definition: conport.c:47
NTSYSAPI NTSTATUS NTAPI ZwSetInformationObject(_In_ HANDLE ObjectHandle, _In_ OBJECT_INFORMATION_CLASS ObjectInformationClass, _In_ PVOID ObjectInformation, _In_ ULONG Length)
NTKERNELAPI VOID NTAPI ObReferenceSecurityDescriptor(_In_ PSECURITY_DESCRIPTOR SecurityDescriptor, _In_ ULONG Count)
_In_ HANDLE SourceHandle
Definition: obfuncs.h:429
_In_ PVOID _Out_opt_ PULONG_PTR _Outptr_opt_ PCUNICODE_STRING * ObjectName
Definition: cmfuncs.h:62
NTSYSCALLAPI NTSTATUS NTAPI NtWaitForSingleObject(_In_ HANDLE Object, _In_ BOOLEAN Alertable, _In_opt_ PLARGE_INTEGER Timeout)
NTSYSAPI NTSTATUS NTAPI ZwDeleteObjectAuditAlarm(_In_ PUNICODE_STRING SubsystemName, _In_ PVOID HandleId, _In_ BOOLEAN GenerateOnClose)
#define NTSYSAPI
Definition: ntoskrnl.h:14
NTKERNELAPI NTSTATUS NTAPI ObCloseHandle(_In_ HANDLE Handle, _In_ KPROCESSOR_MODE AccessMode)
_In_ ACCESS_MASK _In_opt_ POBJECT_TYPE _In_ KPROCESSOR_MODE _Out_ PVOID * Object
Definition: obfuncs.h:40
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtCloseObjectAuditAlarm(_In_ PUNICODE_STRING SubsystemName, _In_opt_ PVOID HandleId, _In_ BOOLEAN GenerateOnClose)
NTKERNELAPI NTSTATUS NTAPI ObCreateObject(_In_opt_ KPROCESSOR_MODE ObjectAttributesAccessMode, _In_ POBJECT_TYPE ObjectType, _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ KPROCESSOR_MODE AccessMode, _Inout_opt_ PVOID ParseContext, _In_ ULONG ObjectSize, _In_opt_ ULONG PagedPoolCharge, _In_opt_ ULONG NonPagedPoolCharge, _Out_ PVOID *Object)
#define _In_opt_
Definition: no_sal2.h:213
NTSYSCALLAPI NTSTATUS NTAPI NtQuerySymbolicLinkObject(_In_ HANDLE SymLinkObjHandle, _Out_ PUNICODE_STRING LinkTarget, _Out_opt_ PULONG DataWritten)
_In_ OBJECT_INFORMATION_CLASS _In_ ULONG ObjectInformationLength
Definition: obfuncs.h:294
_Inout_ PUNICODE_STRING LinkTarget
Definition: zwfuncs.h:292
HANDLE FileHandle
Definition: stats.c:38
_IRQL_requires_max_(PASSIVE_LEVEL) __kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtQueryObject(_In_opt_ HANDLE Handle
Definition: Messaging.c:64
NTSYSCALLAPI NTSTATUS NTAPI NtMakePermanentObject(_In_ HANDLE Object)
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
NTKERNELAPI NTSTATUS NTAPI ObLogSecurityDescriptor(_In_ PSECURITY_DESCRIPTOR InputSecurityDescriptor, _Out_ PSECURITY_DESCRIPTOR *OutputSecurityDescriptor, _In_ ULONG RefBias)
enum _OBJECT_INFORMATION_CLASS OBJECT_INFORMATION_CLASS
NTSYSCALLAPI NTSTATUS NTAPI NtSignalAndWaitForSingleObject(_In_ HANDLE SignalObject, _In_ HANDLE WaitObject, _In_ BOOLEAN Alertable, _In_ PLARGE_INTEGER Time)
DWORD SECURITY_INFORMATION
Definition: ms-dtyp.idl:311
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtDeleteObjectAuditAlarm(_In_ PUNICODE_STRING SubsystemName, _In_opt_ PVOID HandleId, _In_ BOOLEAN GenerateOnClose)
LONG ObjectCount
Definition: comsup.c:7
NTSYSAPI NTSTATUS NTAPI ZwCreateDirectoryObject(_Out_ PHANDLE DirectoryHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
_In_ SECURITY_INFORMATION _In_ ULONG _Out_ PULONG LengthNeeded
Definition: obfuncs.h:307
unsigned char BOOLEAN
smooth NULL
Definition: ftsmooth.c:416
NTSYSAPI NTSTATUS NTAPI ZwWaitForMultipleObjects(_In_ ULONG Count, _In_ HANDLE Object[], _In_ WAIT_TYPE WaitType, _In_ BOOLEAN Alertable, _In_ PLARGE_INTEGER Time)
#define _Out_
Definition: no_sal2.h:323
#define NTKERNELAPI
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
Definition: bufpool.h:45
WaitType
Definition: shlextdbg.cpp:17
NTKERNELAPI NTSTATUS NTAPI ObReferenceObjectByName(_In_ PUNICODE_STRING ObjectName, _In_ ULONG Attributes, _In_opt_ PACCESS_STATE PassedAccessState, _In_opt_ ACCESS_MASK DesiredAccess, _In_ POBJECT_TYPE ObjectType, _In_ KPROCESSOR_MODE AccessMode, _Inout_opt_ PVOID ParseContext, _Out_ PVOID *Object)
NTSYSAPI NTSTATUS NTAPI ZwOpenJobObject(_Out_ PHANDLE JobHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
_Out_ PVOID _In_ ULONG BufferLength
Definition: obfuncs.h:484
#define _Out_opt_
Definition: no_sal2.h:339
_In_ HANDLE Handle
Definition: extypes.h:390
NTSTATUS NTAPI NtQuerySecurityObject(IN HANDLE Handle, IN SECURITY_INFORMATION SecurityInformation, OUT PSECURITY_DESCRIPTOR SecurityDescriptor, IN ULONG Length, OUT PULONG ResultLength)
Definition: obsecure.c:803
_In_ OBJECT_INFORMATION_CLASS _Out_writes_bytes_opt_(ObjectInformationLength) PVOID ObjectInformation
NTSTATUS NTAPI NtWaitForMultipleObjects32(_In_ ULONG ObjectCount, _In_ PLONG Handles, _In_ WAIT_TYPE WaitType, _In_ BOOLEAN Alertable, _In_opt_ PLARGE_INTEGER TimeOut)
NTKERNELAPI NTSTATUS NTAPI ObOpenObjectByName(_In_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ POBJECT_TYPE ObjectType, _In_ KPROCESSOR_MODE AccessMode, _In_opt_ PACCESS_STATE PassedAccessState, _In_ ACCESS_MASK DesiredAccess, _Inout_opt_ PVOID ParseContext, _Out_ PHANDLE Handle)
#define __kernel_entry
Definition: specstrings.h:50
NTSTATUS NtQueryObject(IN HANDLE Handle, IN OBJECT_INFO_CLASS ObjectInformationClass, OUT PVOID ObjectInformation, IN ULONG ObjectInformationLength, OUT PULONG ReturnLength)
NTSYSAPI NTSTATUS NTAPI ZwCreateSymbolicLinkObject(_Out_ PHANDLE SymbolicLinkHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ PUNICODE_STRING Name)
NTKERNELAPI NTSTATUS NTAPI ObAssignSecurity(_In_ PACCESS_STATE AccessState, _In_ PSECURITY_DESCRIPTOR SecurityDescriptor, _In_ PVOID Object, _In_ POBJECT_TYPE Type)
_In_opt_ PVOID _In_opt_ PUNICODE_STRING _In_ PSECURITY_DESCRIPTOR _In_ PACCESS_STATE _In_ BOOLEAN _In_ BOOLEAN _In_ KPROCESSOR_MODE _In_opt_ GUID _Out_ PBOOLEAN GenerateOnClose
Definition: sefuncs.h:414
enum _WAIT_TYPE WAIT_TYPE
_In_ ACCESS_MASK _In_opt_ POBJECT_TYPE _In_ KPROCESSOR_MODE _Out_ PVOID _Out_opt_ POBJECT_HANDLE_INFORMATION HandleInformation
Definition: obfuncs.h:40
_In_ HANDLE _In_opt_ HANDLE TargetProcessHandle
Definition: obfuncs.h:429
NTSYSCALLAPI NTSTATUS NTAPI NtSetInformationObject(_In_ HANDLE ObjectHandle, _In_ OBJECT_INFORMATION_CLASS ObjectInformationClass, _In_ PVOID ObjectInformation, _In_ ULONG Length)
#define _Inout_
Definition: no_sal2.h:244
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:101
CCHAR KPROCESSOR_MODE
Definition: ketypes.h:7
_In_opt_ PVOID _In_opt_ PUNICODE_STRING _In_ PSECURITY_DESCRIPTOR _In_ PACCESS_STATE AccessState
Definition: sefuncs.h:414
#define _Reserved_
Definition: no_sal2.h:573
NTSYSCALLAPI NTSTATUS NTAPI NtCreateDirectoryObject(_Out_ PHANDLE DirectoryHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
PVOID *typedef PHANDLE
Definition: ntsecpkg.h:414
_In_ ULONG _In_ BATTERY_QUERY_INFORMATION_LEVEL _In_ LONG _In_ ULONG _Out_ PULONG ReturnedLength
Definition: batclass.h:187
NTKERNELAPI ULONG NTAPI ObGetObjectPointerCount(_In_ PVOID Object)
NTKERNELAPI VOID NTAPI ObDereferenceSecurityDescriptor(_Inout_ PSECURITY_DESCRIPTOR SecurityDescriptor, _In_ ULONG Count)
#define PASSIVE_LEVEL
Definition: env_spec_w32.h:693
NTKERNELAPI NTSTATUS NTAPI ObSetSecurityObjectByPointer(_In_ PVOID Object, _In_ SECURITY_INFORMATION SecurityInformation, _In_ PSECURITY_DESCRIPTOR SecurityDescriptor)
NTSYSCALLAPI NTSTATUS NTAPI NtSetSecurityObject(_In_ HANDLE Handle, _In_ SECURITY_INFORMATION SecurityInformation, _In_ PSECURITY_DESCRIPTOR SecurityDescriptor)
#define DISPATCH_LEVEL
Definition: env_spec_w32.h:696
#define _In_
Definition: no_sal2.h:204
_Must_inspect_result_ _In_ USHORT _In_ PHIDP_PREPARSED_DATA _Out_writes_to_ LengthAttributes PHIDP_EXTENDED_ATTRIBUTES Attributes
Definition: hidpi.h:348
NTSYSAPI NTSTATUS NTAPI ZwSignalAndWaitForSingleObject(_In_ HANDLE SignalObject, _In_ HANDLE WaitObject, _In_ BOOLEAN Alertable, _In_opt_ PLARGE_INTEGER Time)
static ULONG Timeout
Definition: ping.c:61
NTSYSAPI NTSTATUS NTAPI ZwCloseObjectAuditAlarm(_In_ PUNICODE_STRING SubsystemName, _In_ PVOID HandleId, _In_ BOOLEAN GenerateOnClose)
unsigned int * PULONG
Definition: retypes.h:1
#define _When_(expr, annos)
Definition: no_sal2.h:639
NTSYSCALLAPI NTSTATUS NTAPI NtOpenDirectoryObject(_Out_ PHANDLE FileHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
NTKERNELAPI BOOLEAN NTAPI ObFindHandleForObject(_In_ PEPROCESS Process, _In_ PVOID Object, _In_ POBJECT_TYPE ObjectType, _In_opt_ POBJECT_HANDLE_INFORMATION HandleInformation, _Out_opt_ PHANDLE Handle)
_Must_inspect_result_ _In_ PLARGE_INTEGER _In_ PLARGE_INTEGER _In_ ULONG _In_ PFILE_OBJECT _In_ PVOID Process
Definition: fsrtlfuncs.h:219
unsigned int ULONG
Definition: retypes.h:1
NTSYSCALLAPI NTSTATUS NTAPI NtClose(_In_ HANDLE Handle)
NTSYSCALLAPI NTSTATUS NTAPI NtDuplicateObject(_In_ HANDLE SourceProcessHandle, _In_ HANDLE SourceHandle, _In_ HANDLE TargetProcessHandle, _Out_ PHANDLE TargetHandle, _In_ ACCESS_MASK DesiredAccess, _In_ ULONG HandleAttributes, _In_ ULONG Options)
NTSYSCALLAPI NTSTATUS NTAPI NtWaitForMultipleObjects(_In_ ULONG Count, _In_ HANDLE Object[], _In_ WAIT_TYPE WaitType, _In_ BOOLEAN Alertable, _In_ PLARGE_INTEGER Time)
signed int * PLONG
Definition: retypes.h:5
NTSYSAPI NTSTATUS NTAPI ZwMakeTemporaryObject(_In_ HANDLE Handle)
NTSYSAPI NTSTATUS NTAPI ZwMakePermanentObject(_In_ HANDLE Object)
_In_ HANDLE _In_opt_ HANDLE _Out_opt_ PHANDLE TargetHandle
Definition: obfuncs.h:429
_Out_ PVOID _In_ ULONG _In_ BOOLEAN _In_ BOOLEAN RestartScan
Definition: obfuncs.h:484
#define APC_LEVEL
Definition: env_spec_w32.h:695
_In_ OBJECT_INFORMATION_CLASS ObjectInformationClass
Definition: obfuncs.h:292
ULONG ACCESS_MASK
Definition: nt_native.h:40
NTKERNELAPI VOID NTAPI ObDereferenceObjectDeferDelete(_In_ PVOID Object)
static PLARGE_INTEGER Time
Definition: time.c:105
NTSYSAPI NTSTATUS NTAPI ZwOpenSymbolicLinkObject(_Out_ PHANDLE SymbolicLinkHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
#define _Inout_opt_
Definition: no_sal2.h:258
_In_ ACCESS_MASK _In_opt_ POBJECT_TYPE _In_ KPROCESSOR_MODE AccessMode
Definition: obfuncs.h:40