diff options
author | F. Jason Park <jp@neverwas.me> | 2021-07-12 03:44:28 -0700 |
---|---|---|
committer | Amin Bandali <bandali@gnu.org> | 2022-11-23 21:14:25 -0500 |
commit | ed8862c40432302b68433a9b8c00cd5604962ec4 (patch) | |
tree | b3b49d2f9c37314d229b0027c0c84c5871cf8840 /lisp/erc/erc-backend.el | |
parent | ae254a65cd6c0292865c449d639140f5d149f68e (diff) | |
download | emacs-ed8862c40432302b68433a9b8c00cd5604962ec4.tar.gz emacs-ed8862c40432302b68433a9b8c00cd5604962ec4.tar.bz2 emacs-ed8862c40432302b68433a9b8c00cd5604962ec4.zip |
Add non-IRCv3 SASL module to ERC
* doc/misc/erc.texi: Add SASL section in Advanced Usage chapter to
document the new SASL module.
* etc/ERC-NEWS: Mention addition of erc-sasl module for SASL support.
* lisp/erc/erc-compat.el
(erc-compat--29-sasl-scram-construct-gs2-header,
erc-compat--29-sasl-scram-client-first-message,
erc-compat--29-sasl-scram--client-final-message): Fix encoding bug and
add minimal authorization support with copies of SASL functions
introduced in Emacs 29.
* lisp/erc/erc.el (erc-modules): Add `sasl'.
* lisp/erc/erc-sasl.el: New file (bug#29108).
* test/lisp/erc/erc-sasl-tests.el: New file.
* test/lisp/erc/erc-scenarios-sasl.el: New file.
* test/lisp/erc/resources/sasl/plain-failed.eld: New file.
* test/lisp/erc/resources/sasl/plain.eld: New file.
* test/lisp/erc/resources/sasl/scram-sha-1.eld: New file.
* test/lisp/erc/resources/sasl/scram-sha-256.eld: New file.
* test/lisp/erc/resources/sasl/external.eld: New file.
Diffstat (limited to 'lisp/erc/erc-backend.el')
-rw-r--r-- | lisp/erc/erc-backend.el | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lisp/erc/erc-backend.el b/lisp/erc/erc-backend.el index 973616bc37e..6e91353808b 100644 --- a/lisp/erc/erc-backend.el +++ b/lisp/erc/erc-backend.el @@ -2334,6 +2334,15 @@ See `erc-display-server-message'." nil (erc-display-message parsed 'notice 'active 's671 ?n nick ?a securemsg))) +(define-erc-response-handler (900) + "Handle a \"RPL_LOGGEDIN\" server command. +Some servers don't consider this SASL-specific but rather just an +indication of a server-side state change from logged-out to +logged-in." nil + ;; Whenever ERC starts caring about user accounts, it should record + ;; the session as being logged here. + (erc-display-message parsed 'notice proc (erc-response.contents parsed))) + (define-erc-response-handler (431 445 446 451 462 463 464 481 483 484 485 491 501 502) ;; 431 - No nickname given |