Edit file File name : nnimap.elc Content :;ELC ;;; Compiled ;;; in Emacs version 26.1 ;;; 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 "\302\303!\210\302\304!\210\302\305!\210\302\306!\210\302\307!\210\302\310!\210\302\311!\210\302\312!\210\302\313!\210\314\315\316\"\210\314\317\316\"\210\320\236\203A \320\236A\321\322\323\"\240\210\202L \320\321\322\323\"\323\211FB\320 \236\204X \320\324D B\323\207" [nnoo-definition-alist nnoo-state-alist require nnheader gnus-util gnus nnoo netrc utf7 tls parse-time nnmail autoload auth-source-forget+ "auth-source" auth-source-search nnimap mapcar list nil "*internal-non-initialized-backend*"] 4) #@105 The address of the IMAP server. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnimap-address nil (#$ . 930)) (nnoo-define 'nnimap-address nil) #@128 Username to use for authentication to the IMAP server. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnimap-user nil (#$ . 1114)) (nnoo-define 'nnimap-user nil) #@186 The IMAP port used. If nnimap-stream is `ssl', this will default to `imaps'. If not, it will default to `imap'. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnimap-server-port nil (#$ . 1316)) (nnoo-define 'nnimap-server-port nil) #@296 How nnimap talks to the IMAP server. The value should be either `undecided', `ssl' or `tls', `network', `starttls', `plain', or `shell'. If the value is `undecided', nnimap tries `ssl' first, then falls back on `network'. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnimap-stream 'undecided (#$ . 1590)) (nnoo-define 'nnimap-stream nil) #@264 What command to execute to connect to an IMAP server. This will only be used if the connection type is `shell'. See the `open-network-stream' documentation for an explanation of the format. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnimap-shell-program (byte-code "\301\300!\203 <\203 @\207\207\302\207" [imap-shell-program boundp "ssh %s imapd"] 2) (#$ . 1971)) (nnoo-define 'nnimap-shell-program nil) #@226 The mail box where incoming mail arrives and should be split out of. This can be a string or a list of strings For example, "INBOX" or ("INBOX" "SENT"). This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnimap-inbox nil (#$ . 2425)) (nnoo-define 'nnimap-inbox nil) #@140 How mail is split. Uses the same syntax as `nnmail-split-methods'. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnimap-split-methods nil (#$ . 2727)) (nnoo-define 'nnimap-split-methods nil) #@119 Uses the same syntax as `nnmail-split-fancy'. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnimap-split-fancy nil (#$ . 2959)) (nnoo-define 'nnimap-split-fancy nil) #@148 Articles with the flags in the list will not be considered when splitting. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnimap-unsplittable-articles '(%Deleted %Seen) (#$ . 3166)) (byte-code "\300\301\302\"\210\303\304\305\306#\207" [nnoo-define nnimap-unsplittable-articles nil make-obsolete-variable nnimap-split-rule "see `nnimap-split-methods'." "Emacs 24.1"] 4) #@213 How nnimap authenticate itself to the server. Possible choices are nil (use default methods), `anonymous', `login', `plain' and `cram-md5'. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnimap-authenticator nil (#$ . 3575)) (nnoo-define 'nnimap-authenticator nil) #@254 If non-nil, expunge articles after deleting them. This is always done if the server supports UID EXPUNGE, but it's not done by default on servers that doesn't support that command. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnimap-expunge t (#$ . 3880)) (nnoo-define 'nnimap-expunge nil) #@210 If non-nil, try to use streaming commands with IMAP servers. Switching this off will make nnimap slower, but it helps with some servers. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnimap-streaming t (#$ . 4212)) (nnoo-define 'nnimap-streaming nil) (defvar nnimap-connection-alist nil) (nnoo-define 'nnimap-connection-alist nil) (defvar nnimap-current-infos nil) (nnoo-define 'nnimap-current-infos nil) (defalias 'nnimap-decode-gnus-group #[(group) "\301\302\"\207" [group decode-coding-string utf-8] 3]) (defalias 'nnimap-encode-gnus-group #[(group) "\301\302\"\207" [group encode-coding-string utf-8] 3]) #@315 If non-nil, Gnus will fetch partial articles. If t, Gnus will fetch only the first part. If a string, it will fetch all parts that have types that match that string. A likely value would be "text/" to automatically fetch all textual parts. This is a Gnus server variable. See Info node `(gnus)Select Methods'. (defvar nnimap-fetch-partial-articles nil (#$ . 4864)) (byte-code "\300\301\302\"\210\303\304\302\305\306\307%\210\310\311\302\312\313\314\315\316\306\304& \207" [nnoo-define nnimap-fetch-partial-articles nil custom-declare-group nnimap "IMAP for Gnus." :group gnus custom-declare-variable nnimap-request-articles-find-limit "Limit the number of articles to look for after moving an article." :type (choice (const nil) integer) :version "24.4"] 10) (defvar nnimap-process nil) (defvar nnimap-status-string "") #@72 Internal variable with default value for `nnimap-split-download-body'. (defvar nnimap-split-download-body-default nil (#$ . 5694)) (defvar nnimap-keepalive-timer nil) (defvar nnimap-process-buffers nil) #@41 compiler-macro for inlining `nnimap-p'. (defalias 'nnimap-p--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block nnimap-p (and (memq (type-of cl-x) cl-struct-nnimap-tags) t)) nil] 7 (#$ . 5903)]) (put 'nnimap-p 'compiler-macro 'nnimap-p--cmacro) (defalias 'nnimap-p #[(cl-x) "\302! >\205 \303\207" [cl-x cl-struct-nnimap-tags type-of t] 2]) (byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put nnimap-p side-effect-free error-free put nnimap cl-deftype-satisfies] 5) #@45 compiler-macro for inlining `nnimap-group'. (defalias 'nnimap-group--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block nnimap-group (or (nnimap-p cl-x) (signal 'wrong-type-argument (list 'nnimap cl-x))) (aref cl-x 1)) nil] 7 (#$ . 6446)]) (put 'nnimap-group 'compiler-macro 'nnimap-group--cmacro) #@46 Access slot "group" of `nnimap' struct CL-X. (defalias 'nnimap-group #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-nnimap-tags type-of signal wrong-type-argument nnimap 1] 4 (#$ . 6806)]) (byte-code "\300\301\302\303#\300\207" [function-put nnimap-group side-effect-free t] 4) #@47 compiler-macro for inlining `nnimap-process'. (defalias 'nnimap-process--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block nnimap-process (or (nnimap-p cl-x) (signal 'wrong-type-argument (list 'nnimap cl-x))) (aref cl-x 2)) nil] 7 (#$ . 7115)]) (put 'nnimap-process 'compiler-macro 'nnimap-process--cmacro) #@48 Access slot "process" of `nnimap' struct CL-X. (defalias 'nnimap-process #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-nnimap-tags type-of signal wrong-type-argument nnimap 2] 4 (#$ . 7485)]) (byte-code "\300\301\302\303#\300\207" [function-put nnimap-process side-effect-free t] 4) #@48 compiler-macro for inlining `nnimap-commands'. (defalias 'nnimap-commands--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block nnimap-commands (or (nnimap-p cl-x) (signal 'wrong-type-argument (list 'nnimap cl-x))) (aref cl-x 3)) nil] 7 (#$ . 7800)]) (put 'nnimap-commands 'compiler-macro 'nnimap-commands--cmacro) #@49 Access slot "commands" of `nnimap' struct CL-X. (defalias 'nnimap-commands #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-nnimap-tags type-of signal wrong-type-argument nnimap 3] 4 (#$ . 8175)]) (byte-code "\300\301\302\303#\300\207" [function-put nnimap-commands side-effect-free t] 4) #@52 compiler-macro for inlining `nnimap-capabilities'. (defalias 'nnimap-capabilities--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block nnimap-capabilities (or (nnimap-p cl-x) (signal 'wrong-type-argument (list 'nnimap cl-x))) (aref cl-x 4)) nil] 7 (#$ . 8493)]) (put 'nnimap-capabilities 'compiler-macro 'nnimap-capabilities--cmacro) #@53 Access slot "capabilities" of `nnimap' struct CL-X. (defalias 'nnimap-capabilities #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-nnimap-tags type-of signal wrong-type-argument nnimap 4] 4 (#$ . 8888)]) (byte-code "\300\301\302\303#\300\207" [function-put nnimap-capabilities side-effect-free t] 4) #@53 compiler-macro for inlining `nnimap-select-result'. (defalias 'nnimap-select-result--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block nnimap-select-result (or (nnimap-p cl-x) (signal 'wrong-type-argument (list 'nnimap cl-x))) (aref cl-x 5)) nil] 7 (#$ . 9218)]) (put 'nnimap-select-result 'compiler-macro 'nnimap-select-result--cmacro) #@54 Access slot "select-result" of `nnimap' struct CL-X. (defalias 'nnimap-select-result #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-nnimap-tags type-of signal wrong-type-argument nnimap 5] 4 (#$ . 9618)]) (byte-code "\300\301\302\303#\300\207" [function-put nnimap-select-result side-effect-free t] 4) #@48 compiler-macro for inlining `nnimap-newlinep'. (defalias 'nnimap-newlinep--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block nnimap-newlinep (or (nnimap-p cl-x) (signal 'wrong-type-argument (list 'nnimap cl-x))) (aref cl-x 6)) nil] 7 (#$ . 9951)]) (put 'nnimap-newlinep 'compiler-macro 'nnimap-newlinep--cmacro) #@49 Access slot "newlinep" of `nnimap' struct CL-X. (defalias 'nnimap-newlinep #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-nnimap-tags type-of signal wrong-type-argument nnimap 6] 4 (#$ . 10326)]) (byte-code "\300\301\302\303#\300\207" [function-put nnimap-newlinep side-effect-free t] 4) #@46 compiler-macro for inlining `nnimap-server'. (defalias 'nnimap-server--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block nnimap-server (or (nnimap-p cl-x) (signal 'wrong-type-argument (list 'nnimap cl-x))) (aref cl-x 7)) nil] 7 (#$ . 10645)]) (put 'nnimap-server 'compiler-macro 'nnimap-server--cmacro) #@47 Access slot "server" of `nnimap' struct CL-X. (defalias 'nnimap-server #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-nnimap-tags type-of signal wrong-type-argument nnimap 7] 4 (#$ . 11011)]) (byte-code "\300\301\302\303#\300\207" [function-put nnimap-server side-effect-free t] 4) #@57 compiler-macro for inlining `nnimap-last-command-time'. (defalias 'nnimap-last-command-time--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block nnimap-last-command-time (or (nnimap-p cl-x) (signal 'wrong-type-argument (list 'nnimap cl-x))) (aref cl-x 8)) nil] 7 (#$ . 11324)]) (put 'nnimap-last-command-time 'compiler-macro 'nnimap-last-command-time--cmacro) #@58 Access slot "last-command-time" of `nnimap' struct CL-X. (defalias 'nnimap-last-command-time #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-nnimap-tags type-of signal wrong-type-argument nnimap 8] 4 (#$ . 11745)]) (byte-code "\300\301\302\303#\300\207" [function-put nnimap-last-command-time side-effect-free t] 4) #@48 compiler-macro for inlining `nnimap-greeting'. (defalias 'nnimap-greeting--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block nnimap-greeting (or (nnimap-p cl-x) (signal 'wrong-type-argument (list 'nnimap cl-x))) (aref cl-x 9)) nil] 7 (#$ . 12091)]) (put 'nnimap-greeting 'compiler-macro 'nnimap-greeting--cmacro) #@49 Access slot "greeting" of `nnimap' struct CL-X. (defalias 'nnimap-greeting #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-nnimap-tags type-of signal wrong-type-argument nnimap 9] 4 (#$ . 12467)]) (byte-code "\300\301\302\303#\300\207" [function-put nnimap-greeting side-effect-free t] 4) #@48 compiler-macro for inlining `nnimap-examined'. (defalias 'nnimap-examined--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block nnimap-examined (or (nnimap-p cl-x) (signal 'wrong-type-argument (list 'nnimap cl-x))) (aref cl-x 10)) nil] 7 (#$ . 12786)]) (put 'nnimap-examined 'compiler-macro 'nnimap-examined--cmacro) #@49 Access slot "examined" of `nnimap' struct CL-X. (defalias 'nnimap-examined #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-nnimap-tags type-of signal wrong-type-argument nnimap 10] 4 (#$ . 13163)]) (byte-code "\300\301\302\303#\300\207" [function-put nnimap-examined side-effect-free t] 4) #@51 compiler-macro for inlining `nnimap-stream-type'. (defalias 'nnimap-stream-type--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block nnimap-stream-type (or (nnimap-p cl-x) (signal 'wrong-type-argument (list 'nnimap cl-x))) (aref cl-x 11)) nil] 7 (#$ . 13483)]) (put 'nnimap-stream-type 'compiler-macro 'nnimap-stream-type--cmacro) #@52 Access slot "stream-type" of `nnimap' struct CL-X. (defalias 'nnimap-stream-type #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-nnimap-tags type-of signal wrong-type-argument nnimap 11] 4 (#$ . 13875)]) (byte-code "\300\301\302\303#\300\207" [function-put nnimap-stream-type side-effect-free t] 4) #@54 compiler-macro for inlining `nnimap-initial-resync'. (defalias 'nnimap-initial-resync--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block nnimap-initial-resync (or (nnimap-p cl-x) (signal 'wrong-type-argument (list 'nnimap cl-x))) (aref cl-x 12)) nil] 7 (#$ . 14204)]) (put 'nnimap-initial-resync 'compiler-macro 'nnimap-initial-resync--cmacro) #@55 Access slot "initial-resync" of `nnimap' struct CL-X. (defalias 'nnimap-initial-resync #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-nnimap-tags type-of signal wrong-type-argument nnimap 12] 4 (#$ . 14611)]) (byte-code "\300\301\302\303#\304\305\306\"\207" [function-put nnimap-initial-resync side-effect-free t defalias copy-nnimap copy-sequence] 4) #@203 compiler-macro for inlining `make-nnimap'. (fn CL-WHOLE &cl-quote &key GROUP PROCESS COMMANDS CAPABILITIES SELECT-RESULT NEWLINEP SERVER LAST-COMMAND-TIME GREETING EXAMINED STREAM-TYPE INITIAL-RESYNC) (defalias 'make-nnimap--cmacro #[(cl-whole &rest #1=#:--cl-rest--) "\306\307\"A@\306\310\"A@\306\311\"A@\306\312\"A@\306\313\"A@\306\314\"A@\306\315\"A@\306\316\"A@\306\317\"A@\306\320\"A@\306\321\"A@ \306\322\"A@!\"\"\203\216 \"@\323>\203u \"AA\211\"\202` \324>A@\203\204 \325\211\"\202` \326\327\"@\"\210\202^ )\330\331\332\325#\325 \n\f !&.\f\207" [#1# group process commands capabilities select-result plist-member :group :process :commands :capabilities :select-result :newlinep :server :last-command-time :greeting :examined :stream-type :initial-resync (:group :process :commands :capabilities :select-result :newlinep :server :last-command-time :greeting :examined :stream-type :initial-resync :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:group :process :commands :capabilities :select-result :newlinep :server :last-command-time :greeting :examined :stream-type :initial-resync)" cl--defsubst-expand (group process commands capabilities select-result newlinep server last-command-time greeting examined stream-type initial-resync) (cl-block make-nnimap (record 'nnimap group process commands capabilities select-result newlinep server last-command-time greeting examined stream-type initial-resync)) newlinep server last-command-time greeting examined stream-type initial-resync #2=#:--cl-keys-- cl-whole] 19 (#$ . 14995)]) (put 'make-nnimap 'compiler-macro 'make-nnimap--cmacro) #@183 Constructor for objects of type `nnimap'. (fn &key GROUP PROCESS COMMANDS CAPABILITIES SELECT-RESULT NEWLINEP SERVER LAST-COMMAND-TIME GREETING EXAMINED STREAM-TYPE INITIAL-RESYNC) (defalias 'make-nnimap #[(&rest #1=#:--cl-rest--) "\306\307\"A@\306\310\"A@\306\311\"A@\306\312\"A@\306\313\"A@\306\314\"A@\306\315\"A@\306\316\"A@\306\317\"A@\306\320\"A@\306\321\"A@\306\322\"A@ !!\203\216 !@\323>\203u !AA\211!\202` \324>A@\203\204 \325\211!\202` \326\327!@\"\210\202^ )\330\331 \n\f & .\f\207" [#1# group process commands capabilities select-result plist-member :group :process :commands :capabilities :select-result :newlinep :server :last-command-time :greeting :examined :stream-type :initial-resync (:group :process :commands :capabilities :select-result :newlinep :server :last-command-time :greeting :examined :stream-type :initial-resync :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:group :process :commands :capabilities :select-result :newlinep :server :last-command-time :greeting :examined :stream-type :initial-resync)" record nnimap newlinep server last-command-time greeting examined stream-type initial-resync #2=#:--cl-keys--] 15 (#$ . 16683)]) (byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303& \207" [function-put make-nnimap side-effect-free t cl-struct-define nnimap nil cl-structure-object record ((cl-tag-slot) (group) (process) (commands) (capabilities) (select-result) (newlinep) (server) (last-command-time) (greeting) (examined) (stream-type) (initial-resync)) cl-struct-nnimap-tags] 11) (defvar nnimap-object nil) (defvar nnimap-mark-alist '((read "\\Seen" %Seen) (tick "\\Flagged" %Flagged) (reply "\\Answered" %Answered) (expire "gnus-expire") (dormant "gnus-dormant") (score "gnus-score") (save "gnus-save") (download "gnus-download") (forward "gnus-forward"))) (defvar nnimap-quirks '(("QRESYNC" "Zimbra" "QRESYNC ") ("MOVE" "Dovecot" nil))) (defvar nnimap-inhibit-logging nil) (defalias 'nnimap-buffer #[nil "\301!\207" [nntp-server-buffer nnimap-find-process-buffer] 2]) (defalias 'nnimap-header-parameters #[nil "\302\303B\304B\305\306!\203 \307B\310B\311\312 \203\"