Variable: erc-sasl-mode
erc-sasl-mode is a buffer-local variable defined in erc-sasl.el.gz.
Documentation
Non-nil if Erc-Sasl mode is enabled.
Use the command erc-sasl-mode(var)/erc-sasl-mode(fun) to change this variable.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/erc/erc-sasl.el.gz
(define-erc-module sasl nil
"Non-IRCv3 SASL support for ERC.
This local module only enables its minor mode in server buffers, and it
doesn't currently solicit or validate supported mechanisms."
((if erc--target
(erc-sasl-mode -1)
(setq erc-sasl--state (make-erc-sasl--state))
;; If the previous attempt failed during registration, this may be
;; non-nil and contain erroneous values, but how can we detect that?
;; What if the server dropped the connection for some other reason?
(erc--restore-initialize-priors erc-sasl-mode
erc-sasl--options `((user . ,erc-sasl-user)
(password . ,erc-sasl-password)
(mechanism . ,erc-sasl-mechanism)
(authfn . ,erc-sasl-auth-source-function)
(authzid . ,erc-sasl-authzid)))
(let* ((mech (alist-get 'mechanism erc-sasl--options))
(client (erc-sasl--create-client mech)))
(unless client
(erc-display-error-notice
nil (format "Unknown or unsupported SASL mechanism: `%s'" mech))
(error "Unknown or unsupported SASL mechanism: `%s'" mech))
(setf (erc-sasl--state-client erc-sasl--state) client))))
((kill-local-variable 'erc-sasl--state)
(kill-local-variable 'erc-sasl--options))
localp)