我正在尝试使用 common-lisp(sbcl) 访问 https 端点以拉回一些数据。有一段时间,这没有问题。然后有一天我开始收到以下错误
SSL error queue:
error:0A000152:SSL routines::unsafe legacy renegotiation disabled
[Condition of type CL+SSL::SSL-ERROR-SSL]
我试过同时使用 drakma 和 dexador,但两者都出现了相同的错误。我已通过 openssl 确认我尝试连接的服务器不支持重新协商。
从openssl s_client -connect
New, TLSv1/SSLv3, Cipher is AES256-GCM-SHA384
Server public key is 2048 bit
Secure Renegotiation IS NOT supported
我在 OSX 上,我的开放 ssl 版本是 LibreSSL 2.8.3。
因此,据我了解,我的客户正在尝试启动重新协商,但服务器拒绝了它。我真的不知道从哪里开始,在这一点上,我什至不确定问题到底在哪个级别,openSSL、CL+SSL 或构建在 CL+SSL 之上的 http 客户端库。有什么方法可以禁用重新协商或强制建立新连接?我缺少一些设置吗?