Getting compilation errors after upgrade to openssl 1.1.1d, errors pointing to openssl header files

Venkata Ramaraju Vana venkataramaraju.vana at broadcom.com
Thu Feb 6 10:01:22 UTC 2020


Thanks for the suggestion Michael. We  have removed all duplicates of
"opensslconf.h" from our code stack. With those changes, we see all errors
related to "DEPRECATEDIN_1_1_0" are gone. Now, we are not seeing any errors
pointing to "bio.h". However, we have some other errors, where it points to
"x509.h and x509_vfy.h". Following are a few of the errors, I am seeing:

Error 209 error C2143: syntax error : missing ';' before '{'
xxxxx\thirdparty\openssl\include\openssl\opensslconf.h 16 1 mycrypto
Error 210 error C2447: '{' : missing function header (old-style formal
list?) xxxxxx\thirdparty\openssl\include\openssl\opensslconf.h 16 1 mycrypto
Error 179 error C2079: 'LPCSTR' uses undefined struct 'stack_st_'
xxxxxx\thirdparty\openssl\include\openssl\x509.h 77 1 mycrypto
Error 184 error C4430: missing type specifier - int assumed. Note: C++ does
not support default-int xxxxxx\thirdparty\openssl\include\openssl\x509.h 77
1 mycrypto
Error 186 error C2370: 'LPCSTR' : redefinition; different storage class
xxxxxx\thirdparty\openssl\include\openssl\x509.h 77 1 mycrypto
Error 188 error C2365: 'sk_' : redefinition; previous definition was
'function' xxxxxx\thirdparty\openssl\include\openssl\x509.h 77 1 mycrypto
Error 200 error C2065: 'X509_EXTENSION' : undeclared identifier
xxxxxx\thirdparty\openssl\include\openssl\x509.h 85 1 mycrypto
Error 213 error C4430: missing type specifier - int assumed. Note: C++ does
not support default-int
xxxxxx\thirdparty\openssl\include\openssl\x509_vfy.h 77 1 mycrypto
Error 245 error C2061: syntax error : identifier
'X509_STORE_CTX_lookup_certs_fn'
xxxxxx\thirdparty\openssl\include\openssl\x509_vfy.h 315 1 mycrypto
Error 252 error C2373: 'X509_STORE_CTX_lookup_crls_fn' : redefinition;
different type modifiers
xxxxxx\thirdparty\openssl\include\openssl\x509_vfy.h 321 1 mycrypto
Error 274 error C2377: 'ASN1_INTEGER' : redefinition; typedef cannot be
overloaded with any other symbol
xxxxxx\thirdparty\openssl\include\openssl\x509_vfy.h 386 1 mycrypto


Error in "opensslconf.h" points to 'extern "C"' statement the following
code:
#ifdef  __cplusplus
extern "C" {
#endif

Can you please suggest us to remove these errors.
Appreciate your help on this.


Regards,
Ramaraju



On Thu, Feb 6, 2020 at 12:27 AM Michael Wojcik <
Michael.Wojcik at microfocus.com> wrote:

> > From: openssl-users [mailto:openssl-users-bounces at openssl.org] On
> Behalf Of Venkata Ramaraju Vana via openssl-users
> > Sent: Wednesday, February 05, 2020 00:40
>
> > Error 300 error C3646: 'DEPRECATEDIN_1_1_0' : unknown override specifier
> xxxxxx\thirdparty\openssl\include\openssl\bio.h 689 1 xxxxx
>
> You seem to be failing to include the opensslconf.h that was created as
> part of the build process (before including bio.h, etc). opensslconf.h is
> included by many of the OpenSSL headers, but not bio.h.
>
> So either you need an explicit #include <openssl/opensslconf.h> before
> including any other OpenSSL headers; or you have one, but you're picking up
> the wrong opensslconf.h. (The latter is an easy mistake to make, as not
> everyone realizes opensslconf.h is a generated file and applications must
> include the one corresponding to the precise build they're using.)
>
> --
> Michael Wojcik
> Distinguished Engineer, Micro Focus
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mta.openssl.org/pipermail/openssl-users/attachments/20200206/bc32ad8f/attachment-0001.html>


More information about the openssl-users mailing list