[openssl-users] What to do with deprecation errors
Skip Carter
skip at taygeta.com
Fri Oct 19 23:54:24 UTC 2018
On Fri, 2018-10-19 at 22:54 +0100, Matt Caswell wrote:
>
>
> It looks like its not picking up the definition of the
> DEPRECATEDIN_1_2_0 macro for some reason.
>
> That macro should be defined in opensslconf.h (which is included from
> ec.h), and looks like this:
>
> /*
> * Do not deprecate things to be deprecated in version 1.2.0 before
> the
> * OpenSSL version number matches.
> */
> #if OPENSSL_VERSION_NUMBER < 0x10200000L
> # define DEPRECATEDIN_1_2_0(f) f;
> #elif OPENSSL_API_COMPAT < 0x10200000L
> # define DEPRECATEDIN_1_2_0(f) DECLARE_DEPRECATED(f)
> #else
> # define DEPRECATEDIN_1_2_0(f)
> #endif
>
> And where OPENSSL_VERSION_NUMBER is declared in opensslv.h (which is
> included from opensslconf.h). Since 1.1.1 is less than 1.2.0, the
> first
> definition of DEPRECATEDIN_1_2_0 should apply, i.e. this macro should
> effectively be ignored and the parameter should be processed just
> like
> any other function declaration.
>
> So do you have an opensslconf.h? And does it have that macro defined
> in
> it? My theory is that somehow or other you are picking up an old
> version
> of that header (maybe the system version) which doesn't have the
> macro
> defined.
>
> Matt
>
I found:
opensslv.h:# define OPENSSL_VERSION_NUMBER 0x1010100fL
Also to be sure my compilation environment isn't doing anything funky:
#include <stdio.h>
#include <openssl/opensslv.h>
int main(void)
{
printf("OPENSSL_VERSION_NUMBER %lx\n",OPENSSL_VERSION_NUMBER);
return 0;
}
gave me the same thing.
--
Skip Carter
Taygeta Scientific Inc.
More information about the openssl-users
mailing list