Subject: | Compilation fails on debian/stretch (openssl 1.1.0) |
On debian/stretch systems the module does not compile anymore:
...
cc -c -I/include -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"0.08\" -DXS_VERSION=\"0.08\" -fPIC "-I/opt/perl-5.22.2/lib/5.22.2/x86_64-linux/CORE" Keyczar.c
./xs/openssl/DsaPublicKeyEngine.xst: In function ‘XS_Crypt__Keyczar__DsaPublicKeyEngine_new’:
./xs/openssl/DsaPublicKeyEngine.xst:26:9: error: dereferencing pointer to incomplete type ‘DSA {aka struct dsa_st}’
dsa->p = BN_bin2bn((const unsigned char *)in, l, NULL);
^~
./xs/openssl/DsaPrivateKeyEngine.xst: In function ‘XS_Crypt__Keyczar__DsaPrivateKeyEngine_generate’:
./xs/openssl/DsaPrivateKeyEngine.xst:104:6: warning: ‘DSA_generate_parameters’ is deprecated [-Wdeprecated-declarations]
dsa = DSA_generate_parameters(size, NULL, 0, NULL, NULL, NULL, NULL);
^~~
In file included from /usr/include/openssl/dh.h:13:0,
from /usr/include/openssl/dsa.h:31,
from xs/openssl.h:14,
from Keyczar.xs:5:
/usr/include/openssl/dsa.h:122:1: note: declared here
DEPRECATEDIN_0_9_8(DSA *DSA_generate_parameters(int bits,
^
./xs/openssl/RsaPublicKeyEngine.xst: In function ‘XS_Crypt__Keyczar__RsaPublicKeyEngine_new’:
./xs/openssl/RsaPublicKeyEngine.xst:23:9: error: dereferencing pointer to incomplete type ‘RSA {aka struct rsa_st}’
rsa->n = BN_bin2bn((const unsigned char *)in, l, NULL);
^~
... (etc.) ...