Git 2.54.0-rc0 Breaks on OpenSSL 3.0
3 messages between Apr 5, 2026 and Apr 6, 2026, from rsbecker@nexbridge.com, René Scharfe.
Plain Markdown or JSON for tools and agents.
rsbecker@nexbridge.comApr 5, 2026, 19:05 UTC on loreSadly, OpenSSL 3.0 is still out in the wild for those who have extended support contracts with OpenSSL. The following errors happen using OpenSSL 3.0 when built with c99:
"/home/jenkinsbuild/.jenkins/workspace/Git_Pipeline/imap-send.c", line 274:
error(252):
argument of type "const X509_NAME_ENTRY *" is incompatible with
parameter of type "X509_NAME_ENTRY *" (aka "struct
X509_name_entry_st
*")
ASN1_STRING_get0_data(cname),
hostname);
^
"/home/jenkinsbuild/.jenkins/workspace/Git_Pipeline/imap-send.c", line 279:
error(114):
identifier "ASN1_STRING_get0_data" is undefined
Sincerely, Randall
-- Brief whoami: NonStop&UNIX developer since approximately UNIX(421664400) NonStop(211288444200000000) -- In real life, I talk too much.
Re: Git 2.54.0-rc0 Breaks on OpenSSL 3.0
On 4/5/26 9:05 PM, rsbecker@nexbridge.com wrote:
> Sadly, OpenSSL 3.0 is still out in the wild for those who have extended
> support contracts with OpenSSL.
https://openssl-library.org/policies/releasestrat/index.html says "Version 3.0 will be supported until 2026-09-07 (LTS)".
Show 9 quoted lines
> The following errors happen using OpenSSL
> 3.0 when built with c99:
>
> "/home/jenkinsbuild/.jenkins/workspace/Git_Pipeline/imap-send.c", line 274:
> error(252):
> argument of type "const X509_NAME_ENTRY *" is incompatible with
> parameter of type "X509_NAME_ENTRY *" (aka "struct
> X509_name_entry_st
> *")
This line contains:
(cname = X509_NAME_ENTRY_get_data(cname_entry)) == NULL)
https://docs.openssl.org/3.0/man3/X509_NAME_ENTRY_get_object/ gives its prototype as:
ASN1_STRING *X509_NAME_ENTRY_get_data(const X509_NAME_ENTRY *ne);
This has been matching the code since OpenSSL commit 9f5466b9b8 (Constify some X509_NAME, ASN1 printing code, 2016-07-07). git describe calls this commit OpenSSL_1_1_0-pre6-232-g9f5466b9b8.
Show 6 quoted lines
> ASN1_STRING_get0_data(cname),
> hostname);
> ^
> "/home/jenkinsbuild/.jenkins/workspace/Git_Pipeline/imap-send.c", line 279:
> error(114):
> identifier "ASN1_STRING_get0_data" is undefined
https://docs.openssl.org/3.0/man3/ASN1_STRING_length/ gives its prototype as:
const unsigned char *ASN1_STRING_get0_data(const ASN1_STRING *x);
It was added by OpenSSL commit 17ebf85abd (Add ASN1_STRING_get0_data(), deprecate ASN1_STRING_data()., 2016-08-16). git describe calls this commit OpenSSL_1_1_0-pre6-119-g17ebf85abd.
Are you sure you use OpenSSL 3.0? The errors suggest it's a rather older version (before 1.1.1).
René
RE: Git 2.54.0-rc0 Breaks on OpenSSL 3.0
On April 6, 2026 3:07 AM, René Scharfe wrote:
Show 48 quoted lines
>On 4/5/26 9:05 PM, rsbecker@nexbridge.com wrote:
>> Sadly, OpenSSL 3.0 is still out in the wild for those who have extended
>> support contracts with OpenSSL.
>
>https://openssl-library.org/policies/releasestrat/index.html says
>"Version 3.0 will be supported until 2026-09-07 (LTS)".
>
>> The following errors happen using OpenSSL
>> 3.0 when built with c99:
>>
>> "/home/jenkinsbuild/.jenkins/workspace/Git_Pipeline/imap-send.c", line 274:
>> error(252):
>> argument of type "const X509_NAME_ENTRY *" is incompatible with
>> parameter of type "X509_NAME_ENTRY *" (aka "struct
>> X509_name_entry_st
>> *")
>
>This line contains:
>
> (cname = X509_NAME_ENTRY_get_data(cname_entry)) == NULL)
>
>https://docs.openssl.org/3.0/man3/X509_NAME_ENTRY_get_object/ gives its
>prototype as:
>
>ASN1_STRING *X509_NAME_ENTRY_get_data(const X509_NAME_ENTRY *ne);
>
>This has been matching the code since OpenSSL commit 9f5466b9b8
>(Constify some X509_NAME, ASN1 printing code, 2016-07-07). git describe
>calls this commit OpenSSL_1_1_0-pre6-232-g9f5466b9b8.
>
>> ASN1_STRING_get0_data(cname),
>> hostname);
>> ^
>> "/home/jenkinsbuild/.jenkins/workspace/Git_Pipeline/imap-send.c", line 279:
>> error(114):
>> identifier "ASN1_STRING_get0_data" is undefined
>
>https://docs.openssl.org/3.0/man3/ASN1_STRING_length/ gives its
>prototype as:
>
>const unsigned char *ASN1_STRING_get0_data(const ASN1_STRING *x);
>
>It was added by OpenSSL commit 17ebf85abd (Add ASN1_STRING_get0_data(),
>deprecate ASN1_STRING_data()., 2016-08-16). git describe calls this
>commit OpenSSL_1_1_0-pre6-119-g17ebf85abd.
>
>Are you sure you use OpenSSL 3.0? The errors suggest it's a rather
>older version (before 1.1.1).
Thanks Rene. Operator (me) error here. This was on the 1.0.2w build. We are disabling that build now so that it will not get reported again.
Regards and thanks, Randall