New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 738816 link

Starred by 1 user

Issue metadata

Status: Started
Owner:
Last visit > 30 days ago
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug

Blocking:
issue 649672



Sign in to add a comment

Fix chromeos-base/attestation for OpenSSL 1.1

Project Member Reported by djkurtz@chromium.org, Jul 3 2017

Issue description

chromeos-base/attestation-0.0.1-r1765 fails to build with dev-libs/openssl-1.1.0f.
 
attestation is a cros_workon package. -0.0.1-r1765 corresponds to commit:
d02274ed430c4d2d3751e82130144fd63c4a981f
tpm_manager: Add proto printers for version info.

in repository src/aosp/system/tpm

The compile errors are:


attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:68:6: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:   rsa->e = BN_new();
attestation-0.0.1-r1765:      ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:69:11: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:   if (!rsa->e)
attestation-0.0.1-r1765:           ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:71:18: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:   BN_set_word(rsa->e, kWellKnownExponent);
attestation-0.0.1-r1765:                  ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:72:6: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:   rsa->n = BN_new();
attestation-0.0.1-r1765:      ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:73:11: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:   if (!rsa->n)
attestation-0.0.1-r1765:           ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:75:26: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:   if (0 == BN_hex2bn(&rsa->n, hex_modulus.c_str()))
attestation-0.0.1-r1765:                          ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:463:18: error: variable has incomplete type 'EVP_CIPHER_CTX' (aka 'evp_cipher_ctx_st')
attestation-0.0.1-r1765:   EVP_CIPHER_CTX encryption_context;
attestation-0.0.1-r1765:                  ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:90:16: note: forward declaration of 'evp_cipher_ctx_st'
attestation-0.0.1-r1765: typedef struct evp_cipher_ctx_st EVP_CIPHER_CTX;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:514:18: error: variable has incomplete type 'EVP_CIPHER_CTX' (aka 'evp_cipher_ctx_st')
attestation-0.0.1-r1765:   EVP_CIPHER_CTX decryption_context;
attestation-0.0.1-r1765:                  ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:90:16: note: forward declaration of 'evp_cipher_ctx_st'
attestation-0.0.1-r1765: typedef struct evp_cipher_ctx_st EVP_CIPHER_CTX;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:808:3: error: no matching function for call to 'X509_ALGOR_set0'
attestation-0.0.1-r1765:   X509_ALGOR_set0(spki.get()->sig_algor,
attestation-0.0.1-r1765:   ^~~~~~~~~~~~~~~
attestation-0.0.1-r1765: /usr/include/openssl/x509.h:464:5: note: candidate function not viable: no known conversion from 'X509_ALGOR' (aka 'X509_algor_st') to 'X509_ALGOR *' (aka 'X509_algor_st *') for 1st argument; take the address of the argument with &
attestation-0.0.1-r1765: int X509_ALGOR_set0(X509_ALGOR *alg, ASN1_OBJECT *aobj, int ptype,
attestation-0.0.1-r1765:     ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:861:42: error: member access into incomplete type 'x509_st'
attestation-0.0.1-r1765:       reinterpret_cast<char *>(x509.get()->cert_info->key->public_key->data),
attestation-0.0.1-r1765:                                          ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:119:16: note: forward declaration of 'x509_st'
attestation-0.0.1-r1765: typedef struct x509_st X509;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:861:44: error: expected ')'
attestation-0.0.1-r1765:       reinterpret_cast<char *>(x509.get()->cert_info->key->public_key->data),
attestation-0.0.1-r1765:                                            ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:861:31: note: to match this '('
attestation-0.0.1-r1765:       reinterpret_cast<char *>(x509.get()->cert_info->key->public_key->data),
attestation-0.0.1-r1765:                               ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:862:17: error: member access into incomplete type 'x509_st'
attestation-0.0.1-r1765:       x509.get()->cert_info->key->public_key->length);
attestation-0.0.1-r1765:                 ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:119:16: note: forward declaration of 'x509_st'
attestation-0.0.1-r1765: typedef struct x509_st X509;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:875:39: error: member access into incomplete type 'x509_st'
attestation-0.0.1-r1765:   X509_NAME_get_text_by_NID(x509.get()->cert_info->issuer,
attestation-0.0.1-r1765:                                       ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:119:16: note: forward declaration of 'x509_st'
attestation-0.0.1-r1765: typedef struct x509_st X509;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:892:60: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:   std::vector<unsigned char> modulus(BN_num_bytes(rsa.get()->n));
attestation-0.0.1-r1765:                                                            ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/crypto_utility_impl.cc:893:22: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:   BN_bn2bin(rsa.get()->n, modulus.data());
attestation-0.0.1-r1765:                      ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: 15 errors generated.
attestation-0.0.1-r1765: 
attestation-0.0.1-r1765: [25/30] CXX aosp/system/tpm/attestation/server/server_library.pkcs11_key_store.o
attestation-0.0.1-r1765: FAILED: aosp/system/tpm/attestation/server/server_library.pkcs11_key_store.o 

attestation-0.0.1-r1765: attestation/server/pkcs11_key_store.cc:249:52: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:   std::string modulus(BN_num_bytes(public_key.get()->n), 0);
attestation-0.0.1-r1765:                                                    ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/server/pkcs11_key_store.cc:251:33: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:       BN_bn2bin(public_key.get()->n,
attestation-0.0.1-r1765:                                 ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/server/pkcs11_key_store.cc:567:27: error: member access into incomplete type 'x509_st'
attestation-0.0.1-r1765:   if (!x509.get() || !x509->cert_info || !x509->cert_info->subject) {
attestation-0.0.1-r1765:                           ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:119:16: note: forward declaration of 'x509_st'
attestation-0.0.1-r1765: typedef struct x509_st X509;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/server/pkcs11_key_store.cc:572:34: error: member access into incomplete type 'x509_st'
attestation-0.0.1-r1765:   int length = i2d_X509_NAME(x509->cert_info->subject, &subject_buffer);
attestation-0.0.1-r1765:                                  ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:119:16: note: forward declaration of 'x509_st'
attestation-0.0.1-r1765: typedef struct x509_st X509;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/server/pkcs11_key_store.cc:581:30: error: member access into incomplete type 'x509_st'
attestation-0.0.1-r1765:   length = i2d_X509_NAME(x509->cert_info->issuer, &issuer_buffer);
attestation-0.0.1-r1765:                              ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:119:16: note: forward declaration of 'x509_st'
attestation-0.0.1-r1765: typedef struct x509_st X509;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/server/pkcs11_key_store.cc:591:28: error: member access into incomplete type 'x509_st'
attestation-0.0.1-r1765:       i2d_ASN1_INTEGER(x509->cert_info->serialNumber, &serial_number_buffer);
attestation-0.0.1-r1765:                            ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:119:16: note: forward declaration of 'x509_st'
attestation-0.0.1-r1765: typedef struct x509_st X509;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: 6 errors generated.
attestation-0.0.1-r1765: 
attestation-0.0.1-r1765: [26/30] CXX aosp/system/tpm/attestation/common/common_library.tpm_utility_v2.o
attestation-0.0.1-r1765: FAILED: aosp/system/tpm/attestation/common/common_library.tpm_utility_v2.o 

attestation-0.0.1-r1765: attestation/common/tpm_utility_v2.cc:48:6: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:   rsa->e = BN_new();
attestation-0.0.1-r1765:      ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/tpm_utility_v2.cc:49:11: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:   if (!rsa->e)
attestation-0.0.1-r1765:           ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/tpm_utility_v2.cc:51:18: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:   BN_set_word(rsa->e, kWellKnownExponent);
attestation-0.0.1-r1765:                  ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/tpm_utility_v2.cc:52:6: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:   rsa->n = BN_bin2bn(modulus_buffer, modulus_size, NULL);
attestation-0.0.1-r1765:      ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: attestation/common/tpm_utility_v2.cc:53:11: error: member access into incomplete type 'rsa_st'
attestation-0.0.1-r1765:   if (!rsa->n)
attestation-0.0.1-r1765:           ^
attestation-0.0.1-r1765: /usr/include/openssl/ossl_typ.h:110:16: note: forward declaration of 'rsa_st'
attestation-0.0.1-r1765: typedef struct rsa_st RSA;
attestation-0.0.1-r1765:                ^
attestation-0.0.1-r1765: 5 errors generated.

 
Components: OS>Systems>Security
CL was abandoned - is this still active?

Sign in to add a comment