mirror of
https://github.com/reactos/reactos.git
synced 2025-04-27 09:00:27 +00:00
[KSECDD]
Start implementing ksecdd svn path=/trunk/; revision=61754
This commit is contained in:
parent
8b8043e5bf
commit
fcc7d66c11
9 changed files with 625 additions and 0 deletions
|
@ -5,6 +5,7 @@ add_subdirectory(base)
|
||||||
add_subdirectory(battery)
|
add_subdirectory(battery)
|
||||||
add_subdirectory(bluetooth)
|
add_subdirectory(bluetooth)
|
||||||
add_subdirectory(bus)
|
add_subdirectory(bus)
|
||||||
|
add_subdirectory(crypto)
|
||||||
add_subdirectory(filesystems)
|
add_subdirectory(filesystems)
|
||||||
add_subdirectory(filters)
|
add_subdirectory(filters)
|
||||||
add_subdirectory(hid)
|
add_subdirectory(hid)
|
||||||
|
|
2
reactos/drivers/crypto/CMakeLists.txt
Normal file
2
reactos/drivers/crypto/CMakeLists.txt
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
|
||||||
|
add_subdirectory(ksecdd)
|
13
reactos/drivers/crypto/ksecdd/CMakeLists.txt
Normal file
13
reactos/drivers/crypto/ksecdd/CMakeLists.txt
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
|
||||||
|
spec2def(ksecdd.sys ksecdd.spec)
|
||||||
|
|
||||||
|
list(APPEND SOURCE
|
||||||
|
ksecdd.c
|
||||||
|
dispatch.c
|
||||||
|
stubs.c
|
||||||
|
ksecdd.rc)
|
||||||
|
|
||||||
|
add_library(ksecdd SHARED ${SOURCE})
|
||||||
|
set_module_type(ksecdd kernelmodedriver)
|
||||||
|
add_importlibs(ksecdd ntoskrnl hal)
|
||||||
|
add_cd_file(TARGET ksecdd DESTINATION reactos/system32/drivers NO_CAB FOR all)
|
69
reactos/drivers/crypto/ksecdd/dispatch.c
Normal file
69
reactos/drivers/crypto/ksecdd/dispatch.c
Normal file
|
@ -0,0 +1,69 @@
|
||||||
|
/*
|
||||||
|
* PROJECT: ReactOS Drivers
|
||||||
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
|
* PURPOSE: Kernel Security Support Provider Interface Driver
|
||||||
|
*
|
||||||
|
* PROGRAMMERS: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* INCLUDES *******************************************************************/
|
||||||
|
|
||||||
|
#include "ksecdd.h"
|
||||||
|
|
||||||
|
#define NDEBUG
|
||||||
|
#include <debug.h>
|
||||||
|
|
||||||
|
|
||||||
|
/* FUNCTIONS ******************************************************************/
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
KsecDdDispatch(
|
||||||
|
PDEVICE_OBJECT DeviceObject,
|
||||||
|
PIRP Irp)
|
||||||
|
{
|
||||||
|
PIO_STACK_LOCATION IoStackLocation;
|
||||||
|
ULONG_PTR Information;
|
||||||
|
NTSTATUS Status;
|
||||||
|
|
||||||
|
IoStackLocation = IoGetCurrentIrpStackLocation(Irp);
|
||||||
|
|
||||||
|
switch (IoStackLocation->MajorFunction)
|
||||||
|
{
|
||||||
|
case IRP_MJ_CREATE:
|
||||||
|
case IRP_MJ_CLOSE:
|
||||||
|
|
||||||
|
/* Just return success */
|
||||||
|
Status = STATUS_SUCCESS;
|
||||||
|
Information = 0;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case IRP_MJ_READ:
|
||||||
|
|
||||||
|
/* There is nothing to read */
|
||||||
|
Status = STATUS_END_OF_FILE;
|
||||||
|
Information = 0;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case IRP_MJ_WRITE:
|
||||||
|
|
||||||
|
/* Pretend to have written everything */
|
||||||
|
Status = STATUS_SUCCESS;
|
||||||
|
Information = IoStackLocation->Parameters.Write.Length;
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
DPRINT1("Unhandled major function %lu!\n",
|
||||||
|
IoStackLocation->MajorFunction);
|
||||||
|
ASSERT(FALSE);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Return the information */
|
||||||
|
Irp->IoStatus.Status = Status;
|
||||||
|
Irp->IoStatus.Information = Information;
|
||||||
|
|
||||||
|
/* Complete the request */
|
||||||
|
IoCompleteRequest(Irp, IO_NO_INCREMENT);
|
||||||
|
|
||||||
|
return Status;
|
||||||
|
}
|
53
reactos/drivers/crypto/ksecdd/ksecdd.c
Normal file
53
reactos/drivers/crypto/ksecdd/ksecdd.c
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
/*
|
||||||
|
* PROJECT: ReactOS Drivers
|
||||||
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
|
* PURPOSE: Kernel Security Support Provider Interface Driver
|
||||||
|
*
|
||||||
|
* PROGRAMMERS: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* INCLUDES *******************************************************************/
|
||||||
|
|
||||||
|
#include "ksecdd.h"
|
||||||
|
|
||||||
|
#define NDEBUG
|
||||||
|
#include <debug.h>
|
||||||
|
|
||||||
|
/* GLOBALS ********************************************************************/
|
||||||
|
|
||||||
|
PDEVICE_OBJECT KsecDeviceObject;
|
||||||
|
|
||||||
|
|
||||||
|
/* FUNCTIONS ******************************************************************/
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
DriverEntry(
|
||||||
|
_In_ PDRIVER_OBJECT DriverObject,
|
||||||
|
_In_ PUNICODE_STRING RegistryPath)
|
||||||
|
{
|
||||||
|
UNICODE_STRING DeviceName = RTL_CONSTANT_STRING(L"\\Device\\KsecDD");
|
||||||
|
NTSTATUS Status;
|
||||||
|
|
||||||
|
/* Create the KsecDD device */
|
||||||
|
Status = IoCreateDevice(DriverObject,
|
||||||
|
0,
|
||||||
|
&DeviceName,
|
||||||
|
FILE_DEVICE_KSEC,
|
||||||
|
0x100u,
|
||||||
|
FALSE,
|
||||||
|
&KsecDeviceObject);
|
||||||
|
if (!NT_SUCCESS(Status))
|
||||||
|
{
|
||||||
|
DPRINT1("Failed to create KsecDD device: 0x%lx\n", Status);
|
||||||
|
return Status;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Set up dispatch table */
|
||||||
|
DriverObject->MajorFunction[IRP_MJ_CREATE] = KsecDdDispatch;
|
||||||
|
DriverObject->MajorFunction[IRP_MJ_CLOSE] = KsecDdDispatch;
|
||||||
|
DriverObject->MajorFunction[IRP_MJ_READ] = KsecDdDispatch;
|
||||||
|
DriverObject->MajorFunction[IRP_MJ_WRITE] = KsecDdDispatch;
|
||||||
|
|
||||||
|
return STATUS_SUCCESS;
|
||||||
|
}
|
18
reactos/drivers/crypto/ksecdd/ksecdd.h
Normal file
18
reactos/drivers/crypto/ksecdd/ksecdd.h
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
/*
|
||||||
|
* PROJECT: ReactOS Drivers
|
||||||
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
|
* PURPOSE: Kernel Security Support Provider Interface Driver
|
||||||
|
*
|
||||||
|
* PROGRAMMERS: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define _NO_KSECDD_IMPORT_
|
||||||
|
#include <ntifs.h>
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
KsecDdDispatch(
|
||||||
|
PDEVICE_OBJECT DeviceObject,
|
||||||
|
PIRP Irp);
|
||||||
|
|
||||||
|
|
18
reactos/drivers/crypto/ksecdd/ksecdd.rc
Normal file
18
reactos/drivers/crypto/ksecdd/ksecdd.rc
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
/*
|
||||||
|
* PROJECT: ReactOS Drivers
|
||||||
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
|
* PURPOSE: Resource File for KsecDD
|
||||||
|
* PROGRAMMERS: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <winver.h>
|
||||||
|
#include <ntverp.h>
|
||||||
|
|
||||||
|
/* Version Data */
|
||||||
|
#define VER_FILETYPE VFT_DRV
|
||||||
|
#define VER_FILESUBTYPE VFT2_DRV_SYSTEM
|
||||||
|
#define VER_FILEDESCRIPTION_STR "Kernel Security Support Provider Interface"
|
||||||
|
#define VER_INTERNALNAME_STR "ksecdd.sys"
|
||||||
|
#define VER_ORIGINALFILENAME_STR "ksecdd.sys"
|
||||||
|
#define VER_LANGNEUTRAL
|
||||||
|
#include <common.ver>
|
39
reactos/drivers/crypto/ksecdd/ksecdd.spec
Normal file
39
reactos/drivers/crypto/ksecdd/ksecdd.spec
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
@ stdcall AcceptSecurityContext(ptr ptr ptr long long ptr ptr ptr ptr)
|
||||||
|
@ stdcall AcquireCredentialsHandleW(ptr ptr long ptr ptr long ptr ptr ptr)
|
||||||
|
@ stdcall AddCredentialsW(ptr ptr ptr long ptr long ptr ptr)
|
||||||
|
@ stdcall ApplyControlToken(ptr ptr)
|
||||||
|
@ stdcall CredMarshalTargetInfo()
|
||||||
|
@ stdcall DeleteSecurityContext(ptr)
|
||||||
|
@ stdcall EfsDecryptFek()
|
||||||
|
@ stdcall EfsGenerateKey()
|
||||||
|
@ stdcall EnumerateSecurityPackagesW(ptr ptr)
|
||||||
|
@ stdcall ExportSecurityContext(ptr long ptr ptr)
|
||||||
|
@ stdcall FreeContextBuffer(ptr)
|
||||||
|
@ stdcall FreeCredentialsHandle(ptr)
|
||||||
|
@ stdcall GenerateDirEfs()
|
||||||
|
@ stdcall GenerateSessionKey()
|
||||||
|
@ stdcall GetSecurityUserInfo()
|
||||||
|
@ stdcall ImpersonateSecurityContext(ptr)
|
||||||
|
@ stdcall ImportSecurityContextW(ptr ptr ptr ptr)
|
||||||
|
@ stdcall InitSecurityInterfaceW()
|
||||||
|
@ stdcall InitializeSecurityContextW(ptr ptr ptr long long long ptr long ptr ptr ptr ptr)
|
||||||
|
@ stdcall KSecRegisterSecurityProvider()
|
||||||
|
@ stdcall KSecValidateBuffer()
|
||||||
|
@ stdcall LsaEnumerateLogonSessions()
|
||||||
|
@ stdcall LsaGetLogonSessionData()
|
||||||
|
@ stdcall MakeSignature(ptr long ptr long)
|
||||||
|
@ stdcall MapSecurityError()
|
||||||
|
@ stdcall QueryContextAttributesW(ptr long ptr)
|
||||||
|
@ stdcall QueryCredentialsAttributesW(ptr long ptr)
|
||||||
|
@ stdcall QuerySecurityContextToken(ptr ptr)
|
||||||
|
@ stdcall QuerySecurityPackageInfoW(ptr ptr)
|
||||||
|
@ stdcall RevertSecurityContext(ptr)
|
||||||
|
@ stdcall SealMessage()
|
||||||
|
@ stdcall SecLookupAccountName(ptr ptr ptr ptr ptr ptr)
|
||||||
|
@ stdcall SecLookupAccountSid(ptr ptr ptr ptr ptr ptr)
|
||||||
|
@ stdcall SecLookupWellKnownSid(long ptr long ptr)
|
||||||
|
@ stdcall SecMakeSPN(ptr ptr ptr long ptr ptr ptr long)
|
||||||
|
@ stdcall SecMakeSPNEx(ptr ptr ptr long ptr ptr ptr ptr long)
|
||||||
|
@ stdcall SecSetPagingMode()
|
||||||
|
@ stdcall UnsealMessage()
|
||||||
|
@ stdcall VerifySignature(ptr ptr long ptr)
|
412
reactos/drivers/crypto/ksecdd/stubs.c
Normal file
412
reactos/drivers/crypto/ksecdd/stubs.c
Normal file
|
@ -0,0 +1,412 @@
|
||||||
|
/*
|
||||||
|
* PROJECT: ReactOS Drivers
|
||||||
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
|
* PURPOSE: Kernel Security Support Provider Interface Driver
|
||||||
|
*
|
||||||
|
* PROGRAMMERS: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* INCLUDES *******************************************************************/
|
||||||
|
|
||||||
|
#include "ksecdd.h"
|
||||||
|
|
||||||
|
#define NDEBUG
|
||||||
|
#include <debug.h>
|
||||||
|
|
||||||
|
|
||||||
|
/* FUNCTIONS ******************************************************************/
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
AcceptSecurityContext(
|
||||||
|
_In_opt_ PCredHandle phCredential,
|
||||||
|
_In_opt_ PCtxtHandle phContext,
|
||||||
|
_In_opt_ PSecBufferDesc pInput,
|
||||||
|
_In_ ULONG fContextReq,
|
||||||
|
_In_ ULONG TargetDataRep,
|
||||||
|
_In_opt_ PCtxtHandle phNewContext,
|
||||||
|
_In_opt_ PSecBufferDesc pOutput,
|
||||||
|
_Out_ PULONG pfContextAttr,
|
||||||
|
_Out_opt_ PTimeStamp ptsExpiry)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
AcquireCredentialsHandleW(
|
||||||
|
_In_opt_ PSSPI_SEC_STRING pPrincipal,
|
||||||
|
_In_ PSSPI_SEC_STRING pPackage,
|
||||||
|
_In_ ULONG fCredentialUse,
|
||||||
|
_In_opt_ PVOID pvLogonId,
|
||||||
|
_In_opt_ PVOID pAuthData,
|
||||||
|
_In_opt_ SEC_GET_KEY_FN pGetKeyFn,
|
||||||
|
_In_opt_ PVOID pvGetKeyArgument,
|
||||||
|
_Out_ PCredHandle phCredential,
|
||||||
|
_Out_opt_ PTimeStamp ptsExpiry)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
AddCredentialsW(
|
||||||
|
_In_ PCredHandle hCredentials,
|
||||||
|
_In_opt_ PSSPI_SEC_STRING pPrincipal,
|
||||||
|
_In_ PSSPI_SEC_STRING pPackage,
|
||||||
|
_In_ ULONG fCredentialUse,
|
||||||
|
_In_opt_ PVOID pAuthData,
|
||||||
|
_In_opt_ SEC_GET_KEY_FN pGetKeyFn,
|
||||||
|
_In_opt_ PVOID pvGetKeyArgument,
|
||||||
|
_Out_opt_ PTimeStamp ptsExpiry)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
ApplyControlToken(
|
||||||
|
_In_ PCtxtHandle phContext,
|
||||||
|
_In_ PSecBufferDesc pInput)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
SEC_ENTRY
|
||||||
|
CredMarshalTargetInfo(VOID)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
DeleteSecurityContext(
|
||||||
|
_In_ PCtxtHandle phContext)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
SEC_ENTRY
|
||||||
|
EfsDecryptFek(VOID)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
SEC_ENTRY
|
||||||
|
EfsGenerateKey(VOID)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
EnumerateSecurityPackagesW(
|
||||||
|
_Out_ PULONG pcPackages,
|
||||||
|
_Deref_out_ PSecPkgInfoW* ppPackageInfo)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
ExportSecurityContext(
|
||||||
|
_In_ PCtxtHandle phContext,
|
||||||
|
_In_ ULONG fFlags,
|
||||||
|
_Out_ PSecBuffer pPackedContext,
|
||||||
|
_Out_ PVOID* pToken)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
FreeContextBuffer(
|
||||||
|
_Inout_ PVOID pvContextBuffer)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
FreeCredentialsHandle(
|
||||||
|
_In_ PCredHandle phCredential)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
SEC_ENTRY
|
||||||
|
GenerateDirEfs(VOID)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
SEC_ENTRY
|
||||||
|
GenerateSessionKey(VOID)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
SEC_ENTRY
|
||||||
|
GetSecurityUserInfo(VOID)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
ImpersonateSecurityContext(
|
||||||
|
_In_ PCtxtHandle phContext)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
ImportSecurityContextW(
|
||||||
|
_In_ PSSPI_SEC_STRING pszPackage,
|
||||||
|
_In_ PSecBuffer pPackedContext,
|
||||||
|
_In_ PVOID Token,
|
||||||
|
_Out_ PCtxtHandle phContext)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
InitializeSecurityContextW(
|
||||||
|
_In_opt_ PCredHandle phCredential,
|
||||||
|
_In_opt_ PCtxtHandle phContext,
|
||||||
|
_In_opt_ PSSPI_SEC_STRING pTargetName,
|
||||||
|
_In_ ULONG fContextReq,
|
||||||
|
_In_ ULONG Reserved1,
|
||||||
|
_In_ ULONG TargetDataRep,
|
||||||
|
_In_opt_ PSecBufferDesc pInput,
|
||||||
|
_In_ ULONG Reserved2,
|
||||||
|
_Inout_opt_ PCtxtHandle phNewContext,
|
||||||
|
_Inout_opt_ PSecBufferDesc pOutput,
|
||||||
|
_Out_ PULONG pfContextAttr,
|
||||||
|
_Out_opt_ PTimeStamp ptsExpiry)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
SEC_ENTRY
|
||||||
|
KSecRegisterSecurityProvider(VOID)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
SEC_ENTRY
|
||||||
|
KSecValidateBuffer(VOID)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
SEC_ENTRY
|
||||||
|
LsaEnumerateLogonSessions(VOID)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
SEC_ENTRY
|
||||||
|
LsaGetLogonSessionData(VOID)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
MakeSignature(
|
||||||
|
_In_ PCtxtHandle phContext,
|
||||||
|
_In_ ULONG fQOP,
|
||||||
|
_In_ PSecBufferDesc pMessage,
|
||||||
|
_In_ ULONG MessageSeqNo)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
SEC_ENTRY
|
||||||
|
MapSecurityError(VOID)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
QueryContextAttributesW(
|
||||||
|
_In_ PCtxtHandle phContext,
|
||||||
|
_In_ ULONG ulAttribute,
|
||||||
|
_Out_ PVOID pBuffer)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
QueryCredentialsAttributesW(
|
||||||
|
_In_ PCredHandle phCredential,
|
||||||
|
_In_ ULONG ulAttribute,
|
||||||
|
_Inout_ PVOID pBuffer)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
QuerySecurityContextToken(
|
||||||
|
_In_ PCtxtHandle phContext,
|
||||||
|
_Out_ PVOID* Token)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
QuerySecurityPackageInfoW(
|
||||||
|
_In_ PSSPI_SEC_STRING pPackageName,
|
||||||
|
_Deref_out_ PSecPkgInfoW *ppPackageInfo)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
RevertSecurityContext(
|
||||||
|
_In_ PCtxtHandle phContext)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
SEC_ENTRY
|
||||||
|
SealMessage(VOID)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
}
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
SecLookupAccountName(
|
||||||
|
_In_ PUNICODE_STRING Name,
|
||||||
|
_Inout_ PULONG SidSize,
|
||||||
|
_Out_ PSID Sid,
|
||||||
|
_Out_ PSID_NAME_USE NameUse,
|
||||||
|
_Out_opt_ PULONG DomainSize,
|
||||||
|
_Inout_opt_ PUNICODE_STRING ReferencedDomain)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
SecLookupAccountSid(
|
||||||
|
_In_ PSID Sid,
|
||||||
|
_Out_ PULONG NameSize,
|
||||||
|
_Inout_ PUNICODE_STRING NameBuffer,
|
||||||
|
_Out_ PULONG DomainSize OPTIONAL,
|
||||||
|
_Out_opt_ PUNICODE_STRING DomainBuffer,
|
||||||
|
_Out_ PSID_NAME_USE NameUse)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
SecLookupWellKnownSid(
|
||||||
|
_In_ WELL_KNOWN_SID_TYPE SidType,
|
||||||
|
_Out_ PSID Sid,
|
||||||
|
_In_ ULONG SidBufferSize,
|
||||||
|
_Inout_opt_ PULONG SidSize)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
SecMakeSPN(
|
||||||
|
_In_ PUNICODE_STRING ServiceClass,
|
||||||
|
_In_ PUNICODE_STRING ServiceName,
|
||||||
|
_In_opt_ PUNICODE_STRING InstanceName,
|
||||||
|
_In_opt_ USHORT InstancePort,
|
||||||
|
_In_opt_ PUNICODE_STRING Referrer,
|
||||||
|
_Inout_ PUNICODE_STRING Spn,
|
||||||
|
_Out_opt_ PULONG Length,
|
||||||
|
_In_ BOOLEAN Allocate)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
SecMakeSPNEx(
|
||||||
|
_In_ PUNICODE_STRING ServiceClass,
|
||||||
|
_In_ PUNICODE_STRING ServiceName,
|
||||||
|
_In_opt_ PUNICODE_STRING InstanceName,
|
||||||
|
_In_opt_ USHORT InstancePort,
|
||||||
|
_In_opt_ PUNICODE_STRING Referrer,
|
||||||
|
_In_opt_ PUNICODE_STRING TargetInfo,
|
||||||
|
_Inout_ PUNICODE_STRING Spn,
|
||||||
|
_Out_opt_ PULONG Length,
|
||||||
|
_In_ BOOLEAN Allocate)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
VOID
|
||||||
|
SEC_ENTRY
|
||||||
|
SecSetPagingMode(VOID)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
}
|
||||||
|
VOID
|
||||||
|
SEC_ENTRY
|
||||||
|
UnsealMessage(VOID)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
}
|
||||||
|
|
||||||
|
SECURITY_STATUS
|
||||||
|
SEC_ENTRY
|
||||||
|
VerifySignature(
|
||||||
|
_In_ PCtxtHandle phContext,
|
||||||
|
_In_ PSecBufferDesc pMessage,
|
||||||
|
_In_ ULONG MessageSeqNo,
|
||||||
|
_Out_ PULONG pfQOP)
|
||||||
|
{
|
||||||
|
UNIMPLEMENTED_DBGBREAK();
|
||||||
|
return 0;
|
||||||
|
}
|
Loading…
Reference in a new issue