%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/net/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/net/sieve-manage.elc

;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\203
\302\303!\210\202\302\304!\210\302\305!\210\306\307\310\"\210\306\311\312\"\210\313\314\315\316\317\320\321\322&\210\323\324\325\326\327DD\330\331\332\317\314&\210\323\333\325\326\334DD\335\331\332\317\314&\210\323\336\325\326\337DD\340\331\332\317\314&\210\323\341\325\326\342DD\343\331\344\317\314&\210\323\345\325\326\346DD\347\331\350\317\314&\210\323\351\325\326\352DD\353\331\354\355\356\317\314&	\210\323\357\325\326\360DD\361\355\362\331\363\317\314&	\210\323\364\325\326\365DD\366\355\367\331\370\317\314&	\207" [locate-library "password-cache" require password-cache password sasl autoload sasl-find-mechanism "sasl" auth-source-search "auth-source" custom-declare-group sieve-manage nil "Low-level Managesieve protocol issues." :group mail :prefix "sieve-" custom-declare-variable sieve-manage-log funcall function #[0 "\300\207" [#1="*sieve-manage-log*"] 1 #1#] "Name of buffer for managesieve session trace." :type string sieve-manage-server-eol #[0 "\300\207" [#2="
\n"] 1 #2#] "The EOL string sent from the server." sieve-manage-client-eol #[0 "\300\207" [#3="
\n"] 1 #3#] "The EOL string we send to the server." sieve-manage-authenticators #[0 "\300\207" [(digest-md5 cram-md5 scram-md5 ntlm plain login)] 1] "Priority of authenticators to consider when authenticating to server." (repeat symbol) sieve-manage-authenticator-alist #[0 "\300\207" [((cram-md5 sieve-manage-cram-md5-p sieve-manage-cram-md5-auth) (digest-md5 sieve-manage-digest-md5-p sieve-manage-digest-md5-auth) (scram-md5 sieve-manage-scram-md5-p sieve-manage-scram-md5-auth) (ntlm sieve-manage-ntlm-p sieve-manage-ntlm-auth) (plain sieve-manage-plain-p sieve-manage-plain-auth) (login sieve-manage-login-p sieve-manage-login-auth))] 1] "Definition of authenticators.\n\n(NAME CHECK AUTHENTICATE)\n\nNAME names the authenticator.  CHECK is a function returning non-nil if\nthe server support the authenticator and AUTHENTICATE is a function\nfor doing the actual authentication." (repeat (list (symbol :tag "Name") (function :tag "Check function") (function :tag "Authentication function"))) sieve-manage-default-port #[0 "\300\207" [#4="sieve"] 1 #4#] "Default port number or service name for managesieve protocol." (choice integer string) :version "24.4" sieve-manage-default-stream #[0 "\300\207" [network] 1] "Default stream type to use for `sieve-manage'." "24.1" symbol sieve-manage-ignore-starttls #[0 "\300\207" [nil] 1] "Ignore STARTTLS even if STARTTLS capability is provided." "26.1" boolean] 10)
(defconst sieve-manage-local-variables '(sieve-manage-server sieve-manage-port sieve-manage-auth sieve-manage-stream sieve-manage-process sieve-manage-client-eol sieve-manage-server-eol sieve-manage-capability))
(defconst sieve-manage-coding-system-for-read 'binary)
(defconst sieve-manage-coding-system-for-write 'binary)
(defvar sieve-manage-stream nil)
(defvar sieve-manage-auth nil)
(defvar sieve-manage-server nil)
(defvar sieve-manage-port nil)
#@81 Managesieve state.
Valid states are `closed', `initial', `nonauth', and `auth'.
(defvar sieve-manage-state 'closed (#$ . 3384))
(defvar sieve-manage-process nil)
(defvar sieve-manage-capability nil)
(autoload 'mm-enable-multibyte "mm-util")
(defalias 'sieve-manage-make-process-buffer #[0 "r\303\304\305	#!q\210\306\307\n\"\210\310 \210\311 \210p)\207" [sieve-manage-server sieve-manage-port sieve-manage-local-variables generate-new-buffer format " *sieve %s:%s*" mapc make-local-variable mm-enable-multibyte buffer-disable-undo] 5])
#@27 

(fn &optional P BUFFER)
(defalias 'sieve-manage-erase #[512 "\211\206p\203-r\301!q\210\302 \210\303 \210db\210\304rq\210e)\206*rq\210d)#\210)\210e\2064d|\207" [sieve-manage-log get-buffer-create mm-enable-multibyte buffer-disable-undo insert-buffer-substring] 7 (#$ . 3926)])
#@136 Open network connection to SERVER on PORT.
Return the buffer associated with the connection.

(fn SERVER PORT &optional STREAM BUFFER)
(defalias 'sieve-manage-open-server #[1026 "r\211q\210\304 \210\305\306\307\310\311\312\313\314\315\316\317\320\321\322&\211@A\211\211\323\324\325\"!\204B\326>\203E\324\310\"\327=\203E\330 \210p\266\202\266\203)\207" [sieve-manage-state sieve-manage-process sieve-manage-capability sieve-manage-ignore-starttls sieve-manage-erase initial open-network-stream "SIEVE" :type :capability-command "CAPABILITY
\n" :end-of-command "^\\(OK\\|NO\\).*\n" :success "^OK.*\n" :return-list t :starttls-function #[257 "?\205
\301\302\"\205
\303\207" [sieve-manage-ignore-starttls string-match "\\bSTARTTLS\\b" "STARTTLS
\n"] 4 "\n\n(fn CAPABILITIES)"] sieve-manage-parse-capability plist-get :capabilities (nil network starttls) tls sieve-manage-drop-next-answer] 21 (#$ . 4223)])
#@63 Login to server using the SASL MECH method.

(fn BUFFER MECH)
(defalias 'sieve-sasl-auth #[514 "\304\305\"\210rq\210\306\307\310\311\312\313\314\315&\316@\317\"\206\320\316@\321\"\206&\320\322!\2031\211 \2022\211\323\324C!\311$\325\326\327!E\330\331\"\332\333\334\335!\205\\\336\337\335!\340\"\334QR!\331\211\3412\331\262eb\210\342 \262\211\203x\343\n!\204\331\211\262\202\204\344\225b\210\211\204\232\345 \211\262\204\232\346\313\"\210eb\210\202j\347 \210\350!\203\336\211A@\203\276\351\352A@\"\203\276\353\354\355\313A@\"!\"\210\330\"\211\262\203\331\335!\211\262\203\331\356\357\"\210\202\336\360\341\315\"\210\211;\204\353\356\361AA@\"\210\353\354!\"\210\330\"\262\332\335!\203\f\334\337\335!\340\"\334Q\202
\320!\210\202d\210\304\362\")\266\211)\207" [sieve-manage-server sasl-read-passphrase sieve-manage-server-eol sieve-manage-process message "sieve: Authenticating using %s..." auth-source-search :host :port "sieve" :max 1 :create t plist-get :user "" :secret functionp sasl-make-client sasl-find-mechanism lambda (prompt) copy-sequence sasl-next-step nil sieve-manage-send "AUTHENTICATE \"" "\"" sasl-step-data " \"" base64-encode-string no-line-break done sieve-manage-is-string looking-at 0 sieve-manage-is-okno accept-process-output sieve-manage-erase sieve-manage-ok-p string-match "^SASL \"\\([^\"]+\\)\"" sasl-step-set-data base64-decode-string match-string error "Server not ready for SASL data: %s" throw "Server aborted SASL authentication: %s" "sieve: Login using %s...done"] 17 (#$ . 5156)])
#@15 

(fn BUFFER)
(defalias 'sieve-manage-cram-md5-p #[257 "\300\301\302#\207" [sieve-manage-capability "SASL" "CRAM-MD5"] 5 (#$ . 6746)])
#@74 Login to managesieve server using the CRAM-MD5 SASL method.

(fn BUFFER)
(defalias 'sieve-manage-cram-md5-auth #[257 "\300\301\"\207" [sieve-sasl-auth "CRAM-MD5"] 4 (#$ . 6888)])
#@15 

(fn BUFFER)
(defalias 'sieve-manage-digest-md5-p #[257 "\300\301\302#\207" [sieve-manage-capability "SASL" "DIGEST-MD5"] 5 (#$ . 7074)])
#@76 Login to managesieve server using the DIGEST-MD5 SASL method.

(fn BUFFER)
(defalias 'sieve-manage-digest-md5-auth #[257 "\300\301\"\207" [sieve-sasl-auth "DIGEST-MD5"] 4 (#$ . 7220)])
#@15 

(fn BUFFER)
(defalias 'sieve-manage-scram-md5-p #[257 "\300\301\302#\207" [sieve-manage-capability "SASL" "SCRAM-MD5"] 5 (#$ . 7412)])
#@75 Login to managesieve server using the SCRAM-MD5 SASL method.

(fn BUFFER)
(defalias 'sieve-manage-scram-md5-auth #[257 "\300\301\"\207" [sieve-sasl-auth "SCRAM-MD5"] 4 (#$ . 7556)])
#@15 

(fn BUFFER)
(defalias 'sieve-manage-ntlm-p #[257 "\300\301\302#\207" [sieve-manage-capability "SASL" "NTLM"] 5 (#$ . 7745)])
#@70 Login to managesieve server using the NTLM SASL method.

(fn BUFFER)
(defalias 'sieve-manage-ntlm-auth #[257 "\300\301\"\207" [sieve-sasl-auth "NTLM"] 4 (#$ . 7879)])
#@15 

(fn BUFFER)
(defalias 'sieve-manage-plain-p #[257 "\300\301\302#\207" [sieve-manage-capability "SASL" "PLAIN"] 5 (#$ . 8053)])
#@71 Login to managesieve server using the PLAIN SASL method.

(fn BUFFER)
(defalias 'sieve-manage-plain-auth #[257 "\300\301\"\207" [sieve-sasl-auth "PLAIN"] 4 (#$ . 8189)])
#@15 

(fn BUFFER)
(defalias 'sieve-manage-login-p #[257 "\300\301\302#\207" [sieve-manage-capability "SASL" "LOGIN"] 5 (#$ . 8366)])
#@71 Login to managesieve server using the LOGIN SASL method.

(fn BUFFER)
(defalias 'sieve-manage-login-auth #[257 "\300\301\"\207" [sieve-sasl-auth "LOGIN"] 4 (#$ . 8502)])
#@502 Open a network connection to a managesieve SERVER (string).
Optional argument PORT is port number (integer) on remote server.
Optional argument STREAM is any of `sieve-manage-streams' (a symbol).
Optional argument AUTH indicates authenticator to use, see
`sieve-manage-authenticators' for available authenticators.
If nil, chooses the best stream the server is capable of.
Optional argument BUFFER is buffer (buffer, or string naming buffer)
to work in.

(fn SERVER &optional PORT STREAM AUTH BUFFER)
(defalias 'sieve-manage-open #[1281 "\206r\211\206
\306 q\210\206\n\206\206\f\206$
\307\310\n\"\210\311\n	p$\210\312p!\205w
\204s\313=\204s\3142j\211\205g\211@\211\236A@!\203`\211\315\314\316\"\210A\266\202\202H\2620\210
\204s\317\320!\210\321 \210p)\207" [sieve-manage-default-port sieve-manage-port sieve-manage-server sieve-manage-stream sieve-manage-default-stream sieve-manage-auth sieve-manage-make-process-buffer message "sieve: Connecting to %s..." sieve-manage-open-server sieve-manage-opened auth --cl-block-nil-- throw nil error "Couldn't figure out authenticator for server" sieve-manage-erase sieve-manage-state sieve-manage-authenticators sieve-manage-authenticator-alist] 10 (#$ . 8680)])
#@93 Authenticate on server in BUFFER.
Return `sieve-manage-state' value.

(fn &optional BUFFER)
(defalias 'sieve-manage-authenticate #[256 "r\211\206pq\210\303=\203\304	\n\2368p!\205\305\211\202)\207" [sieve-manage-state sieve-manage-auth sieve-manage-authenticator-alist nonauth 2 auth] 4 (#$ . 9930)])
#@144 Return non-nil if connection to managesieve server in BUFFER is open.
If BUFFER is nil then the current buffer is used.

(fn &optional BUFFER)
(defalias 'sieve-manage-opened #[256 "\301\206p!\211\262\205!\302!\205!r\211q\210\205 \303!\304>)\207" [sieve-manage-process get-buffer buffer-live-p process-status (open run)] 3 (#$ . 10248)])
#@120 Close connection to managesieve server in BUFFER.
If BUFFER is nil, the current buffer is used.

(fn &optional BUFFER)
(defalias 'sieve-manage-close #[256 "r\211\206pq\210\301 \203\302\303!\210\304\305!\210\203%\306!\307>\203%\310!\210\311\312 \210)\313\207" [sieve-manage-process sieve-manage-opened sieve-manage-send "LOGOUT" sit-for 1 process-status (open run) delete-process nil sieve-manage-erase t] 3 (#$ . 10602)])
#@277 Check if capability NAME of server BUFFER match VALUE.
If it does, return the server value of NAME. If not returns nil.
If VALUE is nil, do not check VALUE and return server value.
If NAME is nil, return the full server list of capabilities.

(fn &optional NAME VALUE BUFFER)
(defalias 'sieve-manage-capability #[768 "r\211\206pq\210\204\202(\301\"A@\203%\211\205&\302\"\205&\211\262)\207" [sieve-manage-capability assoc string-match] 7 (#$ . 11041)])
#@25 

(fn &optional BUFFER)
(defalias 'sieve-manage-listscripts #[256 "r\211\206pq\210\300\301!\210\302 )\207" [sieve-manage-send "LISTSCRIPTS" sieve-manage-parse-listscripts] 3 (#$ . 11515)])
#@35 

(fn NAME SIZE &optional BUFFER)
(defalias 'sieve-manage-havespace #[770 "r\211\206pq\210\300\301\302#!\210\303 )\207" [sieve-manage-send format "HAVESPACE \"%s\" %s" sieve-manage-parse-okno] 8 (#$ . 11712)])
#@38 

(fn NAME CONTENT &optional BUFFER)
(defalias 'sieve-manage-putscript #[770 "r\211\206pq\210\301\302\303G%!\210\304 )\207" [sieve-manage-client-eol sieve-manage-send format "PUTSCRIPT \"%s\" {%d+}%s%s" sieve-manage-parse-okno] 10 (#$ . 11932)])
#@30 

(fn NAME &optional BUFFER)
(defalias 'sieve-manage-deletescript #[513 "r\211\206pq\210\300\301\302\"!\210\303 )\207" [sieve-manage-send format "DELETESCRIPT \"%s\"" sieve-manage-parse-okno] 6 (#$ . 12191)])
#@44 

(fn NAME OUTPUT-BUFFER &optional BUFFER)
(defalias 'sieve-manage-getscript #[770 "r\211\206pq\210\300\301\302\"!\210\303 \304 \210rq\210\211c\210)\305 \262)\207" [sieve-manage-send format "GETSCRIPT \"%s\"" sieve-manage-parse-string sieve-manage-parse-crlf sieve-manage-parse-okno] 7 (#$ . 12409)])
#@30 

(fn NAME &optional BUFFER)
(defalias 'sieve-manage-setactive #[513 "r\211\206pq\210\300\301\302\"!\210\303 )\207" [sieve-manage-send format "SETACTIVE \"%s\"" sieve-manage-parse-okno] 6 (#$ . 12721)])
(defalias 'sieve-manage-wait-for-answer #[0 "\300\301\211\204\302\301\303#\262eb\210\304\305\306\"\210\202\207" ["^\\(OK\\|NO\\).*\n" nil search-forward-regexp t sleep-for 0 50] 6])
(defalias 'sieve-manage-drop-next-answer #[0 "\300 \210\301 \207" [sieve-manage-wait-for-answer sieve-manage-erase] 1])
#@12 

(fn RSP)
(defalias 'sieve-manage-ok-p #[257 "\211\242\206\300\227\301\230\207" ["" "ok"] 3 (#$ . 13241)])
(defalias 'sieve-manage-is-okno #[0 "\301\302P!\205#\303\304!\303\305!\303\306!\211\203\306\224b\210\307 \262E\266\203\207" [sieve-manage-server-eol looking-at "^\\(OK\\|NO\\)\\( (\\([^)]+\\))\\)?\\( \\(.*\\)\\)?" match-string 1 3 5 sieve-manage-is-string] 6])
(defalias 'sieve-manage-parse-okno #[0 "\300\211\204\301\302p!\303\"\210eb\210\304 \262\202\305 \210\211\207" [nil accept-process-output get-buffer-process 1 sieve-manage-is-okno sieve-manage-erase] 4])
#@153 Parse managesieve capability string `STR'.
Return alist of capabilities, suitable for assignment
to local variable `sieve-manage-capability'.

(fn STR)
(defalias 'sieve-manage-parse-capability #[257 "\301\302\303\304\305\306\"\"\"\307!@@\310\230\203\311\211\207" [sieve-manage-state delq nil mapcar split-string-and-unquote split-string "\n" last "OK" nonauth] 8 (#$ . 13835)])
(defalias 'sieve-manage-is-string #[0 "\301\302!\203\303\304!\305\225b\210\207\301\306P!\2052\305\225\307\303\304!!d\\W?\2050\\b\210\211\\{\266\202\207" [sieve-manage-server-eol looking-at "\"\\([^\"]+\\)\"" match-string 1 0 "{\\([0-9]+\\+?\\)}" string-to-number] 5])
(defalias 'sieve-manage-parse-string #[0 "\300\211\204\301\302p!\303\"\210eb\210\304 \262\202\305`!\210\211\207" [nil accept-process-output get-buffer-process 1 sieve-manage-is-string sieve-manage-erase] 4])
(defalias 'sieve-manage-parse-crlf #[0 "\301!\205\n\302\303\225!\207" [sieve-manage-server-eol looking-at sieve-manage-erase 0] 2])
(defalias 'sieve-manage-parse-listscripts #[0 "\301\211\211\204\\\302 \211\262\204$\303 \211\262\204$\304\305p!\306\"\210eb\210\202\203\307\310P!\204=\304\305p!\306\"\210eb\210\202(\311\306!\203M\312BB\262\202RB\262\313\225b\210\301\262\202\314 \210\315!\203i\211\202j\207" [sieve-manage-server-eol nil sieve-manage-is-okno sieve-manage-is-string accept-process-output get-buffer-process 1 looking-at "\\( ACTIVE\\)?" match-string active 0 sieve-manage-erase sieve-manage-ok-p] 6])
#@15 

(fn CMDSTR)
(defalias 'sieve-manage-send #[257 "\211P\262	\203r\303	!q\210\304 \210\305 \210db\210\211c\210)\306\n\"\207" [sieve-manage-client-eol sieve-manage-log sieve-manage-process get-buffer-create mm-enable-multibyte buffer-disable-undo process-send-string] 4 (#$ . 15361)])
(provide 'sieve-manage)

Zerion Mini Shell 1.0