Replies: 2 comments 3 replies
-
@xxxxxliil @blaisewang Have a better idea? |
Beta Was this translation helpful? Give feedback.
2 replies
-
我希望可以在 #661 做到你希望的更改,请告诉我应该怎么做 |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
background
@xxxxxliil reported a defect in #609 and determined that this was a problem caused by the failure to search for version number information in the dynamic link library corresponding to
OpenSSL 3.0
and newer.@xxxxxliil gave a fix in PR #661. After discussions between @cfc4n and @blaisewang, I have a clearer understanding of these differences, and for this reason, I have given a more precise fix.
This article explains some of the considerations for the new approach.
OpenSSL changes
In 2019, OPENSSL_VERSION_TEXT information is stored in
include/openssl/opensslv.h
(Generated by build.info )refer:
openssl/openssl@f386632
openssl/openssl#10203
Later, the
OpenSSL 1.1.x
version will buildlibssl.so\libcrypto.so
, and the.rodata
section in the two link library files containsOPENSSL_VERSION_TEXT
information.After OpenSSL 3.0, the introduction of the header file was changed. In the relevant code of libssl.so,
OPENSSL_VERSION
related strings are no longer referenced, so theOPENSSL_VERSION_TEXT
information is no longer included in the 3.0 version oflibssl.so
.via #661 (comment)
Solutions
OPENSSL_VERSION_TEXT
cannot be detected fromlibssl.so.*
, determine whether the current dynamic link library islibssl.so.3
libcrypto.so.3
file in the same directory and detect the version number information.potential problems
libcrypto.so.3
file may not be in the same directory aslibssl.so.3
.For these problems, it should be a small probability event, unless you manually install many versions and mess up the system environment. However, some warning information will be printed to prompt the user to perform manual detection.
I will send a new PR to fix it.
refer
openssl/openssl#10203
openssl/openssl#19801
Beta Was this translation helpful? Give feedback.
All reactions