From 72df55f2e22b0cd2a600f69cb532bd32e7f652b3 Mon Sep 17 00:00:00 2001 From: Emanuele Aliberti Date: Wed, 19 May 1999 16:43:30 +0000 Subject: [PATCH] more stubs svn path=/trunk/; revision=484 --- reactos/lib/advapi32/advapi32.def | 806 ++++++++++++++------------- reactos/lib/advapi32/advapi32.rc | 38 ++ reactos/lib/advapi32/advapi32_specs | 78 +++ reactos/lib/advapi32/makefile | 78 ++- reactos/lib/advapi32/misc/dllmain.c | 23 + reactos/lib/advapi32/misc/shutdown.c | 164 ++++++ reactos/lib/advapi32/misc/sysfunc.c | 409 ++++++++++++++ reactos/lib/advapi32/sec/lsa.c | 581 +++++++++++++++++++ reactos/lib/advapi32/service/scm.c | 703 +++++++++++++++++++++++ 9 files changed, 2475 insertions(+), 405 deletions(-) create mode 100644 reactos/lib/advapi32/advapi32.rc create mode 100644 reactos/lib/advapi32/advapi32_specs create mode 100644 reactos/lib/advapi32/misc/dllmain.c create mode 100644 reactos/lib/advapi32/misc/shutdown.c create mode 100644 reactos/lib/advapi32/misc/sysfunc.c create mode 100644 reactos/lib/advapi32/sec/lsa.c create mode 100644 reactos/lib/advapi32/service/scm.c diff --git a/reactos/lib/advapi32/advapi32.def b/reactos/lib/advapi32/advapi32.def index e1c26fda63c..340e38635b1 100644 --- a/reactos/lib/advapi32/advapi32.def +++ b/reactos/lib/advapi32/advapi32.def @@ -1,399 +1,411 @@ +; $Id: advapi32.def,v 1.2 1999/05/19 16:43:30 ea Exp $ +; +; advapi32.def +; +; ReactOS Operating System +; +; Some stack sizes are taken from Ander Norlander's .DEFs. +; LIBRARY advapi32 EXPORTS - AbortSystemShutdownA=AbortSystemShutdownA@4 - AbortSystemShutdownW=AbortSystemShutdownW@4 - AccessCheck - AccessCheckAndAuditAlarmA - AccessCheckAndAuditAlarmW - AddAccessAllowedAce - AddAccessDeniedAce - AddAce - AddAuditAccessAce - AdjustTokenGroups - AdjustTokenPrivileges - AllocateAndInitializeSid - AllocateLocallyUniqueId - AreAllAccessesGranted - AreAnyAccessesGranted - BackupEventLogA - BackupEventLogW - BuildAccessRequestA - BuildAccessRequestW - BuildExplicitAccessWithNameA - BuildExplicitAccessWithNameW - BuildImpersonateExplicitAccessWithNameA - BuildImpersonateExplicitAccessWithNameW - BuildImpersonateTrusteeA - BuildImpersonateTrusteeW - BuildSecurityDescriptorA - BuildSecurityDescriptorW - BuildTrusteeWithNameA - BuildTrusteeWithNameW - BuildTrusteeWithSidA - BuildTrusteeWithSidW - ChangeServiceConfigA - ChangeServiceConfigW - ClearEventLogA - ClearEventLogW - CloseEventLog - CloseServiceHandle - ControlService - CopySid - CreatePrivateObjectSecurity - CreateProcessAsUserA - CreateProcessAsUserW - CreateServiceA - CreateServiceW - CryptAcquireContextA - CryptAcquireContextW - CryptCreateHash - CryptDecrypt - CryptDeriveKey - CryptDestroyHash - CryptDestroyKey - CryptEncrypt - CryptExportKey - CryptGenKey - CryptGenRandom - CryptGetHashParam - CryptGetKeyParam - CryptGetProvParam - CryptGetUserKey - CryptHashData - CryptHashSessionKey - CryptImportKey - CryptReleaseContext - CryptSetHashParam - CryptSetKeyParam - CryptSetProvParam - CryptSetProviderA - CryptSetProviderW - CryptSignHashA - CryptSignHashW - CryptVerifySignatureA - CryptVerifySignatureW - DeleteAce - DeleteService - DenyAccessRightsA - DenyAccessRightsW - DeregisterEventSource - DestroyPrivateObjectSecurity - DuplicateToken - DuplicateTokenEx - ElfBackupEventLogFileA - ElfBackupEventLogFileW - ElfChangeNotify - ElfClearEventLogFileA - ElfClearEventLogFileW - ElfCloseEventLog - ElfDeregisterEventSource - ElfNumberOfRecords - ElfOldestRecord - ElfOpenBackupEventLogA - ElfOpenBackupEventLogW - ElfOpenEventLogA - ElfOpenEventLogW - ElfReadEventLogA - ElfReadEventLogW - ElfRegisterEventSourceA - ElfRegisterEventSourceW - ElfReportEventA - ElfReportEventW - EnumDependentServicesA - EnumDependentServicesW - EnumServiceGroupW - EnumServicesStatusA - EnumServicesStatusW - EqualPrefixSid - EqualSid - FindFirstFreeAce - FreeSid - GetAce - GetAclInformation - GetAuditedPermissionsFromAclA - GetAuditedPermissionsFromAclW - GetAuditedPermissionsFromSDA - GetAuditedPermissionsFromSDW - GetCurrentHwProfileA - GetCurrentHwProfileW - GetEffectiveAccessRightsA - GetEffectiveAccessRightsW - GetEffectiveRightsFromAclA - GetEffectiveRightsFromAclW - GetEffectiveRightsFromSDA - GetEffectiveRightsFromSDW - GetExplicitAccessRightsA - GetExplicitAccessRightsW - GetExplicitEntriesFromAclA - GetExplicitEntriesFromAclW - GetFileSecurityA - GetFileSecurityW - GetKernelObjectSecurity - GetLengthSid - GetMultipleTrusteeA - GetMultipleTrusteeOperationA - GetMultipleTrusteeOperationW - GetMultipleTrusteeW - GetNamedSecurityInfoA - GetNamedSecurityInfoW - GetNumberOfEventLogRecords - GetOldestEventLogRecord - GetPrivateObjectSecurity - GetSecurityDescriptorControl - GetSecurityDescriptorDacl - GetSecurityDescriptorGroup - GetSecurityDescriptorLength - GetSecurityDescriptorOwner - GetSecurityDescriptorSacl - GetSecurityInfo - GetServiceDisplayNameA - GetServiceDisplayNameW - GetServiceKeyNameA - GetServiceKeyNameW - GetSidIdentifierAuthority - GetSidLengthRequired - GetSidSubAuthority - GetSidSubAuthorityCount - GetTokenInformation - GetTrusteeNameA - GetTrusteeNameW - GetTrusteeTypeA - GetTrusteeTypeW - GetUserNameA - GetUserNameW - GrantAccessRightsA - GrantAccessRightsW - I_ScGetCurrentGroupStateW - I_ScSetServiceBitsA - I_ScSetServiceBitsW - ImpersonateLoggedOnUser - ImpersonateNamedPipeClient - ImpersonateSelf - InitializeAcl - InitializeSecurityDescriptor - InitializeSid - InitiateSystemShutdownA=InitiateSystemShutdownA@20 - InitiateSystemShutdownW=InitiateSystemShutdownW@20 - IsAccessPermittedA - IsAccessPermittedW - IsTextUnicode - IsValidAcl - IsValidSecurityDescriptor - IsValidSid - LockServiceDatabase - LogonUserA - LogonUserW - LookupAccountNameA - LookupAccountNameW - LookupAccountSidA - LookupAccountSidW - LookupPrivilegeDisplayNameA - LookupPrivilegeDisplayNameW - LookupPrivilegeNameA - LookupPrivilegeNameW - LookupPrivilegeValueA - LookupPrivilegeValueW - LookupSecurityDescriptorPartsA - LookupSecurityDescriptorPartsW - LsaAddAccountRights - LsaAddPrivilegesToAccount - LsaClearAuditLog - LsaClose - LsaCreateAccount - LsaCreateSecret - LsaCreateTrustedDomain - LsaDelete - LsaDeleteTrustedDomain - LsaEnumerateAccountRights - LsaEnumerateAccounts - LsaEnumerateAccountsWithUserRight - LsaEnumeratePrivileges - LsaEnumeratePrivilegesOfAccount - LsaEnumerateTrustedDomains - LsaFreeMemory - LsaGetQuotasForAccount - LsaGetSystemAccessAccount - LsaGetUserName - LsaICLookupNames - LsaICLookupSids - LsaLookupNames - LsaLookupPrivilegeDisplayName - LsaLookupPrivilegeName - LsaLookupPrivilegeValue - LsaLookupSids - LsaNtStatusToWinError - LsaOpenAccount - LsaOpenPolicy - LsaOpenSecret - LsaOpenTrustedDomain - LsaQueryInfoTrustedDomain - LsaQueryInformationPolicy - LsaQuerySecret - LsaQuerySecurityObject - LsaQueryTrustedDomainInfo - LsaRemoveAccountRights - LsaRemovePrivilegesFromAccount - LsaRetrievePrivateData - LsaSetInformationPolicy - LsaSetInformationTrustedDomain - LsaSetQuotasForAccount - LsaSetSecret - LsaSetSecurityObject - LsaSetSystemAccessAccount - LsaSetTrustedDomainInformation - LsaStorePrivateData - MakeAbsoluteSD - MakeSelfRelativeSD - MapGenericMask - NTAccessMaskToProvAccessRights - NotifyBootConfigStatus - NotifyChangeEventLog - ObjectCloseAuditAlarmA - ObjectCloseAuditAlarmW - ObjectDeleteAuditAlarmA - ObjectDeleteAuditAlarmW - ObjectOpenAuditAlarmA - ObjectOpenAuditAlarmW - ObjectPrivilegeAuditAlarmA - ObjectPrivilegeAuditAlarmW - OpenBackupEventLogA - OpenBackupEventLogW - OpenEventLogA - OpenEventLogW - OpenProcessToken - OpenSCManagerA - OpenSCManagerW - OpenServiceA - OpenServiceW - OpenThreadToken - PrivilegeCheck - PrivilegedServiceAuditAlarmA - PrivilegedServiceAuditAlarmW - ProvAccessRightsToNTAccessMask - QueryServiceConfigA - QueryServiceConfigW - QueryServiceLockStatusA - QueryServiceLockStatusW - QueryServiceObjectSecurity - QueryServiceStatus - QueryWindows31FilesMigration - ReadEventLogA - ReadEventLogW - RegCloseKey - RegConnectRegistryA - RegConnectRegistryW - RegCreateKeyA - RegCreateKeyExA - RegCreateKeyExW - RegCreateKeyW - RegDeleteKeyA - RegDeleteKeyW - RegDeleteValueA - RegDeleteValueW - RegEnumKeyA - RegEnumKeyExA - RegEnumKeyExW - RegEnumKeyW - RegEnumValueA - RegEnumValueW - RegFlushKey - RegGetKeySecurity - RegLoadKeyA - RegLoadKeyW - RegNotifyChangeKeyValue - RegOpenKeyA - RegOpenKeyExA - RegOpenKeyExW - RegOpenKeyW - RegQueryInfoKeyA - RegQueryInfoKeyW - RegQueryMultipleValuesA - RegQueryMultipleValuesW - RegQueryValueA - RegQueryValueExA - RegQueryValueExW - RegQueryValueW - RegReplaceKeyA - RegReplaceKeyW - RegRestoreKeyA - RegRestoreKeyW - RegSaveKeyA - RegSaveKeyW - RegSetKeySecurity - RegSetValueA - RegSetValueExA - RegSetValueExW - RegSetValueW - RegUnLoadKeyA - RegUnLoadKeyW - RegisterEventSourceA - RegisterEventSourceW - RegisterServiceCtrlHandlerA - RegisterServiceCtrlHandlerW - ReplaceAllAccessRightsA - ReplaceAllAccessRightsW - ReportEventA - ReportEventW - RevertToSelf - RevokeExplicitAccessRightsA - RevokeExplicitAccessRightsW - SetAccessRightsA - SetAccessRightsW - SetAclInformation - SetEntriesInAclA - SetEntriesInAclW - SetFileSecurityA - SetFileSecurityW - SetKernelObjectSecurity - SetNamedSecurityInfoA - SetNamedSecurityInfoW - SetPrivateObjectSecurity - SetSecurityDescriptorDacl - SetSecurityDescriptorGroup - SetSecurityDescriptorOwner - SetSecurityDescriptorSacl - SetSecurityInfo - SetServiceBits - SetServiceObjectSecurity - SetServiceStatus - SetThreadToken - SetTokenInformation - StartServiceA - StartServiceCtrlDispatcherA - StartServiceCtrlDispatcherW - StartServiceW - SynchronizeWindows31FilesAndWindowsNTRegistry - SystemFunction001=SystemFunction001@0 - SystemFunction002=SystemFunction002@0 - SystemFunction003=SystemFunction003@0 - SystemFunction004=SystemFunction004@0 - SystemFunction005=SystemFunction005@0 - SystemFunction006=SystemFunction006@0 - SystemFunction007=SystemFunction007@0 - SystemFunction008=SystemFunction008@0 - SystemFunction009=SystemFunction009@0 - SystemFunction010=SystemFunction010@0 - SystemFunction011=SystemFunction011@0 - SystemFunction012=SystemFunction012@0 - SystemFunction013=SystemFunction013@0 - SystemFunction014=SystemFunction014@0 - SystemFunction015=SystemFunction015@0 - SystemFunction016=SystemFunction016@0 - SystemFunction017=SystemFunction017@0 - SystemFunction018=SystemFunction018@0 - SystemFunction019=SystemFunction019@0 - SystemFunction020=SystemFunction020@0 - SystemFunction021=SystemFunction021@0 - SystemFunction022=SystemFunction022@0 - SystemFunction023=SystemFunction023@0 - SystemFunction024=SystemFunction024@0 - SystemFunction025=SystemFunction025@0 - SystemFunction026=SystemFunction026@0 - SystemFunction027=SystemFunction027@0 - SystemFunction028=SystemFunction028@0 - SystemFunction029=SystemFunction029@0 - SystemFunction030=SystemFunction030@0 - SystemFunction031=SystemFunction031@0 - SystemFunction032=SystemFunction032@0 - SystemFunction033=SystemFunction033@0 - UnlockServiceDatabase +AbortSystemShutdownA = AbortSystemShutdownA@4 +AbortSystemShutdownW = AbortSystemShutdownW@4 +AccessCheck = AccessCheck@32 +AccessCheckAndAuditAlarmA = AccessCheckAndAuditAlarmA@44 +AccessCheckAndAuditAlarmW = AccessCheckAndAuditAlarmW@44 +AddAccessAllowedAce = AddAccessAllowedAce@16 +AddAccessDeniedAce = AddAccessDeniedAce@16 +AddAce = AddAce@20 +AddAuditAccessAce = AddAuditAccessAce@24 +AdjustTokenGroups = AdjustTokenGroups@24 +AdjustTokenPrivileges = AdjustTokenPrivileges@24 +AllocateAndInitializeSid = AllocateAndInitializeSid@44 +AllocateLocallyUniqueId = AllocateLocallyUniqueId@4 +AreAllAccessesGranted = AreAllAccessesGranted@8 +AreAnyAccessesGranted = AreAnyAccessesGranted@8 +BackupEventLogA = BackupEventLogA@8 +BackupEventLogW = BackupEventLogW@8 +BuildAccessRequestA = +BuildAccessRequestW = +BuildExplicitAccessWithNameA = BuildExplicitAccessWithNameA@20 +BuildExplicitAccessWithNameW = BuildExplicitAccessWithNameW@20 +BuildImpersonateExplicitAccessWithNameA = +BuildImpersonateExplicitAccessWithNameW = +BuildImpersonateTrusteeA = +BuildImpersonateTrusteeW = +BuildSecurityDescriptorA = BuildSecurityDescriptorA@36 +BuildSecurityDescriptorW = BuildSecurityDescriptorW@36 +BuildTrusteeWithNameA = BuildTrusteeWithNameA@8 +BuildTrusteeWithNameW = BuildTrusteeWithNameW@8 +BuildTrusteeWithSidA = BuildTrusteeWithSidA@8 +BuildTrusteeWithSidW = BuildTrusteeWithSidW@8 +ChangeServiceConfigA = ChangeServiceConfigA@44 +ChangeServiceConfigW = ChangeServiceConfigW@44 +ClearEventLogA = ClearEventLogA@8 +ClearEventLogW = ClearEventLogW@8 +CloseEventLog = ClearEventLogA@8 +CloseServiceHandle = CloseServiceHandle@4 +ControlService = ControlService@12 +CopySid = CopySid@12 +CreatePrivateObjectSecurity = CreatePrivateObjectSecurity@24 +CreateProcessAsUserA = CreateProcessAsUserA@44 +CreateProcessAsUserW = CreateProcessAsUserW@44 +CreateServiceA = CreateServiceA@52 +CreateServiceW = CreateServiceW@52 +CryptAcquireContextA = CryptAcquireContextA@20 +CryptAcquireContextW = CryptAcquireContextW@20 +CryptCreateHash = CryptCreateHash@20 +CryptDecrypt = CryptDecrypt@24 +CryptDeriveKey = CryptDeriveKey@20 +CryptDestroyHash = CryptDestroyHash@4 +CryptDestroyKey = CryptDestroyKey@4 +CryptEncrypt = CryptEncrypt@28 +CryptExportKey = CryptExportKey@24 +CryptGenKey = CryptGenKey@16 +CryptGenRandom = CryptGenRandom@12 +CryptGetHashParam = CryptGetHashParam@20 +CryptGetKeyParam = CryptGetKeyParam@20 +CryptGetProvParam = CryptGetProvParam@20 +CryptGetUserKey = CryptGetUserKey@12 +CryptHashData = CryptHashData@16 +CryptHashSessionKey = CryptHashSessionKey@12 +CryptImportKey = CryptImportKey@24 +CryptReleaseContext = CryptReleaseContext@8 +CryptSetHashParam = CryptSetHashParam@16 +CryptSetKeyParam = CryptSetKeyParam@16 +CryptSetProvParam = CryptSetProvParam@16 +CryptSetProviderA = CryptSetProviderA@8 +CryptSetProviderW = CryptSetProviderW@8 +CryptSignHashA = CryptSignHashA@24 +CryptSignHashW = CryptSignHashW@24 +CryptVerifySignatureA = CryptVerifySignatureA@24 +CryptVerifySignatureW = CryptVerifySignatureW@24 +DeleteAce = DeleteAce@8 +DeleteService = DeleteService@4 +DenyAccessRightsA = +DenyAccessRightsW = +DeregisterEventSource = DeregisterEventSource@4 +DestroyPrivateObjectSecurity = DestroyPrivateObjectSecurity@4 +DuplicateToken = DuplicateToken@12 +DuplicateTokenEx = DuplicateTokenEx@24 +ElfBackupEventLogFileA = ElfBackupEventLogFileA@8 +ElfBackupEventLogFileW = ElfBackupEventLogFileW@8 +ElfChangeNotify = ElfChangeNotify@8 +ElfClearEventLogFileA = ElfClearEventLogFileA@8 +ElfClearEventLogFileW = ElfClearEventLogFileW@8 +ElfCloseEventLog = ElfCloseEventLog@4 +ElfDeregisterEventSource = ElfDeregisterEventSource@4 +ElfNumberOfRecords = ElfNumberOfRecords@8 +ElfOldestRecord = ElfOldestRecord@8 +ElfOpenBackupEventLogA = ElfOpenBackupEventLogA@12 +ElfOpenBackupEventLogW = ElfOpenBackupEventLogW@12 +ElfOpenEventLogA = ElfOpenEventLogA@12 +ElfOpenEventLogW = ElfOpenEventLogW@12 +ElfReadEventLogA = ElfReadEventLogA@28 +ElfReadEventLogW = ElfReadEventLogW@28 +ElfRegisterEventSourceA = ElfRegisterEventSourceA@12 +ElfRegisterEventSourceW = ElfRegisterEventSourceW@12 +ElfReportEventA = ElfReportEventA@48 +ElfReportEventW = ElfReportEventW@48 +EnumDependentServicesA = EnumDependentServicesA@24 +EnumDependentServicesW = EnumDependentServicesW@24 +EnumServiceGroupW = +EnumServicesStatusA = EnumServicesStatusA@32 +EnumServicesStatusW = EnumServicesStatusW@32 +EqualPrefixSid = EqualPrefixSid@8 +EqualSid = EqualSid@8 +FindFirstFreeAce = FindFirstFreeAce@8 +FreeSid = FreeSid@4 +GetAce = GetAce@12 +GetAclInformation = GetAclInformation@16 +GetAuditedPermissionsFromAclA = +GetAuditedPermissionsFromAclW = +GetAuditedPermissionsFromSDA = +GetAuditedPermissionsFromSDW = +GetCurrentHwProfileA = +GetCurrentHwProfileW = +GetEffectiveAccessRightsA = +GetEffectiveAccessRightsW = +GetEffectiveRightsFromAclA = +GetEffectiveRightsFromAclW = +GetEffectiveRightsFromSDA = +GetEffectiveRightsFromSDW = +GetExplicitAccessRightsA = +GetExplicitAccessRightsW = +GetExplicitEntriesFromAclA = +GetExplicitEntriesFromAclW = +GetFileSecurityA = GetFileSecurityA@20 +GetFileSecurityW = GetFileSecurityW@20 +GetKernelObjectSecurity = GetKernelObjectSecurity@20 +GetLengthSid = GetLengthSid@4 +GetMultipleTrusteeA = +GetMultipleTrusteeOperationA = +GetMultipleTrusteeOperationW = +GetMultipleTrusteeW = +GetNamedSecurityInfoA = GetNamedSecurityInfoA@32 +GetNamedSecurityInfoW = GetNamedSecurityInfoW@32 +GetNumberOfEventLogRecords = GetNumberOfEventLogRecords@8 +GetOldestEventLogRecord = GetOldestEventLogRecord@8 +GetPrivateObjectSecurity = GetPrivateObjectSecurity@20 +GetSecurityDescriptorControl = GetSecurityDescriptorControl@12 +GetSecurityDescriptorDacl = GetSecurityDescriptorDacl@16 +GetSecurityDescriptorGroup = GetSecurityDescriptorGroup@12 +GetSecurityDescriptorLength = GetSecurityDescriptorLength@4 +GetSecurityDescriptorOwner = GetSecurityDescriptorOwner@12 +GetSecurityDescriptorSacl = GetSecurityDescriptorSacl@16 +GetSecurityInfo = GetSecurityInfo@32 +GetServiceDisplayNameA = GetServiceDisplayNameA@16 +GetServiceDisplayNameW = GetServiceDisplayNameW@16 +GetServiceKeyNameA = GetServiceKeyNameA@16 +GetServiceKeyNameW = GetServiceKeyNameW@16 +GetSidIdentifierAuthority = GetSidIdentifierAuthority@4 +GetSidLengthRequired = GetSidLengthRequired@4 +GetSidSubAuthority = GetSidSubAuthority@8 +GetSidSubAuthorityCount = GetSidSubAuthorityCount@4 +GetTokenInformation = GetTokenInformation@20 +GetTrusteeForm = GetTrusteeForm@4 +GetTrusteeNameA = GetTrusteeNameA@4 +GetTrusteeNameW = GetTrusteeNameW@4 +GetTrusteeTypeA = GetTrusteeTypeA@4 +GetTrusteeTypeW = GetTrusteeTypeW@4 +GetUserNameA = GetUserNameA@8 +GetUserNameW = GetUserNameW@8 +GrantAccessRightsA = +GrantAccessRightsW = +I_ScGetCurrentGroupStateW = +I_ScSetServiceBitsA = I_ScSetServiceBitsA@20 +I_ScSetServiceBitsW = I_ScSetServiceBitsW@20 +ImpersonateLoggedOnUser = ImpersonateLoggedOnUser@4 +ImpersonateNamedPipeClient = ImpersonateNamedPipeClient@4 +ImpersonateSelf = ImpersonateSelf@4 +InitializeAcl = InitializeAcl@12 +InitializeSecurityDescriptor = InitializeSecurityDescriptor@8 +InitializeSid = InitializeSid@12 +InitiateSystemShutdownA = InitiateSystemShutdownA@20 +InitiateSystemShutdownW = InitiateSystemShutdownW@20 +IsAccessPermittedA = +IsAccessPermittedW = +IsTextUnicode = IsTextUnicode@12 +IsValidAcl = IsValidAcl@4 +IsValidSecurityDescriptor = IsValidSecurityDescriptor@4 +IsValidSid = IsValidSid@4 +LockServiceDatabase = LockServiceDatabase@4 +LogonUserA = LogonUserA@24 +LogonUserW = LogonUserW@24 +LookupAccountNameA = LookupAccountNameA@28 +LookupAccountNameW = LookupAccountNameW@28 +LookupAccountSidA = LookupAccountSidA@28 +LookupAccountSidW = LookupAccountSidW@28 +LookupPrivilegeDisplayNameA = LookupPrivilegeDisplayNameA@20 +LookupPrivilegeDisplayNameW = LookupPrivilegeDisplayNameW@20 +LookupPrivilegeNameA = LookupPrivilegeNameA@16 +LookupPrivilegeNameW = LookupPrivilegeNameW@16 +LookupPrivilegeValueA = LookupPrivilegeValueA@12 +LookupPrivilegeValueW = LookupPrivilegeValueW@12 +LookupSecurityDescriptorPartsA = LookupSecurityDescriptorPartsA@28 +LookupSecurityDescriptorPartsW = LookupSecurityDescriptorPartsW@28 +LsaAddAccountRights = LsaAddAccountRights@16 +LsaAddPrivilegesToAccount = LsaAddPrivilegesToAccount@8 +LsaClearAuditLog = LsaClearAuditLog@4 +LsaClose = LsaClose@4 +LsaCreateAccount = LsaCreateAccount@16 +LsaCreateSecret = LsaCreateSecret@16 +LsaCreateTrustedDomain = LsaCreateTrustedDomain@16 +LsaDelete = LsaDelete@4 +LsaDeleteTrustedDomain = LsaDeleteTrustedDomain@8 +LsaEnumerateAccountRights = LsaEnumerateAccountRights@16 +LsaEnumerateAccounts = LsaEnumerateAccounts@20 +LsaEnumerateAccountsWithUserRight = LsaEnumerateAccountsWithUserRight@16 +LsaEnumeratePrivileges = LsaEnumeratePrivileges@20 +LsaEnumeratePrivilegesOfAccount = LsaEnumeratePrivilegesOfAccount@8 +LsaEnumerateTrustedDomains = LsaEnumerateTrustedDomains@20 +LsaFreeMemory = LsaFreeMemory@4 +LsaGetQuotasForAccount = LsaGetQuotasForAccount@8 +LsaGetSystemAccessAccount = LsaGetSystemAccessAccount@8 +LsaGetUserName = +LsaICLookupNames = LsaICLookupNames@28 +LsaICLookupSids = LsaICLookupSids@28 +LsaLookupNames = LsaLookupNames@20 +LsaLookupPrivilegeDisplayName = LsaLookupPrivilegeDisplayName@16 +LsaLookupPrivilegeName = LsaLookupPrivilegeName@12 +LsaLookupPrivilegeValue = LsaLookupPrivilegeValue@12 +LsaLookupSids = LsaLookupSids@20 +LsaNtStatusToWinError = LsaNtStatusToWinError@4 +LsaOpenAccount = LsaOpenAccount@16 +LsaOpenPolicy = LsaOpenPolicy@16 +LsaOpenSecret = LsaOpenSecret@16 +LsaOpenTrustedDomain = LsaOpenTrustedDomain@16 +LsaQueryInfoTrustedDomain = LsaQueryInfoTrustedDomain@12 +LsaQueryInformationPolicy = LsaQueryInformationPolicy@12 +LsaQuerySecret = LsaQuerySecret@20 +LsaQuerySecurityObject = LsaQuerySecurityObject@12 +LsaQueryTrustedDomainInfo = LsaQueryTrustedDomainInfo@16 +LsaRemoveAccountRights = LsaRemoveAccountRights@20 +LsaRemovePrivilegesFromAccount = LsaRemovePrivilegesFromAccount@12 +LsaRetrievePrivateData = LsaRetrievePrivateData@12 +LsaSetInformationPolicy = LsaSetInformationPolicy@12 +LsaSetInformationTrustedDomain = LsaSetInformationTrustedDomain@12 +LsaSetQuotasForAccount = LsaSetQuotasForAccount@8 +LsaSetSecret = LsaSetSecret@12 +LsaSetSecurityObject = LsaSetSecurityObject@12 +LsaSetSystemAccessAccount = LsaSetSystemAccessAccount@8 +LsaSetTrustedDomainInformation = LsaSetTrustedDomainInformation@16 +LsaStorePrivateData = LsaStorePrivateData@12 +MakeAbsoluteSD = MakeAbsoluteSD@44 +MakeSelfRelativeSD = MakeSelfRelativeSD@12 +MapGenericMask = MapGenericMask@8 +NTAccessMaskToProvAccessRights = +NotifyBootConfigStatus = NotifyBootConfigStatus@4 +NotifyChangeEventLog = NotifyChangeEventLog@8 +ObjectCloseAuditAlarmA = ObjectCloseAuditAlarmA@12 +ObjectCloseAuditAlarmW = ObjectCloseAuditAlarmW@12 +ObjectDeleteAuditAlarmA = ObjectDeleteAuditAlarmA@12 +ObjectDeleteAuditAlarmW = ObjectDeleteAuditAlarmW@12 +ObjectOpenAuditAlarmA = ObjectOpenAuditAlarmA@48 +ObjectOpenAuditAlarmW = ObjectOpenAuditAlarmW@48 +ObjectPrivilegeAuditAlarmA = ObjectPrivilegeAuditAlarmA@24 +ObjectPrivilegeAuditAlarmW = ObjectPrivilegeAuditAlarmW@24 +OpenBackupEventLogA = OpenBackupEventLogA@8 +OpenBackupEventLogW = OpenBackupEventLogW@8 +OpenEventLogA = OpenEventLogA@8 +OpenEventLogW = OpenEventLogW@8 +OpenProcessToken = OpenProcessToken@12 +OpenSCManagerA = OpenSCManagerA@12 +OpenSCManagerW = OpenSCManagerW@12 +OpenServiceA = OpenServiceA@12 +OpenServiceW = OpenServiceW@12 +OpenThreadToken = OpenThreadToken@16 +PrivilegeCheck = PrivilegeCheck@12 +PrivilegedServiceAuditAlarmA = PrivilegedServiceAuditAlarmA@20 +PrivilegedServiceAuditAlarmW = PrivilegedServiceAuditAlarmW@20 +ProvAccessRightsToNTAccessMask = +QueryServiceConfigA = QueryServiceConfigA@16 +QueryServiceConfigW = QueryServiceConfigW@16 +QueryServiceLockStatusA = QueryServiceLockStatusA@16 +QueryServiceLockStatusW = QueryServiceLockStatusW@16 +QueryServiceObjectSecurity = QueryServiceObjectSecurity@20 +QueryServiceStatus = QueryServiceStatus@8 +QueryWindows31FilesMigration = QueryWindows31FilesMigration@4 +ReadEventLogA = ReadEventLogA@28 +ReadEventLogW = ReadEventLogW@28 +RegCloseKey = RegCloseKey@4 +RegConnectRegistryA = RegConnectRegistryA@12 +RegConnectRegistryW = RegConnectRegistryW@12 +RegCreateKeyA = RegCreateKeyA@12 +RegCreateKeyExA = RegCreateKeyExA@36 +RegCreateKeyExW = RegCreateKeyExW@36 +RegCreateKeyW = RegCreateKeyW@12 +RegDeleteKeyA = RegDeleteKeyA@8 +RegDeleteKeyW = RegDeleteKeyW@8 +RegDeleteValueA = RegDeleteValueA@8 +RegDeleteValueW = RegDeleteValueW@8 +RegEnumKeyA = RegEnumKeyA@16 +RegEnumKeyExA = RegEnumKeyExA@32 +RegEnumKeyExW = RegEnumKeyExW@32 +RegEnumKeyW = RegEnumKeyW@16 +RegEnumValueA = RegEnumValueA@32 +RegEnumValueW = RegEnumValueW@32 +RegFlushKey = RegFlushKey@4 +RegGetKeySecurity = RegGetKeySecurity@16 +RegLoadKeyA = RegLoadKeyA@12 +RegLoadKeyW = RegLoadKeyW@12 +RegNotifyChangeKeyValue = RegNotifyChangeKeyValue@20 +RegOpenKeyA = RegOpenKeyA@12 +RegOpenKeyExA = RegOpenKeyExA@20 +RegOpenKeyExW = RegOpenKeyExW@20 +RegOpenKeyW = RegOpenKeyW@12 +RegQueryInfoKeyA = RegQueryInfoKeyA@48 +RegQueryInfoKeyW = RegQueryInfoKeyW@48 +RegQueryMultipleValuesA = RegQueryMultipleValuesA@20 +RegQueryMultipleValuesW = RegQueryMultipleValuesW@20 +RegQueryValueA = RegQueryValueA@16 +RegQueryValueExA = RegQueryValueExA@24 +RegQueryValueExW = RegQueryValueExW@24 +RegQueryValueW = RegQueryValueW@16 +RegReplaceKeyA = RegReplaceKeyA@16 +RegReplaceKeyW = RegReplaceKeyW@16 +RegRestoreKeyA = RegRestoreKeyA@12 +RegRestoreKeyW = RegRestoreKeyW@12 +RegSaveKeyA = RegSaveKeyA@12 +RegSaveKeyW = RegSaveKeyW@12 +RegSetKeySecurity = RegSetKeySecurity@12 +RegSetValueA = RegSetValueA@20 +RegSetValueExA = RegSetValueExA@24 +RegSetValueExW = RegSetValueExW@24 +RegSetValueW = RegSetValueW@20 +RegUnLoadKeyA = RegUnLoadKeyA@8 +RegUnLoadKeyW = RegUnLoadKeyW@8 +RegisterEventSourceA = RegisterEventSourceA@8 +RegisterEventSourceW = RegisterEventSourceW@8 +RegisterServiceCtrlHandlerA = RegisterServiceCtrlHandlerA@8 +RegisterServiceCtrlHandlerW = RegisterServiceCtrlHandlerW@8 +ReplaceAllAccessRightsA = +ReplaceAllAccessRightsW = +ReportEventA = ReportEventA@36 +ReportEventW = ReportEventW@36 +RevertToSelf = RevertToSelf@0 +RevokeExplicitAccessRightsA = +RevokeExplicitAccessRightsW = +SetAccessRightsA = +SetAccessRightsW = +SetAclInformation = SetAclInformation@16 +SetEntriesInAclA = SetEntriesInAclA@16 +SetEntriesInAclW = SetEntriesInAclA@16 +SetFileSecurityA = SetFileSecurityA@12 +SetFileSecurityW = SetFileSecurityW@12 +SetKernelObjectSecurity = SetKernelObjectSecurity@12 +SetNamedSecurityInfoA = SetNamedSecurityInfoA@28 +SetNamedSecurityInfoW = SetNamedSecurityInfoW@28 +SetPrivateObjectSecurity = SetPrivateObjectSecurity@20 +SetSecurityDescriptorDacl = SetSecurityDescriptorDacl@16 +SetSecurityDescriptorGroup = SetSecurityDescriptorGroup@12 +SetSecurityDescriptorOwner = SetSecurityDescriptorOwner@12 +SetSecurityDescriptorSacl = SetSecurityDescriptorSacl@16 +SetSecurityInfo = SetSecurityInfo@28 +SetServiceBits = SetServiceBits@16 +SetServiceObjectSecurity = SetServiceObjectSecurity@12 +SetServiceStatus = SetServiceStatus@8 +SetThreadToken = SetThreadToken@8 +SetTokenInformation = SetTokenInformation@16 +StartServiceA = StartServiceA@12 +StartServiceCtrlDispatcherA = StartServiceCtrlDispatcherA@4 +StartServiceCtrlDispatcherW = StartServiceCtrlDispatcherW@4 +StartServiceW = StartServiceW@12 +SynchronizeWindows31FilesAndWindowsNTRegistry = SynchronizeWindows31FilesAndWindowsNTRegistry@16 +SystemFunction001 = SystemFunction001@12 +SystemFunction002 = SystemFunction002@12 +SystemFunction003 = SystemFunction003@8 +SystemFunction004 = SystemFunction004@12 +SystemFunction005 = SystemFunction005@12 +SystemFunction006 = SystemFunction006@8 +SystemFunction007 = SystemFunction007@8 +SystemFunction008 = SystemFunction008@12 +SystemFunction009 = SystemFunction009@12 +SystemFunction010 = SystemFunction010@12 +SystemFunction011 = SystemFunction011@12 +SystemFunction012 = SystemFunction012@12 +SystemFunction013 = SystemFunction013@12 +SystemFunction014 = SystemFunction014@12 +SystemFunction015 = SystemFunction015@12 +SystemFunction016 = SystemFunction016@12 +SystemFunction017 = SystemFunction017@12 +SystemFunction018 = SystemFunction018@12 +SystemFunction019 = SystemFunction019@12 +SystemFunction020 = SystemFunction020@12 +SystemFunction021 = SystemFunction021@12 +SystemFunction022 = SystemFunction022@12 +SystemFunction023 = SystemFunction023@12 +SystemFunction024 = SystemFunction024@12 +SystemFunction025 = SystemFunction025@12 +SystemFunction026 = SystemFunction026@12 +SystemFunction027 = SystemFunction027@12 +SystemFunction028 = SystemFunction028@8 +SystemFunction029 = SystemFunction029@8 +SystemFunction030 = SystemFunction030@8 +SystemFunction031 = SystemFunction031@8 +SystemFunction032 = SystemFunction032@8 +SystemFunction033 = SystemFunction033@8 +UnlockServiceDatabase = UnlockServiceDatabase@4 +WinLoadTrustProvider = WinLoadTrustProvider@4 +WinSubmitCertificate = WinSubmitCertificate@4 +WinVerifyTrust = WinVerifyTrust@12 diff --git a/reactos/lib/advapi32/advapi32.rc b/reactos/lib/advapi32/advapi32.rc new file mode 100644 index 00000000000..699e5b4cea7 --- /dev/null +++ b/reactos/lib/advapi32/advapi32.rc @@ -0,0 +1,38 @@ +#include "../../include/defines.h" +#include "../../include/reactos/resource.h" + +LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US + +VS_VERSION_INFO VERSIONINFO + FILEVERSION 0,0,13,RES_UINT_FILE_VERSION + PRODUCTVERSION 0,0,13,0 + FILEFLAGSMASK 0x3fL +#ifdef _DEBUG + FILEFLAGS 0x1L +#else + FILEFLAGS 0x0L +#endif + FILEOS 0x40004L + FILETYPE 0x2L + FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904b0" + BEGIN + VALUE "CompanyName", RES_STR_COMPANY_NAME + VALUE "FileDescription", "Advanced W32 Base API\0" + VALUE "FileVersion", "post 0.0.13\0" + VALUE "InternalName", "advapi32\0" + VALUE "LegalCopyright", RES_STR_LEGAL_COPYRIGHT + VALUE "OriginalFilename", "advapi32.dll\0" + VALUE "ProductName", RES_STR_PRODUCT_NAME + VALUE "ProductVersion", RES_STR_PRODUCT_VERSION + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x409, 1200 + END +END + diff --git a/reactos/lib/advapi32/advapi32_specs b/reactos/lib/advapi32/advapi32_specs new file mode 100644 index 00000000000..21561c2bed3 --- /dev/null +++ b/reactos/lib/advapi32/advapi32_specs @@ -0,0 +1,78 @@ +*asm: + + +*asm_final: + + +*cpp: +-remap %(cpp_cpu) %{posix:-D_POSIX_SOURCE} + +*cc1: +%(cc1_spec) + +*cc1plus: + + +*endfile: + + +*link: +%{mwindows:--subsystem windows} %{mdll:--dll -e _DllMain@12} + +*lib: + + +*libgcc: +-lgcc + +*startfile: + + +*switches_need_spaces: + + +*signed_char: +%{funsigned-char:-D__CHAR_UNSIGNED__} + +*predefines: +-Di386 -D_WIN32 -DWIN32 -D__WIN32__ -D__MINGW32__ -DWINNT -D_X86_=1 -D__STDC__=1 -D__stdcall=__attribute__((__stdcall__)) _D_stdcall=__attribute__((__stdcall__)) -D__cdecl=__attribute__((__cdecl__)) -D__declspec(x)=__attribute__((x)) -Asystem(winnt) -Acpu(i386) -Amachine(i386) + +*cross_compile: +1 + +*version: +egcs-2.91.57 + +*multilib: +. ; + +*multilib_defaults: + + +*multilib_extra: + + +*multilib_matches: + + +*linker: +collect2 + +*cpp_486: +%{!ansi:-Di486} -D__i486 -D__i486__ + +*cpp_586: +%{!ansi:-Di586 -Dpentium} -D__i586 -D__i586__ -D__pentium -D__pentium__ + +*cpp_686: +%{!ansi:-Di686 -Dpentiumpro} -D__i686 -D__i686__ -D__pentiumpro -D__pentiumpro__ + +*cpp_cpu_default: +%(cpp_586) + +*cpp_cpu: +-Acpu(i386) -Amachine(i386) %{!ansi:-Di386} -D__i386 -D__i386__ %{mcpu=i486:%(cpp_486)} %{m486:%(cpp_486)} %{mpentium:%(cpp_586)} %{mcpu=pentium:%(cpp_586)} %{mpentiumpro:%(cpp_686)} %{mcpu=pentiumpro:%(cpp_686)} %{!mcpu*:%{!m486:%{!mpentium*:%(cpp_cpu_default)}}} + +*cc1_cpu: +%{!mcpu*: %{m386:-mcpu=i386 -march=i386} %{mno-486:-mcpu=i386 -march=i386} %{m486:-mcpu=i486 -march=i486} %{mno-386:-mcpu=i486 -march=i486} %{mno-pentium:-mcpu=i486 -march=i486} %{mpentium:-mcpu=pentium} %{mno-pentiumpro:-mcpu=pentium} %{mpentiumpro:-mcpu=pentiumpro}} + diff --git a/reactos/lib/advapi32/makefile b/reactos/lib/advapi32/makefile index bb5bf2c9c25..1936a565568 100644 --- a/reactos/lib/advapi32/makefile +++ b/reactos/lib/advapi32/makefile @@ -1,19 +1,81 @@ -all: advapi32.a +# $Id: makefile,v 1.2 1999/05/19 16:43:30 ea Exp $ +# +# Makefile for ReactOS advapi32.dll +# +TARGET=advapi32 +ifneq ($(HOST),mingw32-windows) + ifneq ($(HOST),mingw32-linux) + DLLTARGET=$(TARGET).a + else + DLLTARGET=$(TARGET).dll + endif +else + DLLTARGET=$(TARGET).dll +endif -TOKEN_OBJECTS = token/access.o + +MISC_OBJECTS = misc/dllmain.o misc/shutdown.o \ + misc/sysfunc.o REGISTRY_OBJECTS = reg/reg.o -SEC_OBJECTS = sec/sec.o sec/rtlsec.o +SECURITY_OBJECTS = sec/lsa.o sec/sec.o +#SECURITY_OBJECTS = sec/lsa.o sec/rtlsec.o sec/sec.o +SERVICE_OBJECTS = service/scm.o +TOKEN_OBJECTS = token/token.o -OBJECTS = $(TOKEN_OBJECTS) $(REGISTRY_OBJECTS) $(SEC_OBJECTS) - +RESOURCE_OBJECT = advapi32.coff -advapi32.a: $(OBJECTS) - $(AR) vrcs advapi32.a $(OBJECTS) +OBJECTS = $(MISC_OBJECTS) $(REGISTRY_OBJECTS) $(SECURITY_OBJECTS) \ + $(SERVICE_OBJECTS) $(TOKEN_OBJECTS) \ + $(RESOURCE_OBJECT) -dummy: +all: $(DLLTARGET) + +$(TARGET).a: $(OBJECTS) + $(LD) -r $(OBJECTS) -o $(TARGET).a + +$(TARGET).dll: $(DLLMAIN) $(OBJECTS) $(TARGET).def + $(LD) -r $(OBJECTS) -o $(TARGET).o + $(DLLTOOL) \ + --dllname $(TARGET).dll \ + --def $(TARGET).def \ + --output-lib $(TARGET).a + $(CC) \ + $(TARGET).o \ + ../kernel32/kernel32.a \ + ../ntdll/ntdll.a \ + -specs=$(TARGET)_specs \ + -mdll \ + -o junk.tmp \ + -Wl,--base-file,base.tmp + - $(RM) junk.tmp + $(DLLTOOL) \ + --dllname $(TARGET).dll \ + --base-file base.tmp \ + --output-exp temp.exp \ + --def $(TARGET).def + - $(RM) base.tmp + $(CC) \ + $(TARGET).o + ../kernel32/kernel32.a + ../ntdll/ntdll.a \ + -specs=$(TARGET)_specs \ + -mdll \ + -o $(TARGET).dll \ + -Wl,--image-base,0x20000000 \ + -Wl,--file-alignment,0x1000 \ + -Wl,--section-alignment,0x1000 \ + -Wl,temp.exp + - $(RM) temp.exp + $(NM) --numeric-sort $(TARGET).dll > $(TARGET).sym + +$(TARGET).coff: $(TARGET).rc ../../include/reactos/resource.h + $(RC) $(TARGET).rc $(TARGET).coff + +clean: include ../../rules.mak + diff --git a/reactos/lib/advapi32/misc/dllmain.c b/reactos/lib/advapi32/misc/dllmain.c new file mode 100644 index 00000000000..7d00df9b02b --- /dev/null +++ b/reactos/lib/advapi32/misc/dllmain.c @@ -0,0 +1,23 @@ +#include +INT +STDCALL +DllMain( + PVOID hinstDll, + ULONG dwReason, + PVOID reserved + ) +{ + switch (dwReason) + { + case DLL_PROCESS_ATTACH: + break; + case DLL_THREAD_ATTACH: + break; + case DLL_THREAD_DETACH: + break; + case DLL_PROCESS_DETACH: + break; + } + return(1); +} + diff --git a/reactos/lib/advapi32/misc/shutdown.c b/reactos/lib/advapi32/misc/shutdown.c new file mode 100644 index 00000000000..f6423b908c8 --- /dev/null +++ b/reactos/lib/advapi32/misc/shutdown.c @@ -0,0 +1,164 @@ +/* $Id: shutdown.c,v 1.1 1999/05/19 16:43:30 ea Exp $ + * + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS system libraries + * FILE: lib/advapi32/misc/shutdown.c + * PURPOSE: System shutdown functions + * PROGRAMMER: Emanuele Aliberti + * UPDATE HISTORY: + * 19990413 EA created + * 19990515 EA + */ + +#include +#include + +#define USZ {0,0,0} + +/********************************************************************** + * AbortSystemShutdownW + */ +BOOL +STDCALL +AbortSystemShutdownW( + LPWSTR lpMachineName + ) +{ + NTSTATUS Status; + + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * AbortSystemShutdownA + */ +BOOL +STDCALL +AbortSystemShutdownA( + LPSTR lpMachineName + ) +{ + UNICODE_STRING MachineNameW = USZ; + NTSTATUS Status; + BOOL rv; + + Status = RtlAnsiStringToUnicodeString( + & MachineNameW, + lpMachineName, + TRUE + ); + if (STATUS_SUCCESS != Status) + { + SetLastError(RtlNtStatusToDosError(Status)); + return FALSE; + } + rv = AbortSystemShutdownW( + MachineNameW.Buffer + ); + RtlFreeUnicodeString( + & MachineNameW + ); + SetLastError(ERROR_SUCCESS); + return rv; +} + + +/********************************************************************** + * InitiateSystemShutdownW + */ +BOOL +STDCALL +InitiateSystemShutdownW( + LPWSTR lpMachineName, + LPWSTR lpMessage, + DWORD dwTimeout, + BOOL bForceAppsClosed, + BOOL bRebootAfterShutdown + ) +{ + SHUTDOWN_ACTION Action = ShutdownNoReboot; + NTSTATUS Status; + + if (lpMachineName) + { + /* remote machine shutdown not supported yet */ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; + } + if (dwTimeout) + { + } + Status = NtShutdownSystem(Action); + SetLastError(RtlNtStatusToDosError(Status)); + return FALSE; +} + + +/********************************************************************** + * InitiateSystemShutdownA + */ +BOOL +STDCALL +InitiateSystemShutdownA( + LPSTR lpMachineName, + LPSTR lpMessage, + DWORD dwTimeout, + BOOL bForceAppsClosed, + BOOL bRebootAfterShutdown + ) +{ + UNICODE_STRING MachineNameW = USZ; + UNICODE_STRING MessageW = USZ; + NTSTATUS Status; + INT LastError; + BOOL rv; + + if (lpMachineName) + { + Status = RtlAnsiStringToUnicodeString( + & MachineNameW, + lpMachineName, + TRUE + ); + if (STATUS_SUCCESS != Status) + { + SetLastError(RtlNtStatusToDosError(Status)); + return FALSE; + } + } + if (lpMessage) + { + Status = RtlAnsiStringToUnicodeString( + & MessageW, + lpMessage, + TRUE + ); + if (STATUS_SUCCESS != Status) + { + if (MachineNameW.Length) + { + RtlFreeUnicodeString(&MachineNameW); + } + SetLastError(RtlNtStatusToDosError(Status)); + return FALSE; + } + } + rv = InitiateSystemShutdownW( + MachineNameW.Buffer, + MessageW.Buffer, + dwTimeout, + bForceAppsClosed, + bRebootAfterShutdown + ); + LastError = GetLastError(); + if (MachineNameW.Length) RtlFreeUnicodeString(&MachineNameW); + if (MessageW.Length) RtlFreeUnicodeString(&MessageW); + SetLastError(LastError); + return rv; +} + + +/* EOF */ + diff --git a/reactos/lib/advapi32/misc/sysfunc.c b/reactos/lib/advapi32/misc/sysfunc.c new file mode 100644 index 00000000000..6d7bb09872a --- /dev/null +++ b/reactos/lib/advapi32/misc/sysfunc.c @@ -0,0 +1,409 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS system libraries + * FILE: lib/advapi32/misc/sysfun.c + * PURPOSE: advapi32.dll system functions (undocumented) + * PROGRAMMER: Emanuele Aliberti + * UPDATE HISTORY: + * 19990413 EA created + * 19990415 EA + */ +#include + +/********************************************************************** + * SystemFunction001 + */ +INT +STDCALL +SystemFunction001(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 1; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction002(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 2; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction003(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 3; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction004(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 4; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction005(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 5; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction006(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 6; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction007(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 7; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction008(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 8; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction009(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 9; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction010(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 10; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction011(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 11; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction012(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 12; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction013(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 13; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction014(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 14; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction015(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 15; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction016(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 16; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction017(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 17; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction018(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 18; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction019(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 19; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction020(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 20; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction021(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 21; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction022(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 22; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction023(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 23; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction024(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 24; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction025(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 25; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction026(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 26; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction027(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 27; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction028(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 28; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction029(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 29; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction030(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 30; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction031(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 31; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction032(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 32; +} + + +/********************************************************************** + * + */ +INT +STDCALL +SystemFunction033(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 33; +} + + +/* EOF */ diff --git a/reactos/lib/advapi32/sec/lsa.c b/reactos/lib/advapi32/sec/lsa.c new file mode 100644 index 00000000000..3fe5351749b --- /dev/null +++ b/reactos/lib/advapi32/sec/lsa.c @@ -0,0 +1,581 @@ +/* $Id: lsa.c,v 1.1 1999/05/19 16:43:30 ea Exp $ + * + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS system libraries + * FILE: lib/advapi32/sec/lsa.c + * PURPOSE: Local security authority functions + * PROGRAMMER: Emanuele Aliberti + * UPDATE HISTORY: + * 19990322 EA created + * 19990515 EA stubs + */ +#include +#include + + +/********************************************************************** + * LsaAddAccountRights + */ +INT +STDCALL +LsaAddAccountRights (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaAddPrivilegesToAccount + */ +INT +STDCALL +LsaAddPrivilegesToAccount (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaClearAuditLog + */ +INT +STDCALL +LsaClearAuditLog (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaClose + */ +INT +STDCALL +LsaClose (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaCreateAccount + */ +INT +STDCALL +LsaCreateAccount (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaCreateSecret + */ +INT +STDCALL +LsaCreateSecret (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaCreateTrustedDomain + */ +INT +STDCALL +LsaCreateTrustedDomain (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaDelete + */ +INT +STDCALL +LsaDelete (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaDeleteTrustedDomain + */ +INT +STDCALL +LsaDeleteTrustedDomain (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaEnumerateAccountRights + */ +INT +STDCALL +LsaEnumerateAccountRights (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaEnumerateAccounts + */ +INT +STDCALL +LsaEnumerateAccounts (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaEnumerateAccountsWithUserRight + */ +INT +STDCALL +LsaEnumerateAccountsWithUserRight (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaEnumeratePrivileges + */ +INT +STDCALL +LsaEnumeratePrivileges (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaEnumeratePrivilegesOfAccount + */ +INT +STDCALL +LsaEnumeratePrivilegesOfAccount (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaEnumerateTrustedDomains + */ +INT +STDCALL +LsaEnumerateTrustedDomains (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaFreeMemory + */ +INT +STDCALL +LsaFreeMemory (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaGetQuotasForAccount + */ +INT +STDCALL +LsaGetQuotasForAccount (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaGetSystemAccessAccount + */ +INT +STDCALL +LsaGetSystemAccessAccount (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaGetUserName + */ +INT +STDCALL +LsaGetUserName (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaICLookupNames + */ +INT +STDCALL +LsaICLookupNames (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaICLookupSids + */ +INT +STDCALL +LsaICLookupSids (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaLookupNames + */ +INT +STDCALL +LsaLookupNames (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaLookupPrivilegeDisplayName + */ +INT +STDCALL +LsaLookupPrivilegeDisplayName (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaLookupPrivilegeName + */ +INT +STDCALL +LsaLookupPrivilegeName (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaLookupPrivilegeValue + */ +INT +STDCALL +LsaLookupPrivilegeValue (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaLookupSids + */ +INT +STDCALL +LsaLookupSids (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaNtStatusToWinError + */ +INT +STDCALL +LsaNtStatusToWinError (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaOpenAccount + */ +INT +STDCALL +LsaOpenAccount (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaOpenPolicy + */ +INT +STDCALL +LsaOpenPolicy (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaOpenSecret + */ +INT +STDCALL +LsaOpenSecret (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaOpenTrustedDomain + */ +INT +STDCALL +LsaOpenTrustedDomain (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaQueryInfoTrustedDomain + */ +INT +STDCALL +LsaQueryInfoTrustedDomain (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaQueryInformationPolicy + */ +INT +STDCALL +LsaQueryInformationPolicy (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaQuerySecret + */ +INT +STDCALL +LsaQuerySecret (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaQuerySecurityObject + */ +INT +STDCALL +LsaQuerySecurityObject (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaQueryTrustedDomainInfo + */ +INT +STDCALL +LsaQueryTrustedDomainInfo (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaRemoveAccountRights + */ +INT +STDCALL +LsaRemoveAccountRights (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaRemovePrivilegesFromAccount + */ +INT +STDCALL +LsaRemovePrivilegesFromAccount (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaRetrievePrivateData + */ +INT +STDCALL +LsaRetrievePrivateData (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaSetInformationPolicy + */ +INT +STDCALL +LsaSetInformationPolicy (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaSetInformationTrustedDomain + */ +INT +STDCALL +LsaSetInformationTrustedDomain (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaSetQuotasForAccount + */ +INT +STDCALL +LsaSetQuotasForAccount (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaSetSecret + */ +INT +STDCALL +LsaSetSecret (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaSetSecurityObject + */ +INT +STDCALL +LsaSetSecurityObject (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaSetSystemAccessAccount + */ +INT +STDCALL +LsaSetSystemAccessAccount (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaSetTrustedDomainInformation + */ +INT +STDCALL +LsaSetTrustedDomainInformation (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * LsaStorePrivateData + */ +INT +STDCALL +LsaStorePrivateData (VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/* EOF */ + diff --git a/reactos/lib/advapi32/service/scm.c b/reactos/lib/advapi32/service/scm.c new file mode 100644 index 00000000000..fa5ce3fbb7b --- /dev/null +++ b/reactos/lib/advapi32/service/scm.c @@ -0,0 +1,703 @@ +/* $Id: scm.c,v 1.1 1999/05/19 16:43:30 ea Exp $ + * + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS system libraries + * FILE: lib/advapi32/service/scm.c + * PURPOSE: Service control manager functions + * PROGRAMMER: Emanuele Aliberti + * UPDATE HISTORY: + * 19990413 EA created + * 19990515 EA + */ +#include + +/********************************************************************** + * ChangeServiceConfigA + */ +BOOL +STDCALL +ChangeServiceConfigA( + SC_HANDLE hService, + DWORD dwServiceType, + DWORD dwStartType, + DWORD dwErrorControl, + LPCSTR lpBinaryPathName, + LPCSTR lpLoadOrderGroup, + LPDWORD lpdwTagId, + LPCSTR lpDependencies, + LPCSTR lpServiceStartName, + LPCSTR lpPassword, + LPCSTR lpDisplayName + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * ChangeServiceConfigW + */ +BOOL +STDCALL +ChangeServiceConfigW( + SC_HANDLE hService, + DWORD dwServiceType, + DWORD dwStartType, + DWORD dwErrorControl, + LPCWSTR lpBinaryPathName, + LPCWSTR lpLoadOrderGroup, + LPDWORD lpdwTagId, + LPCWSTR lpDependencies, + LPCWSTR lpServiceStartName, + LPCWSTR lpPassword, + LPCWSTR lpDisplayName + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * CloseServiceHandle + */ +BOOL +STDCALL +CloseServiceHandle( SC_HANDLE hSCObject ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * ControlService + */ +BOOL +STDCALL +ControlService( + SC_HANDLE hService, + DWORD dwControl, + LPSERVICE_STATUS lpServiceStatus + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * CreateServiceA + */ +SC_HANDLE +STDCALL +CreateServiceA( + SC_HANDLE hSCManager, + LPCTSTR lpServiceName, + LPCTSTR lpDisplayName, + DWORD dwDesiredAccess, + DWORD dwServiceType, + DWORD dwStartType, + DWORD dwErrorControl, + LPCTSTR lpBinaryPathName, + LPCTSTR lpLoadOrderGroup, + LPDWORD lpdwTagId, + LPCTSTR lpDependencies, + LPCTSTR lpServiceStartName, + LPCTSTR lpPassword + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return NULL; +} + + +/********************************************************************** + * CreateServiceW + */ +SC_HANDLE +STDCALL +CreateServiceW( + SC_HANDLE hSCManager, + LPCWSTR lpServiceName, + LPCWSTR lpDisplayName, + DWORD dwDesiredAccess, + DWORD dwServiceType, + DWORD dwStartType, + DWORD dwErrorControl, + LPCWSTR lpBinaryPathName, + LPCWSTR lpLoadOrderGroup, + LPDWORD lpdwTagId, + LPCWSTR lpDependencies, + LPCWSTR lpServiceStartName, + LPCWSTR lpPassword + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return NULL; +} + + +/********************************************************************** + * DeleteService + */ +BOOL +STDCALL +DeleteService( SC_HANDLE hService ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * EnumDependentServicesA + */ +BOOL +STDCALL +EnumDependentServicesA( + SC_HANDLE hService, + DWORD dwServiceState, + LPENUM_SERVICE_STATUSA lpServices, + DWORD cbBufSize, + LPDWORD pcbBytesNeeded, + LPDWORD lpServicesReturned + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * EnumDependentServicesW + */ +BOOL +STDCALL +EnumDependentServicesW( + SC_HANDLE hService, + DWORD dwServiceState, + LPENUM_SERVICE_STATUSW lpServices, + DWORD cbBufSize, + LPDWORD pcbBytesNeeded, + LPDWORD lpServicesReturned + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * EnumServiceGroupW + */ +STDCALL +EnumServiceGroupW(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 1; +} + + +/********************************************************************** + * EnumServicesStatusA + */ +BOOL +STDCALL +EnumServicesStatusA( + SC_HANDLE hSCManager, + DWORD dwServiceType, + DWORD dwServiceState, + LPENUM_SERVICE_STATUSA lpServices, + DWORD cbBufSize, + LPDWORD pcbBytesNeeded, + LPDWORD lpServicesReturned, + LPDWORD lpResumeHandle + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * EnumServicesStatusExA + */ +BOOL +STDCALL +EnumServicesStatusExA(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * EnumServicesStatusExW + */ +STDCALL +EnumServicesStatusExW(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * EnumServicesStatusW + */ +BOOL +STDCALL +EnumServicesStatusW( + SC_HANDLE hSCManager, + DWORD dwServiceType, + DWORD dwServiceState, + LPENUM_SERVICE_STATUSW lpServices, + DWORD cbBufSize, + LPDWORD pcbBytesNeeded, + LPDWORD lpServicesReturned, + LPDWORD lpResumeHandle + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * GetServiceDisplayNameA + */ +BOOL +STDCALL +GetServiceDisplayNameA( + SC_HANDLE hSCManager, + LPCSTR lpServiceName, + LPSTR lpDisplayName, + LPDWORD lpcchBuffer + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * GetServiceDisplayNameW + */ +BOOL +STDCALL +GetServiceDisplayNameW( + SC_HANDLE hSCManager, + LPCWSTR lpServiceName, + LPWSTR lpDisplayName, + LPDWORD lpcchBuffer + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * GetServiceKeyNameA + */ +BOOL +STDCALL +GetServiceKeyNameA( + SC_HANDLE hSCManager, + LPCSTR lpDisplayName, + LPSTR lpServiceName, + LPDWORD lpcchBuffer + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * GetServiceKeyNameW + */ +BOOL +STDCALL +GetServiceKeyNameW( + SC_HANDLE hSCManager, + LPCWSTR lpDisplayName, + LPWSTR lpServiceName, + LPDWORD lpcchBuffer + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * I_ScSetServiceBitsA + * + * Undocumented + */ +STDCALL +I_ScSetServiceBitsA(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 1; +} + + +/********************************************************************** + * I_ScSetServiceBitsW + * + * Undocumented + */ +STDCALL +I_ScSetServiceBitsW(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 1; +} + + +/********************************************************************** + * LockServiceDatabase + */ +SC_LOCK +STDCALL +LockServiceDatabase( + SC_HANDLE hSCManager + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return NULL; +} + + +/********************************************************************** + * OpenServiceA + */ +SC_HANDLE +STDCALL +OpenServiceA( + SC_HANDLE hSCManager, + LPCSTR lpServiceName, + DWORD dwDesiredAccess + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return NULL; +} + + +/********************************************************************** + * OpenServiceW + */ +SC_HANDLE +STDCALL +OpenServiceW( + SC_HANDLE hSCManager, + LPCWSTR lpServiceName, + DWORD dwDesiredAccess + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return NULL; +} + + +/********************************************************************** + * PrivilegedServiceAuditAlarmA + */ +BOOL +STDCALL +PrivilegedServiceAuditAlarmA( + LPCSTR SubsystemName, + LPCSTR ServiceName, + HANDLE ClientToken, + PPRIVILEGE_SET Privileges, + BOOL AccessGranted + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * PrivilegedServiceAuditAlarmW + */ +BOOL +STDCALL +PrivilegedServiceAuditAlarmW( + LPCWSTR SubsystemName, + LPCWSTR ServiceName, + HANDLE ClientToken, + PPRIVILEGE_SET Privileges, + BOOL AccessGranted + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 1; +} + + +/********************************************************************** + * QueryServiceConfigA + */ +BOOL +STDCALL +QueryServiceConfigA( + SC_HANDLE hService, + LPQUERY_SERVICE_CONFIGA lpServiceConfig, + DWORD cbBufSize, + LPDWORD pcbBytesNeeded + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * QueryServiceConfigW + */ +BOOL +STDCALL +QueryServiceConfigW( + SC_HANDLE hService, + LPQUERY_SERVICE_CONFIGW lpServiceConfig, + DWORD cbBufSize, + LPDWORD pcbBytesNeeded + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * QueryServiceLockStatusA + */ +BOOL +STDCALL +QueryServiceLockStatusA( + SC_HANDLE hSCManager, + LPQUERY_SERVICE_LOCK_STATUSA lpLockStatus, + DWORD cbBufSize, + LPDWORD pcbBytesNeeded + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * QueryServiceLockStatusW + */ +BOOL +STDCALL +QueryServiceLockStatusW( + SC_HANDLE hSCManager, + LPQUERY_SERVICE_LOCK_STATUSW lpLockStatus, + DWORD cbBufSize, + LPDWORD pcbBytesNeeded + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * QueryServiceObjectSecurity + */ +BOOL +STDCALL +QueryServiceObjectSecurity( + SC_HANDLE hService, + SECURITY_INFORMATION dwSecurityInformation, + PSECURITY_DESCRIPTOR lpSecurityDescriptor, + DWORD cbBufSize, + LPDWORD pcbBytesNeeded + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * QueryServiceStatus + */ +BOOL +STDCALL +QueryServiceStatus( + SC_HANDLE hService, + LPSERVICE_STATUS lpServiceStatus + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * QueryServiceStatusEx + */ +BOOL +STDCALL +QueryServiceStatusEx(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * RegisterServiceCtrlHandlerA + */ +SERVICE_STATUS_HANDLE +STDCALL +RegisterServiceCtrlHandlerA( + LPCSTR lpServiceName, + LPHANDLER_FUNCTION lpHandlerProc + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * RegisterServiceCtrlHandlerW + */ +SERVICE_STATUS_HANDLE +STDCALL +RegisterServiceCtrlHandlerW( + LPCWSTR lpServiceName, + LPHANDLER_FUNCTION lpHandlerProc + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + + +/********************************************************************** + * SetServiceBits + */ +STDCALL +SetServiceBits(VOID) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 1; +} + + +/********************************************************************** + * SetServiceObjectSecurity + */ +BOOL +STDCALL +SetServiceObjectSecurity( + SC_HANDLE hService, + SECURITY_INFORMATION dwSecurityInformation, + PSECURITY_DESCRIPTOR lpSecurityDescriptor + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * SetServiceStatus + */ +BOOL +STDCALL +SetServiceStatus( + SERVICE_STATUS_HANDLE hServiceStatus, + LPSERVICE_STATUS lpServiceStatus + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * StartServiceA + */ +BOOL +STDCALL +StartServiceA( + SC_HANDLE hService, + DWORD dwNumServiceArgs, + LPCSTR *lpServiceArgVectors + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * StartServiceCtrlDispatcherA + */ +BOOL +STDCALL +StartServiceCtrlDispatcherA( + LPSERVICE_TABLE_ENTRYA lpServiceStartTable + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * StartServiceCtrlDispatcherW + */ +BOOL +STDCALL +StartServiceCtrlDispatcherW( + LPSERVICE_TABLE_ENTRYW lpServiceStartTable + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * StartServiceW + */ +BOOL +STDCALL +StartServiceW( + SC_HANDLE hService, + DWORD dwNumServiceArgs, + LPCWSTR *lpServiceArgVectors + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/********************************************************************** + * UnlockServiceDatabase + */ +BOOL +STDCALL +UnlockServiceDatabase( + SC_LOCK ScLock + ) +{ + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return FALSE; +} + + +/* EOF */