Skip to content

Openssl 4.0#245

Open
ellert wants to merge 4 commits into
gridcf:masterfrom
ellert:openssl-4.0
Open

Openssl 4.0#245
ellert wants to merge 4 commits into
gridcf:masterfrom
ellert:openssl-4.0

Conversation

@ellert
Copy link
Copy Markdown
Member

@ellert ellert commented May 19, 2026

Fixes for compiling with OpenSSL 4.
The first commit only changes tabs and spaces (git diff --ignore-all-space is empty). It just fixes inconsistent whitespace in the files that are modified in later commits.
The secons commit contains the changes for OpenSSL 4.
The third commit fixes some compiler and doxygen warnings unrelated to the UpenSSL 4 update.
The last commit contains the version increase andcorresponding packaging file update.

@maarten-litmaath
Copy link
Copy Markdown

Hi Mattias,
thanks for that already!

Was anything also tested after those changes?

@ellert
Copy link
Copy Markdown
Member Author

ellert commented May 20, 2026

Was anything also tested after those changes?

I didn't do any additional testing other than running all the tests in make check.

Most of the changes are related to replacing direct access to the fields in ASN1_STRING (.data, .length, .type) with calls to ASN1_STRING_get0_data(), ASN1_STRING_length() and ASN1_STRING_type() since the type has been made opaque. And similarly using ASN1_STRING_set() to change the string instead of changing the fields directly.

Other changes are declaring some things const to match changes in the OpenSSL headers, in a few instances conditionaly depending on the OpenSSL version where needed.

@msalle
Copy link
Copy Markdown
Member

msalle commented May 20, 2026

Hi Mattias,
many thanks! I will try to test it in the coming days and let you know if I see any problems.

@msalle
Copy link
Copy Markdown
Member

msalle commented May 20, 2026

Hi Mattias, many thanks! I will try to test it in the coming days and let you know if I see any problems.

I had some time in between and did some build and run-time checks using LCMAPS, which tests a few different globus libraries, see below.
Only real problem I found is that you need to add an entry for 40*) in https://github.com/ellert/gct/blob/openssl-4.0/gsi_openssh/source/configure.ac#L3076. Other than that a lot of compiler warnings, but nothing breaking.

Globus packages tested by the lcas-lcmaps-gt4-interface:

libglobus_callout.so.0
libglobus_common.so.0
libglobus_gridmap_callout_error.so.0
libglobus_gsi_callback.so.0
libglobus_gsi_cert_utils.so.0
libglobus_gsi_credential.so.1
libglobus_gsi_proxy_core.so.0
libglobus_gsi_sysconfig.so.1
libglobus_gssapi_error.so.2
libglobus_gssapi_gsi.so.4
libglobus_gss_assist.so.3
libglobus_oldgaa.so.0
libglobus_openssl_error.so.0
libglobus_openssl.so.0
libglobus_proxy_ssl.so.1

and in a different setup, using a run used by lcmaps in e.g. gLExec and the like (via llrun):

libglobus_common.so.0
libglobus_gsi_callback.so.0
libglobus_gsi_cert_utils.so.0
libglobus_gsi_credential.so.1
libglobus_gsi_proxy_core.so.0
libglobus_gsi_sysconfig.so.1
libglobus_gssapi_gsi.so.4
libglobus_oldgaa.so.0
libglobus_openssl_error.so.0
libglobus_openssl.so.0
libglobus_proxy_ssl.so.1
liblcmaps_return_account_from_pem.so

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants