control: tags -1 fixed-upstream

This looks like a simple cherry-pick of a few commits from upstream.
Will try and get to it with the next upload.
>>>>> "Sebastian" == Sebastian Andrzej Siewior <[email protected]> writes:

    Sebastian> Package: krb5 Version: 1.22.1-2 Severity: normal Tags:
    Sebastian> sid control: affects -1 src:openssl User:
    Sebastian> [email protected] Usertags:
    Sebastian> openssl-4.0

    Sebastian> OpenSSL 4.0 is in experimental. This package fails to
    Sebastian> build against it:

    Sebastian> | gcc -fPIC -DSHARED -DHAVE_CONFIG_H -I../../../include
    Sebastian> -I../../../../src/include -DKRB5_DEPRECATED=1
    Sebastian> -DKRB5_PRIVATE -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2
    Sebastian> -Werror=implicit-function-declaration
    Sebastian> -ffile-prefix-map=/build/reproducible-path/krb5-1.22.1=. 
-fstack-protector-strong
    Sebastian> -fstack-clash-protection -Wformat -Werror=format-security
    Sebastian> -fcf-protection -Wall -Wcast-align -Wshadow
    Sebastian> -Wmissing-prototypes -Wno-format-zero-length -Woverflow
    Sebastian> -Wstrict-overflow -Wmissing-format-attribute
    Sebastian> -Wmissing-prototypes -Wreturn-type -Wmissing-braces
    Sebastian> -Wparentheses -Wswitch -Wunused-function -Wunused-label
    Sebastian> -Wunused-variable -Wunused-value -Wunknown-pragmas
    Sebastian> -Wsign-compare -Werror=uninitialized
    Sebastian> -Wno-maybe-uninitialized -Werror=pointer-arith
    Sebastian> -Werror=int-conversion -Werror=incompatible-pointer-types
    Sebastian> -Werror=discarded-qualifiers -Werror=implicit-int
    Sebastian> -Werror=strict-prototypes
    Sebastian> -Werror=declaration-after-statement
    Sebastian> -Werror-implicit-function-declaration -pthread -c
    Sebastian> ../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c
    Sebastian> -o pkinit_crypto_openssl.so.o && mv -f
    Sebastian> pkinit_crypto_openssl.so.o pkinit_crypto_openssl.so |
    Sebastian> ../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:
    Sebastian> In function ‘cms_signeddata_verify’: |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:2005:34:
    Sebastian> error: invalid use of incomplete typedef
    Sebastian> ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
    Sebastian> | 2005 | if (!octets || ((*octets)->type !=
    Sebastian> V_ASN1_OCTET_STRING)) { | | ^~ |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:2061:44:
    Sebastian> error: invalid use of incomplete typedef
    Sebastian> ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
    Sebastian> | 2061 | out = BIO_new_mem_buf((*octets)->data,
    Sebastian> (*octets)->length); | | ^~ |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:2061:61:
    Sebastian> error: invalid use of incomplete typedef
    Sebastian> ‘ASN1_OCTET_STRING’ {aka ‘struct asn1_string_st’}
    Sebastian> | 2061 | out = BIO_new_mem_buf((*octets)->data,
    Sebastian> (*octets)->length); | | ^~ |
    Sebastian> ../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:
    Sebastian> In function ‘crypto_retrieve_X509_sans’: |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:2347:15:
    Sebastian> error: assignment discards ‘const’ qualifier from
    Sebastian> pointer target type [-Werror=discarded-qualifiers] | 2347
    Sebastian> | if (!(ext = X509_get_ext(cert, l)) || !(ialt =
    Sebastian> X509V3_EXT_d2i(ext))) { | | ^ |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:2382:66:
    Sebastian> error: invalid use of incomplete typedef
    Sebastian> ‘ASN1_STRING’ {aka ‘struct asn1_string_st’} |
    Sebastian> 2382 | name.length =
    Sebastian> gen->d.otherName->value->value.sequence->length; | | ^~ |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:2383:72:
    Sebastian> error: invalid use of incomplete typedef
    Sebastian> ‘ASN1_STRING’ {aka ‘struct asn1_string_st’} |
    Sebastian> 2383 | name.data = (char
    Sebastian> *)gen->d.otherName->value->value.sequence->data; | | ^~ |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:2417:42:
    Sebastian> error: invalid use of incomplete typedef
    Sebastian> ‘ASN1_IA5STRING’ {aka ‘struct asn1_string_st’} |
    Sebastian> 2417 | if (memchr(gen->d.dNSName->data, '\0',
    Sebastian> gen->d.dNSName->length)) | | ^~ |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:2417:70:
    Sebastian> error: invalid use of incomplete typedef
    Sebastian> ‘ASN1_IA5STRING’ {aka ‘struct asn1_string_st’} |
    Sebastian> 2417 | if (memchr(gen->d.dNSName->data, '\0',
    Sebastian> gen->d.dNSName->length)) | | ^~ |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:2420:40:
    Sebastian> error: invalid use of incomplete typedef
    Sebastian> ‘ASN1_IA5STRING’ {aka ‘struct asn1_string_st’} |
    Sebastian> 2420 | gen->d.dNSName->data); | | ^~ |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:2422:50:
    Sebastian> error: invalid use of incomplete typedef
    Sebastian> ‘ASN1_IA5STRING’ {aka ‘struct asn1_string_st’} |
    Sebastian> 2422 | strdup((char *)gen->d.dNSName->data); | | ^~ |
    Sebastian> ../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:
    Sebastian> In function ‘get_matching_data’: |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:4864:24:
    Sebastian> error: passing argument 1 of ‘rfc2253_name’ discards
    Sebastian> ‘const’ qualifier from pointer target type
    Sebastian> [-Werror=discarded-qualifiers] | 4864 | ret =
    Sebastian> rfc2253_name(X509_get_subject_name(cert),
    Sebastian> &md->subject_dn); | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:4769:25:
    Sebastian> note: expected ‘X509_NAME *’ {aka ‘struct
    Sebastian> X509_name_st *’} but argument is of type ‘const
    Sebastian> X509_NAME *’ {aka ‘const struct X509_name_st *’} |
    Sebastian> 4769 | rfc2253_name(X509_NAME *name, char **str_out) | |
    Sebastian> ~~~~~~~~~~~^~~~ |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:4867:24:
    Sebastian> error: passing argument 1 of ‘rfc2253_name’ discards
    Sebastian> ‘const’ qualifier from pointer target type
    Sebastian> [-Werror=discarded-qualifiers] | 4867 | ret =
    Sebastian> rfc2253_name(X509_get_issuer_name(cert), &md->issuer_dn);
    Sebastian> | | ^~~~~~~~~~~~~~~~~~~~~~~~~~ |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:4769:25:
    Sebastian> note: expected ‘X509_NAME *’ {aka ‘struct
    Sebastian> X509_name_st *’} but argument is of type ‘const
    Sebastian> X509_NAME *’ {aka ‘const struct X509_name_st *’} |
    Sebastian> 4769 | rfc2253_name(X509_NAME *name, char **str_out) | |
    Sebastian> ~~~~~~~~~~~^~~~ |
    Sebastian> ../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:
    Sebastian> In function ‘create_identifiers_from_stack’: |
    Sebastian> 
../../../../src/plugins/preauth/pkinit/pkinit_crypto_openssl.c:5255:12:
    Sebastian> error: assignment discards ‘const’ qualifier from
    Sebastian> pointer target type [-Werror=discarded-qualifiers] | 5255
    Sebastian> | xn = X509_get_subject_name(x); | | ^ | cc1: some
    Sebastian> warnings being treated as errors

    Sebastian> Full buildlog
    Sebastian> 
https://breakpoint.cc/openssl-rebuild/logs-4/attempted/krb5_1.22.1-2_amd64-2026-04-19T11:07:32Z

    Sebastian> Sebastian

Reply via email to