#include "ntrtlp.h"
Go to the source code of this file.
Classes | |
struct | _RTLP_RXACT |
struct | _RXACT_LOG_ENTRY |
Defines | |
#define | INVALID_HANDLE_VALUE (HANDLE)-1 |
#define | RTLP_RXACT_REVISION1 (1l) |
#define | RTLP_RXACT_CURRENT_REVISION RTLP_RXACT_REVISION1 |
#define | RTLP_RXACT_KEY_NAME L"RXACT" |
#define | RTLP_RXACT_LOG_NAME L"Log" |
#define | RTLP_INITIAL_LOG_SIZE 0x4000 |
#define | DwordAlign(Value) |
Typedefs | |
typedef enum _RTLP_RXACT_STATE | RTLP_RXACT_STATE |
typedef enum _RTLP_RXACT_STATE * | PRTLP_RXACT_STATE |
typedef _RTLP_RXACT | RTLP_RXACT |
typedef _RTLP_RXACT * | PRTLP_RXACT |
typedef _RXACT_LOG_ENTRY | RXACT_LOG_ENTRY |
typedef _RXACT_LOG_ENTRY * | PRXACT_LOG_ENTRY |
Enumerations | |
enum | _RTLP_RXACT_STATE { RtlpRXactStateNoTransaction = 2, RtlpRXactStateCommitting } |
Functions | |
NTSTATUS | RXactpCommit (IN PRTL_RXACT_CONTEXT RXactContext) |
NTSTATUS | RXactpOpenTargetKey (IN HANDLE RootRegistryKey, IN RTL_RXACT_OPERATION Operation, IN PUNICODE_STRING SubKeyName, OUT PHANDLE TargetKey) |
VOID | RXactInitializeContext (IN PRTL_RXACT_CONTEXT RXactContext, IN HANDLE RootRegistryKey, IN HANDLE RXactKey) |
NTSTATUS | RtlInitializeRXact (IN HANDLE RootRegistryKey, IN BOOLEAN CommitIfNecessary, OUT PRTL_RXACT_CONTEXT *RXactContext) |
NTSTATUS | RtlStartRXact (IN PRTL_RXACT_CONTEXT RXactContext) |
NTSTATUS | RtlAbortRXact (IN PRTL_RXACT_CONTEXT RXactContext) |
NTSTATUS | RtlAddAttributeActionToRXact (IN PRTL_RXACT_CONTEXT RXactContext, IN RTL_RXACT_OPERATION Operation, IN PUNICODE_STRING SubKeyName, IN HANDLE KeyHandle OPTIONAL, IN PUNICODE_STRING AttributeName, IN ULONG NewValueType, IN PVOID NewValue, IN ULONG NewValueLength) |
NTSTATUS | RtlAddActionToRXact (IN PRTL_RXACT_CONTEXT RXactContext, IN RTL_RXACT_OPERATION Operation, IN PUNICODE_STRING SubKeyName, IN ULONG NewKeyValueType, IN PVOID NewKeyValue OPTIONAL, IN ULONG NewKeyValueLength) |
NTSTATUS | RtlApplyRXact (IN PRTL_RXACT_CONTEXT RXactContext) |
NTSTATUS | RtlApplyRXactNoFlush (IN PRTL_RXACT_CONTEXT RXactContext) |
|
Value:
Definition at line 242 of file rxact.c. Referenced by RtlAddAttributeActionToRXact(). |
|
|
Definition at line 236 of file rxact.c. Referenced by RtlStartRXact(). |
|
|
|
Definition at line 232 of file rxact.c. Referenced by RtlInitializeRXact(). |
|
Definition at line 234 of file rxact.c. Referenced by RtlApplyRXact(), and RtlInitializeRXact(). |
|
Definition at line 228 of file rxact.c. Referenced by RtlInitializeRXact(). |
|
|
|
|
|
Referenced by RtlAddAttributeActionToRXact(), and RXactpCommit(). |
|
|
|
|
|
|
|
Definition at line 260 of file rxact.c.
|
|
Definition at line 833 of file rxact.c. References NULL, RTL_PAGED_CODE, RtlFreeHeap, RXactInitializeContext(), and VOID(). Referenced by RtlApplyRXact(), RtlApplyRXactNoFlush(), and RtlInitializeRXact().
|
|
Definition at line 1156 of file rxact.c. References INVALID_HANDLE_VALUE, NTSTATUS(), NULL, RTL_PAGED_CODE, RtlAddAttributeActionToRXact(), RtlInitUnicodeString(), and Status.
|
|
Definition at line 900 of file rxact.c. References ALIGN_UP, _RXACT_LOG_ENTRY::AttributeName, DwordAlign, End, _RXACT_LOG_ENTRY::KeyHandle, _RXACT_LOG_ENTRY::LogEntrySize, _RXACT_LOG_ENTRY::NewKeyValue, _RXACT_LOG_ENTRY::NewKeyValueLength, _RXACT_LOG_ENTRY::NewKeyValueType, NULL, _RXACT_LOG_ENTRY::Operation, PRXACT_LOG_ENTRY, RTL_PAGED_CODE, RtlAllocateHeap, RtlFreeHeap, and _RXACT_LOG_ENTRY::SubKeyName. Referenced by RtlAddActionToRXact().
|
|
Definition at line 1240 of file rxact.c. References ASSERT, NT_SUCCESS, NtDeleteValueKey(), NtFlushKey(), NtSetValueKey(), NTSTATUS(), RTL_PAGED_CODE, RtlAbortRXact(), RtlInitUnicodeString(), RTLP_RXACT_LOG_NAME, RXactpCommit(), Status, and VOID().
|
|
Definition at line 1380 of file rxact.c. References ASSERT, NT_SUCCESS, NTSTATUS(), RTL_PAGED_CODE, RtlAbortRXact(), RXactpCommit(), and Status.
|
|
Definition at line 341 of file rxact.c. References ASSERT, FALSE, NT_SUCCESS, NtClose(), NtCreateKey(), NtDeleteKey(), NtDeleteValueKey(), NtQueryValueKey(), NtSetValueKey(), NTSTATUS(), NULL, _RTLP_RXACT::Revision, RTL_PAGED_CODE, RtlAbortRXact(), RtlAllocateHeap, RtlFreeHeap, RtlInitUnicodeString(), RTLP_RXACT_KEY_NAME, RTLP_RXACT_LOG_NAME, RTLP_RXACT_REVISION1, RtlpNtQueryValueKey(), RXactInitializeContext(), RXactpCommit(), Status, and ValueName.
|
|
Definition at line 760 of file rxact.c. References NULL, RTL_PAGED_CODE, RtlAllocateHeap, and RTLP_INITIAL_LOG_SIZE.
|
|
Definition at line 716 of file rxact.c. Referenced by RtlAbortRXact(), and RtlInitializeRXact().
|
|
Definition at line 1461 of file rxact.c. References ASSERT, _RXACT_LOG_ENTRY::AttributeName, FALSE, INVALID_HANDLE_VALUE, _RXACT_LOG_ENTRY::KeyHandle, _RXACT_LOG_ENTRY::LogEntrySize, _RXACT_LOG_ENTRY::NewKeyValue, _RXACT_LOG_ENTRY::NewKeyValueLength, _RXACT_LOG_ENTRY::NewKeyValueType, NT_SUCCESS, NtClose(), NtDeleteKey(), NtSetValueKey(), NTSTATUS(), _RXACT_LOG_ENTRY::Operation, PRXACT_LOG_ENTRY, RXactpOpenTargetKey(), Status, _RXACT_LOG_ENTRY::SubKeyName, and TRUE. Referenced by RtlApplyRXact(), RtlApplyRXactNoFlush(), and RtlInitializeRXact().
|
|
Definition at line 1717 of file rxact.c. References NtCreateKey(), NtOpenKey(), NTSTATUS(), NULL, and Status. Referenced by RXactpCommit().
|