尽管它抱怨警告消息,但编译失败并出现链接器错误。
日志:
# gcc -Wall -o server server.c -L/usr/lib -lssl -lcrypto
server.c: In function ‘InitServerCTX’:
server.c:62:5: warning: implicit declaration of function ‘SSLv3_method’ [-Wimplicit-function-declaration]
method = SSLv3_method();
^
server.c:62:12: warning: assignment makes pointer from integer without a cast [enabled by default]
method = SSLv3_method();
^
/tmp/ccYwA194.o: In function `InitServerCTX':
server.c:(.text+0xe8): undefined reference to `SSLv3_method'
collect2: error: ld returned 1 exit status
#
openssl 版本:
# /usr/local/openssl/bin/openssl version
OpenSSL 1.0.2p 14 Aug 2018
答案1
SSL3 方法已被弃用,并且在最新版本的 OpenSSL/libssl 中不再支持。
依赖 OpenSSL 来实现 SSL3 例程的旧源不再支持它们。
此外,任何现代浏览器也放弃了对 SSLv3 的支持。
至于 Debian,SSLv3 支持在 Jessie 的生活中的某个地方被取消了。 Stretch 从第 0 天起就不支持它。