orthecreedence / cl-async

Asynchronous IO library for Common Lisp.
MIT License
273 stars 40 forks source link

sbcl is loading libcrypto in an unsafe way #181

Open justjoheinz opened 3 years ago

justjoheinz commented 3 years ago

On Mac Os X (Big Sur) with sbcl 2.0.11 I get the message and subsequent error sbcl is loading libcrypto in an unsafe way when I try to install cl-async-ssl directly or via wookie (respective installations via ql:quickload.

Is there anything I can do to fix this error, or disable ssl support which I do not need right now. Is there anything I can do to provide more insight in the error or be of help in case a Mac OS machine is missing for development?

justjoheinz commented 3 years ago

I currently helped my self by deleting the two occurrences of :wookie-no-ssl and their references to async or ssl dependencies. Being very new to CL I would like to know how I can do this when invoking the build. I tried (ql:quickload "wookie" :wookie-no-ssl t) but that did not get picked up.

PuercoPop commented 3 years ago

Being very new to CL I would like to know how I can do this when invoking the build.

Checkout the clhs entry on *features*

If you want to load wookie w/o ssl support into your image you would have to do:

(push :wookie-no-ssl *features*)
(ql:quickload "wookie")

Hope that helps

phoe commented 3 years ago

https://github.com/orthecreedence/cl-async/blob/cc83f0f9ddc39fd152df15521188b57162c4669f/src/ssl/package.lisp#L65

libcrypto.dylib seemingly needs to get replaced with a concrete version of libcrypto, rather than depend on the unversioned dylib.

justjoheinz commented 3 years ago

Thanks @phoe and @PuercoPop - that got me up and running for the time being.

justjoheinz commented 3 years ago

In case it helps - this is the content of the openssl lib directory when installing openssl on mac os via brew (openssl 1.1.i)

engines-1.1
libcrypto.1.1.dylib
libcrypto.a
libcrypto.dylib
libssl.1.1.dylib
libssl.a
libssl.dylib
pkgconfig