|
NTSTATUS NTAPI | NtCompactKeys (_In_ ULONG Count, _In_reads_(Count) PHANDLE KeyArray) |
|
NTSTATUS NTAPI | NtCompressKey (_In_ HANDLE Key) |
|
| _IRQL_requires_max_ (PASSIVE_LEVEL) NTSYSAPI NTSTATUS NTAPI NtCreateKey(_Out_ PHANDLE KeyHandle |
| Queries information details about a security descriptor.
|
|
NTSYSCALLAPI NTSTATUS NTAPI | NtDeleteKey (_In_ HANDLE KeyHandle) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtDeleteValueKey (_In_ HANDLE KeyHandle, _In_ PUNICODE_STRING ValueName) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtEnumerateKey (_In_ HANDLE KeyHandle, _In_ ULONG Index, _In_ KEY_INFORMATION_CLASS KeyInformationClass, _Out_bytecap_(Length) PVOID KeyInformation, _In_ ULONG Length, _Out_ PULONG ResultLength) |
|
| _Post_satisfies_ (return< 0)) _When_(Length > 0 |
|
| _Post_satisfies_ (return<=0)) NTSYSAPI NTSTATUS NTAPI NtEnumerateValueKey(_In_ HANDLE KeyHandle |
|
_In_ ULONG _In_ KEY_VALUE_INFORMATION_CLASS | _Out_writes_bytes_opt_ (Length) PVOID KeyValueInformation |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtFlushKey (_In_ HANDLE KeyHandle) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtGetPlugPlayEvent (_In_ ULONG Reserved1, _In_ ULONG Reserved2, _Out_ PPLUGPLAY_EVENT_BLOCK Buffer, _In_ ULONG BufferSize) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtInitializeRegistry (_In_ USHORT Flag) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtLoadKey (_In_ POBJECT_ATTRIBUTES KeyObjectAttributes, _In_ POBJECT_ATTRIBUTES FileObjectAttributes) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtLoadKey2 (_In_ POBJECT_ATTRIBUTES KeyObjectAttributes, _In_ POBJECT_ATTRIBUTES FileObjectAttributes, _In_ ULONG Flags) |
|
NTSTATUS NTAPI | NtLoadKeyEx (_In_ POBJECT_ATTRIBUTES TargetKey, _In_ POBJECT_ATTRIBUTES SourceFile, _In_ ULONG Flags, _In_ HANDLE TrustClassKey) |
|
NTSTATUS NTAPI | NtLockProductActivationKeys (_In_ PULONG pPrivateVer, _In_ PULONG pSafeMode) |
|
NTSTATUS NTAPI | NtLockRegistryKey (_In_ HANDLE KeyHandle) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtNotifyChangeKey (_In_ HANDLE KeyHandle, _In_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ ULONG CompletionFilter, _In_ BOOLEAN Asynchroneous, _Out_bytecap_(Length) PVOID ChangeBuffer, _In_ ULONG Length, _In_ BOOLEAN WatchSubtree) |
|
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI | NtNotifyChangeMultipleKeys (_In_ HANDLE MasterKeyHandle, _In_opt_ ULONG Count, _In_reads_opt_(Count) OBJECT_ATTRIBUTES SubordinateObjects[], _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ ULONG CompletionFilter, _In_ BOOLEAN WatchTree, _Out_writes_bytes_opt_(BufferSize) PVOID Buffer, _In_ ULONG BufferSize, _In_ BOOLEAN Asynchronous) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtOpenKey (_Out_ PHANDLE KeyHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtPlugPlayControl (_In_ PLUGPLAY_CONTROL_CLASS PlugPlayControlClass, _Inout_ PVOID Buffer, _In_ ULONG BufferSize) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtQueryKey (_In_ HANDLE KeyHandle, _In_ KEY_INFORMATION_CLASS KeyInformationClass, _Out_bytecap_(Length) PVOID KeyInformation, _In_ ULONG Length, _Out_ PULONG ResultLength) |
|
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI | NtQueryMultipleValueKey (_In_ HANDLE KeyHandle, _Inout_updates_(EntryCount) PKEY_VALUE_ENTRY ValueEntries, _In_ ULONG EntryCount, _Out_writes_bytes_(*BufferLength) PVOID ValueBuffer, _Inout_ PULONG BufferLength, _Out_opt_ PULONG RequiredBufferLength) |
|
NTSTATUS NTAPI | NtQueryOpenSubKeys (_In_ POBJECT_ATTRIBUTES TargetKey, _Out_ PULONG HandleCount) |
|
NTSTATUS NTAPI | NtQueryOpenSubKeysEx (_In_ POBJECT_ATTRIBUTES TargetKey, _In_ ULONG BufferLength, _In_ PVOID Buffer, _In_ PULONG RequiredSize) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtRenameKey (_In_ HANDLE KeyHandle, _In_ PUNICODE_STRING NewName) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtReplaceKey (_In_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ HANDLE Key, _In_ POBJECT_ATTRIBUTES ReplacedObjectAttributes) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtRestoreKey (_In_ HANDLE KeyHandle, _In_ HANDLE FileHandle, _In_ ULONG RestoreFlags) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtSaveKey (_In_ HANDLE KeyHandle, _In_ HANDLE FileHandle) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtSaveKeyEx (_In_ HANDLE KeyHandle, _In_ HANDLE FileHandle, _In_ ULONG Flags) |
|
NTSTATUS NTAPI | NtSaveMergedKeys (_In_ HANDLE HighPrecedenceKeyHandle, _In_ HANDLE LowPrecedenceKeyHandle, _In_ HANDLE FileHandle) |
|
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI | NtSetInformationKey (_In_ HANDLE KeyHandle, _In_ _Strict_type_match_ KEY_SET_INFORMATION_CLASS KeySetInformationClass, _In_reads_bytes_(KeySetInformationLength) PVOID KeySetInformation, _In_ ULONG KeySetInformationLength) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtSetValueKey (_In_ HANDLE KeyHandle, _In_ PUNICODE_STRING ValueName, _In_opt_ ULONG TitleIndex, _In_ ULONG Type, _In_ PVOID Data, _In_ ULONG DataSize) |
|
NTSYSCALLAPI NTSTATUS NTAPI | NtUnloadKey (_In_ POBJECT_ATTRIBUTES KeyObjectAttributes) |
|
NTSTATUS NTAPI | NtUnloadKey2 (_In_ POBJECT_ATTRIBUTES TargetKey, _In_ ULONG Flags) |
|
NTSTATUS NTAPI | NtUnloadKeyEx (_In_ POBJECT_ATTRIBUTES TargetKey, _In_ HANDLE Event) |
|
NTSYSAPI NTSTATUS NTAPI | ZwInitializeRegistry (_In_ USHORT Flag) |
|
NTSYSAPI NTSTATUS NTAPI | ZwUnloadKey (_In_ POBJECT_ATTRIBUTES KeyObjectAttributes) |
|
Queries information details about a security descriptor.
Computes the quota size of a security descriptor.
Assigns a security descriptor for a new object.
An extended function that assigns a security descriptor for a new object.
Frees a security descriptor.
An extended function that sets new information data to a security descriptor.
Modifies some information data about a security descriptor.
- Parameters
-
[in] | SecurityInformation | Security information details to be queried from a security descriptor. |
[out] | SecurityDescriptor | The returned security descriptor with security information data. |
[in,out] | Length | The returned length of a security descriptor. |
[in,out] | ObjectsSecurityDescriptor | The returned object security descriptor. |
- Returns
- Returns STATUS_SUCCESS if the operations have been completed successfully and that the specific information about the security descriptor has been queried. STATUS_BUFFER_TOO_SMALL is returned if the buffer size is too small to contain the queried info about the security descriptor.
- Parameters
-
[in] | Object | If specified, the function will use this arbitrary object that points to an object security descriptor. |
[in] | SecurityInformation | Security information details to be set. |
[in] | SecurityDescriptor | A security descriptor where its info is to be changed. |
[in,out] | ObjectsSecurityDescriptor | The returned pointer to security descriptor objects. |
[in] | PoolType | Pool type for the new security descriptor to allocate. |
[in] | GenericMapping | The generic mapping of access rights masks. |
- Returns
- See SeSetSecurityDescriptorInfoEx.
- Parameters
-
[in] | Object | If specified, the function will use this arbitrary object that points to an object security descriptor. |
[in] | SecurityInformation | Security information details to be set. |
[in] | SecurityDescriptor | A security descriptor where its info is to be changed. |
[in,out] | ObjectsSecurityDescriptor | The returned pointer to security descriptor objects. |
[in] | AutoInheritFlags | Flags bitmask inheritation, influencing how the security descriptor can be inherited and if it can be in the first place. |
[in] | PoolType | Pool type for the new security descriptor to allocate. |
[in] | GenericMapping | The generic mapping of access rights masks. |
- Returns
- Returns STATUS_SUCCESS if the operations have been completed without problems and that new info has been set to the security descriptor. STATUS_NO_SECURITY_ON_OBJECT is returned if the object does not have a security descriptor. STATUS_INSUFFICIENT_RESOURCES is returned if memory pool allocation for the new security descriptor with new info set has failed.
- Parameters
-
[in] | SecurityDescriptor | A security descriptor to be freed from memory. |
- Returns
- Returns STATUS_SUCCESS.
- Parameters
-
[in] | _ParentDescriptor | A security descriptor of the parent object that is being created. |
[in] | _ExplicitDescriptor | An explicit security descriptor that is applied to a new object. |
[out] | NewDescriptor | The new allocated security descriptor. |
[in] | ObjectType | The type of the new object. |
[in] | IsDirectoryObject | Set this to TRUE if the newly created object is a directory object, otherwise set this to FALSE. |
[in] | AutoInheritFlags | Automatic inheritance flags that influence how access control entries within ACLs from security descriptors are inherited. |
[in] | SubjectContext | Security subject context of the new object. |
[in] | GenericMapping | Generic mapping of access mask rights. |
[in] | PoolType | This parameter is unused. |
- Returns
- Returns STATUS_SUCCESS if the operations have been completed successfully and that the security descriptor has been assigned to the new object. STATUS_NO_TOKEN is returned if the caller hasn't supplied a valid argument to a security subject context. STATUS_INVALID_OWNER is returned if the caller hasn't supplied a parent descriptor that belongs to the main user (owner). STATUS_INVALID_PRIMARY_GROUP is returned by the same reason as with the previous NTSTATUS code. The two NTSTATUS codes are returned if the calling thread stated that the owner and/or group is defaulted to the parent descriptor (SEF_DEFAULT_OWNER_FROM_PARENT and/or SEF_DEFAULT_GROUP_FROM_PARENT respectively). STATUS_INSUFFICIENT_RESOURCES is returned if memory pool allocation for the descriptor buffer has failed. A failure NTSTATUS is returned otherwise.
- Parameters
-
[in] | ParentDescriptor | A security descriptor of the parent object that is being created. |
[in] | ExplicitDescriptor | An explicit security descriptor that is applied to a new object. |
[out] | NewDescriptor | The new allocated security descriptor. |
[in] | IsDirectoryObject | Set this to TRUE if the newly created object is a directory object, otherwise set this to FALSE. |
[in] | SubjectContext | Security subject context of the new object. |
[in] | GenericMapping | Generic mapping of access mask rights. |
[in] | PoolType | This parameter is unused. |
- Returns
- See SeAssignSecurityEx.
- Parameters
-
[in] | SecurityDescriptor | A security descriptor. |
[out] | QuotaInfoSize | The returned quota size of the given security descriptor to the caller. The function may return 0 to this parameter if the descriptor doesn't have a group or a discretionary access control list (DACL) even. |
- Returns
- Returns STATUS_SUCCESS if the quota size of a security descriptor has been computed successfully. STATUS_UNKNOWN_REVISION is returned if the security descriptor has an invalid revision.
Definition at line 923 of file Messaging.c.
75{
78
79
81 {
83 }
84
85
87 {
89 }
90
91
92
93
94
95
98 {
100 }
101
102
109 0,
110 0,
111 (
PVOID *)&PortObject);
113 {
114
116
117
119
120
127
128
132 0,
136 {
137
139
140
143
144
146 }
147 }
148
150 {
151
153 }
154
156}
static const INTERNET_PORT ServerPort
POBJECT_TYPE ServerPortObjectType
VOID FLTAPI FltObjectDereference(_Inout_ PVOID Object)
NTSTATUS FLTAPI FltObjectReference(_Inout_ PVOID Object)
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
#define NT_SUCCESS(StatCode)
#define InsertTailList(ListHead, Entry)
_Must_inspect_result_ _In_opt_ PFLT_FILTER Filter
_Must_inspect_result_ _Outptr_ PFLT_PORT _In_ POBJECT_ATTRIBUTES _In_opt_ PVOID _In_ PFLT_CONNECT_NOTIFY _In_ PFLT_DISCONNECT_NOTIFY _In_opt_ PFLT_MESSAGE_NOTIFY MessageNotifyCallback
_Must_inspect_result_ _Outptr_ PFLT_PORT _In_ POBJECT_ATTRIBUTES _In_opt_ PVOID _In_ PFLT_CONNECT_NOTIFY ConnectNotifyCallback
_Must_inspect_result_ _Outptr_ PFLT_PORT _In_ POBJECT_ATTRIBUTES _In_opt_ PVOID ServerPortCookie
_Must_inspect_result_ _Outptr_ PFLT_PORT _In_ POBJECT_ATTRIBUTES _In_opt_ PVOID _In_ PFLT_CONNECT_NOTIFY _In_ PFLT_DISCONNECT_NOTIFY DisconnectNotifyCallback
ULONG FltpObjectPointerReference(_In_ PFLT_OBJECT Object)
VOID FASTCALL ExAcquireFastMutex(IN PFAST_MUTEX FastMutex)
VOID FASTCALL ExReleaseFastMutex(IN PFAST_MUTEX FastMutex)
#define OBJ_KERNEL_HANDLE
static LONG MaxConnections
#define STANDARD_RIGHTS_ALL
NTSTATUS NTAPI ObInsertObject(IN PVOID Object, IN PACCESS_STATE AccessState OPTIONAL, IN ACCESS_MASK DesiredAccess, IN ULONG ObjectPointerBias, OUT PVOID *NewObject OPTIONAL, OUT PHANDLE Handle)
NTSTATUS NTAPI ObCreateObject(IN KPROCESSOR_MODE ProbeMode OPTIONAL, IN POBJECT_TYPE Type, IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL, IN KPROCESSOR_MODE AccessMode, IN OUT PVOID ParseContext OPTIONAL, IN ULONG ObjectSize, IN ULONG PagedPoolCharge OPTIONAL, IN ULONG NonPagedPoolCharge OPTIONAL, OUT PVOID *Object)
FLT_MUTEX_LIST_HEAD ConnectionList
PFLT_DISCONNECT_NOTIFY DisconnectNotify
PFLT_MESSAGE_NOTIFY MessageNotify
PFLT_CONNECT_NOTIFY ConnectNotify
#define RtlZeroMemory(Destination, Length)
#define STATUS_INVALID_PARAMETER