ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

nttmapi.h
Go to the documentation of this file.
00001 #ifndef _NTTMAPI_
00002 #define _NTTMAPI_
00003 
00004 #include <ktmtypes.h>
00005 
00006 #define TRANSACTIONMANAGER_QUERY_INFORMATION     (0x0001)
00007 #define TRANSACTIONMANAGER_SET_INFORMATION       (0x0002)
00008 #define TRANSACTIONMANAGER_RECOVER               (0x0004)
00009 #define TRANSACTIONMANAGER_RENAME                (0x0008)
00010 #define TRANSACTIONMANAGER_CREATE_RM             (0x0010)
00011 #define TRANSACTIONMANAGER_BIND_TRANSACTION      (0x0020)
00012 
00013 #define TRANSACTIONMANAGER_GENERIC_READ            (STANDARD_RIGHTS_READ            |\
00014                                                     TRANSACTIONMANAGER_QUERY_INFORMATION)
00015 
00016 #define TRANSACTIONMANAGER_GENERIC_WRITE           (STANDARD_RIGHTS_WRITE           |\
00017                                                     TRANSACTIONMANAGER_SET_INFORMATION     |\
00018                                                     TRANSACTIONMANAGER_RECOVER             |\
00019                                                     TRANSACTIONMANAGER_RENAME              |\
00020                                                     TRANSACTIONMANAGER_CREATE_RM)
00021 
00022 #define TRANSACTIONMANAGER_GENERIC_EXECUTE         (STANDARD_RIGHTS_EXECUTE)
00023 
00024 #define TRANSACTIONMANAGER_ALL_ACCESS              (STANDARD_RIGHTS_REQUIRED        |\
00025                                                     TRANSACTIONMANAGER_GENERIC_READ        |\
00026                                                     TRANSACTIONMANAGER_GENERIC_WRITE       |\
00027                                                     TRANSACTIONMANAGER_GENERIC_EXECUTE     |\
00028                                                     TRANSACTIONMANAGER_BIND_TRANSACTION)
00029 
00030 #define TRANSACTION_QUERY_INFORMATION     (0x0001)
00031 #define TRANSACTION_SET_INFORMATION       (0x0002)
00032 #define TRANSACTION_ENLIST                (0x0004)
00033 #define TRANSACTION_COMMIT                (0x0008)
00034 #define TRANSACTION_ROLLBACK              (0x0010)
00035 #define TRANSACTION_PROPAGATE             (0x0020)
00036 #define TRANSACTION_RIGHT_RESERVED1       (0x0040)
00037 
00038 #define TRANSACTION_GENERIC_READ            (STANDARD_RIGHTS_READ            |\
00039                                              TRANSACTION_QUERY_INFORMATION   |\
00040                                              SYNCHRONIZE)
00041 
00042 #define TRANSACTION_GENERIC_WRITE           (STANDARD_RIGHTS_WRITE           |\
00043                                              TRANSACTION_SET_INFORMATION     |\
00044                                              TRANSACTION_COMMIT              |\
00045                                              TRANSACTION_ENLIST              |\
00046                                              TRANSACTION_ROLLBACK            |\
00047                                              TRANSACTION_PROPAGATE           |\
00048                                              SYNCHRONIZE)
00049 
00050 #define TRANSACTION_GENERIC_EXECUTE         (STANDARD_RIGHTS_EXECUTE         |\
00051                                              TRANSACTION_COMMIT              |\
00052                                              TRANSACTION_ROLLBACK            |\
00053                                              SYNCHRONIZE)
00054 
00055 #define TRANSACTION_ALL_ACCESS              (STANDARD_RIGHTS_REQUIRED        |\
00056                                              TRANSACTION_GENERIC_READ        |\
00057                                              TRANSACTION_GENERIC_WRITE       |\
00058                                              TRANSACTION_GENERIC_EXECUTE)
00059 
00060 #define TRANSACTION_RESOURCE_MANAGER_RIGHTS (TRANSACTION_GENERIC_READ        |\
00061                                              STANDARD_RIGHTS_WRITE           |\
00062                                              TRANSACTION_SET_INFORMATION     |\
00063                                              TRANSACTION_ENLIST              |\
00064                                              TRANSACTION_ROLLBACK            |\
00065                                              TRANSACTION_PROPAGATE           |\
00066                                              SYNCHRONIZE)
00067 
00068 #define RESOURCEMANAGER_QUERY_INFORMATION        (0x0001)
00069 #define RESOURCEMANAGER_SET_INFORMATION          (0x0002)
00070 #define RESOURCEMANAGER_RECOVER                  (0x0004)
00071 #define RESOURCEMANAGER_ENLIST                   (0x0008)
00072 #define RESOURCEMANAGER_GET_NOTIFICATION         (0x0010)
00073 #define RESOURCEMANAGER_REGISTER_PROTOCOL        (0x0020)
00074 #define RESOURCEMANAGER_COMPLETE_PROPAGATION     (0x0040)
00075 
00076 #define RESOURCEMANAGER_GENERIC_READ        (STANDARD_RIGHTS_READ                 |\
00077                                              RESOURCEMANAGER_QUERY_INFORMATION    |\
00078                                              SYNCHRONIZE)
00079 
00080 #define RESOURCEMANAGER_GENERIC_WRITE       (STANDARD_RIGHTS_WRITE                |\
00081                                              RESOURCEMANAGER_SET_INFORMATION      |\
00082                                              RESOURCEMANAGER_RECOVER              |\
00083                                              RESOURCEMANAGER_ENLIST               |\
00084                                              RESOURCEMANAGER_GET_NOTIFICATION     |\
00085                                              RESOURCEMANAGER_REGISTER_PROTOCOL    |\
00086                                              RESOURCEMANAGER_COMPLETE_PROPAGATION |\
00087                                              SYNCHRONIZE)
00088 
00089 #define RESOURCEMANAGER_GENERIC_EXECUTE     (STANDARD_RIGHTS_EXECUTE              |\
00090                                              RESOURCEMANAGER_RECOVER              |\
00091                                              RESOURCEMANAGER_ENLIST               |\
00092                                              RESOURCEMANAGER_GET_NOTIFICATION     |\
00093                                              RESOURCEMANAGER_COMPLETE_PROPAGATION |\
00094                                              SYNCHRONIZE)
00095 
00096 #define RESOURCEMANAGER_ALL_ACCESS          (STANDARD_RIGHTS_REQUIRED             |\
00097                                              RESOURCEMANAGER_GENERIC_READ         |\
00098                                              RESOURCEMANAGER_GENERIC_WRITE        |\
00099                                              RESOURCEMANAGER_GENERIC_EXECUTE)
00100 
00101 #define ENLISTMENT_QUERY_INFORMATION             (0x0001)
00102 #define ENLISTMENT_SET_INFORMATION               (0x0002)
00103 #define ENLISTMENT_RECOVER                       (0x0004)
00104 #define ENLISTMENT_SUBORDINATE_RIGHTS            (0x0008)
00105 #define ENLISTMENT_SUPERIOR_RIGHTS               (0x0010)
00106 
00107 #define ENLISTMENT_GENERIC_READ        (STANDARD_RIGHTS_READ           |\
00108                                         ENLISTMENT_QUERY_INFORMATION)
00109 
00110 #define ENLISTMENT_GENERIC_WRITE       (STANDARD_RIGHTS_WRITE          |\
00111                                         ENLISTMENT_SET_INFORMATION     |\
00112                                         ENLISTMENT_RECOVER             |\
00113                                         ENLISTMENT_SUBORDINATE_RIGHTS  |\
00114                                         ENLISTMENT_SUPERIOR_RIGHTS)
00115 
00116 #define ENLISTMENT_GENERIC_EXECUTE     (STANDARD_RIGHTS_EXECUTE        |\
00117                                         ENLISTMENT_RECOVER             |\
00118                                         ENLISTMENT_SUBORDINATE_RIGHTS  |\
00119                                         ENLISTMENT_SUPERIOR_RIGHTS)
00120 
00121 #define ENLISTMENT_ALL_ACCESS          (STANDARD_RIGHTS_REQUIRED       |\
00122                                         ENLISTMENT_GENERIC_READ        |\
00123                                         ENLISTMENT_GENERIC_WRITE       |\
00124                                         ENLISTMENT_GENERIC_EXECUTE)
00125 
00126 typedef enum _TRANSACTION_OUTCOME {
00127   TransactionOutcomeUndetermined = 1,
00128   TransactionOutcomeCommitted,
00129   TransactionOutcomeAborted,
00130 } TRANSACTION_OUTCOME;
00131 
00132 
00133 typedef enum _TRANSACTION_STATE {
00134   TransactionStateNormal = 1,
00135   TransactionStateIndoubt,
00136   TransactionStateCommittedNotify,
00137 } TRANSACTION_STATE;
00138 
00139 
00140 typedef struct _TRANSACTION_BASIC_INFORMATION {
00141   GUID TransactionId;
00142   ULONG State;
00143   ULONG Outcome;
00144 } TRANSACTION_BASIC_INFORMATION, *PTRANSACTION_BASIC_INFORMATION;
00145 
00146 typedef struct _TRANSACTIONMANAGER_BASIC_INFORMATION {
00147   GUID TmIdentity;
00148   LARGE_INTEGER VirtualClock;
00149 } TRANSACTIONMANAGER_BASIC_INFORMATION, *PTRANSACTIONMANAGER_BASIC_INFORMATION;
00150 
00151 typedef struct _TRANSACTIONMANAGER_LOG_INFORMATION {
00152   GUID LogIdentity;
00153 } TRANSACTIONMANAGER_LOG_INFORMATION, *PTRANSACTIONMANAGER_LOG_INFORMATION;
00154 
00155 typedef struct _TRANSACTIONMANAGER_LOGPATH_INFORMATION {
00156   ULONG LogPathLength;
00157   _Field_size_(LogPathLength) WCHAR LogPath[1];
00158 } TRANSACTIONMANAGER_LOGPATH_INFORMATION, *PTRANSACTIONMANAGER_LOGPATH_INFORMATION;
00159 
00160 typedef struct _TRANSACTIONMANAGER_RECOVERY_INFORMATION {
00161   ULONGLONG LastRecoveredLsn;
00162 } TRANSACTIONMANAGER_RECOVERY_INFORMATION, *PTRANSACTIONMANAGER_RECOVERY_INFORMATION;
00163 
00164 typedef struct _TRANSACTION_PROPERTIES_INFORMATION {
00165   ULONG IsolationLevel;
00166   ULONG IsolationFlags;
00167   LARGE_INTEGER Timeout;
00168   ULONG Outcome;
00169   ULONG DescriptionLength;
00170   WCHAR Description[1];
00171 } TRANSACTION_PROPERTIES_INFORMATION, *PTRANSACTION_PROPERTIES_INFORMATION;
00172 
00173 typedef struct _TRANSACTION_BIND_INFORMATION {
00174   HANDLE TmHandle;
00175 } TRANSACTION_BIND_INFORMATION, *PTRANSACTION_BIND_INFORMATION;
00176 
00177 typedef struct _TRANSACTION_ENLISTMENT_PAIR {
00178   GUID EnlistmentId;
00179   GUID ResourceManagerId;
00180 } TRANSACTION_ENLISTMENT_PAIR, *PTRANSACTION_ENLISTMENT_PAIR;
00181 
00182 typedef struct _TRANSACTION_ENLISTMENTS_INFORMATION {
00183   ULONG NumberOfEnlistments;
00184   TRANSACTION_ENLISTMENT_PAIR EnlistmentPair[1];
00185 } TRANSACTION_ENLISTMENTS_INFORMATION, *PTRANSACTION_ENLISTMENTS_INFORMATION;
00186 
00187 typedef struct _TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION {
00188   TRANSACTION_ENLISTMENT_PAIR SuperiorEnlistmentPair;
00189 } TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION, *PTRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION;
00190 
00191 typedef struct _RESOURCEMANAGER_BASIC_INFORMATION {
00192   GUID ResourceManagerId;
00193   ULONG DescriptionLength;
00194   WCHAR Description[1];
00195 } RESOURCEMANAGER_BASIC_INFORMATION, *PRESOURCEMANAGER_BASIC_INFORMATION;
00196 
00197 typedef struct _RESOURCEMANAGER_COMPLETION_INFORMATION {
00198   HANDLE IoCompletionPortHandle;
00199   ULONG_PTR CompletionKey;
00200 } RESOURCEMANAGER_COMPLETION_INFORMATION, *PRESOURCEMANAGER_COMPLETION_INFORMATION;
00201 
00202 typedef enum _KTMOBJECT_TYPE {
00203   KTMOBJECT_TRANSACTION,
00204   KTMOBJECT_TRANSACTION_MANAGER,
00205   KTMOBJECT_RESOURCE_MANAGER,
00206   KTMOBJECT_ENLISTMENT,
00207   KTMOBJECT_INVALID
00208 } KTMOBJECT_TYPE, *PKTMOBJECT_TYPE;
00209 
00210 typedef struct _KTMOBJECT_CURSOR {
00211   GUID LastQuery;
00212   ULONG ObjectIdCount;
00213   GUID ObjectIds[1];
00214 } KTMOBJECT_CURSOR, *PKTMOBJECT_CURSOR;
00215 
00216 typedef enum _TRANSACTION_INFORMATION_CLASS {
00217   TransactionBasicInformation,
00218   TransactionPropertiesInformation,
00219   TransactionEnlistmentInformation,
00220   TransactionSuperiorEnlistmentInformation
00221 } TRANSACTION_INFORMATION_CLASS;
00222 
00223 typedef enum _TRANSACTIONMANAGER_INFORMATION_CLASS {
00224   TransactionManagerBasicInformation,
00225   TransactionManagerLogInformation,
00226   TransactionManagerLogPathInformation,
00227   TransactionManagerRecoveryInformation = 4
00228 } TRANSACTIONMANAGER_INFORMATION_CLASS;
00229 
00230 typedef enum _RESOURCEMANAGER_INFORMATION_CLASS {
00231   ResourceManagerBasicInformation,
00232   ResourceManagerCompletionInformation,
00233 } RESOURCEMANAGER_INFORMATION_CLASS;
00234 
00235 typedef struct _ENLISTMENT_BASIC_INFORMATION {
00236   GUID EnlistmentId;
00237   GUID TransactionId;
00238   GUID ResourceManagerId;
00239 } ENLISTMENT_BASIC_INFORMATION, *PENLISTMENT_BASIC_INFORMATION;
00240 
00241 typedef struct _ENLISTMENT_CRM_INFORMATION {
00242   GUID CrmTransactionManagerId;
00243   GUID CrmResourceManagerId;
00244   GUID CrmEnlistmentId;
00245 } ENLISTMENT_CRM_INFORMATION, *PENLISTMENT_CRM_INFORMATION;
00246 
00247 typedef enum _ENLISTMENT_INFORMATION_CLASS {
00248   EnlistmentBasicInformation,
00249   EnlistmentRecoveryInformation,
00250   EnlistmentCrmInformation
00251 } ENLISTMENT_INFORMATION_CLASS;
00252 
00253 typedef struct _TRANSACTION_LIST_ENTRY {
00254 #if defined(__cplusplus)
00255   ::UOW UOW;
00256 #else
00257   UOW UOW;
00258 #endif
00259 } TRANSACTION_LIST_ENTRY, *PTRANSACTION_LIST_ENTRY;
00260 
00261 typedef struct _TRANSACTION_LIST_INFORMATION {
00262   ULONG NumberOfTransactions;
00263   TRANSACTION_LIST_ENTRY TransactionInformation[1];
00264 } TRANSACTION_LIST_INFORMATION, *PTRANSACTION_LIST_INFORMATION;
00265 
00266 typedef NTSTATUS
00267 (NTAPI *PFN_NT_CREATE_TRANSACTION)(
00268   _Out_ PHANDLE TransactionHandle,
00269   _In_ ACCESS_MASK DesiredAccess,
00270   _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes,
00271   _In_opt_ LPGUID Uow,
00272   _In_opt_ HANDLE TmHandle,
00273   _In_opt_ ULONG CreateOptions,
00274   _In_opt_ ULONG IsolationLevel,
00275   _In_opt_ ULONG IsolationFlags,
00276   _In_opt_ PLARGE_INTEGER Timeout,
00277   _In_opt_ PUNICODE_STRING Description);
00278 
00279 typedef NTSTATUS
00280 (NTAPI *PFN_NT_OPEN_TRANSACTION)(
00281   _Out_ PHANDLE TransactionHandle,
00282   _In_ ACCESS_MASK DesiredAccess,
00283   _In_ POBJECT_ATTRIBUTES ObjectAttributes,
00284   _In_opt_ LPGUID Uow,
00285   _In_opt_ HANDLE TmHandle);
00286 
00287 typedef NTSTATUS
00288 (NTAPI *PFN_NT_QUERY_INFORMATION_TRANSACTION)(
00289   _In_ HANDLE TransactionHandle,
00290   _In_ TRANSACTION_INFORMATION_CLASS TransactionInformationClass,
00291   _Out_writes_bytes_(TransactionInformationLength) PVOID TransactionInformation,
00292   _In_ ULONG TransactionInformationLength,
00293   _Out_opt_ PULONG ReturnLength);
00294 
00295 typedef NTSTATUS
00296 (NTAPI *PFN_NT_SET_INFORMATION_TRANSACTION)(
00297   _In_ HANDLE TransactionHandle,
00298   _In_ TRANSACTION_INFORMATION_CLASS TransactionInformationClass,
00299   _In_ PVOID TransactionInformation,
00300   _In_ ULONG TransactionInformationLength);
00301 
00302 typedef NTSTATUS
00303 (NTAPI *PFN_NT_COMMIT_TRANSACTION)(
00304   _In_ HANDLE TransactionHandle,
00305   _In_ BOOLEAN Wait);
00306 
00307 typedef NTSTATUS
00308 (NTAPI *PFN_NT_ROLLBACK_TRANSACTION)(
00309   _In_ HANDLE TransactionHandle,
00310   _In_ BOOLEAN Wait);
00311 
00312 #if (NTDDI_VERSION >= NTDDI_VISTA)
00313 
00314 _Must_inspect_result_
00315 _IRQL_requires_max_ (APC_LEVEL)
00316 __kernel_entry
00317 NTSYSCALLAPI
00318 NTSTATUS
00319 NTAPI
00320 NtCreateTransactionManager(
00321   _Out_ PHANDLE TmHandle,
00322   _In_ ACCESS_MASK DesiredAccess,
00323   _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes,
00324   _In_opt_ PUNICODE_STRING LogFileName,
00325   _In_opt_ ULONG CreateOptions,
00326   _In_opt_ ULONG CommitStrength);
00327 
00328 _Must_inspect_result_
00329 _IRQL_requires_max_ (APC_LEVEL)
00330 __kernel_entry
00331 NTSYSCALLAPI
00332 NTSTATUS
00333 NTAPI
00334 NtOpenTransactionManager(
00335   _Out_ PHANDLE TmHandle,
00336   _In_ ACCESS_MASK DesiredAccess,
00337   _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes,
00338   _In_opt_ PUNICODE_STRING LogFileName,
00339   _In_opt_ LPGUID TmIdentity,
00340   _In_opt_ ULONG OpenOptions);
00341 
00342 _Must_inspect_result_
00343 _IRQL_requires_max_ (APC_LEVEL)
00344 __kernel_entry
00345 NTSYSCALLAPI
00346 NTSTATUS
00347 NTAPI
00348 NtRenameTransactionManager(
00349   _In_ PUNICODE_STRING LogFileName,
00350   _In_ LPGUID ExistingTransactionManagerGuid);
00351 
00352 _Must_inspect_result_
00353 _IRQL_requires_max_ (APC_LEVEL)
00354 __kernel_entry
00355 NTSYSCALLAPI
00356 NTSTATUS
00357 NTAPI
00358 NtRollforwardTransactionManager(
00359   _In_ HANDLE TransactionManagerHandle,
00360   _In_opt_ PLARGE_INTEGER TmVirtualClock);
00361 
00362 _Must_inspect_result_
00363 _IRQL_requires_max_ (APC_LEVEL)
00364 __kernel_entry
00365 NTSYSCALLAPI
00366 NTSTATUS
00367 NTAPI
00368 NtRecoverTransactionManager(
00369   _In_ HANDLE TransactionManagerHandle);
00370 
00371 _Must_inspect_result_
00372 _IRQL_requires_max_ (APC_LEVEL)
00373 __kernel_entry
00374 NTSYSCALLAPI
00375 NTSTATUS
00376 NTAPI
00377 NtQueryInformationTransactionManager(
00378   _In_ HANDLE TransactionManagerHandle,
00379   _In_ TRANSACTIONMANAGER_INFORMATION_CLASS TransactionManagerInformationClass,
00380   _Out_writes_bytes_(TransactionManagerInformationLength) PVOID TransactionManagerInformation,
00381   _In_ ULONG TransactionManagerInformationLength,
00382   _Out_ PULONG ReturnLength);
00383 
00384 _Must_inspect_result_
00385 _IRQL_requires_max_ (APC_LEVEL)
00386 __kernel_entry
00387 NTSYSCALLAPI
00388 NTSTATUS
00389 NTAPI
00390 NtSetInformationTransactionManager(
00391   _In_opt_ HANDLE TmHandle,
00392   _In_ TRANSACTIONMANAGER_INFORMATION_CLASS TransactionManagerInformationClass,
00393   _In_reads_bytes_(TransactionManagerInformationLength) PVOID TransactionManagerInformation,
00394   _In_ ULONG TransactionManagerInformationLength);
00395 
00396 _Must_inspect_result_
00397 _IRQL_requires_max_ (APC_LEVEL)
00398 __kernel_entry
00399 NTSYSCALLAPI
00400 NTSTATUS
00401 NTAPI
00402 NtEnumerateTransactionObject(
00403   _In_opt_ HANDLE RootObjectHandle,
00404   _In_ KTMOBJECT_TYPE QueryType,
00405   _Inout_updates_bytes_(ObjectCursorLength) PKTMOBJECT_CURSOR ObjectCursor,
00406   _In_ ULONG ObjectCursorLength,
00407   _Out_ PULONG ReturnLength);
00408 
00409 _Must_inspect_result_
00410 _IRQL_requires_max_ (APC_LEVEL)
00411 __kernel_entry
00412 NTSYSCALLAPI
00413 NTSTATUS
00414 NTAPI
00415 NtCreateTransaction(
00416   _Out_ PHANDLE TransactionHandle,
00417   _In_ ACCESS_MASK DesiredAccess,
00418   _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes,
00419   _In_opt_ LPGUID Uow,
00420   _In_opt_ HANDLE TmHandle,
00421   _In_opt_ ULONG CreateOptions,
00422   _In_opt_ ULONG IsolationLevel,
00423   _In_opt_ ULONG IsolationFlags,
00424   _In_opt_ PLARGE_INTEGER Timeout,
00425   _In_opt_ PUNICODE_STRING Description);
00426 
00427 _Must_inspect_result_
00428 _IRQL_requires_max_ (APC_LEVEL)
00429 __kernel_entry
00430 NTSYSCALLAPI
00431 NTSTATUS
00432 NTAPI
00433 NtOpenTransaction(
00434   _Out_ PHANDLE TransactionHandle,
00435   _In_ ACCESS_MASK DesiredAccess,
00436   _In_ POBJECT_ATTRIBUTES ObjectAttributes,
00437   _In_ LPGUID Uow,
00438   _In_opt_ HANDLE TmHandle);
00439 
00440 _Must_inspect_result_
00441 _IRQL_requires_max_ (APC_LEVEL)
00442 __kernel_entry
00443 NTSYSCALLAPI
00444 NTSTATUS
00445 NTAPI
00446 NtQueryInformationTransaction(
00447   _In_ HANDLE TransactionHandle,
00448   _In_ TRANSACTION_INFORMATION_CLASS TransactionInformationClass,
00449   _Out_writes_bytes_(TransactionInformationLength) PVOID TransactionInformation,
00450   _In_ ULONG TransactionInformationLength,
00451   _Out_opt_ PULONG ReturnLength);
00452 
00453 _Must_inspect_result_
00454 _IRQL_requires_max_ (APC_LEVEL)
00455 __kernel_entry
00456 NTSYSCALLAPI
00457 NTSTATUS
00458 NTAPI
00459 NtSetInformationTransaction(
00460   _In_ HANDLE TransactionHandle,
00461   _In_ TRANSACTION_INFORMATION_CLASS TransactionInformationClass,
00462   _In_reads_bytes_(TransactionInformationLength) PVOID TransactionInformation,
00463   _In_ ULONG TransactionInformationLength);
00464 
00465 _IRQL_requires_max_ (APC_LEVEL)
00466 __kernel_entry
00467 NTSYSCALLAPI
00468 NTSTATUS
00469 NTAPI
00470 NtCommitTransaction(
00471   _In_ HANDLE TransactionHandle,
00472   _In_ BOOLEAN Wait);
00473 
00474 _IRQL_requires_max_ (APC_LEVEL)
00475 __kernel_entry
00476 NTSYSCALLAPI
00477 NTSTATUS
00478 NTAPI
00479 NtRollbackTransaction(
00480   _In_ HANDLE TransactionHandle,
00481   _In_ BOOLEAN Wait);
00482 
00483 _Must_inspect_result_
00484 _IRQL_requires_max_ (APC_LEVEL)
00485 __kernel_entry
00486 NTSYSCALLAPI
00487 NTSTATUS
00488 NTAPI
00489 NtCreateEnlistment(
00490   _Out_ PHANDLE EnlistmentHandle,
00491   _In_ ACCESS_MASK DesiredAccess,
00492   _In_ HANDLE ResourceManagerHandle,
00493   _In_ HANDLE TransactionHandle,
00494   _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes,
00495   _In_opt_ ULONG CreateOptions,
00496   _In_ NOTIFICATION_MASK NotificationMask,
00497   _In_opt_ PVOID EnlistmentKey);
00498 
00499 _Must_inspect_result_
00500 _IRQL_requires_max_ (APC_LEVEL)
00501 __kernel_entry
00502 NTSYSCALLAPI
00503 NTSTATUS
00504 NTAPI
00505 NtOpenEnlistment(
00506   _Out_ PHANDLE EnlistmentHandle,
00507   _In_ ACCESS_MASK DesiredAccess,
00508   _In_ HANDLE ResourceManagerHandle,
00509   _In_ LPGUID EnlistmentGuid,
00510   _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes);
00511 
00512 _Must_inspect_result_
00513 _IRQL_requires_max_ (APC_LEVEL)
00514 __kernel_entry
00515 NTSYSCALLAPI
00516 NTSTATUS
00517 NTAPI
00518 NtQueryInformationEnlistment(
00519   _In_ HANDLE EnlistmentHandle,
00520   _In_ ENLISTMENT_INFORMATION_CLASS EnlistmentInformationClass,
00521   _Out_writes_bytes_(EnlistmentInformationLength) PVOID EnlistmentInformation,
00522   _In_ ULONG EnlistmentInformationLength,
00523   _Out_ PULONG ReturnLength);
00524 
00525 _Must_inspect_result_
00526 _IRQL_requires_max_ (APC_LEVEL)
00527 __kernel_entry
00528 NTSYSCALLAPI
00529 NTSTATUS
00530 NTAPI
00531 NtSetInformationEnlistment(
00532   _In_opt_ HANDLE EnlistmentHandle,
00533   _In_ ENLISTMENT_INFORMATION_CLASS EnlistmentInformationClass,
00534   _In_reads_bytes_(EnlistmentInformationLength) PVOID EnlistmentInformation,
00535   _In_ ULONG EnlistmentInformationLength);
00536 
00537 _Must_inspect_result_
00538 _IRQL_requires_max_ (APC_LEVEL)
00539 __kernel_entry
00540 NTSYSCALLAPI
00541 NTSTATUS
00542 NTAPI
00543 NtRecoverEnlistment(
00544   _In_ HANDLE EnlistmentHandle,
00545   _In_opt_ PVOID EnlistmentKey);
00546 
00547 _Must_inspect_result_
00548 _IRQL_requires_max_ (APC_LEVEL)
00549 __kernel_entry
00550 NTSYSCALLAPI
00551 NTSTATUS
00552 NTAPI
00553 NtPrePrepareEnlistment(
00554   _In_ HANDLE EnlistmentHandle,
00555   _In_opt_ PLARGE_INTEGER TmVirtualClock);
00556 
00557 _Must_inspect_result_
00558 _IRQL_requires_max_ (APC_LEVEL)
00559 __kernel_entry
00560 NTSYSCALLAPI
00561 NTSTATUS
00562 NTAPI
00563 NtPrepareEnlistment(
00564   _In_ HANDLE EnlistmentHandle,
00565   _In_opt_ PLARGE_INTEGER TmVirtualClock);
00566 
00567 _Must_inspect_result_
00568 _IRQL_requires_max_ (APC_LEVEL)
00569 __kernel_entry
00570 NTSYSCALLAPI
00571 NTSTATUS
00572 NTAPI
00573 NtCommitEnlistment(
00574   _In_ HANDLE EnlistmentHandle,
00575   _In_opt_ PLARGE_INTEGER TmVirtualClock);
00576 
00577 _IRQL_requires_max_ (APC_LEVEL)
00578 __kernel_entry
00579 NTSYSCALLAPI
00580 NTSTATUS
00581 NTAPI
00582 NtRollbackEnlistment(
00583   _In_ HANDLE EnlistmentHandle,
00584   _In_opt_ PLARGE_INTEGER TmVirtualClock);
00585 
00586 _IRQL_requires_max_ (APC_LEVEL)
00587 __kernel_entry
00588 NTSYSCALLAPI
00589 NTSTATUS
00590 NTAPI
00591 NtPrePrepareComplete(
00592   _In_ HANDLE EnlistmentHandle,
00593   _In_opt_ PLARGE_INTEGER TmVirtualClock);
00594 
00595 _IRQL_requires_max_ (APC_LEVEL)
00596 __kernel_entry
00597 NTSYSCALLAPI
00598 NTSTATUS
00599 NTAPI
00600 NtPrepareComplete(
00601   _In_ HANDLE EnlistmentHandle,
00602   _In_opt_ PLARGE_INTEGER TmVirtualClock);
00603 
00604 _IRQL_requires_max_ (APC_LEVEL)
00605 __kernel_entry
00606 NTSYSCALLAPI
00607 NTSTATUS
00608 NTAPI
00609 NtCommitComplete(
00610   _In_ HANDLE EnlistmentHandle,
00611   _In_opt_ PLARGE_INTEGER TmVirtualClock);
00612 
00613 _IRQL_requires_max_ (APC_LEVEL)
00614 __kernel_entry
00615 NTSYSCALLAPI
00616 NTSTATUS
00617 NTAPI
00618 NtReadOnlyEnlistment(
00619   _In_ HANDLE EnlistmentHandle,
00620   _In_opt_ PLARGE_INTEGER TmVirtualClock);
00621 
00622 _IRQL_requires_max_ (APC_LEVEL)
00623 __kernel_entry
00624 NTSYSCALLAPI
00625 NTSTATUS
00626 NTAPI
00627 NtRollbackComplete(
00628   _In_ HANDLE EnlistmentHandle,
00629   _In_opt_ PLARGE_INTEGER TmVirtualClock);
00630 
00631 _IRQL_requires_max_ (APC_LEVEL)
00632 __kernel_entry
00633 NTSYSCALLAPI
00634 NTSTATUS
00635 NTAPI
00636 NtSinglePhaseReject(
00637   _In_ HANDLE EnlistmentHandle,
00638   _In_opt_ PLARGE_INTEGER TmVirtualClock);
00639 
00640 _Must_inspect_result_
00641 _IRQL_requires_max_ (APC_LEVEL)
00642 __kernel_entry
00643 NTSYSCALLAPI
00644 NTSTATUS
00645 NTAPI
00646 NtCreateResourceManager(
00647   _Out_ PHANDLE ResourceManagerHandle,
00648   _In_ ACCESS_MASK DesiredAccess,
00649   _In_ HANDLE TmHandle,
00650   _In_ LPGUID RmGuid,
00651   _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes,
00652   _In_opt_ ULONG CreateOptions,
00653   _In_opt_ PUNICODE_STRING Description);
00654 
00655 _Must_inspect_result_
00656 _IRQL_requires_max_ (APC_LEVEL)
00657 __kernel_entry
00658 NTSYSCALLAPI
00659 NTSTATUS
00660 NTAPI
00661 NtOpenResourceManager(
00662   _Out_ PHANDLE ResourceManagerHandle,
00663   _In_ ACCESS_MASK DesiredAccess,
00664   _In_ HANDLE TmHandle,
00665   _In_opt_ LPGUID ResourceManagerGuid,
00666   _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes);
00667 
00668 _Must_inspect_result_
00669 _IRQL_requires_max_ (APC_LEVEL)
00670 __kernel_entry
00671 NTSYSCALLAPI
00672 NTSTATUS
00673 NTAPI
00674 NtRecoverResourceManager(
00675   _In_ HANDLE ResourceManagerHandle);
00676 
00677 _Must_inspect_result_
00678 _IRQL_requires_max_ (APC_LEVEL)
00679 __kernel_entry
00680 NTSYSCALLAPI
00681 NTSTATUS
00682 NTAPI
00683 NtGetNotificationResourceManager(
00684   _In_ HANDLE ResourceManagerHandle,
00685   _Out_ PTRANSACTION_NOTIFICATION TransactionNotification,
00686   _In_ ULONG NotificationLength,
00687   _In_opt_ PLARGE_INTEGER Timeout,
00688   _Out_opt_ PULONG ReturnLength,
00689   _In_ ULONG Asynchronous,
00690   _In_opt_ ULONG_PTR AsynchronousContext);
00691 
00692 _Must_inspect_result_
00693 _IRQL_requires_max_ (APC_LEVEL)
00694 __kernel_entry
00695 NTSYSCALLAPI
00696 NTSTATUS
00697 NTAPI
00698 NtQueryInformationResourceManager(
00699   _In_ HANDLE ResourceManagerHandle,
00700   _In_ RESOURCEMANAGER_INFORMATION_CLASS ResourceManagerInformationClass,
00701   _Out_writes_bytes_(ResourceManagerInformationLength) PVOID ResourceManagerInformation,
00702   _In_ ULONG ResourceManagerInformationLength,
00703   _Out_opt_ PULONG ReturnLength);
00704 
00705 _Must_inspect_result_
00706 _IRQL_requires_max_ (APC_LEVEL)
00707 __kernel_entry
00708 NTSYSCALLAPI
00709 NTSTATUS
00710 NTAPI
00711 NtSetInformationResourceManager(
00712   _In_ HANDLE ResourceManagerHandle,
00713   _In_ RESOURCEMANAGER_INFORMATION_CLASS ResourceManagerInformationClass,
00714   _In_reads_bytes_(ResourceManagerInformationLength) PVOID ResourceManagerInformation,
00715   _In_ ULONG ResourceManagerInformationLength);
00716 
00717 _Must_inspect_result_
00718 _IRQL_requires_max_ (APC_LEVEL)
00719 __kernel_entry
00720 NTSYSCALLAPI
00721 NTSTATUS
00722 NTAPI
00723 NtRegisterProtocolAddressInformation(
00724   _In_ HANDLE ResourceManager,
00725   _In_ PCRM_PROTOCOL_ID ProtocolId,
00726   _In_ ULONG ProtocolInformationSize,
00727   _In_ PVOID ProtocolInformation,
00728   _In_opt_ ULONG CreateOptions);
00729 
00730 _IRQL_requires_max_ (APC_LEVEL)
00731 __kernel_entry
00732 NTSYSCALLAPI
00733 NTSTATUS
00734 NTAPI
00735 NtPropagationComplete(
00736   _In_ HANDLE ResourceManagerHandle,
00737   _In_ ULONG RequestCookie,
00738   _In_ ULONG BufferLength,
00739   _In_ PVOID Buffer);
00740 
00741 _IRQL_requires_max_ (APC_LEVEL)
00742 __kernel_entry
00743 NTSYSCALLAPI
00744 NTSTATUS
00745 NTAPI
00746 NtPropagationFailed(
00747   _In_ HANDLE ResourceManagerHandle,
00748   _In_ ULONG RequestCookie,
00749   _In_ NTSTATUS PropStatus);
00750 
00751 #endif /* NTDDI_VERSION >= NTDDI_VISTA */
00752 
00753 #endif /* !_NTTMAPI_ */

Generated on Fri May 25 2012 04:31:57 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.