在仅 IPv6 的网络中工作时,我尝试用 Clozure CL 替换 SBCL,但遇到了这样的错误:
MIGRATIONS> (ignore-errors (ccl:make-socket :remote-host "ya.ru" :remote-port 443))
NIL
#<CCL:NO-APPLICABLE-METHOD-EXISTS #x302005215E5D>
MIGRATIONS> (ignore-errors (ccl:make-socket :remote-host "ya.ru" :remote-port 443 :address-family :internet))
NIL
#<CCL:NO-APPLICABLE-METHOD-EXISTS #x3020052549AD>
MIGRATIONS> (ignore-errors (ccl:make-socket :remote-host "ya.ru" :remote-port 443 :address-family :internet6))
#<BASIC-TCP-STREAM ISO-8859-1 (SOCKET/16) #x3020051D4A9D>
问题是许多库在使用CCL:MAKE-TCP-SOCKET
时没有指定地址族或指定:internet
.
有没有办法ccl:make-socket
在运行时修补以覆盖此设置?