Hello Curl developers, Prior to release 7.86.0, I've been able to build Curl with both Schannel and OpenSSL support (using MSVC), but now get an error:
[ 66%] Building C object lib/CMakeFiles/libcurl.dir/vtls/openssl.c.obj openssl.c C:\Apache24\include\openssl/x509v3.h(181): error C2059: syntax error: '(' C:\Apache24\include\openssl/x509v3.h(188): error C2059: syntax error: '<parameter-list>' C:\Apache24\include\openssl/x509v3.h(193): error C2059: syntax error: '}' C:\Apache24\include\openssl/x509v3.h(194): error C2059: syntax error: '}' C:\Apache24\include\openssl/x509v3.h(198): error C2061: syntax error: identifier 'GENERAL_NAME' C:\Apache24\include\openssl/x509v3.h(199): error C2059: syntax error: '}' etc Line 181 of x509v3.h doesn't contain a '(' - it's part way through a struct definition. Comparing vtls/openssl.h for versions 7.85.0 and 7.86.0, there's actually a comment relating to Schannel and OpenSSL support in both, which says: /* * In an effort to avoid using 'X509 *' here, we instead use the struct * x509_st version of the type so that we can forward-declare it here without * having to include <openssl/x509v3.h>. Including that header causes name * conflicts when libcurl is built with both Schannel and OpenSSL support. */ The key issue is the 7.86.0 version of vtls/openssl.h DOES now include openssl/ssl.h which in turn includes openssl/x509v3.h. Hence we now get a name conflict with something in the Schannel code? Are you able to update the OpenSSL header file to avoid whatever conflict is occuring, in a similar manner that resulted in the comment you've previously noted? Thanks, tangent
-- Unsubscribe: https://lists.haxx.se/listinfo/curl-library Etiquette: https://curl.se/mail/etiquette.html