Refactor & comment #1862 fix

Relevant to #2727
This commit is contained in:
Henrik Lissner 2020-03-27 15:12:35 -04:00
parent 9839aec1b2
commit 611ddb2263
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395

View file

@ -93,9 +93,13 @@ playback.")
(add-hook 'circe-channel-mode-hook #'turn-on-visual-line-mode) (add-hook 'circe-channel-mode-hook #'turn-on-visual-line-mode)
(add-hook 'circe-mode-hook #'+irc--add-circe-buffer-to-persp-h) (add-hook 'circe-mode-hook #'+irc--add-circe-buffer-to-persp-h)
(add-hook 'circe-mode-hook #'turn-off-smartparens-mode) (add-hook 'circe-mode-hook #'turn-off-smartparens-mode)
(setq-hook! 'circe-mode-hook tls-end-of-info
(concat ;; HACK Fix #1862: circe hangs on TLS connections when using OpenSSL versions
"\\(" ;; > 1.1.0, where tls.el does not correctly determine the end of the info
;; block. This fixes proposed in jorgenschaefer/circe#340
(setq-hook! 'circe-mode-hook
tls-end-of-info
(concat "\\("
;; `openssl s_client' regexp. See ssl/ssl_txt.c lines 219-220. ;; `openssl s_client' regexp. See ssl/ssl_txt.c lines 219-220.
;; According to apps/s_client.c line 1515 `---' is always the last ;; According to apps/s_client.c line 1515 `---' is always the last
;; line that is printed by s_client before the real data. ;; line that is printed by s_client before the real data.
@ -103,13 +107,12 @@ playback.")
;; `gnutls' regexp. See src/cli.c lines 721-. ;; `gnutls' regexp. See src/cli.c lines 721-.
"^- Simple Client Mode:\n" "^- Simple Client Mode:\n"
"\\(\n\\|" ; ignore blank lines "\\(\n\\|" ; ignore blank lines
;; According to GnuTLS v2.1.5 src/cli.c lines 640-650 and 705-715 ;; According to GnuTLS v2.1.5 src/cli.c lines 640-650 and 705-715 in
;; in `main' the handshake will start after this message. If the ;; `main' the handshake will start after this message. If the
;; handshake fails, the programs will abort. ;; handshake fails, the programs will abort.
"^\\*\\*\\* Starting TLS handshake\n\\)*" "^\\*\\*\\* Starting TLS handshake\n\\)*"
"\\)")) "\\)"))
(defadvice! +irc--circe-run-disconnect-hook-a (&rest _) (defadvice! +irc--circe-run-disconnect-hook-a (&rest _)
"Runs `+irc-disconnect-hook' after circe disconnects." "Runs `+irc-disconnect-hook' after circe disconnects."
:after #'circe--irc-conn-disconnected :after #'circe--irc-conn-disconnected