From: Beat Bolli Date: Mon, 14 Sep 2026 09:10:36 GMT Subject: Re: [PATCH 1/3] imap-send: prepare for OpenSSL 4.1 Message-ID: <872286d0-7786-46cc-b26f-16f6d487e608@drbeat.li> In-Reply-To: Hi Patrick On 08.09.2026 10:26, Patrick Steinhardt wrote: > On Mon, Sep 07, 2026 at 11:12:08PM +0200, Beat Bolli wrote: >> OpenSSL master (to be v4.1 after the release) renamed the function >> ASN1_STRING_length() to ASN1_STRING_get_length(). Map the new name to >> the old one if we're compiling with a pre-4.1 version. > > I can see [1] that the new functions indeed exist now. But it doesn't > say anything about the old functions, they still exist and don't seem to > be deprecated. So why do we even have to switch to the new function? > The very page you give below contains this text: ---- 8< ---- The following functions have been deprecated since OpenSSL 4.1, and can be hidden entirely by defining OPENSSL_API_COMPAT with a suitable version value, see openssl_user_macros(7): int ASN1_STRING_set(ASN1_STRING *str, const void *data, int len); int ASN1_STRING_length(ASN1_STRING *x); ---- 8< ---- We also don't define any compatibility macros for OpenSSL, and the build failed because of the deprecation warning that was turned into an error because of DEVELOPER=1. So I still think this patch is needed. Beat > [1]: https://docs.openssl.org/master/man3/ASN1_STRING_length/