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

Reply via email to