OpenSC / pkcs11-helper

Library that simplifies the interaction with PKCS#11 providers for end-user applications using a simple API and optional OpenSSL engine
Other
65 stars 43 forks source link

Build failure with openssl 1.1.1a #19

Closed Keruspe closed 5 years ago

Keruspe commented 5 years ago
pkcs11h-openssl.c:92:13: error: field 'rsa' has incomplete type
  RSA_METHOD rsa;
             ^~~
pkcs11h-openssl.c:96:13: error: field 'dsa' has incomplete type
  DSA_METHOD dsa;
             ^~~
pkcs11h-openssl.c: In function '__pkcs11h_openssl_session_setRSA':
pkcs11h-openssl.c:406:5: error: dereferencing pointer to incomplete type 'RSA' {aka 'struct rsa_st'}
  rsa->flags |= RSA_FLAG_SIGN_VER;
     ^~
libtool: compile:  x86_64-pc-linux-gnu-cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -march=native -pipe -O2 -march=native -pipe -O2 -c pkcs11h-data.c -o pkcs11h-data.o >/dev/null 2>&1
libtool: compile:  x86_64-pc-linux-gnu-cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -march=native -pipe -O2 -march=native -pipe -O2 -c pkcs11h-certificate.c -o pkcs11h-certificate.o >/dev/null 2>&1
pkcs11h-openssl.c:406:16: error: 'RSA_FLAG_SIGN_VER' undeclared (first use in this function); did you mean 'RSA_FLAG_EXT_PKEY'?
  rsa->flags |= RSA_FLAG_SIGN_VER;
                ^~~~~~~~~~~~~~~~~
                RSA_FLAG_EXT_PKEY
pkcs11h-openssl.c:406:16: note: each undeclared identifier is reported only once for each function it appears in
pkcs11h-openssl.c: In function '__pkcs11h_openssl_dsa_do_sign':
pkcs11h-openssl.c:520:42: error: dereferencing pointer to incomplete type 'DSA_SIG' {aka 'struct DSA_SIG_st'}
  if (BN_bin2bn (&sigbuf[0], siglen/2, sig->r) == NULL) {
                                          ^~
pkcs11h-openssl.c: In function '_pkcs11h_openssl_initialize':
pkcs11h-openssl.c:774:69: error: invalid application of 'sizeof' to incomplete type 'RSA_METHOD' {aka 'struct rsa_meth_st'}
  memmove (&__openssl_methods.rsa, RSA_get_default_method (), sizeof(RSA_METHOD));
                                                                     ^~~~~~~~~~
In file included from /usr/x86_64-pc-linux-gnu/include/openssl/x509.h:25,
                 from ../include/pkcs11-helper-1.0/pkcs11h-openssl.h:70,
                 from pkcs11h-openssl.c:56:
pkcs11h-openssl.c:783:3: warning: passing argument 5 of 'CRYPTO_get_ex_new_index' from incompatible pointer type [-Wincompatible-pointer-types]
   __pkcs11h_openssl_ex_data_dup,
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/x86_64-pc-linux-gnu/include/openssl/buffer.h:15,
                 from /usr/x86_64-pc-linux-gnu/include/openssl/x509.h:17,
                 from ../include/pkcs11-helper-1.0/pkcs11h-openssl.h:70,
                 from pkcs11h-openssl.c:56:
/usr/x86_64-pc-linux-gnu/include/openssl/crypto.h:178:69: note: expected 'int (*)(CRYPTO_EX_DATA *, const CRYPTO_EX_DATA *, void *, int,  long int,  void *)' {aka 'int (*)(struct crypto_ex_data_st *, const struct crypto_ex_data_st *, void *, int,  long int,  void *)'} but argument is of type 'int (*)(CRYPTO_EX_DATA *, CRYPTO_EX_DATA *, void *, int,  long int,  void *)' {aka 'int (*)(struct crypto_ex_data_st *, struct crypto_ex_data_st *, void *, int,  long int,  void *)'}
                             CRYPTO_EX_new *new_func, CRYPTO_EX_dup *dup_func,
                                                      ~~~~~~~~~~~~~~~^~~~~~~~
pkcs11h-openssl.c:788:69: error: invalid application of 'sizeof' to incomplete type 'DSA_METHOD' {aka 'struct dsa_method'}
  memmove (&__openssl_methods.dsa, DSA_get_default_method (), sizeof(DSA_METHOD));
                                                                     ^~~~~~~~~~
In file included from /usr/x86_64-pc-linux-gnu/include/openssl/x509.h:26,
                 from ../include/pkcs11-helper-1.0/pkcs11h-openssl.h:70,
                 from pkcs11h-openssl.c:56:
pkcs11h-openssl.c:795:3: warning: passing argument 5 of 'CRYPTO_get_ex_new_index' from incompatible pointer type [-Wincompatible-pointer-types]
   __pkcs11h_openssl_ex_data_dup,
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/x86_64-pc-linux-gnu/include/openssl/buffer.h:15,
                 from /usr/x86_64-pc-linux-gnu/include/openssl/x509.h:17,
                 from ../include/pkcs11-helper-1.0/pkcs11h-openssl.h:70,
                 from pkcs11h-openssl.c:56:
/usr/x86_64-pc-linux-gnu/include/openssl/crypto.h:178:69: note: expected 'int (*)(CRYPTO_EX_DATA *, const CRYPTO_EX_DATA *, void *, int,  long int,  void *)' {aka 'int (*)(struct crypto_ex_data_st *, const struct crypto_ex_data_st *, void *, int,  long int,  void *)'} but argument is of type 'int (*)(CRYPTO_EX_DATA *, CRYPTO_EX_DATA *, void *, int,  long int,  void *)' {aka 'int (*)(struct crypto_ex_data_st *, struct crypto_ex_data_st *, void *, int,  long int,  void *)'}
                             CRYPTO_EX_new *new_func, CRYPTO_EX_dup *dup_func,
                                                      ~~~~~~~~~~~~~~~^~~~~~~~
pkcs11h-openssl.c: In function 'pkcs11h_openssl_session_getRSA':
pkcs11h-openssl.c:1059:9: error: dereferencing pointer to incomplete type 'EVP_PKEY' {aka 'struct evp_pkey_st'}
  if (evp->type != EVP_PKEY_RSA) {
         ^~
make[3]: *** [Makefile:587: pkcs11h-openssl.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
libtool: compile:  x86_64-pc-linux-gnu-cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -march=native -pipe -O2 -march=native -pipe -O2 -c pkcs11h-core.c -o pkcs11h-core.o >/dev/null 2>&1

Error:
  * In program cave perform install --hooks --managed-output --output-exclusivity with-others =dev-libs/pkcs11-helper-1.25.1:0::arbor --destination installed --x-of-y 1 of 1:
  * When installing 'dev-libs/pkcs11-helper-1.25.1:0::arbor':
  * When running an ebuild command on 'dev-libs/pkcs11-helper-1.25.1:0::arbor':
  * Install failed for 'dev-libs/pkcs11-helper-1.25.1:0::arbor' (paludis::ActionFailedError)

make[3]: Leaving directory '/var/tmp/paludis/build/dev-libs-pkcs11-helper-1.25.1/work/pkcs11-helper-1.25.1/lib'
make[2]: Leaving directory '/var/tmp/paludis/build/dev-libs-pkcs11-helper-1.25.1/work/pkcs11-helper-1.25.1/lib'
make[1]: Leaving directory '/var/tmp/paludis/build/dev-libs-pkcs11-helper-1.25.1/work/pkcs11-helper-1.25.1'
make[2]: *** [Makefile:466: all] Error 2
make[1]: *** [Makefile:537: all-recursive] Error 1
make: *** [Makefile:445: all] Error 2
Keruspe commented 5 years ago

NVM, I thought I was trying 1.25.1 but I clearly wasn't.