This is an automated email from the ASF dual-hosted git repository.
remm pushed a commit to branch 10.1.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/10.1.x by this push:
new 4177edc178 Add the OpenSSL version number on the APR and OpenSSL
status classes
4177edc178 is described below
commit 4177edc178da8dc44aee670ab7e820ecbfcfa9fc
Author: remm <[email protected]>
AuthorDate: Wed Jun 26 11:43:12 2024 +0200
Add the OpenSSL version number on the APR and OpenSSL status classes
---
java/org/apache/catalina/core/AprLifecycleListener.java | 1 +
java/org/apache/catalina/core/AprStatus.java | 17 ++++++++++++++++-
.../apache/tomcat/util/net/openssl/OpenSSLStatus.java | 16 ++++++++++++++++
.../tomcat/util/net/openssl/panama/OpenSSLLibrary.java | 1 +
webapps/docs/changelog.xml | 4 ++++
5 files changed, 38 insertions(+), 1 deletion(-)
diff --git a/java/org/apache/catalina/core/AprLifecycleListener.java
b/java/org/apache/catalina/core/AprLifecycleListener.java
index 1db75895b9..e7f65cfb02 100644
--- a/java/org/apache/catalina/core/AprLifecycleListener.java
+++ b/java/org/apache/catalina/core/AprLifecycleListener.java
@@ -288,6 +288,7 @@ public class AprLifecycleListener implements
LifecycleListener {
method = clazz.getMethod(methodName, paramTypes);
method.invoke(null, paramValues);
+ AprStatus.setOpenSSLVersion(SSL.version());
// OpenSSL 3 onwards uses providers
boolean usingProviders = tcnMajor > 1 || (tcnVersion > 1233 &&
(SSL.version() & 0xF0000000L) > 0x20000000);
diff --git a/java/org/apache/catalina/core/AprStatus.java
b/java/org/apache/catalina/core/AprStatus.java
index 5374d07735..bbc4f0a90e 100644
--- a/java/org/apache/catalina/core/AprStatus.java
+++ b/java/org/apache/catalina/core/AprStatus.java
@@ -24,7 +24,7 @@ public class AprStatus {
private static volatile boolean aprAvailable = false;
private static volatile boolean useOpenSSL = true;
private static volatile boolean instanceCreated = false;
-
+ private static volatile int openSSLVersion = 0;
public static boolean isAprInitialized() {
return aprInitialized;
@@ -57,4 +57,19 @@ public class AprStatus {
public static void setInstanceCreated(boolean instanceCreated) {
AprStatus.instanceCreated = instanceCreated;
}
+
+ /**
+ * @return the openSSLVersion
+ */
+ public static int getOpenSSLVersion() {
+ return openSSLVersion;
+ }
+
+ /**
+ * @param openSSLVersion the openSSLVersion to set
+ */
+ public static void setOpenSSLVersion(int openSSLVersion) {
+ AprStatus.openSSLVersion = openSSLVersion;
+ }
+
}
diff --git a/java/org/apache/tomcat/util/net/openssl/OpenSSLStatus.java
b/java/org/apache/tomcat/util/net/openssl/OpenSSLStatus.java
index 682e878de1..ae190beff0 100644
--- a/java/org/apache/tomcat/util/net/openssl/OpenSSLStatus.java
+++ b/java/org/apache/tomcat/util/net/openssl/OpenSSLStatus.java
@@ -25,6 +25,7 @@ public class OpenSSLStatus {
private static volatile boolean available = false;
private static volatile boolean useOpenSSL = true;
private static volatile boolean instanceCreated = false;
+ private static volatile long version = 0;
public static boolean isLibraryInitialized() {
@@ -66,4 +67,19 @@ public class OpenSSLStatus {
public static void setInstanceCreated(boolean instanceCreated) {
OpenSSLStatus.instanceCreated = instanceCreated;
}
+
+ /**
+ * @return the version
+ */
+ public static long getVersion() {
+ return version;
+ }
+
+ /**
+ * @param version the version to set
+ */
+ public static void setVersion(long version) {
+ OpenSSLStatus.version = version;
+ }
+
}
diff --git a/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLLibrary.java
b/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLLibrary.java
index 2ce3a201dd..8ca86e68e2 100644
--- a/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLLibrary.java
+++ b/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLLibrary.java
@@ -180,6 +180,7 @@ public class OpenSSLLibrary {
// Main library init
initLibrary();
+ OpenSSLStatus.setVersion(OpenSSL_version_num());
// OpenSSL 3 onwards uses providers
boolean isOpenSSL3 = (OpenSSL_version_num() >= 0x3000000fL);
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index bc380db5b3..4af1910b4c 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -115,6 +115,10 @@
Add missing algorithm callback to the <code>JAASCallbackHandler</code>.
(remm)
</fix>
+ <fix>
+ Add the OpenSSL version number on the APR and OpenSSL status classes.
+ (remm)
+ </fix>
</changelog>
</subsection>
<subsection name="Coyote">
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]