OpenSSL is being deprecated on Mac OS X
| Trac | Data |
|---|---|
| Ticket | 99 |
| Reported by | pseudo |
| Status | new |
| Component | Build process |
| Priority | major |
| Milestone | 1.8.0 |
| Keywords | ssl warnings |
| Version | 1.8.0 CVS |
In Mac OS X 10.7 Lion Apple deprecates the use of OpenSSL. You can see deprecation messages when compiling:
tls.c:125: warning: ‘SSL_load_error_strings’ is deprecated (declared at /usr/include/openssl/ssl.h:1416) tls.c:126: warning: ‘SSL_library_init’ is deprecated (declared at /usr/include/openssl/ssl.h:1553) tls.c:130: warning: ‘ERR_free_strings’ is deprecated (declared at /usr/include/openssl/err.h:297) tls.c:135: warning: ‘SSL_CTX_new’ is deprecated (declared at /usr/include/openssl/ssl.h:1346)
Possible workaround is to use the Common Crypto implementation, which should be API compatible.
[https://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man3/Common%20Crypto.3cc.html]
Maybe ship mbedtls for 2.0.0 (where we need it anyway), not going to write a compatibility layer for those os x functions
Why not add instructions to compile and link openssl (unter osx) to COMPILE-GUIDE? Maybe link it static. --with-sslinc and --with-sslib should work, now that the following commit was done: b4cb7130278f7ff66da6405dc10bff260602a8eb
BTW: If anyone could give me a temp shell account on an OS X machine, i could try to check and enhance OS X support.
There is a solution / workaround:
Under 64-bit macOS Catalina 10.15.7 Darwin 19.6.0 clang 12.0.0 Tcl 8.5.9 OpenSSL 1.1.1g
One can install openssl via homebrew and it will work just fine.
This is already documented in out doc/COMPILE-GUIDE:
https://github.com/eggheads/eggdrop/blob/c8e4eefb43c7d7e59211f8ab5f04008a08b3a594/doc/COMPILE-GUIDE#L216-L224
Compiles without any warning:
gcc -g -O2 -pipe -Wall -I.. -I.. -I/usr/local/opt/openssl/include -DHAVE_CONFIG_H -iwithsysroot /System/Library/Frameworks/Tcl.framework/Versions/8.5/Headers -DSTATIC -c tls.c
if you agree, please close this Issue.