eggdrop icon indicating copy to clipboard operation
eggdrop copied to clipboard

OpenSSL is being deprecated on Mac OS X

Open thommey opened this issue 13 years ago • 3 comments

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]

thommey avatar Sep 19 '12 01:09 thommey

Maybe ship mbedtls for 2.0.0 (where we need it anyway), not going to write a compatibility layer for those os x functions

thommey avatar Jul 13 '17 20:07 thommey

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.

michaelortmann avatar Sep 22 '18 23:09 michaelortmann

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.

michaelortmann avatar Mar 01 '21 17:03 michaelortmann