forked from rabbitmq/rabbitmq-c
-
Notifications
You must be signed in to change notification settings - Fork 672
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OpenSSL Engine causes compilation issues on iOS #795
Comments
alanxz
added a commit
that referenced
this issue
Dec 23, 2023
Conditionally enable ssl_socket methods that use the deprecated OpenSSL ENGINE APIs. The APIs are enabled when the OpenSSL being compiled against has the ENGINE APIs enabled. In addition these APIs can be disabled by passing -DENABLE_SSL_ENGINE_API=OFF to CMake at build-time. Fixed: #795 Fixed: #713 Signed-off-by: GitHub <[email protected]>
alanxz
added a commit
that referenced
this issue
Dec 24, 2023
Conditionally enable ssl_socket methods that use the deprecated OpenSSL ENGINE APIs. The APIs are enabled when the OpenSSL being compiled against has the ENGINE APIs enabled. In addition these APIs can be disabled by passing -DENABLE_SSL_ENGINE_API=OFF to CMake at build-time. Fixed: #795 Fixed: #713 Signed-off-by: GitHub <[email protected]>
alanxz
added a commit
that referenced
this issue
Dec 24, 2023
Conditionally enable ssl_socket methods that use the deprecated OpenSSL ENGINE APIs. The APIs are enabled when the OpenSSL being compiled against has the ENGINE APIs enabled. In addition these APIs can be disabled by passing -DENABLE_SSL_ENGINE_API=OFF to CMake at build-time. Fixed: #795 Fixed: #713 Signed-off-by: GitHub <[email protected]>
alanxz
added a commit
that referenced
this issue
Dec 24, 2023
Conditionally enable ssl_socket methods that use the deprecated OpenSSL ENGINE APIs. The APIs are enabled when the OpenSSL being compiled against has the ENGINE APIs enabled. In addition these APIs can be disabled by passing -DENABLE_SSL_ENGINE_API=OFF to CMake at build-time. Fixed: #795 Fixed: #713 Signed-off-by: GitHub <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This seems related to #713 and is not addressed by #753. Realized on tag
v0.13.0
Applications targeting iOS, visionOS, and other mobile platforms may include a compiled version of OpenSSL libraries in order to support other TLS-enabled libraries, including rabbitmq-c. When compiling OpenSSL for such platforms, the 1.1.1x OpenSSL configuration explicitly disables the
ENGINE
interface, as seen in this base config snippet from the15-ios.conf
file:This make sense considering such devices have a distribution system that strongly discourages (and even disallows altogether) dynamic linking.
The rabbitmq-c library has a dependency on the
ENGINE
interface and will not compile without it, but in terms of functionality it seems that rabbitmq-c as a library shouldn't require theENGINE
interface.Would it make sense to have a cached CMake flag to disable the Engine dependency? What other ways can we work around this for mobile platforms?
The text was updated successfully, but these errors were encountered: