我在一台Fedora 19电脑上使用xmpppy连接到需要ssl连接的xmpp服务器。
Code:
client = xmpp.Client(self.domain, debug=[])
server = (self.server, 5222)
client.connect(server)
它工作得很好,我没有改变任何代码。然后我安装了一些应用程序并更新了Fedora,现在它出现了这个错误。
Traceback (most recent call last):
File "chat.py", line 20, in connect
client.connect(server)
File "/usr/lib/python2.7/site-packages/xmpp/client.py", line 205, in connect
while not self.TLS.starttls and self.Process(1): pass
File "/usr/lib/python2.7/site-packages/xmpp/dispatcher.py", line 303, in dispatch
handler['func'](session,stanza)
File "/usr/lib/python2.7/site-packages/xmpp/transports.py", line 337, in StartTLSHandler
self._startSSL()
File "/usr/lib/python2.7/site-packages/xmpp/transports.py", line 315, in _startSSL
tcpsock._sslObj = socket.ssl(tcpsock._sock, None, None)
File "/usr/lib64/python2.7/socket.py", line 64, in ssl
return _realssl.sslwrap_simple(sock, keyfile, certfile)
File "/usr/lib64/python2.7/ssl.py", line 477, in sslwrap_simple
ssl_sock.do_handshake()
ssl.SSLError: [Errno 1] _ssl.c:504: error:100AE081:elliptic curve routines:EC_GROUP_new_by_curve_name:unknown group
我还尝试用PHP连接到XMPP服务器
$this->send_xml($this->START_TLS);
$xml = $this->recv_xml();
stream_socket_enable_crypto($this->fp, true, STREAM_CRYPTO_METHOD_TLS_CLIENT);
but it throws