Hi,

Unfortunately, I have no Visual Studio 2017 available any more. So, I had to 
upgrade the openvpn-build and openvpn to build with VS2019 first.

Tested with OpenSSL 1.1.1d and this patch is indeed required to build 
openvpn.exe.

Acked-by: Simon Rozman <si...@rozman.si>

Best regards,
Simon

On 17.10.2019, 14:27, "Lev Stipakov" <lstipa...@gmail.com> wrote:

    Since we release Windows client with OpenSSL 1.1.0
    (and will switch to 1.1.1 in the next release),
    it makes sense to use a newer version in VS build.
    
    This patch adds msvc-specific defines which imply
    that underlying OpenSSL is 1.1.x (works with 1.1.0 and 1.1.1).
    
    Also OpenSSL library names in project file are updated.
    
    Signed-off-by: Lev Stipakov <lstipa...@gmail.com>
    ---
    
    v2: clarify in comment and commit message that
        this supports 1.1.x, which is 1.1.0 and 1.1.1.
    
    
     config-msvc.h               | 37 +++++++++++++++++++++++++++++++++++++
     src/openvpn/openvpn.vcxproj |  8 ++++----
     2 files changed, 41 insertions(+), 4 deletions(-)
    
    diff --git a/config-msvc.h b/config-msvc.h
    index 45fae8b..875da4a 100644
    --- a/config-msvc.h
    +++ b/config-msvc.h
    @@ -76,6 +76,43 @@
     #define HAVE_POLL 1
     
     #define HAVE_OPENSSL_ENGINE 1
    +/* hardcode usage of OpenSSL 1.1.x */
    +#define HAVE_EVP_MD_CTX_RESET 1
    +#define HAVE_EVP_MD_CTX_FREE 1
    +#define HAVE_EVP_MD_CTX_NEW 1
    +#define HAVE_HMAC_CTX_RESET 1
    +#define HAVE_HMAC_CTX_FREE 1
    +#define HAVE_HMAC_CTX_NEW 1
    +#define HAVE_SSL_CTX_GET_DEFAULT_PASSWD_CB_USERDATA 1
    +#define HAVE_SSL_CTX_GET_DEFAULT_PASSWD_CB 1
    +#define HAVE_X509_GET0_PUBKEY 1
    +#define HAVE_X509_STORE_GET0_OBJECTS 1
    +#define HAVE_X509_OBJECT_FREE 1
    +#define HAVE_X509_OBJECT_GET_TYPE 1
    +#define HAVE_EVP_PKEY_GET0_RSA 1
    +#define HAVE_EVP_PKEY_GET0_EC_KEY 1
    +#define HAVE_EVP_PKEY_ID 1
    +#define HAVE_EVP_PKEY_GET0_DSA 1
    +#define HAVE_RSA_SET_FLAGS 1
    +#define HAVE_RSA_GET0_KEY 1
    +#define HAVE_RSA_SET0_KEY 1
    +#define HAVE_RSA_BITS 1
    +#define HAVE_DSA_GET0_PQG 1
    +#define HAVE_DSA_BITS 1
    +#define HAVE_RSA_METH_NEW 1
    +#define HAVE_RSA_METH_FREE 1
    +#define HAVE_RSA_METH_SET_PUB_ENC 1
    +#define HAVE_RSA_METH_SET_PUB_DEC 1
    +#define HAVE_RSA_METH_SET_PRIV_ENC 1
    +#define HAVE_RSA_METH_SET_PRIV_DEC 1
    +#define HAVE_RSA_METH_SET_INIT 1
    +#define HAVE_RSA_METH_SET_SIGN 1
    +#define HAVE_RSA_METH_SET_FINISH 1
    +#define HAVE_RSA_METH_SET0_APP_DATA 1
    +#define HAVE_RSA_METH_GET0_APP_DATA 1
    +#define HAVE_EC_GROUP_ORDER_BITS 1
    +#define OPENSSL_NO_EC 1
    +#define HAVE_EVP_CIPHER_CTX_RESET 1
     
     #define PATH_SEPARATOR     '\\'
     #define PATH_SEPARATOR_STR "\\"
    diff --git a/src/openvpn/openvpn.vcxproj b/src/openvpn/openvpn.vcxproj
    index 3b0ee60..4ffff2b 100644
    --- a/src/openvpn/openvpn.vcxproj
    +++ b/src/openvpn/openvpn.vcxproj
    @@ -78,7 +78,7 @@
         </ClCompile>
         <ResourceCompile />
         <Link>
    -      
<AdditionalDependencies>legacy_stdio_definitions.lib;Ncrypt.lib;libeay32.lib;ssleay32.lib;lzo2.lib;pkcs11-helper.dll.lib;gdi32.lib;ws2_32.lib;wininet.lib;crypt32.lib;iphlpapi.lib;winmm.lib;Fwpuclnt.lib;Rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
    +      
<AdditionalDependencies>legacy_stdio_definitions.lib;Ncrypt.lib;libssl.lib;libcrypto.lib;lzo2.lib;pkcs11-helper.dll.lib;gdi32.lib;ws2_32.lib;wininet.lib;crypt32.lib;iphlpapi.lib;winmm.lib;Fwpuclnt.lib;Rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
           
<AdditionalLibraryDirectories>$(OPENSSL_HOME)/lib;$(LZO_HOME)/lib;$(PKCS11H_HOME)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
           <SubSystem>Console</SubSystem>
         </Link>
    @@ -91,7 +91,7 @@
         </ClCompile>
         <ResourceCompile />
         <Link>
    -      
<AdditionalDependencies>legacy_stdio_definitions.lib;Ncrypt.lib;libeay32.lib;ssleay32.lib;lzo2.lib;pkcs11-helper.dll.lib;gdi32.lib;ws2_32.lib;wininet.lib;crypt32.lib;iphlpapi.lib;winmm.lib;Fwpuclnt.lib;Rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
    +      
<AdditionalDependencies>legacy_stdio_definitions.lib;Ncrypt.lib;libssl.lib;libcrypto.lib;lzo2.lib;pkcs11-helper.dll.lib;gdi32.lib;ws2_32.lib;wininet.lib;crypt32.lib;iphlpapi.lib;winmm.lib;Fwpuclnt.lib;Rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
           
<AdditionalLibraryDirectories>$(OPENSSL_HOME)/lib;$(LZO_HOME)/lib;$(PKCS11H_HOME)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
           <SubSystem>Console</SubSystem>
         </Link>
    @@ -104,7 +104,7 @@
         </ClCompile>
         <ResourceCompile />
         <Link>
    -      
<AdditionalDependencies>legacy_stdio_definitions.lib;Ncrypt.lib;libeay32.lib;ssleay32.lib;lzo2.lib;pkcs11-helper.dll.lib;gdi32.lib;ws2_32.lib;wininet.lib;crypt32.lib;iphlpapi.lib;winmm.lib;Fwpuclnt.lib;Rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
    +      
<AdditionalDependencies>legacy_stdio_definitions.lib;Ncrypt.lib;libssl.lib;libcrypto.lib;lzo2.lib;pkcs11-helper.dll.lib;gdi32.lib;ws2_32.lib;wininet.lib;crypt32.lib;iphlpapi.lib;winmm.lib;Fwpuclnt.lib;Rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
           
<AdditionalLibraryDirectories>$(OPENSSL_HOME)/lib;$(LZO_HOME)/lib;$(PKCS11H_HOME)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
           <SubSystem>Console</SubSystem>
         </Link>
    @@ -117,7 +117,7 @@
         </ClCompile>
         <ResourceCompile />
         <Link>
    -      
<AdditionalDependencies>legacy_stdio_definitions.lib;Ncrypt.lib;libeay32.lib;ssleay32.lib;lzo2.lib;pkcs11-helper.dll.lib;gdi32.lib;ws2_32.lib;wininet.lib;crypt32.lib;iphlpapi.lib;winmm.lib;Fwpuclnt.lib;Rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
    +      
<AdditionalDependencies>legacy_stdio_definitions.lib;Ncrypt.lib;libssl.lib;libcrypto.lib;lzo2.lib;pkcs11-helper.dll.lib;gdi32.lib;ws2_32.lib;wininet.lib;crypt32.lib;iphlpapi.lib;winmm.lib;Fwpuclnt.lib;Rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
           
<AdditionalLibraryDirectories>$(OPENSSL_HOME)/lib;$(LZO_HOME)/lib;$(PKCS11H_HOME)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
           <SubSystem>Console</SubSystem>
         </Link>
    -- 
    2.7.4
    
    
    
    _______________________________________________
    Openvpn-devel mailing list
    Openvpn-devel@lists.sourceforge.net
    https://lists.sourceforge.net/lists/listinfo/openvpn-devel
    

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
Openvpn-devel mailing list
Openvpn-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to