问题描述
我正在尝试使用客户端证书向irc服务器进行身份验证。在emacs 23中,我可以使用tls程序变量:
I'm trying to use client certificate to authenticate to an irc server. In emacs 23, I was able to use tls-program variable to do so:
(setq tls-program'(gnutls-cli --priority secure256 --x509cafile /home/me/CAs.pem --x509certfile /home/me/nick.pem -p%p%h))
(setq tls-program '("gnutls-cli --priority secure256 --x509cafile /home/me/CAs.pem --x509certfile /home/me/nick.pem -p %p %h"))
但是,emacs24中的支持是本机使用libgnutls并且不使用外部程序,因此它忽略tls-program变量。
However, the support in emacs24 is native using libgnutls and does not use external program, hence it ignores tls-program variable.
有人可以告诉我,在emacs 24中定义默认客户端证书的另一种方法是什么?
Could someone tell me, what's the alternative way to define a default client certificate in emacs 24?
推荐答案
我发现唯一的选择是不要通过重新定义 gnutls-available-p
来使用内置的GnuTLS支持。
例如:
The only option I've found out is not to use the built-in GnuTLS support by redefining gnutls-available-p
.E.g.:
(defun gnutls-available-p ()
"Function redefined in order not to use built-in GnuTLS support"
nil)
您的设置使用 tls-program
然后可以像切换到Emacs 24一样工作。现在没有其他方式指定客户端证书。内置gnutls库的唯一相关可用设置似乎是 gnutls-trustfiles
。
Your settings using tls-program
will then work as they did before switching to Emacs 24. There is no other way to specify client certificates for now. The only relevant available setting for the built-in gnutls library seems to be gnutls-trustfiles
.
这篇关于如何请求gnutls在emacs中使用客户端证书24的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!