-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Closed
Copy link
Labels
Milestone
Description
Describe the bug
OpenSSL has changed its interfaces. Most X509 pointers are now const and ASN1_STRING types cannot have direct member access.
To Reproduce
Build Poco with OpenSSL built from latest git source.
Expected behavior
Building with no type mismatch errors.
Logs
C:\Users\build\externals\poco\Crypto\src\PKCS12Container.cpp(131,19): error C2440: 'reinterpret_cast': cannot convert from 'const unsigned char *' to 'char *' [C:\Users\build\externals\poco\output\x64\Crypto\Crypto.vcxproj]
C:\Users\build\externals\poco\Crypto\src\PKCS12Container.cpp(131,19):
Conversion loses qualifiers
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(226,16): error C2664: 'std::string Poco::Crypto::_X509_NAME_oneline_utf8(X509_NAME *)': cannot convert argument 1
from 'const X509_NAME *' to 'X509_NAME *' [C:\Users\build\externals\poco\output\x64\Crypto\Crypto.vcxproj]
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(226,60):
Conversion loses qualifiers
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(212,13):
see declaration of 'Poco::Crypto::_X509_NAME_oneline_utf8'
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(226,16):
while trying to match the argument list '(const X509_NAME *)'
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(227,17): error C2664: 'std::string Poco::Crypto::_X509_NAME_oneline_utf8(X509_NAME *)': cannot convert argument 1
from 'const X509_NAME *' to 'X509_NAME *' [C:\Users\build\externals\poco\output\x64\Crypto\Crypto.vcxproj]
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(227,62):
Conversion loses qualifiers
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(212,13):
see declaration of 'Poco::Crypto::_X509_NAME_oneline_utf8'
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(227,17):
while trying to match the argument list '(const X509_NAME *)'
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(250,24): error C2440: 'initializing': cannot convert from 'const X509_NAME *' to 'X509_NAME *' [C:\Users\build\externals\poco\output\x64\Crypto\Crypto.vcxproj]
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(250,24):
Conversion loses qualifiers
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(262,22): error C2440: 'initializing': cannot convert from 'const X509_NAME *' to 'X509_NAME *' [C:\Users\build\externals\poco\output\x64\Crypto\Crypto.vcxproj]
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(262,22):
Conversion loses qualifiers
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(300,47): error C2027: use of undefined type 'asn1_string_st' [C:\Users\build\externals\p
oco\output\x64\Crypto\Crypto.vcxproj]
C:\Users\build\externals\openssl\build\x64\OpenSSL\include\openssl\types.h(57,16):
see declaration of 'asn1_string_st'
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(302,6): error C2027: use of undefined type 'asn1_string_st' [C:\Users\build\externals\po
co\output\x64\Crypto\Crypto.vcxproj]
C:\Users\build\externals\openssl\build\x64\OpenSSL\include\openssl\types.h(57,16):
see declaration of 'asn1_string_st'
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(306,11): error C2027: use of undefined type 'asn1_string_st' [C:\Users\build\externals\p
oco\output\x64\Crypto\Crypto.vcxproj]
C:\Users\build\externals\openssl\build\x64\OpenSSL\include\openssl\types.h(57,16):
see declaration of 'asn1_string_st'
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(320,47): error C2027: use of undefined type 'asn1_string_st' [C:\Users\build\externals\p
oco\output\x64\Crypto\Crypto.vcxproj]
C:\Users\build\externals\openssl\build\x64\OpenSSL\include\openssl\types.h(57,16):
see declaration of 'asn1_string_st'
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(322,6): error C2027: use of undefined type 'asn1_string_st' [C:\Users\build\externals\po
co\output\x64\Crypto\Crypto.vcxproj]
C:\Users\build\externals\openssl\build\x64\OpenSSL\include\openssl\types.h(57,16):
see declaration of 'asn1_string_st'
C:\Users\build\externals\poco\Crypto\src\X509Certificate.cpp(326,11): error C2027: use of undefined type 'asn1_string_st' [C:\Users\build\externals\p
oco\output\x64\Crypto\Crypto.vcxproj]
C:\Users\build\externals\openssl\build\x64\OpenSSL\include\openssl\types.h(57,16):
see declaration of 'asn1_string_st'
Please add relevant environment information:
- Windows 11 or Ubuntu 24.04 with MSVC or Clang 20
- Git HEAD
- OpenSSL Git HEAD
Additional context
openssl/openssl#29117
greghudson/krb5@eb59fe8
openssl/openssl@c0f82d9
I hope to have a PR to update the interfaces in POCO soon.
Reactions are currently unavailable