OPENSSL_VERSION_NUMBER gone in openssl v3.2.2, deprecated when, replaced with what?

14 views
Skip to first unread message

Graham Leggett

unread,
Sep 1, 2024, 4:15:19 AM9/1/24
to OpenSSL Users
Hi all,

APR no longer builds on Fedora because the define OPENSSL_VERSION_NUMBER is now gone.

What I'm not finding is a clear deprecation notice, or a notice about what replaced it. Github has oblique references to removal of the define, and there are discussions about changing how version numbers work, both GitHub search and google search are failing me.

My questions are:

- What replaced OPENSSL_VERSION_NUMBER?
- In what version was OPENSSL_VERSION_NUMBER replaced?

This forest of ifdefs needs to be updated and kept backwards compatible:

https://github.com/apache/apr/blob/trunk/crypto/apr_crypto_openssl.c#L47

Regards,
Graham
--

Viktor Dukhovni

unread,
Sep 1, 2024, 4:25:27 AM9/1/24
to openss...@openssl.org
On Sun, Sep 01, 2024 at 10:15:03AM +0200, 'Graham Leggett' via openssl-users wrote:

> APR no longer builds on Fedora because the define OPENSSL_VERSION_NUMBER is now gone.

It is NOT gone from upstream OpenSSL:

$ git grep -hwC10 OPENSSL_VERSION_NUMBER o/openssl-3.2 -- include/openssl/opensslv.h.in
* These strings are defined separately to allow them to be parsable.
*/
# define OPENSSL_RELEASE_DATE "{- $config{release_date} -}"

/*
* SECTION 4: BACKWARD COMPATIBILITY
*/

# define OPENSSL_VERSION_TEXT "OpenSSL {- "$config{full_version} $config{release_date}" -}"

/* Synthesize OPENSSL_VERSION_NUMBER with the layout 0xMNN00PPSL */
# ifdef OPENSSL_VERSION_PRE_RELEASE
# define _OPENSSL_VERSION_PRE_RELEASE 0x0L
# else
# define _OPENSSL_VERSION_PRE_RELEASE 0xfL
# endif
# define OPENSSL_VERSION_NUMBER \
( (OPENSSL_VERSION_MAJOR<<28) \
|(OPENSSL_VERSION_MINOR<<20) \
|(OPENSSL_VERSION_PATCH<<4) \
|_OPENSSL_VERSION_PRE_RELEASE )

# ifdef __cplusplus
}
# endif

> What I'm not finding is a clear deprecation notice, or a notice about
> what replaced it. Github has oblique references to removal of the
> define, and there are discussions about changing how version numbers
> work, both GitHub search and google search are failing me.

There was no removal, I'd personally be one of the more vocal objectors
to just a removal.

>
> My questions are:
>
> - What replaced OPENSSL_VERSION_NUMBER?

It is still present.

> - In what version was OPENSSL_VERSION_NUMBER replaced?

It wasn't.

--
Viktor.

Neil Horman

unread,
Sep 1, 2024, 2:30:28 PM9/1/24
to openss...@openssl.org
Please create an issue in the openssl repo for it, and add it to the "consider for a future minor release" column Viktor if you would please.  Then we can consider it for 3.5 planning

--
You received this message because you are subscribed to the Google Groups "openssl-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openssl-user...@openssl.org.
To view this discussion on the web visit https://groups.google.com/a/openssl.org/d/msgid/openssl-users/ZtQk7aMt57ekxkRM%40chardros.imrryr.org.

Viktor Dukhovni

unread,
Sep 1, 2024, 4:48:18 PM9/1/24
to openss...@openssl.org
On Sun, Sep 01, 2024 at 02:30:09PM -0400, Neil Horman wrote:

> Please create an issue in the openssl repo for it, and add it to the
> "consider for a future minor release" column Viktor if you would please.

I would really like to not do that. I strongly believe that the version
number "long" value should be retained indefinitely. Removing it would
IMNSHO needlessly break existing code to little benefit.

> > There was no removal, I'd personally be one of the more vocal objectors
> > to just [such] a removal.

Since it wasn't removed, there is no issue to be opened. Unless there
already is an issue to proposing remove it, in which case I need to
find it start vocaly objecting. :-)

--
Viktor.
Reply all
Reply to author
Forward
0 new messages