14

I use jabber.el to connect to my work chat server from within emacs. This was working until recently, but now when I run jabber-connect it hangs after prompting for my JID. Emacs locks up until I cancel it with C-g, at which point I see:

Buffer " *-jabber-process-*" has a running process; kill it? (y or n)

...in the minibuffer, and I have to answer y to get out.

In the *Messages* buffer, I can see these other messages:

Opening TLS connection to `lxchat'...
Opening TLS connection with `gnutls-cli --insecure -p 5223 lxchat'...failed
Opening TLS connection with `gnutls-cli --insecure -p 5223 lxchat --protocols ssl3'...failed
Opening TLS connection with `openssl s_client -connect lxchat:5223 -no_ssl2 -ign_eof'...

If I try running the openssl_client command from the command line, it seems to connect successfully. Although I guess that just shows it can establish the SSL connection?

~> openssl s_client -connect lxchat:5223 -no_ssl2 -ign_eof
CONNECTED(00000003)
^C

What else can I do to work out what the problem is?

Giacomo1968
  • 53,069
  • 19
  • 162
  • 212
babbageclunk
  • 241
  • 1
  • 4
  • 3
    When I try that openssl command line to `www.google.com:443`, it spits out lots of certificate information after the `CONNECTED` line. Perhaps your server accepts the connection but never completes the SSL handshake?.. – legoscia Mar 28 '14 at 12:25
  • Hmm, you're right - also, if I run that command from a different host, I get a whole lot of certificate output. Ok, that gives me something useful to go on. Thanks! – babbageclunk Mar 28 '14 at 14:08
  • I use jabber.el to connect to Hipchat I think it sometimes hangs Emacs when someone sends me an emoji. And very often for no apparent reason Emacs just dies. The main culprit is jabber.el. I tried working without connecting for a few days. And I think Emacs a lot more stable without it. Although I really want to use it. – iLemming Oct 05 '15 at 17:27

1 Answers1

1

I avoid making Emacs deal with the network directly. Though things have improved significantly, single-threaded Emacs will hang at inconvenient moments. When you have elisp implementations of things like jabber, it helps to keep a single Emacs config across platforms, but if you do not have this need, it is easier and often less long-term hassle to use platform-specific tools. For instance, I use msmtp to send email and a combination of bitlbee and ERC to connect to various IM networks.

alephnull
  • 161
  • 1
  • 5