Package: grpc
Version: 1.51.1-8
Severity: normal
Tags: sid
control: affects -1 src:openssl
User: [email protected]
Usertags: openssl-4.0
OpenSSL 4.0 is in experimental. This package fails to build against it:
| /build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:
In function ‘tsi_result ssl_get_x509_common_name(X509*, unsigned char**,
size_t*)’:
|
/build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:275:50:
error: invalid conversion from ‘const X509_NAME*’ {aka ‘const
X509_name_st*’} to ‘X509_NAME*’ {aka ‘X509_name_st*’} [-fpermissive]
| 275 | X509_NAME* subject_name = X509_get_subject_name(cert);
| | ~~~~~~~~~~~~~~~~~~~~~^~~~~~
| | |
| | const X509_NAME*
{aka const X509_name_st*}
|
/build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:287:42:
error: invalid conversion from ‘const X509_NAME_ENTRY*’ {aka ‘const
X509_name_entry_st*’} to ‘X509_NAME_ENTRY*’ {aka
‘X509_name_entry_st*’} [-fpermissive]
| 287 | common_name_entry = X509_NAME_get_entry(subject_name,
common_name_index);
| |
~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| | |
| | const X509_NAME_ENTRY* {aka
const X509_name_entry_st*}
|
/build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:292:46:
error: invalid conversion from ‘const ASN1_STRING*’ {aka ‘const
asn1_string_st*’} to ‘ASN1_STRING*’ {aka ‘asn1_string_st*’}
[-fpermissive]
| 292 | common_name_asn1 = X509_NAME_ENTRY_get_data(common_name_entry);
| | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
| | |
| | const ASN1_STRING* {aka
const asn1_string_st*}
| /build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:
In function ‘tsi_result peer_property_from_x509_subject(X509*,
tsi_peer_property*)’:
|
/build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:333:50:
error: invalid conversion from ‘const X509_NAME*’ {aka ‘const
X509_name_st*’} to ‘X509_NAME*’ {aka ‘X509_name_st*’} [-fpermissive]
| 333 | X509_NAME* subject_name = X509_get_subject_name(cert);
| | ~~~~~~~~~~~~~~~~~~~~~^~~~~~
| | |
| | const X509_NAME*
{aka const X509_name_st*}
| /build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:
In function ‘tsi_result add_subject_alt_names_properties_to_peer(tsi_peer*,
GENERAL_NAMES*, size_t, int*)’:
|
/build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:422:40:
error: invalid use of incomplete type ‘ASN1_OCTET_STRING’ {aka ‘struct
asn1_string_st’}
| 422 | if (subject_alt_name->d.iPAddress->length == 4) {
| | ^~
| In file included from /usr/include/openssl/x509.h:28,
| from
/build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.h:24,
| from
/build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:21:
| /usr/include/openssl/types.h:57:16: note: forward declaration of
‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
| 57 | typedef struct asn1_string_st ASN1_INTEGER;
| | ^~~~~~~~~~~~~~
|
/build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:424:47:
error: invalid use of incomplete type ‘ASN1_OCTET_STRING’ {aka ‘struct
asn1_string_st’}
| 424 | } else if (subject_alt_name->d.iPAddress->length == 16) {
| | ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of
‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
| 57 | typedef struct asn1_string_st ASN1_INTEGER;
| | ^~~~~~~~~~~~~~
|
/build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:431:69:
error: invalid use of incomplete type ‘ASN1_OCTET_STRING’ {aka ‘struct
asn1_string_st’}
| 431 | const char* name = inet_ntop(af,
subject_alt_name->d.iPAddress->data,
| | ^~
| /usr/include/openssl/types.h:57:16: note: forward declaration of
‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
| 57 | typedef struct asn1_string_st ASN1_INTEGER;
| | ^~~~~~~~~~~~~~
| /build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:
In function ‘tsi_result x509_store_load_certs(X509_STORE*, const char*,
size_t, stack_st_X509_NAME**)’:
|
/build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:779:40:
error: invalid conversion from ‘const X509_NAME*’ {aka ‘const
X509_name_st*’} to ‘X509_NAME*’ {aka ‘X509_name_st*’} [-fpermissive]
| 779 | root_name = X509_get_subject_name(root);
| | ~~~~~~~~~~~~~~~~~~~~~^~~~~~
| | |
| | const X509_NAME* {aka const
X509_name_st*}
| /build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:
In function ‘tsi_result populate_ssl_context(SSL_CTX*, const
tsi_ssl_pem_key_cert_pair*, const char*)’:
|
/build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:865:44:
warning: ‘EC_KEY* EC_KEY_new_by_curve_name(int)’ is deprecated: Since
OpenSSL 3.0 [-Wdeprecated-declarations]
| 865 | EC_KEY* ecdh = EC_KEY_new_by_curve_name(NID_X9_62_prime256v1);
| | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
| In file included from /usr/include/openssl/x509.h:35:
| /usr/include/openssl/ec.h:1017:31: note: declared here
| 1017 | OSSL_DEPRECATEDIN_3_0 EC_KEY *EC_KEY_new_by_curve_name(int nid);
| | ^~~~~~~~~~~~~~~~~~~~~~~~
|
/build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:868:18:
warning: ‘void EC_KEY_free(EC_KEY*)’ is deprecated: Since OpenSSL 3.0
[-Wdeprecated-declarations]
| 868 | EC_KEY_free(ecdh);
| | ~~~~~~~~~~~^~~~~~
| /usr/include/openssl/ec.h:1022:28: note: declared here
| 1022 | OSSL_DEPRECATEDIN_3_0 void EC_KEY_free(EC_KEY *key);
| | ^~~~~~~~~~~
|
/build/reproducible-path/grpc-1.51.1/src/core/tsi/ssl_transport_security.cc:872:16:
warning: ‘void EC_KEY_free(EC_KEY*)’ is deprecated: Since OpenSSL 3.0
[-Wdeprecated-declarations]
| 872 | EC_KEY_free(ecdh);
| | ~~~~~~~~~~~^~~~~~
| /usr/include/openssl/ec.h:1022:28: note: declared here
| 1022 | OSSL_DEPRECATEDIN_3_0 void EC_KEY_free(EC_KEY *key);
| | ^~~~~~~~~~~
| make[4]: *** [CMakeFiles/grpc.dir/build.make:9854:
CMakeFiles/grpc.dir/src/core/tsi/ssl_transport_security.cc.o] Error 1
Full buildlog
https://breakpoint.cc/openssl-rebuild/logs-4/attempted/grpc_1.51.1-8_amd64-2026-04-19T11:02:59Z
Sebastian