[PATCH 1/2] sechost: New stub DLL.

Zebediah Figura z.figura12 at gmail.com
Sat Apr 25 15:40:23 CDT 2020


Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
---
 configure                 |   2 +
 configure.ac              |   1 +
 dlls/sechost/Makefile.in  |   3 +
 dlls/sechost/sechost.spec | 208 ++++++++++++++++++++++++++++++++++++++
 tools/make_specfiles      |   1 +
 5 files changed, 215 insertions(+)
 create mode 100644 dlls/sechost/Makefile.in
 create mode 100644 dlls/sechost/sechost.spec

diff --git a/configure b/configure
index 511837c1c73..1f4080fc545 100755
--- a/configure
+++ b/configure
@@ -1556,6 +1556,7 @@ enable_schedsvc
 enable_scrobj
 enable_scrrun
 enable_scsiport_sys
+enable_sechost
 enable_secur32
 enable_security
 enable_sensapi
@@ -20951,6 +20952,7 @@ wine_fn_config_makefile dlls/scrobj/tests enable_tests
 wine_fn_config_makefile dlls/scrrun enable_scrrun
 wine_fn_config_makefile dlls/scrrun/tests enable_tests
 wine_fn_config_makefile dlls/scsiport.sys enable_scsiport_sys
+wine_fn_config_makefile dlls/sechost enable_sechost
 wine_fn_config_makefile dlls/secur32 enable_secur32
 wine_fn_config_makefile dlls/secur32/tests enable_tests
 wine_fn_config_makefile dlls/security enable_security
diff --git a/configure.ac b/configure.ac
index 00b3f38d4aa..ce2c94eca29 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3641,6 +3641,7 @@ WINE_CONFIG_MAKEFILE(dlls/scrobj/tests)
 WINE_CONFIG_MAKEFILE(dlls/scrrun)
 WINE_CONFIG_MAKEFILE(dlls/scrrun/tests)
 WINE_CONFIG_MAKEFILE(dlls/scsiport.sys)
+WINE_CONFIG_MAKEFILE(dlls/sechost)
 WINE_CONFIG_MAKEFILE(dlls/secur32)
 WINE_CONFIG_MAKEFILE(dlls/secur32/tests)
 WINE_CONFIG_MAKEFILE(dlls/security)
diff --git a/dlls/sechost/Makefile.in b/dlls/sechost/Makefile.in
new file mode 100644
index 00000000000..d326188ad3e
--- /dev/null
+++ b/dlls/sechost/Makefile.in
@@ -0,0 +1,3 @@
+MODULE    = sechost.dll
+
+EXTRADLLFLAGS = -mno-cygwin
diff --git a/dlls/sechost/sechost.spec b/dlls/sechost/sechost.spec
new file mode 100644
index 00000000000..a72f79cd8a0
--- /dev/null
+++ b/dlls/sechost/sechost.spec
@@ -0,0 +1,208 @@
+@ stub I_ScSetServiceBitsA
+@ stub I_ScSetServiceBitsW
+@ stub AuditComputeEffectivePolicyBySid
+@ stub AuditEnumerateCategories
+@ stub AuditEnumeratePerUserPolicy
+@ stub AuditEnumerateSubCategories
+@ stub AuditFree
+@ stub AuditLookupCategoryNameW
+@ stub AuditLookupSubCategoryNameW
+@ stub AuditQueryGlobalSaclW
+@ stub AuditQueryPerUserPolicy
+@ stub AuditQuerySecurity
+@ stdcall AuditQuerySystemPolicy(ptr long ptr) advapi32.AuditQuerySystemPolicy
+@ stub AuditSetGlobalSaclW
+@ stub AuditSetPerUserPolicy
+@ stub AuditSetSecurity
+@ stub AuditSetSystemPolicy
+@ stub BuildSecurityDescriptorForSharingAccess
+@ stub BuildSecurityDescriptorForSharingAccessEx
+@ stub CapabilityCheck
+@ stub CapabilityCheckForSingleSessionSku
+@ stdcall ChangeServiceConfig2A(long long ptr) advapi32.ChangeServiceConfig2A
+@ stdcall ChangeServiceConfig2W(long long ptr) advapi32.ChangeServiceConfig2W
+@ stdcall ChangeServiceConfigA(long long long long wstr str ptr str str str str) advapi32.ChangeServiceConfigA
+@ stdcall ChangeServiceConfigW(long long long long wstr wstr ptr wstr wstr wstr wstr) advapi32.ChangeServiceConfigW
+@ stdcall CloseServiceHandle(long) advapi32.CloseServiceHandle
+@ stdcall CloseTrace(int64) advapi32.CloseTrace
+@ stdcall ControlService(long long ptr) advapi32.ControlService
+@ stub ControlServiceExA
+@ stub ControlServiceExW
+@ stdcall ControlTraceA(int64 str ptr long) advapi32.ControlTraceA
+@ stdcall ControlTraceW(int64 wstr ptr long) advapi32.ControlTraceW
+@ stub ConvertSDToStringSDRootDomainW
+@ stdcall ConvertSecurityDescriptorToStringSecurityDescriptorW(ptr long long ptr ptr) advapi32.ConvertSecurityDescriptorToStringSecurityDescriptorW
+@ stdcall ConvertSidToStringSidW(ptr ptr) advapi32.ConvertSidToStringSidW
+@ stub ConvertStringSDToSDDomainA
+@ stub ConvertStringSDToSDDomainW
+@ stub ConvertStringSDToSDRootDomainW
+@ stdcall ConvertStringSecurityDescriptorToSecurityDescriptorW(wstr long ptr ptr) advapi32.ConvertStringSecurityDescriptorToSecurityDescriptorW
+@ stdcall ConvertStringSidToSidW(ptr ptr) advapi32.ConvertStringSidToSidW
+@ stdcall CreateServiceA(long str str long long long long str str ptr str str str) advapi32.CreateServiceA
+@ stub CreateServiceEx
+@ stdcall CreateServiceW(long wstr wstr long long long long wstr wstr ptr wstr wstr wstr) advapi32.CreateServiceW
+@ stub CredBackupCredentials
+@ stdcall CredDeleteA(str long long) advapi32.CredDeleteA
+@ stdcall CredDeleteW(wstr long long) advapi32.CredDeleteW
+@ stub CredEncryptAndMarshalBinaryBlob
+@ stdcall CredEnumerateA(str long ptr ptr) advapi32.CredEnumerateA
+@ stdcall CredEnumerateW(wstr long ptr ptr) advapi32.CredEnumerateW
+@ stub CredFindBestCredentialA
+@ stub CredFindBestCredentialW
+@ stdcall CredFree(ptr) advapi32.CredFree
+@ stdcall CredGetSessionTypes(long ptr) advapi32.CredGetSessionTypes
+@ stub CredGetTargetInfoA
+@ stub CredGetTargetInfoW
+@ stdcall CredIsMarshaledCredentialW(wstr) advapi32.CredIsMarshaledCredentialW
+@ stub CredIsProtectedA
+@ stub CredIsProtectedW
+@ stdcall CredMarshalCredentialA(long ptr ptr) advapi32.CredMarshalCredentialA
+@ stdcall CredMarshalCredentialW(long ptr ptr) advapi32.CredMarshalCredentialW
+@ stub CredParseUserNameWithType
+@ stub CredProfileLoaded
+@ stub CredProfileLoadedEx
+@ stub CredProfileUnloaded
+@ stub CredProtectA
+@ stub CredProtectW
+@ stdcall CredReadA(str long long ptr) advapi32.CredReadA
+@ stub CredReadByTokenHandle
+@ stdcall CredReadDomainCredentialsA(ptr long ptr ptr) advapi32.CredReadDomainCredentialsA
+@ stdcall CredReadDomainCredentialsW(ptr long ptr ptr) advapi32.CredReadDomainCredentialsW
+@ stdcall CredReadW(wstr long long ptr) advapi32.CredReadW
+@ stub CredRestoreCredentials
+@ stdcall CredUnmarshalCredentialA(str ptr ptr) advapi32.CredUnmarshalCredentialA
+@ stdcall CredUnmarshalCredentialW(wstr ptr ptr) advapi32.CredUnmarshalCredentialW
+@ stub CredUnprotectA
+@ stub CredUnprotectW
+@ stdcall CredWriteA(ptr long) advapi32.CredWriteA
+@ stub CredWriteDomainCredentialsA
+@ stub CredWriteDomainCredentialsW
+@ stdcall CredWriteW(ptr long) advapi32.CredWriteW
+@ stub CredpConvertCredential
+@ stub CredpConvertOneCredentialSize
+@ stub CredpConvertTargetInfo
+@ stub CredpDecodeCredential
+@ stub CredpEncodeCredential
+@ stub CredpEncodeSecret
+@ stdcall DeleteService(long) advapi32.DeleteService
+@ stdcall EnableTraceEx2(int64 ptr long long int64 int64 long ptr) advapi32.EnableTraceEx2
+@ stdcall EnumDependentServicesW(long long ptr long ptr ptr) advapi32.EnumDependentServicesW
+@ stdcall EnumServicesStatusExW(long long long long ptr long ptr ptr ptr wstr) advapi32.EnumServicesStatusExW
+@ stub EnumerateIdentityProviders
+@ stub EnumerateTraceGuidsEx
+@ stub EtwQueryRealtimeConsumer
+@ stub EventAccessControl
+@ stub EventAccessQuery
+@ stub EventAccessRemove
+@ stub FreeTransientObjectSecurityDescriptor
+@ stub GetDefaultIdentityProvider
+@ stub GetIdentityProviderInfoByGUID
+@ stub GetIdentityProviderInfoByName
+@ stub GetServiceDirectory
+@ stdcall GetServiceDisplayNameW(ptr wstr ptr ptr) advapi32.GetServiceDisplayNameW
+@ stdcall GetServiceKeyNameW(long wstr ptr ptr) advapi32.GetServiceKeyNameW
+@ stub GetServiceRegistryStateKey
+@ stub I_QueryTagInformation
+@ stub I_RegisterSvchostNotificationCallback
+@ stub I_ScBroadcastServiceControlMessage
+@ stub I_ScIsSecurityProcess
+@ stub I_ScPnPGetServiceName
+@ stub I_ScQueryServiceConfig
+@ stub I_ScRegisterDeviceNotification
+@ stub I_ScRegisterPreshutdownRestart
+@ stub I_ScReparseServiceDatabase
+@ stub I_ScRpcBindA
+@ stub I_ScRpcBindW
+@ stub I_ScSendPnPMessage
+@ stub I_ScSendTSMessage
+@ stub I_ScUnregisterDeviceNotification
+@ stub I_ScValidatePnPService
+@ stub LocalGetConditionForString
+@ stub LocalGetReferencedTokenTypesForCondition
+@ stub LocalGetStringForCondition
+@ stub LocalRpcBindingCreateWithSecurity
+@ stub LocalRpcBindingSetAuthInfoEx
+@ stub LookupAccountNameLocalA
+@ stub LookupAccountNameLocalW
+@ stdcall LookupAccountSidLocalA(ptr ptr ptr ptr ptr ptr) advapi32.LookupAccountSidLocalA
+@ stdcall LookupAccountSidLocalW(ptr ptr ptr ptr ptr ptr) advapi32.LookupAccountSidLocalW
+@ stdcall LsaAddAccountRights(ptr ptr ptr long) advapi32.LsaAddAccountRights
+@ stdcall LsaClose(ptr) advapi32.LsaClose
+@ stub LsaCreateSecret
+@ stub LsaDelete
+@ stdcall LsaEnumerateAccountRights(ptr ptr ptr ptr) advapi32.LsaEnumerateAccountRights
+@ stdcall LsaEnumerateAccountsWithUserRight(ptr ptr ptr ptr) advapi32.LsaEnumerateAccountsWithUserRight
+@ stdcall LsaFreeMemory(ptr) advapi32.LsaFreeMemory
+@ stub LsaICLookupNames
+@ stub LsaICLookupNamesWithCreds
+@ stub LsaICLookupSids
+@ stub LsaICLookupSidsWithCreds
+@ stub LsaLookupClose
+@ stub LsaLookupFreeMemory
+@ stub LsaLookupGetDomainInfo
+@ stub LsaLookupManageSidNameMapping
+@ stdcall LsaLookupNames2(ptr long long ptr ptr ptr) advapi32.LsaLookupNames2
+@ stub LsaLookupOpenLocalPolicy
+@ stdcall LsaLookupSids(ptr long ptr ptr ptr) advapi32.LsaLookupSids
+@ stub LsaLookupSids2
+@ stub LsaLookupTranslateNames
+@ stub LsaLookupTranslateSids
+@ stub LsaLookupUserAccountType
+@ stdcall LsaOpenPolicy(long ptr long long) advapi32.LsaOpenPolicy
+@ stub LsaOpenSecret
+@ stdcall LsaQueryInformationPolicy(ptr long ptr) advapi32.LsaQueryInformationPolicy
+@ stub LsaQuerySecret
+@ stdcall LsaRemoveAccountRights(ptr ptr long ptr long) advapi32.LsaRemoveAccountRights
+@ stdcall LsaRetrievePrivateData(ptr ptr ptr) advapi32.LsaRetrievePrivateData
+@ stdcall LsaSetInformationPolicy(long long ptr) advapi32.LsaSetInformationPolicy
+@ stdcall LsaSetSecret(ptr ptr ptr) advapi32.LsaSetSecret
+@ stdcall LsaStorePrivateData(ptr ptr ptr) advapi32.LsaStorePrivateData
+@ stub NotifyServiceStatusChange
+@ stub NotifyServiceStatusChangeA
+@ stdcall NotifyServiceStatusChangeW(ptr long ptr) advapi32.NotifyServiceStatusChangeW
+@ stdcall OpenSCManagerA(str str long) advapi32.OpenSCManagerA
+@ stdcall OpenSCManagerW(wstr wstr long) advapi32.OpenSCManagerW
+@ stdcall OpenServiceA(long str long) advapi32.OpenServiceA
+@ stdcall OpenServiceW(long wstr long) advapi32.OpenServiceW
+@ stdcall -ret64 OpenTraceW(ptr) advapi32.OpenTraceW
+@ stdcall ProcessTrace(ptr long ptr ptr) advapi32.ProcessTrace
+@ stdcall QueryAllTracesA(ptr long ptr) advapi32.QueryAllTracesA
+@ stdcall QueryAllTracesW(ptr long ptr) advapi32.QueryAllTracesW
+@ stub QueryLocalUserServiceName
+@ stdcall QueryServiceConfig2A(long long ptr long ptr) advapi32.QueryServiceConfig2A
+@ stdcall QueryServiceConfig2W(long long ptr long ptr) advapi32.QueryServiceConfig2W
+@ stdcall QueryServiceConfigA(long ptr long ptr) advapi32.QueryServiceConfigA
+@ stdcall QueryServiceConfigW(long ptr long ptr) advapi32.QueryServiceConfigW
+@ stub QueryServiceDynamicInformation
+@ stdcall QueryServiceObjectSecurity(long long ptr long ptr) advapi32.QueryServiceObjectSecurity
+@ stdcall QueryServiceStatus(long ptr) advapi32.QueryServiceStatus
+@ stdcall QueryServiceStatusEx(long long ptr long ptr) advapi32.QueryServiceStatusEx
+@ stub QueryTraceProcessingHandle
+@ stub QueryTransientObjectSecurityDescriptor
+@ stub QueryUserServiceName
+@ stub QueryUserServiceNameForContext
+@ stdcall RegisterServiceCtrlHandlerA(str ptr) advapi32.RegisterServiceCtrlHandlerA
+@ stdcall RegisterServiceCtrlHandlerExA(str ptr ptr) advapi32.RegisterServiceCtrlHandlerExA
+@ stdcall RegisterServiceCtrlHandlerExW(wstr ptr ptr) advapi32.RegisterServiceCtrlHandlerExW
+@ stdcall RegisterServiceCtrlHandlerW(wstr ptr) advapi32.RegisterServiceCtrlHandlerW
+@ stdcall RegisterTraceGuidsA(ptr ptr ptr long ptr str str ptr) advapi32.RegisterTraceGuidsA
+@ stub ReleaseIdentityProviderEnumContext
+@ stub RemoveTraceCallback
+@ stub RpcClientCapabilityCheck
+@ stub SetLocalRpcServerInterfaceSecurity
+@ stub SetLocalRpcServerProtseqSecurity
+@ stdcall SetServiceObjectSecurity(long long ptr) advapi32.SetServiceObjectSecurity
+@ stdcall SetServiceStatus(long ptr) advapi32.SetServiceStatus
+@ stub SetTraceCallback
+@ stdcall StartServiceA(long long ptr) advapi32.StartServiceA
+@ stdcall StartServiceCtrlDispatcherA(ptr) advapi32.StartServiceCtrlDispatcherA
+@ stdcall StartServiceCtrlDispatcherW(ptr) advapi32.StartServiceCtrlDispatcherW
+@ stdcall StartServiceW(long long ptr) advapi32.StartServiceW
+@ stdcall StartTraceA(ptr str ptr) advapi32.StartTraceA
+@ stdcall StartTraceW(ptr wstr ptr) advapi32.StartTraceW
+@ stdcall StopTraceW(int64 wstr ptr) advapi32.StopTraceW
+@ stub SubscribeServiceChangeNotifications
+@ stub TraceQueryInformation
+@ stdcall TraceSetInformation(int64 long ptr long) advapi32.TraceSetInformation
+@ stub UnsubscribeServiceChangeNotifications
+@ stub WaitServiceState
diff --git a/tools/make_specfiles b/tools/make_specfiles
index 95b210752ca..6ce990c107f 100755
--- a/tools/make_specfiles
+++ b/tools/make_specfiles
@@ -148,6 +148,7 @@ my @dll_groups =
   "api-ms-win-service-private-l1-1-1",
   "api-ms-win-service-winsvc-l1-1-0",
   "api-ms-win-service-winsvc-l1-2-0",
+  "sechost",
  ],
  [
   "authz",
-- 
2.26.0




More information about the wine-devel mailing list