ReactOS  0.4.14-dev-57-g333b8f1
nttmapi.h
Go to the documentation of this file.
1 #ifndef _NTTMAPI_
2 #define _NTTMAPI_
3 
4 #include <ktmtypes.h>
5 
6 #define TRANSACTIONMANAGER_QUERY_INFORMATION (0x0001)
7 #define TRANSACTIONMANAGER_SET_INFORMATION (0x0002)
8 #define TRANSACTIONMANAGER_RECOVER (0x0004)
9 #define TRANSACTIONMANAGER_RENAME (0x0008)
10 #define TRANSACTIONMANAGER_CREATE_RM (0x0010)
11 #define TRANSACTIONMANAGER_BIND_TRANSACTION (0x0020)
12 
13 #define TRANSACTIONMANAGER_GENERIC_READ (STANDARD_RIGHTS_READ |\
14  TRANSACTIONMANAGER_QUERY_INFORMATION)
15 
16 #define TRANSACTIONMANAGER_GENERIC_WRITE (STANDARD_RIGHTS_WRITE |\
17  TRANSACTIONMANAGER_SET_INFORMATION |\
18  TRANSACTIONMANAGER_RECOVER |\
19  TRANSACTIONMANAGER_RENAME |\
20  TRANSACTIONMANAGER_CREATE_RM)
21 
22 #define TRANSACTIONMANAGER_GENERIC_EXECUTE (STANDARD_RIGHTS_EXECUTE)
23 
24 #define TRANSACTIONMANAGER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED |\
25  TRANSACTIONMANAGER_GENERIC_READ |\
26  TRANSACTIONMANAGER_GENERIC_WRITE |\
27  TRANSACTIONMANAGER_GENERIC_EXECUTE |\
28  TRANSACTIONMANAGER_BIND_TRANSACTION)
29 
30 #define TRANSACTION_QUERY_INFORMATION (0x0001)
31 #define TRANSACTION_SET_INFORMATION (0x0002)
32 #define TRANSACTION_ENLIST (0x0004)
33 #define TRANSACTION_COMMIT (0x0008)
34 #define TRANSACTION_ROLLBACK (0x0010)
35 #define TRANSACTION_PROPAGATE (0x0020)
36 #define TRANSACTION_RIGHT_RESERVED1 (0x0040)
37 
38 #define TRANSACTION_GENERIC_READ (STANDARD_RIGHTS_READ |\
39  TRANSACTION_QUERY_INFORMATION |\
40  SYNCHRONIZE)
41 
42 #define TRANSACTION_GENERIC_WRITE (STANDARD_RIGHTS_WRITE |\
43  TRANSACTION_SET_INFORMATION |\
44  TRANSACTION_COMMIT |\
45  TRANSACTION_ENLIST |\
46  TRANSACTION_ROLLBACK |\
47  TRANSACTION_PROPAGATE |\
48  SYNCHRONIZE)
49 
50 #define TRANSACTION_GENERIC_EXECUTE (STANDARD_RIGHTS_EXECUTE |\
51  TRANSACTION_COMMIT |\
52  TRANSACTION_ROLLBACK |\
53  SYNCHRONIZE)
54 
55 #define TRANSACTION_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED |\
56  TRANSACTION_GENERIC_READ |\
57  TRANSACTION_GENERIC_WRITE |\
58  TRANSACTION_GENERIC_EXECUTE)
59 
60 #define TRANSACTION_RESOURCE_MANAGER_RIGHTS (TRANSACTION_GENERIC_READ |\
61  STANDARD_RIGHTS_WRITE |\
62  TRANSACTION_SET_INFORMATION |\
63  TRANSACTION_ENLIST |\
64  TRANSACTION_ROLLBACK |\
65  TRANSACTION_PROPAGATE |\
66  SYNCHRONIZE)
67 
68 #define RESOURCEMANAGER_QUERY_INFORMATION (0x0001)
69 #define RESOURCEMANAGER_SET_INFORMATION (0x0002)
70 #define RESOURCEMANAGER_RECOVER (0x0004)
71 #define RESOURCEMANAGER_ENLIST (0x0008)
72 #define RESOURCEMANAGER_GET_NOTIFICATION (0x0010)
73 #define RESOURCEMANAGER_REGISTER_PROTOCOL (0x0020)
74 #define RESOURCEMANAGER_COMPLETE_PROPAGATION (0x0040)
75 
76 #define RESOURCEMANAGER_GENERIC_READ (STANDARD_RIGHTS_READ |\
77  RESOURCEMANAGER_QUERY_INFORMATION |\
78  SYNCHRONIZE)
79 
80 #define RESOURCEMANAGER_GENERIC_WRITE (STANDARD_RIGHTS_WRITE |\
81  RESOURCEMANAGER_SET_INFORMATION |\
82  RESOURCEMANAGER_RECOVER |\
83  RESOURCEMANAGER_ENLIST |\
84  RESOURCEMANAGER_GET_NOTIFICATION |\
85  RESOURCEMANAGER_REGISTER_PROTOCOL |\
86  RESOURCEMANAGER_COMPLETE_PROPAGATION |\
87  SYNCHRONIZE)
88 
89 #define RESOURCEMANAGER_GENERIC_EXECUTE (STANDARD_RIGHTS_EXECUTE |\
90  RESOURCEMANAGER_RECOVER |\
91  RESOURCEMANAGER_ENLIST |\
92  RESOURCEMANAGER_GET_NOTIFICATION |\
93  RESOURCEMANAGER_COMPLETE_PROPAGATION |\
94  SYNCHRONIZE)
95 
96 #define RESOURCEMANAGER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED |\
97  RESOURCEMANAGER_GENERIC_READ |\
98  RESOURCEMANAGER_GENERIC_WRITE |\
99  RESOURCEMANAGER_GENERIC_EXECUTE)
100 
101 #define ENLISTMENT_QUERY_INFORMATION (0x0001)
102 #define ENLISTMENT_SET_INFORMATION (0x0002)
103 #define ENLISTMENT_RECOVER (0x0004)
104 #define ENLISTMENT_SUBORDINATE_RIGHTS (0x0008)
105 #define ENLISTMENT_SUPERIOR_RIGHTS (0x0010)
106 
107 #define ENLISTMENT_GENERIC_READ (STANDARD_RIGHTS_READ |\
108  ENLISTMENT_QUERY_INFORMATION)
109 
110 #define ENLISTMENT_GENERIC_WRITE (STANDARD_RIGHTS_WRITE |\
111  ENLISTMENT_SET_INFORMATION |\
112  ENLISTMENT_RECOVER |\
113  ENLISTMENT_SUBORDINATE_RIGHTS |\
114  ENLISTMENT_SUPERIOR_RIGHTS)
115 
116 #define ENLISTMENT_GENERIC_EXECUTE (STANDARD_RIGHTS_EXECUTE |\
117  ENLISTMENT_RECOVER |\
118  ENLISTMENT_SUBORDINATE_RIGHTS |\
119  ENLISTMENT_SUPERIOR_RIGHTS)
120 
121 #define ENLISTMENT_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED |\
122  ENLISTMENT_GENERIC_READ |\
123  ENLISTMENT_GENERIC_WRITE |\
124  ENLISTMENT_GENERIC_EXECUTE)
125 
126 typedef enum _TRANSACTION_OUTCOME {
131 
132 
133 typedef enum _TRANSACTION_STATE {
138 
139 
145 
150 
154 
157  _Field_size_(LogPathLength) WCHAR LogPath[1];
159 
163 
172 
176 
181 
186 
190 
196 
201 
202 typedef enum _KTMOBJECT_TYPE {
209 
210 typedef struct _KTMOBJECT_CURSOR {
215 
222 
229 
234 
240 
246 
252 
253 typedef struct _TRANSACTION_LIST_ENTRY {
254 #if defined(__cplusplus)
255  ::UOW UOW;
256 #else
258 #endif
260 
265 
266 typedef NTSTATUS
278 
279 typedef NTSTATUS
286 
287 typedef NTSTATUS
294 
295 typedef NTSTATUS
301 
302 typedef NTSTATUS
305  _In_ BOOLEAN Wait);
306 
307 typedef NTSTATUS
310  _In_ BOOLEAN Wait);
311 
312 #if (NTDDI_VERSION >= NTDDI_VISTA)
313 
318 NTSTATUS
319 NTAPI
320 NtCreateTransactionManager(
327 
332 NTSTATUS
333 NTAPI
334 NtOpenTransactionManager(
341 
346 NTSTATUS
347 NTAPI
348 NtRenameTransactionManager(
351 
356 NTSTATUS
357 NTAPI
358 NtRollforwardTransactionManager(
359  _In_ HANDLE TransactionManagerHandle,
361 
366 NTSTATUS
367 NTAPI
368 NtRecoverTransactionManager(
369  _In_ HANDLE TransactionManagerHandle);
370 
375 NTSTATUS
376 NTAPI
377 NtQueryInformationTransactionManager(
378  _In_ HANDLE TransactionManagerHandle,
383 
388 NTSTATUS
389 NTAPI
390 NtSetInformationTransactionManager(
395 
400 NTSTATUS
401 NTAPI
402 NtEnumerateTransactionObject(
403  _In_opt_ HANDLE RootObjectHandle,
408 
413 NTSTATUS
414 NTAPI
415 NtCreateTransaction(
426 
431 NTSTATUS
432 NTAPI
433 NtOpenTransaction(
437  _In_ LPGUID Uow,
439 
444 NTSTATUS
445 NTAPI
446 NtQueryInformationTransaction(
452 
457 NTSTATUS
458 NTAPI
459 NtSetInformationTransaction(
464 
468 NTSTATUS
469 NTAPI
470 NtCommitTransaction(
473 
477 NTSTATUS
478 NTAPI
479 NtRollbackTransaction(
481  _In_ BOOLEAN Wait);
482 
487 NTSTATUS
488 NTAPI
489 NtCreateEnlistment(
490  _Out_ PHANDLE EnlistmentHandle,
498 
503 NTSTATUS
504 NTAPI
505 NtOpenEnlistment(
506  _Out_ PHANDLE EnlistmentHandle,
511 
516 NTSTATUS
517 NTAPI
518 NtQueryInformationEnlistment(
519  _In_ HANDLE EnlistmentHandle,
524 
529 NTSTATUS
530 NTAPI
531 NtSetInformationEnlistment(
532  _In_opt_ HANDLE EnlistmentHandle,
534  _In_reads_bytes_(EnlistmentInformationLength) PVOID EnlistmentInformation,
536 
541 NTSTATUS
542 NTAPI
543 NtRecoverEnlistment(
544  _In_ HANDLE EnlistmentHandle,
546 
551 NTSTATUS
552 NTAPI
553 NtPrePrepareEnlistment(
554  _In_ HANDLE EnlistmentHandle,
556 
561 NTSTATUS
562 NTAPI
563 NtPrepareEnlistment(
564  _In_ HANDLE EnlistmentHandle,
566 
571 NTSTATUS
572 NTAPI
573 NtCommitEnlistment(
574  _In_ HANDLE EnlistmentHandle,
576 
580 NTSTATUS
581 NTAPI
582 NtRollbackEnlistment(
583  _In_ HANDLE EnlistmentHandle,
585 
589 NTSTATUS
590 NTAPI
591 NtPrePrepareComplete(
592  _In_ HANDLE EnlistmentHandle,
594 
598 NTSTATUS
599 NTAPI
600 NtPrepareComplete(
601  _In_ HANDLE EnlistmentHandle,
603 
607 NTSTATUS
608 NTAPI
609 NtCommitComplete(
610  _In_ HANDLE EnlistmentHandle,
612 
616 NTSTATUS
617 NTAPI
618 NtReadOnlyEnlistment(
619  _In_ HANDLE EnlistmentHandle,
621 
625 NTSTATUS
626 NTAPI
627 NtRollbackComplete(
628  _In_ HANDLE EnlistmentHandle,
630 
634 NTSTATUS
635 NTAPI
636 NtSinglePhaseReject(
637  _In_ HANDLE EnlistmentHandle,
639 
644 NTSTATUS
645 NTAPI
646 NtCreateResourceManager(
654 
659 NTSTATUS
660 NTAPI
661 NtOpenResourceManager(
667 
672 NTSTATUS
673 NTAPI
674 NtRecoverResourceManager(
676 
681 NTSTATUS
682 NTAPI
683 NtGetNotificationResourceManager(
691 
696 NTSTATUS
697 NTAPI
698 NtQueryInformationResourceManager(
701  _Out_writes_bytes_(ResourceManagerInformationLength) PVOID ResourceManagerInformation,
704 
709 NTSTATUS
710 NTAPI
711 NtSetInformationResourceManager(
714  _In_reads_bytes_(ResourceManagerInformationLength) PVOID ResourceManagerInformation,
716 
721 NTSTATUS
722 NTAPI
723 NtRegisterProtocolAddressInformation(
729 
733 NTSTATUS
734 NTAPI
735 NtPropagationComplete(
739  _In_ PVOID Buffer);
740 
744 NTSTATUS
745 NTAPI
746 NtPropagationFailed(
750 
751 #endif /* NTDDI_VERSION >= NTDDI_VISTA */
752 
753 #endif /* !_NTTMAPI_ */
struct _TRANSACTION_LIST_ENTRY TRANSACTION_LIST_ENTRY
_Must_inspect_result_ _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ PUNICODE_STRING _In_opt_ ULONG CreateOptions
Definition: nttmapi.h:322
struct _TRANSACTION_PROPERTIES_INFORMATION * PTRANSACTION_PROPERTIES_INFORMATION
#define _Must_inspect_result_
Definition: no_sal2.h:314
struct _TRANSACTION_LIST_INFORMATION TRANSACTION_LIST_INFORMATION
_Must_inspect_result_ _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ PUNICODE_STRING _In_opt_ LPGUID TmIdentity
Definition: nttmapi.h:336
struct _ENLISTMENT_CRM_INFORMATION * PENLISTMENT_CRM_INFORMATION
_Must_inspect_result_ _Out_ PTRANSACTION_NOTIFICATION TransactionNotification
Definition: nttmapi.h:685
_Must_inspect_result_ _Out_ PTRANSACTION_NOTIFICATION _In_ ULONG NotificationLength
Definition: nttmapi.h:685
_In_ TRANSACTION_INFORMATION_CLASS _In_ PVOID TransactionInformation
Definition: zwfuncs.h:863
ULONG ObjectIdCount
Definition: nttmapi.h:212
_Must_inspect_result_ _In_ TRANSACTIONMANAGER_INFORMATION_CLASS _In_ ULONG TransactionManagerInformationLength
Definition: nttmapi.h:381
_TRANSACTION_INFORMATION_CLASS
Definition: nttmapi.h:216
struct _TRANSACTION_ENLISTMENT_PAIR * PTRANSACTION_ENLISTMENT_PAIR
_Must_inspect_result_ _In_ ACCESS_MASK _In_ HANDLE _In_ LPGUID EnlistmentGuid
Definition: nttmapi.h:507
_Must_inspect_result_ _In_ TRANSACTION_INFORMATION_CLASS TransactionInformationClass
Definition: nttmapi.h:448
LONG NTSTATUS
Definition: precomp.h:26
_Must_inspect_result_ _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ LPGUID _In_opt_ HANDLE TmHandle
Definition: nttmapi.h:417
_Field_size_(LogPathLength) WCHAR LogPath[1]
NTSTATUS(NTAPI * PFN_NT_SET_INFORMATION_TRANSACTION)(_In_ HANDLE TransactionHandle, _In_ TRANSACTION_INFORMATION_CLASS TransactionInformationClass, _In_ PVOID TransactionInformation, _In_ ULONG TransactionInformationLength)
Definition: nttmapi.h:296
enum _RESOURCEMANAGER_INFORMATION_CLASS RESOURCEMANAGER_INFORMATION_CLASS
struct _TRANSACTION_BASIC_INFORMATION TRANSACTION_BASIC_INFORMATION
_Must_inspect_result_ _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ LPGUID _In_opt_ HANDLE _In_opt_ ULONG _In_opt_ ULONG _In_opt_ ULONG _In_opt_ PLARGE_INTEGER _In_opt_ PUNICODE_STRING Description
Definition: nttmapi.h:417
_KTMOBJECT_TYPE
Definition: nttmapi.h:202
_Must_inspect_result_ _Out_ PTRANSACTION_NOTIFICATION _In_ ULONG _In_opt_ PLARGE_INTEGER _Out_opt_ PULONG _In_ ULONG _In_opt_ ULONG_PTR AsynchronousContext
Definition: nttmapi.h:685
#define NTSYSCALLAPI
Definition: ntbasedef.h:204
NTSTATUS(NTAPI * PFN_NT_ROLLBACK_TRANSACTION)(_In_ HANDLE TransactionHandle, _In_ BOOLEAN Wait)
Definition: nttmapi.h:308
UOW UOW
Definition: nttmapi.h:257
NTSTATUS(NTAPI * PFN_NT_QUERY_INFORMATION_TRANSACTION)(_In_ HANDLE TransactionHandle, _In_ TRANSACTION_INFORMATION_CLASS TransactionInformationClass, _Out_writes_bytes_(TransactionInformationLength) PVOID TransactionInformation, _In_ ULONG TransactionInformationLength, _Out_opt_ PULONG ReturnLength)
Definition: nttmapi.h:288
_In_ ULONG _In_ ULONG BufferLength
Definition: nttmapi.h:737
_Must_inspect_result_ _In_ TRANSACTIONMANAGER_INFORMATION_CLASS TransactionManagerInformationClass
Definition: nttmapi.h:379
enum _KTMOBJECT_TYPE * PKTMOBJECT_TYPE
struct _KTMOBJECT_CURSOR KTMOBJECT_CURSOR
_Must_inspect_result_ _In_ ACCESS_MASK _In_ HANDLE _In_ HANDLE _In_opt_ POBJECT_ATTRIBUTES _In_opt_ ULONG _In_ NOTIFICATION_MASK NotificationMask
Definition: nttmapi.h:491
#define _In_opt_
Definition: no_sal2.h:213
struct _TRANSACTIONMANAGER_LOGPATH_INFORMATION TRANSACTIONMANAGER_LOGPATH_INFORMATION
uint32_t ULONG_PTR
Definition: typedefs.h:63
struct _TRANSACTIONMANAGER_RECOVERY_INFORMATION * PTRANSACTIONMANAGER_RECOVERY_INFORMATION
_Must_inspect_result_ _In_ PCRM_PROTOCOL_ID ProtocolId
Definition: nttmapi.h:725
struct _ENLISTMENT_CRM_INFORMATION ENLISTMENT_CRM_INFORMATION
_Must_inspect_result_ _In_ ENLISTMENT_INFORMATION_CLASS _In_ ULONG EnlistmentInformationLength
Definition: nttmapi.h:522
struct _RESOURCEMANAGER_COMPLETION_INFORMATION * PRESOURCEMANAGER_COMPLETION_INFORMATION
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
_Must_inspect_result_ _In_ ACCESS_MASK _In_ HANDLE ResourceManagerHandle
Definition: nttmapi.h:491
_Must_inspect_result_ _In_ ENLISTMENT_INFORMATION_CLASS EnlistmentInformationClass
Definition: nttmapi.h:520
struct _TRANSACTIONMANAGER_BASIC_INFORMATION TRANSACTIONMANAGER_BASIC_INFORMATION
_Must_inspect_result_ _In_ PCRM_PROTOCOL_ID _In_ ULONG ProtocolInformationSize
Definition: nttmapi.h:725
GUID ObjectIds[1]
Definition: nttmapi.h:213
unsigned char BOOLEAN
_Must_inspect_result_ _In_ ACCESS_MASK _In_ HANDLE _In_ HANDLE TransactionHandle
Definition: nttmapi.h:491
_Must_inspect_result_ _Out_ PTRANSACTION_NOTIFICATION _In_ ULONG _In_opt_ PLARGE_INTEGER _Out_opt_ PULONG _In_ ULONG Asynchronous
Definition: nttmapi.h:685
#define _Out_
Definition: no_sal2.h:323
struct _RESOURCEMANAGER_COMPLETION_INFORMATION RESOURCEMANAGER_COMPLETION_INFORMATION
Definition: bufpool.h:45
NTSTATUS(NTAPI * PFN_NT_OPEN_TRANSACTION)(_Out_ PHANDLE TransactionHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _In_opt_ LPGUID Uow, _In_opt_ HANDLE TmHandle)
Definition: nttmapi.h:280
_Must_inspect_result_ _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ LPGUID Uow
Definition: nttmapi.h:417
_In_ BOOLEAN Wait
Definition: nttmapi.h:472
_RESOURCEMANAGER_INFORMATION_CLASS
Definition: nttmapi.h:230
_Must_inspect_result_ _In_ ACCESS_MASK DesiredAccess
Definition: nttmapi.h:322
struct _TRANSACTIONMANAGER_LOG_INFORMATION TRANSACTIONMANAGER_LOG_INFORMATION
_Must_inspect_result_ _IRQL_requires_max_(APC_LEVEL) __kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtCreateTransactionManager(_Out_ PHANDLE TmHandle
struct _TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION * PTRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION
_TRANSACTION_OUTCOME
Definition: nttmapi.h:126
_Must_inspect_result_ _In_ KTMOBJECT_TYPE _In_ ULONG ObjectCursorLength
Definition: nttmapi.h:406
#define _Out_opt_
Definition: no_sal2.h:339
_In_ ULONG RequestCookie
Definition: nttmapi.h:737
struct _TRANSACTION_PROPERTIES_INFORMATION TRANSACTION_PROPERTIES_INFORMATION
enum _ENLISTMENT_INFORMATION_CLASS ENLISTMENT_INFORMATION_CLASS
#define __kernel_entry
Definition: specstrings.h:50
_Must_inspect_result_ _In_ LPGUID ExistingTransactionManagerGuid
Definition: nttmapi.h:350
__wchar_t WCHAR
Definition: xmlstorage.h:180
enum _TRANSACTIONMANAGER_INFORMATION_CLASS TRANSACTIONMANAGER_INFORMATION_CLASS
uint64_t ULONGLONG
Definition: typedefs.h:65
_Must_inspect_result_ _In_ ACCESS_MASK _In_ HANDLE _In_opt_ LPGUID ResourceManagerGuid
Definition: nttmapi.h:663
_Must_inspect_result_ _In_ KTMOBJECT_TYPE _Inout_updates_bytes_(ObjectCursorLength) PKTMOBJECT_CURSOR ObjectCursor
_Must_inspect_result_ _In_ ACCESS_MASK _In_ HANDLE _In_ LPGUID RmGuid
Definition: nttmapi.h:648
struct _TRANSACTIONMANAGER_BASIC_INFORMATION * PTRANSACTIONMANAGER_BASIC_INFORMATION
_Must_inspect_result_ _In_ RESOURCEMANAGER_INFORMATION_CLASS ResourceManagerInformationClass
Definition: nttmapi.h:700
_In_ TRANSACTIONMANAGER_INFORMATION_CLASS _In_ PVOID TransactionManagerInformation
Definition: zwfuncs.h:804
struct _ENLISTMENT_BASIC_INFORMATION * PENLISTMENT_BASIC_INFORMATION
_Must_inspect_result_ _In_ KTMOBJECT_TYPE QueryType
Definition: nttmapi.h:404
_Must_inspect_result_ _In_ TRANSACTIONMANAGER_INFORMATION_CLASS _Out_writes_bytes_(TransactionManagerInformationLength) PVOID TransactionManagerInformation
_Must_inspect_result_ _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ PUNICODE_STRING LogFileName
Definition: nttmapi.h:322
struct _TRANSACTIONMANAGER_LOGPATH_INFORMATION * PTRANSACTIONMANAGER_LOGPATH_INFORMATION
struct _KTMOBJECT_CURSOR * PKTMOBJECT_CURSOR
_Must_inspect_result_ _In_ ACCESS_MASK _In_ HANDLE _In_ HANDLE _In_opt_ POBJECT_ATTRIBUTES _In_opt_ ULONG _In_ NOTIFICATION_MASK _In_opt_ PVOID EnlistmentKey
Definition: nttmapi.h:491
struct _TRANSACTION_BIND_INFORMATION * PTRANSACTION_BIND_INFORMATION
struct _ENLISTMENT_BASIC_INFORMATION ENLISTMENT_BASIC_INFORMATION
NTSTATUS(NTAPI * PFN_NT_CREATE_TRANSACTION)(_Out_ PHANDLE TransactionHandle, _In_ ACCESS_MASK DesiredAccess, _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes, _In_opt_ LPGUID Uow, _In_opt_ HANDLE TmHandle, _In_opt_ ULONG CreateOptions, _In_opt_ ULONG IsolationLevel, _In_opt_ ULONG IsolationFlags, _In_opt_ PLARGE_INTEGER Timeout, _In_opt_ PUNICODE_STRING Description)
Definition: nttmapi.h:267
TRANSACTION_LIST_ENTRY TransactionInformation[1]
Definition: nttmapi.h:263
#define NTSTATUS
Definition: precomp.h:20
PVOID *typedef PHANDLE
Definition: ntsecpkg.h:414
_Must_inspect_result_ _In_ PCRM_PROTOCOL_ID _In_ ULONG _In_ PVOID ProtocolInformation
Definition: nttmapi.h:725
struct _RESOURCEMANAGER_BASIC_INFORMATION * PRESOURCEMANAGER_BASIC_INFORMATION
struct _TRANSACTION_ENLISTMENT_PAIR TRANSACTION_ENLISTMENT_PAIR
struct _TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION
TRANSACTION_ENLISTMENT_PAIR SuperiorEnlistmentPair
Definition: nttmapi.h:188
_Must_inspect_result_ _In_ RESOURCEMANAGER_INFORMATION_CLASS _In_ ULONG ResourceManagerInformationLength
Definition: nttmapi.h:702
TRANSACTION_ENLISTMENT_PAIR EnlistmentPair[1]
Definition: nttmapi.h:184
_Must_inspect_result_ _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ PUNICODE_STRING _In_opt_ ULONG _In_opt_ ULONG CommitStrength
Definition: nttmapi.h:322
#define _In_
Definition: no_sal2.h:204
_In_ ULONG _In_ NTSTATUS PropStatus
Definition: nttmapi.h:748
enum _TRANSACTION_INFORMATION_CLASS TRANSACTION_INFORMATION_CLASS
_Must_inspect_result_ _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes
Definition: nttmapi.h:322
_Must_inspect_result_ _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ PUNICODE_STRING _In_opt_ LPGUID _In_opt_ ULONG OpenOptions
Definition: nttmapi.h:336
_ENLISTMENT_INFORMATION_CLASS
Definition: nttmapi.h:247
struct _TRANSACTION_ENLISTMENTS_INFORMATION * PTRANSACTION_ENLISTMENTS_INFORMATION
_Must_inspect_result_ _In_ TRANSACTIONMANAGER_INFORMATION_CLASS _In_reads_bytes_(TransactionManagerInformationLength) PVOID TransactionManagerInformation
_Must_inspect_result_ _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ LPGUID _In_opt_ HANDLE _In_opt_ ULONG _In_opt_ ULONG _In_opt_ ULONG _In_opt_ PLARGE_INTEGER Timeout
Definition: nttmapi.h:417
_Must_inspect_result_ _In_ TRANSACTION_INFORMATION_CLASS _In_ ULONG TransactionInformationLength
Definition: nttmapi.h:450
_Must_inspect_result_ _In_ TRANSACTIONMANAGER_INFORMATION_CLASS _In_ ULONG _Out_ PULONG ReturnLength
Definition: nttmapi.h:381
unsigned int * PULONG
Definition: retypes.h:1
struct _TRANSACTION_BASIC_INFORMATION * PTRANSACTION_BASIC_INFORMATION
Definition: nttmapi.h:253
struct _RESOURCEMANAGER_BASIC_INFORMATION RESOURCEMANAGER_BASIC_INFORMATION
_TRANSACTION_STATE
Definition: nttmapi.h:133
_TRANSACTIONMANAGER_INFORMATION_CLASS
Definition: nttmapi.h:223
enum _TRANSACTION_OUTCOME TRANSACTION_OUTCOME
enum _KTMOBJECT_TYPE KTMOBJECT_TYPE
_Must_inspect_result_ _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ LPGUID _In_opt_ HANDLE _In_opt_ ULONG _In_opt_ ULONG IsolationLevel
Definition: nttmapi.h:417
struct _TRANSACTION_LIST_ENTRY * PTRANSACTION_LIST_ENTRY
unsigned int ULONG
Definition: retypes.h:1
struct _TRANSACTIONMANAGER_RECOVERY_INFORMATION TRANSACTIONMANAGER_RECOVERY_INFORMATION
struct _TRANSACTIONMANAGER_LOG_INFORMATION * PTRANSACTIONMANAGER_LOG_INFORMATION
_Must_inspect_result_ _In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_opt_ LPGUID _In_opt_ HANDLE _In_opt_ ULONG _In_opt_ ULONG _In_opt_ ULONG IsolationFlags
Definition: nttmapi.h:417
struct _TRANSACTION_BIND_INFORMATION TRANSACTION_BIND_INFORMATION
struct _TRANSACTION_ENLISTMENTS_INFORMATION TRANSACTION_ENLISTMENTS_INFORMATION
enum _TRANSACTION_STATE TRANSACTION_STATE
NTSTATUS(NTAPI * PFN_NT_COMMIT_TRANSACTION)(_In_ HANDLE TransactionHandle, _In_ BOOLEAN Wait)
Definition: nttmapi.h:303
struct _TRANSACTION_LIST_INFORMATION * PTRANSACTION_LIST_INFORMATION
ULONG NOTIFICATION_MASK
Definition: ktmtypes.h:99
#define APC_LEVEL
Definition: env_spec_w32.h:695
ULONG ACCESS_MASK
Definition: nt_native.h:40
_Must_inspect_result_ _In_opt_ PLARGE_INTEGER TmVirtualClock
Definition: nttmapi.h:360