Mechanisms
A mechanism (sasl-mechanism object) is a schema of the SASL authentication mechanism driver.
Variable: sasl-mechanisms
A list of mechanism names.
Function: sasl-find-mechanism mechanisms
Retrieve an appropriate mechanism. This function compares mechanisms and sasl-mechanisms then returns appropriate sasl-mechanism object.
emacs-lisp
(let ((sasl-mechanisms '("CRAM-MD5" "DIGEST-MD5")))
(setq mechanism (sasl-find-mechanism server-supported-mechanisms)))Function: sasl-mechanism-name mechanism
Return name of mechanism, a string.
If you want to write an authentication mechanism driver (Back end drivers), use sasl-make-mechanism and modify sasl-mechanisms and sasl-mechanism-alist correctly.
Function: sasl-make-mechanism name steps
Allocate a sasl-mechanism object. This function takes two parameters—name of the mechanism, and a list of authentication functions.
emacs-lisp
(defconst sasl-anonymous-steps
'(identity ;no initial response
sasl-anonymous-response))
(put 'sasl-anonymous 'sasl-mechanism
(sasl-make-mechanism "ANONYMOUS" sasl-anonymous-steps))