X-Git-Url: https://cgit.sxemacs.org/?a=blobdiff_plain;ds=sidebyside;f=lisp%2Fsieve-manage.el;h=967c721d5628c243467408fcc4b0e38bc6e4419d;hb=a8ee92ba66284aa600ccd866e9a85fcbe35ea116;hp=ca77067f0d3adae5ee4418f934c0f82b68080700;hpb=089df18d7b6e0325ba604b998579916faa0797b3;p=gnus diff --git a/lisp/sieve-manage.el b/lisp/sieve-manage.el index ca77067f0..967c721d5 100644 --- a/lisp/sieve-manage.el +++ b/lisp/sieve-manage.el @@ -42,6 +42,8 @@ ;; ;; `sieve-manage-authenticate' ;; `sieve-manage-listscripts' +;; `sieve-manage-deletescript' +;; `sieve-manage-getscript' ;; performs managesieve protocol actions ;; ;; and that's it. Example of a managesieve session in *scratch*: @@ -64,8 +66,7 @@ ;; Release history: ;; ;; 2001-10-31 Committed to Oort Gnus. -;; -;; $Id: sieve-manage.el,v 6.2 2001/11/01 01:18:11 zsh Exp $ +;; 2002-07-27 Added DELETESCRIPT. Suggested by Ned Ludd. ;;; Code: @@ -116,7 +117,7 @@ stream.") (defcustom sieve-manage-authenticators '(cram-md5 plain) "Priority of authenticators to consider when authenticating to server.") -(defcustom sieve-manage-authenticator-alist +(defcustom sieve-manage-authenticator-alist '((cram-md5 sieve-manage-cram-md5-p sieve-manage-cram-md5-auth) (plain sieve-manage-plain-p sieve-manage-plain-auth)) "Definition of authenticators. @@ -196,13 +197,13 @@ Returns t if login was successful, nil otherwise." ;; (condition-case () (while (or (not user) (not passwd)) (setq user (or sieve-manage-username - (read-from-minibuffer + (read-from-minibuffer (concat "Managesieve username for " sieve-manage-server ": ") (or user sieve-manage-default-user)))) (setq passwd (or sieve-manage-password (sieve-manage-read-passwd - (concat "Managesieve password for " user "@" + (concat "Managesieve password for " user "@" sieve-manage-server ": ")))) (when (and user passwd) (if (funcall loginfunc user passwd) @@ -319,7 +320,7 @@ Returns t if login was successful, nil otherwise." (sieve-manage-send (concat "AUTHENTICATE \"PLAIN\" \"" (base64-encode-string (concat (char-to-string 0) - user + user (char-to-string 0) passwd)) "\"")) @@ -341,7 +342,7 @@ Returns t if login was successful, nil otherwise." (let* ((done (sieve-manage-interactive-login buffer (lambda (user passwd) - (sieve-manage-send "AUTHENTICATE \"CRAM-MD5\" \"\"") + (sieve-manage-send "AUTHENTICATE \"CRAM-MD5\"") (sieve-manage-send (concat "\"" @@ -395,7 +396,7 @@ to work in." (if (funcall (nth 1 (assq stream sieve-manage-stream-alist)) buffer) (setq stream-changed - (not (eq (or sieve-manage-stream + (not (eq (or sieve-manage-stream sieve-manage-default-stream) stream)) sieve-manage-stream stream @@ -409,14 +410,14 @@ to work in." (if (sieve-manage-open-1 buffer) (message "sieve: Reconnecting with stream `%s'...done" sieve-manage-stream) - (message "sieve: Reconnecting with stream `%s'...failed" + (message "sieve: Reconnecting with stream `%s'...failed" sieve-manage-stream)) (setq sieve-manage-capability nil)) (if (sieve-manage-opened buffer) ;; Choose authenticator (when (and (null sieve-manage-auth) (not (eq sieve-manage-state 'auth))) - (let ((auths sieve-manage-authenticators)) + (let ((auths sieve-manage-authenticators)) (while (setq auth (pop auths)) (if (funcall (nth 1 (assq auth @@ -503,6 +504,11 @@ password is remembered in the buffer." sieve-manage-client-eol content)) (sieve-manage-parse-okno))) +(defun sieve-manage-deletescript (name &optional buffer) + (with-current-buffer (or buffer (current-buffer)) + (sieve-manage-send (format "DELETESCRIPT \"%s\"" name)) + (sieve-manage-parse-okno))) + (defun sieve-manage-getscript (name output-buffer &optional buffer) (with-current-buffer (or buffer (current-buffer)) (sieve-manage-send (format "GETSCRIPT \"%s\"" name))