|
| NTKERNELAPI NTSTATUS NTAPI | ObAssignSecurity (_In_ PACCESS_STATE AccessState, _In_ PSECURITY_DESCRIPTOR SecurityDescriptor, _In_ PVOID Object, _In_ POBJECT_TYPE Type) |
| |
| NTKERNELAPI NTSTATUS NTAPI | ObCloseHandle (_In_ HANDLE Handle, _In_ KPROCESSOR_MODE AccessMode) |
| |
| 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) |
| |
| NTKERNELAPI NTSTATUS NTAPI | ObCreateObjectType (_In_ PUNICODE_STRING TypeName, _In_ POBJECT_TYPE_INITIALIZER ObjectTypeInitializer, _Reserved_ PVOID Reserved, _Out_ POBJECT_TYPE *ObjectType) |
| |
| NTKERNELAPI VOID NTAPI | ObDereferenceObjectDeferDelete (_In_ PVOID Object) |
| |
| NTKERNELAPI VOID NTAPI | ObDereferenceSecurityDescriptor (_Inout_ PSECURITY_DESCRIPTOR SecurityDescriptor, _In_ ULONG Count) |
| |
| NTKERNELAPI BOOLEAN NTAPI | ObFindHandleForObject (_In_ PEPROCESS Process, _In_ PVOID Object, _In_ POBJECT_TYPE ObjectType, _In_opt_ POBJECT_HANDLE_INFORMATION HandleInformation, _Out_opt_ PHANDLE Handle) |
| |
| NTKERNELAPI ULONG NTAPI | ObGetObjectPointerCount (_In_ PVOID Object) |
| |
| NTKERNELAPI NTSTATUS NTAPI | ObLogSecurityDescriptor (_In_ PSECURITY_DESCRIPTOR InputSecurityDescriptor, _Out_ PSECURITY_DESCRIPTOR *OutputSecurityDescriptor, _In_ ULONG RefBias) |
| |
| 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) |
| |
| 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) |
| |
| NTKERNELAPI VOID NTAPI | ObReferenceSecurityDescriptor (_In_ PSECURITY_DESCRIPTOR SecurityDescriptor, _In_ ULONG Count) |
| |
| NTKERNELAPI NTSTATUS NTAPI | ObSetHandleAttributes (_In_ HANDLE Handle, _In_ POBJECT_HANDLE_FLAG_INFORMATION HandleFlags, _In_ KPROCESSOR_MODE PreviousMode) |
| | Sets the attributes (inheritable and protect-from-close) of an existing object handle.
|
| |
| NTKERNELAPI NTSTATUS NTAPI | ObSetSecurityObjectByPointer (_In_ PVOID Object, _In_ SECURITY_INFORMATION SecurityInformation, _In_ PSECURITY_DESCRIPTOR SecurityDescriptor) |
| |
| NTKERNELAPI POBJECT_TYPE FASTCALL | ObGetObjectType (_In_ PVOID Object) |
| |
| NTSYSCALLAPI NTSTATUS NTAPI | NtClose (_In_ HANDLE Handle) |
| |
| __kernel_entry NTSYSCALLAPI NTSTATUS NTAPI | NtCloseObjectAuditAlarm (_In_ PUNICODE_STRING SubsystemName, _In_opt_ PVOID HandleId, _In_ BOOLEAN GenerateOnClose) |
| |
| NTSYSCALLAPI NTSTATUS NTAPI | NtCreateDirectoryObject (_Out_ PHANDLE DirectoryHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes) |
| |
| NTSYSCALLAPI NTSTATUS NTAPI | NtCreateSymbolicLinkObject (_Out_ PHANDLE SymbolicLinkHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ PUNICODE_STRING Name) |
| |
| __kernel_entry NTSYSCALLAPI NTSTATUS NTAPI | NtDeleteObjectAuditAlarm (_In_ PUNICODE_STRING SubsystemName, _In_opt_ PVOID HandleId, _In_ BOOLEAN GenerateOnClose) |
| |
| 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 | NtMakePermanentObject (_In_ HANDLE Object) |
| |
| NTSYSCALLAPI NTSTATUS NTAPI | NtMakeTemporaryObject (_In_ HANDLE Handle) |
| |
| NTSYSCALLAPI NTSTATUS NTAPI | NtOpenDirectoryObject (_Out_ PHANDLE FileHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes) |
| |
| NTSYSCALLAPI NTSTATUS NTAPI | NtOpenJobObject (_Out_ PHANDLE JobHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes) |
| |
| NTSYSCALLAPI NTSTATUS NTAPI | NtOpenSymbolicLinkObject (_Out_ PHANDLE SymbolicLinkHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes) |
| |
| 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) |
| |
| | _IRQL_requires_max_ (PASSIVE_LEVEL) __kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtQueryObject(_In_opt_ HANDLE Handle |
| | Queries information details about a security descriptor.
|
| |
| _In_ OBJECT_INFORMATION_CLASS | _Out_writes_bytes_opt_ (ObjectInformationLength) PVOID ObjectInformation |
| |
| _In_ SECURITY_INFORMATION | _Out_writes_bytes_opt_ (Length) PSECURITY_DESCRIPTOR SecurityDescriptor |
| |
| NTSYSCALLAPI NTSTATUS NTAPI | NtQuerySymbolicLinkObject (_In_ HANDLE SymLinkObjHandle, _Out_ PUNICODE_STRING LinkTarget, _Out_opt_ PULONG DataWritten) |
| |
| NTSYSCALLAPI NTSTATUS NTAPI | NtSetInformationObject (_In_ HANDLE ObjectHandle, _In_ OBJECT_INFORMATION_CLASS ObjectInformationClass, _In_reads_bytes_(Length) PVOID ObjectInformation, _In_ ULONG Length) |
| | Sets information for an object or for a handle to an object.
|
| |
| NTSYSCALLAPI NTSTATUS NTAPI | NtSetSecurityObject (_In_ HANDLE Handle, _In_ SECURITY_INFORMATION SecurityInformation, _In_ PSECURITY_DESCRIPTOR SecurityDescriptor) |
| |
| NTSYSCALLAPI NTSTATUS NTAPI | NtSignalAndWaitForSingleObject (_In_ HANDLE SignalObject, _In_ HANDLE WaitObject, _In_ BOOLEAN Alertable, _In_ PLARGE_INTEGER Time) |
| |
| NTSYSCALLAPI NTSTATUS NTAPI | NtWaitForMultipleObjects (_In_ ULONG Count, _In_ HANDLE Object[], _In_ WAIT_TYPE WaitType, _In_ BOOLEAN Alertable, _In_ PLARGE_INTEGER Time) |
| |
| NTSTATUS NTAPI | NtWaitForMultipleObjects32 (_In_ ULONG ObjectCount, _In_ PLONG Handles, _In_ WAIT_TYPE WaitType, _In_ BOOLEAN Alertable, _In_opt_ PLARGE_INTEGER TimeOut) |
| |
| NTSYSCALLAPI NTSTATUS NTAPI | NtWaitForSingleObject (_In_ HANDLE Object, _In_ BOOLEAN Alertable, _In_opt_ PLARGE_INTEGER Timeout) |
| |
| NTSYSAPI NTSTATUS NTAPI | ZwClose (_In_ HANDLE Handle) |
| |
| NTSYSAPI NTSTATUS NTAPI | ZwCloseObjectAuditAlarm (_In_ PUNICODE_STRING SubsystemName, _In_ PVOID HandleId, _In_ BOOLEAN GenerateOnClose) |
| |
| NTSYSAPI NTSTATUS NTAPI | ZwCreateDirectoryObject (_Out_ PHANDLE DirectoryHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes) |
| |
| NTSYSAPI NTSTATUS NTAPI | ZwCreateSymbolicLinkObject (_Out_ PHANDLE SymbolicLinkHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ PUNICODE_STRING Name) |
| |
| NTSYSAPI NTSTATUS NTAPI | ZwDeleteObjectAuditAlarm (_In_ PUNICODE_STRING SubsystemName, _In_ PVOID HandleId, _In_ BOOLEAN GenerateOnClose) |
| |
| NTSYSAPI NTSTATUS NTAPI | ZwMakePermanentObject (_In_ HANDLE Object) |
| |
| NTSYSAPI NTSTATUS NTAPI | ZwMakeTemporaryObject (_In_ HANDLE Handle) |
| |
| NTSYSAPI NTSTATUS NTAPI | ZwOpenDirectoryObject (_Out_ PHANDLE FileHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes) |
| |
| NTSYSAPI NTSTATUS NTAPI | ZwOpenJobObject (_Out_ PHANDLE JobHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes) |
| |
| NTSYSAPI NTSTATUS NTAPI | ZwOpenSymbolicLinkObject (_Out_ PHANDLE SymbolicLinkHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes) |
| |
| NTSYSAPI NTSTATUS NTAPI | ZwSetInformationObject (_In_ HANDLE ObjectHandle, _In_ OBJECT_INFORMATION_CLASS ObjectInformationClass, _In_ PVOID ObjectInformation, _In_ ULONG Length) |
| |
| NTSYSAPI NTSTATUS NTAPI | ZwSignalAndWaitForSingleObject (_In_ HANDLE SignalObject, _In_ HANDLE WaitObject, _In_ BOOLEAN Alertable, _In_opt_ PLARGE_INTEGER Time) |
| |
| NTSYSAPI NTSTATUS NTAPI | ZwWaitForMultipleObjects (_In_ ULONG Count, _In_ HANDLE Object[], _In_ WAIT_TYPE WaitType, _In_ BOOLEAN Alertable, _In_ PLARGE_INTEGER Time) |
| |
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
142 Filter->ConnectionList.mCount++;
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_ _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)
HubAltSettingFilter * Filter
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)
#define OBJ_KERNEL_HANDLE
PFLT_DISCONNECT_NOTIFY DisconnectNotify
PFLT_MESSAGE_NOTIFY MessageNotify
PFLT_CONNECT_NOTIFY ConnectNotify
#define RtlZeroMemory(Destination, Length)
#define STATUS_INVALID_PARAMETER