diff options
Diffstat (limited to 'lisp/net/sasl-scram-rfc.el')
| -rw-r--r-- | lisp/net/sasl-scram-rfc.el | 47 | 
1 files changed, 25 insertions, 22 deletions
diff --git a/lisp/net/sasl-scram-rfc.el b/lisp/net/sasl-scram-rfc.el index 6c8c00959b1..18d7a6bfa18 100644 --- a/lisp/net/sasl-scram-rfc.el +++ b/lisp/net/sasl-scram-rfc.el @@ -39,31 +39,9 @@  (require 'cl-lib)  (require 'sasl) - -;;; SCRAM-SHA-1 -  (require 'hex-util)  (require 'rfc2104) -(defconst sasl-scram-sha-1-steps -  '(sasl-scram-client-first-message -    sasl-scram-sha-1-client-final-message -    sasl-scram-sha-1-authenticate-server)) - -(defun sasl-scram-sha-1-client-final-message (client step) -  (sasl-scram--client-final-message -   ;; HMAC-SHA1 uses block length 64 and hash length 20; see RFC 2104. -   'sha1 64 20 client step)) - -(defun sasl-scram-sha-1-authenticate-server (client step) -  (sasl-scram--authenticate-server -   'sha1 64 20 client step)) - -(put 'sasl-scram-sha-1 'sasl-mechanism -     (sasl-make-mechanism "SCRAM-SHA-1" sasl-scram-sha-1-steps)) - -(provide 'sasl-scram-sha-1) -  ;;; Generic for SCRAM-*  (defun sasl-scram-client-first-message (client _step) @@ -156,5 +134,30 @@     (t      (sasl-error "Invalid response from server")))) +;;; SCRAM-SHA-1 + +(defconst sasl-scram-sha-1-steps +  '(sasl-scram-client-first-message +    sasl-scram-sha-1-client-final-message +    sasl-scram-sha-1-authenticate-server)) + +(defun sasl-scram-sha-1-client-final-message (client step) +  (sasl-scram--client-final-message +   ;; HMAC-SHA1 uses block length 64 and hash length 20; see RFC 2104. +   'sha1 64 20 client step)) + +(defun sasl-scram-sha-1-authenticate-server (client step) +  (sasl-scram--authenticate-server +   'sha1 64 20 client step)) + +;; This needs to be at the end, because of how `sasl-make-mechanism' +;; handles step function names. +(put 'sasl-scram-sha-1 'sasl-mechanism +     (sasl-make-mechanism "SCRAM-SHA-1" sasl-scram-sha-1-steps)) + +(put 'sasl-scram-rfc 'sasl-mechanism (get 'sasl-scram-sha-1 'sasl-mechanism)) + +(provide 'sasl-scram-sha-1) +  (provide 'sasl-scram-rfc)  ;;; sasl-scram-rfc.el ends here  | 
