[PATCH] ncrypt: Add stub dll.

Austin English austinenglish at gmail.com
Thu May 26 00:11:55 CDT 2016


On Thu, May 26, 2016 at 12:06 AM, Alex Henrie <alexhenrie24 at gmail.com> wrote:
> Cc: Austin English <austinenglish at gmail.com>
>
> Fixes https://bugs.winehq.org/show_bug.cgi?id=40687
>
> Signed-off-by: Alex Henrie <alexhenrie24 at gmail.com>
> ---
>  configure.ac            |   1 +
>  dlls/ncrypt/Makefile.in |   4 ++
>  dlls/ncrypt/main.c      |  45 ++++++++++++++++
>  dlls/ncrypt/ncrypt.spec | 138 ++++++++++++++++++++++++++++++++++++++++++++++++
>  4 files changed, 188 insertions(+)
>  create mode 100644 dlls/ncrypt/Makefile.in
>  create mode 100644 dlls/ncrypt/main.c
>  create mode 100644 dlls/ncrypt/ncrypt.spec
>
> diff --git a/configure.ac b/configure.ac
> index f25c965..e42e35d 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -3129,6 +3129,7 @@ WINE_CONFIG_DLL(msxml3,,[clean])
>  WINE_CONFIG_TEST(dlls/msxml3/tests,[clean])
>  WINE_CONFIG_DLL(msxml4,,[clean])
>  WINE_CONFIG_DLL(msxml6,,[clean])
> +WINE_CONFIG_DLL(ncrypt)
>  WINE_CONFIG_DLL(nddeapi,,[implib])
>  WINE_CONFIG_DLL(ndis.sys)
>  WINE_CONFIG_DLL(netapi32,,[implib])
> diff --git a/dlls/ncrypt/Makefile.in b/dlls/ncrypt/Makefile.in
> new file mode 100644
> index 0000000..d54b921
> --- /dev/null
> +++ b/dlls/ncrypt/Makefile.in
> @@ -0,0 +1,4 @@
> +MODULE    = ncrypt.dll
> +
> +C_SRCS = \
> +       main.c
> diff --git a/dlls/ncrypt/main.c b/dlls/ncrypt/main.c
> new file mode 100644
> index 0000000..9c09600
> --- /dev/null
> +++ b/dlls/ncrypt/main.c
> @@ -0,0 +1,45 @@
> +/*
> + * New cryptographic library (ncrypt.dll)
> + *
> + * Copyright 2016 Alex Henrie
> + *
> + * This library is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU Lesser General Public
> + * License as published by the Free Software Foundation; either
> + * version 2.1 of the License, or (at your option) any later version.
> + *
> + * This library is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
> + * Lesser General Public License for more details.
> + *
> + * You should have received a copy of the GNU Lesser General Public
> + * License along with this library; if not, write to the Free Software
> + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
> + */
> +
> +#include "config.h"
> +
> +#include <stdarg.h>
> +
> +#include "windef.h"
> +#include "winbase.h"
> +#include "wine/debug.h"
> +
> +WINE_DEFAULT_DEBUG_CHANNEL(ncrypt);
> +
> +BOOL WINAPI DllMain(HINSTANCE instance, DWORD reason, void *reserved)
> +{
> +    TRACE("(%p, %u, %p)\n", instance, reason, reserved);
> +
> +    switch (reason)
> +    {
> +        case DLL_WINE_PREATTACH:
> +            return FALSE;    /* prefer native version */
> +        case DLL_PROCESS_ATTACH:
> +            DisableThreadLibraryCalls(instance);
> +            break;
> +    }
> +
> +    return TRUE;
> +}
> diff --git a/dlls/ncrypt/ncrypt.spec b/dlls/ncrypt/ncrypt.spec
> new file mode 100644
> index 0000000..1322f1e
> --- /dev/null
> +++ b/dlls/ncrypt/ncrypt.spec
> @@ -0,0 +1,138 @@
> +@ stub BCryptAddContextFunction
> +@ stub BCryptAddContextFunctionProvider
> +@ stdcall BCryptCloseAlgorithmProvider(ptr long) bcrypt.BCryptCloseAlgorithmProvider
> +@ stub BCryptConfigureContext
> +@ stub BCryptConfigureContextFunction
> +@ stub BCryptCreateContext
> +@ stdcall BCryptCreateHash(ptr ptr ptr long ptr long long) bcrypt.BCryptCreateHash
> +@ stub BCryptDecrypt
> +@ stub BCryptDeleteContext
> +@ stub BCryptDeriveKey
> +@ stub BCryptDeriveKeyCapi
> +@ stub BCryptDeriveKeyPBKDF2
> +@ stdcall BCryptDestroyHash(ptr) bcrypt.BCryptDestroyHash
> +@ stub BCryptDestroyKey
> +@ stub BCryptDestroySecret
> +@ stub BCryptDuplicateHash
> +@ stub BCryptDuplicateKey
> +@ stub BCryptEncrypt
> +@ stdcall BCryptEnumAlgorithms(long ptr ptr long) bcrypt.BCryptEnumAlgorithms
> +@ stub BCryptEnumContextFunctionProviders
> +@ stub BCryptEnumContextFunctions
> +@ stub BCryptEnumContexts
> +@ stub BCryptEnumProviders
> +@ stub BCryptEnumRegisteredProviders
> +@ stub BCryptExportKey
> +@ stub BCryptFinalizeKeyPair
> +@ stdcall BCryptFinishHash(ptr ptr long long) bcrypt.BCryptFinishHash
> +@ stub BCryptFreeBuffer
> +@ stdcall BCryptGenRandom(ptr ptr long long) bcrypt.BCryptGenRandom
> +@ stub BCryptGenerateKeyPair
> +@ stub BCryptGenerateSymmetricKey
> +@ stdcall BCryptGetFipsAlgorithmMode(ptr) bcrypt.BCryptGetFipsAlgorithmMode
> +@ stdcall BCryptGetProperty(ptr wstr ptr long ptr long) bcrypt.BCryptGetProperty
> +@ stdcall BCryptHash(ptr ptr long ptr long ptr long) bcrypt.BCryptHash
> +@ stdcall BCryptHashData(ptr ptr long long) bcrypt.BCryptHashData
> +@ stub BCryptImportKey
> +@ stub BCryptImportKeyPair
> +@ stub BCryptKeyDerivation
> +@ stdcall BCryptOpenAlgorithmProvider(ptr wstr wstr long) bcrypt.BCryptOpenAlgorithmProvider
> +@ stub BCryptQueryContextConfiguration
> +@ stub BCryptQueryContextFunctionConfiguration
> +@ stub BCryptQueryContextFunctionProperty
> +@ stub BCryptQueryProviderRegistration
> +@ stub BCryptRegisterConfigChangeNotify
> +@ stub BCryptRegisterProvider
> +@ stub BCryptRemoveContextFunction
> +@ stub BCryptRemoveContextFunctionProvider
> +@ stub BCryptResolveProviders
> +@ stub BCryptSecretAgreement
> +@ stub BCryptSetAuditingInterface
> +@ stub BCryptSetContextFunctionProperty
> +@ stub BCryptSetProperty
> +@ stub BCryptSignHash
> +@ stub BCryptUnregisterConfigChangeNotify
> +@ stub BCryptUnregisterProvider
> +@ stub BCryptVerifySignature
> +@ stub GetIsolationServerInterface
> +@ stub GetKeyStorageInterface
> +@ stub GetSChannelInterface
> +@ stub NCryptCloseKeyProtector
> +@ stub NCryptCloseProtectionDescriptor
> +@ stub NCryptCreateClaim
> +@ stub NCryptCreatePersistedKey
> +@ stub NCryptCreateProtectionDescriptor
> +@ stub NCryptDecrypt
> +@ stub NCryptDeleteKey
> +@ stub NCryptDeriveKey
> +@ stub NCryptDuplicateKeyProtectorHandle
> +@ stub NCryptEncrypt
> +@ stub NCryptEnumAlgorithms
> +@ stub NCryptEnumKeys
> +@ stub NCryptEnumStorageProviders
> +@ stub NCryptExportKey
> +@ stub NCryptFinalizeKey
> +@ stub NCryptFreeBuffer
> +@ stub NCryptFreeObject
> +@ stub NCryptGetProperty
> +@ stub NCryptGetProtectionDescriptorInfo
> +@ stub NCryptImportKey
> +@ stub NCryptIsAlgSupported
> +@ stub NCryptIsKeyHandle
> +@ stub NCryptKeyDerivation
> +@ stub NCryptNotifyChangeKey
> +@ stub NCryptOpenKey
> +@ stub NCryptOpenKeyProtector
> +@ stub NCryptOpenStorageProvider
> +@ stub NCryptProtectKey
> +@ stub NCryptProtectSecret
> +@ stub NCryptQueryProtectionDescriptorName
> +@ stub NCryptRegisterProtectionDescriptorName
> +@ stub NCryptSecretAgreement
> +@ stub NCryptSetAuditingInterface
> +@ stub NCryptSetProperty
> +@ stub NCryptSignHash
> +@ stub NCryptStreamClose
> +@ stub NCryptStreamOpenToProtect
> +@ stub NCryptStreamOpenToUnprotect
> +@ stub NCryptStreamOpenToUnprotectEx
> +@ stub NCryptStreamUpdate
> +@ stub NCryptTranslateHandle
> +@ stub NCryptUnprotectKey
> +@ stub NCryptUnprotectSecret
> +@ stub NCryptVerifyClaim
> +@ stub NCryptVerifySignature
> +@ stub SslChangeNotify
> +@ stub SslComputeClientAuthHash
> +@ stub SslComputeEapKeyBlock
> +@ stub SslComputeFinishedHash
> +@ stub SslComputeSessionHash
> +@ stub SslCreateClientAuthHash
> +@ stub SslCreateEphemeralKey
> +@ stub SslCreateHandshakeHash
> +@ stub SslDecrementProviderReferenceCount
> +@ stub SslDecryptPacket
> +@ stub SslEncryptPacket
> +@ stub SslEnumCipherSuites
> +@ stub SslEnumEccCurves
> +@ stub SslEnumProtocolProviders
> +@ stub SslExportKey
> +@ stub SslExportKeyingMaterial
> +@ stub SslFreeBuffer
> +@ stub SslFreeObject
> +@ stub SslGenerateMasterKey
> +@ stub SslGeneratePreMasterKey
> +@ stub SslGenerateSessionKeys
> +@ stub SslGetCipherSuitePRFHashAlgorithm
> +@ stub SslGetKeyProperty
> +@ stub SslGetProviderProperty
> +@ stub SslHashHandshake
> +@ stub SslImportKey
> +@ stub SslImportMasterKey
> +@ stub SslIncrementProviderReferenceCount
> +@ stub SslLookupCipherLengths
> +@ stub SslLookupCipherSuiteInfo
> +@ stub SslOpenPrivateKey
> +@ stub SslOpenProvider
> +@ stub SslSignHash
> +@ stub SslVerifySignature
> --
> 2.8.3
>

If this forwards to another dll, you should update ./tools/make_specfiles.

-- 
-Austin



More information about the wine-patches mailing list