;ELC   
;;; Compiled by nelhage@localhost.localdomain on Sun Dec 11 02:47:33 2005
;;; from file /home/nelhage/Desktop/vm-7.19/vm-pop.el
;;; in Emacs version 22.0.50.7
;;; with all optimizations.

;;; This file uses opcodes which do not exist in Emacs 18.
(if (and (boundp 'emacs-version)
	 (< (aref emacs-version (1- (length emacs-version))) ?A)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19")))
    (error "`vm-pop.el' was compiled for Emacs 19 or later"))

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


(byte-code "\300\301!\203 \301\302\303\"\210\301\304\305\"\210\301\306\307\"\210\202< \310\302\311\312#\210\310\302\313\314#\210\310\304\311\315#\210\310\304\313\316#\210\310\306\311\317#\210\310\306\313\320#\210\300\207" [fboundp define-error vm-cant-uidl "Can't use UIDL" vm-dele-failed "DELE command failed" vm-uidl-failed "UIDL command failed" put error-conditions (vm-cant-uidl error) error-message "Can't use UIDL" (vm-dele-failed error) "DELE command failed" (vm-uidl-failed error) "UIDL command failed"] 4)
(defalias 'vm-folder-pop-maildrop-spec #[nil "\301H\207" [vm-folder-access-data 0] 2])
(put 'vm-folder-pop-maildrop-spec 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-folder-pop-process #[nil "\301H\207" [vm-folder-access-data 1] 2])
(put 'vm-folder-pop-process 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-set-folder-pop-maildrop-spec #[(val) "\302	I\207" [vm-folder-access-data val 0] 3])
(put 'vm-set-folder-pop-maildrop-spec 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-set-folder-pop-process #[(val) "\302	I\207" [vm-folder-access-data val 1] 3])
(put 'vm-set-folder-pop-process 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-pop-move-mail #[(source destination) "\306	\307\310!\205 \306\311\312\217\313\n!\306\314\306\315\n!\304E\306\211\211\211\211\211\211\316\306\211\211 !\"#$\317\n%\"\211\203[ A\202p \317\315\n!%\"\211\203n A\202p &\320\216\321\322\215.\207" [vm-pop-messages-per-session vm-pop-bytes-per-session source vm-pop-retrieved-messages uidl process-buffer nil fboundp find-file-name-handler (byte-code "\301\302\"\207" [source find-file-name-handler vm-pop-move-mail] 3) ((wrong-number-of-arguments (find-file-name-handler source))) vm-safe-popdrop-string t vm-popdrop-sans-password 0 assoc ((byte-code "\n\306=\203 \307\232\204 \310 \210\f\203 \311\f!\210\203! \312!\210\306\207" [pop-retrieved-messages vm-pop-retrieved-messages vm-flush-interval retrieved statblob process t 0 vm-stuff-pop-retrieved vm-pop-stop-status-timer vm-pop-end-session] 2)) done (byte-code "\203 \306\307\310	\n#\"\210\311	!\211\204 \306\307\312\"\210\304!\212\fq\210\313\314\"\210\315!\211@A@\203@ \316W\203E \306\307\312\"\210\316\317\320 \321\"\210\322\"\210X\203\220 \323!\203t W\203\220 \323!\203\203 W\203\220 \324\325\215\210T\211\202_ \317\232)?\207" [handler source destination process process-buffer response throw done vm-pop-move-mail vm-pop-make-session nil vm-pop-send-command "STAT" vm-pop-read-stat-response 1 0 vm-pop-start-status-timer vm-set-pop-stat-x-box vm-set-pop-stat-x-maxmsg natnump skip (byte-code "\306	\"\210\n\203 \307\310\311\217\210\312\313\314	\"\"\210\315!\316\f\"\210\250\203\203 \fV\203\203 \"\2039 \317#\f	$\202: \320\211$\321=\204\203 $\322=\203h \323\324	\"\210\312\313\325	\"\"\210\326!\204~ \327\330%\331\232?\"\210\202~ \"\203u \323\332	\"\210\202~ \323\333	#\f%\210\327\320\334\"\210\323\335	&#$\210\312\313\336	\"\"\210\326!\204\243 \327\330%\331\232?\"\210\337'#\204\265 \327\330%\331\232?\"\210%T%(\203\305 )\f\\)*\204\333 +\203\333 \340+!,B,\202\362 \312\313\341	\"\"\210\326!\204\362 \327\330%\331\232?\"\210\307\207" [statblob n can-uidl process message-size vm-pop-max-message-size vm-set-pop-stat-x-currmsg nil (byte-code "\306\307	\310\311\n\"\"\210\312	\313\"\211\204 \314\315\306\"\210\316\317\"\3208\211\204* \314\315\306\"\210\f\240\210\235\203H \203C \321\322\n$\210\323\324\313\"\210)\306\207" [list process n response uidl msgid nil vm-pop-send-command format "UIDL %d" vm-pop-read-response t signal vm-cant-uidl vm-parse "\\([!-~]+\\) *" 2 message "Skipping message %d (of %d) from %s (retrieved already)..." throw skip pop-retrieved-messages vm-pop-ok-to-ask mailbox-count popdrop] 6) ((vm-cant-uidl (byte-code "\204 	\203 \306\n!\204 \307\310\n\"\210\311\312\313\232?\"\210\202\" \314\211\314\207" [auto-expunge vm-pop-ok-to-ask popdrop retrieved can-uidl msgid vm-pop-ask-about-no-uidl message "Skipping mailbox %s (no UIDL support)" throw done 0 nil] 5))) vm-pop-send-command format "LIST %d" vm-pop-read-list-response vm-set-pop-stat-x-need vm-pop-ask-about-large-message skip retrieve delete message "Deleting message %d..." "DELE %d" vm-pop-read-response throw done 0 "Skipping message %d..." "Skipping message %d in %s, too large (%d > %d)..." t "Retrieving message %d (of %d) from %s..." "RETR %d" vm-pop-retrieve-to-target copy-sequence "DELE %d" vm-pop-ok-to-ask popdrop response retrieved mailbox-count destination b-per-session retrieved-bytes auto-expunge msgid pop-retrieved-messages] 7) mailbox-count mailbox-size n retrieved-bytes statblob popdrop m-per-session retrieved b-per-session] 7) retrieved-bytes retrieved n response message-size mailbox-size mailbox-count x auto-expunge pop-retrieved-messages msgid can-uidl statblob popdrop handler b-per-session m-per-session process vm-pop-auto-expunge-alist vm-pop-expunge-after-retrieving] 20])
(defalias 'vm-pop-check-mail #[(source) "\306\307\310!\205 \306\311\312\217\313	!\314\306\211\315\216\212\316\317\215.	\207" [vm-pop-retrieved-messages source response x count popdrop nil fboundp find-file-name-handler (byte-code "\301\302\"\207" [source find-file-name-handler vm-pop-check-mail] 3) ((wrong-number-of-arguments (find-file-name-handler source))) vm-popdrop-sans-password 0 ((byte-code "\203\n \302\303	#\210\303\207" [process vm-pop-ok-to-ask vm-pop-end-session nil] 4)) done (byte-code "\203\f \306\307\310	\"\"\210\311	!\211\204 \306\307\312\"\210\313\n!q\210\314\n\315\"\210\316\n!\211\203| @\204= \317	\320\"\210\306\307\312\"\210\202i \203i \321@A\f\"\211\203] A@\232\203] \3228\323=\204b TA\211\204A \317	\324\211\211F\"\210\306\307\324=?\"\210\314\n\325\"\210\326\n!\211\205\230 \317	@\324\211\211F\"\210@\324\232?\207" [handler source process response retrieved x throw done vm-pop-check-mail vm-pop-make-session nil process-buffer vm-pop-send-command "UIDL" vm-pop-read-uidl-long-response vm-store-folder-totals (0 0 0 0) assoc 2 uidl 0 "STAT" vm-pop-read-stat-response popdrop count] 7) retrieved handler process] 7])
(defalias 'vm-expunge-pop-messages #[nil "\306 \210\203 \307!\204 \310\311!\210q\210\202! 	\312>\204! \310\313!\210\314 \210	\315=\203/ \310\316\n\"\210t\203= \317=\203= \310\320!\210\321\211\211\322\323\211\321\211\211\211\211-./012345\324\216\212\325\3216\"6\3266\327\"\2116\203{ \321\330\331\217\210\202o 3\203\317 \332\333!q\210\3217\334 \210\335\336\3372!\203\230 \340\202\232 22\341U\203\245 \342\202\246 \343#c\210\344c\2103\237\2103\211\203\305 \345@\346\261\210A\211\204\267 \3237\347p!\210\202\354 \350\351\3372!\203\334 \352\202\336 22\341U\203\351 \353\202\352 \354#\210*\325\3216\"\2116.\207" [vm-mail-buffer major-mode this-command vm-folder-access-method match mp vm-follow-summary-cursor buffer-name error "Folder buffer has been killed." (vm-mode vm-virtual-mode) "No VM folder buffer associated with this buffer" vm-check-for-killed-summary vm-virtual-mode "%s cannot be applied to virtual folders." pop "This command is not meant for POP folders.  Use the normal folder expunge instead." nil 0 t ((byte-code "\203 \301!\210\301\207" [process vm-pop-end-session] 2)) delq sort #[(a b) "A@	A@\231\203\f \302\207	A@A@\231\203 \303\207@	@\231\203\" \302\207\303\207" [a b t nil] 2] (byte-code "\300\301\215\207" [replay (byte-code "@\n	A@\232\2049 \203 \306!\210\307	A@\310\n!\307\311\312\217\210\313!q\210\314\315\"\210\316!\211\2049 \317\320\307\"\210\321	@\"\211\203b \314\322\323@\"\"\210\324!\204Y \317\325\307\"\210\307\240\210TA\307\207" [mp data source process popdrop uidl-alist vm-pop-end-session nil vm-safe-popdrop-string (byte-code "\303\304\"\210\305	!\211\204 \306\307\310\"\210\303\311\"\207" [popdrop source process message "Opening POP session to %s..." vm-pop-make-session signal error nil "Expunging messages in %s..."] 4) ((error (byte-code "\304\305\"\210	B\306\307!\210\n@A@\232\203 \nA\211\202 \310\311\312\"\207" [popdrop trouble mp source message "Couldn't open POP session to %s, skipping..." sleep-for 2 throw replay t] 4))) process-buffer vm-pop-send-command "UIDL" vm-pop-read-uidl-long-response signal vm-uidl-failed rassoc format "DELE %s" vm-pop-read-response vm-dele-failed match delete-count] 6)] 2) ((vm-dele-failed (byte-code "\305\306@	#\210	\nB\307\310!\210@A@\f\232\203 A\211\202 \311\312\313\"\207" [match popdrop trouble mp source message "DELE %s failed on %s, skipping rest of mailbox..." sleep-for 2 throw replay t] 5)) (vm-uidl-failed (byte-code "\305\306@	#\210	\nB\307\310!\210@A@\f\232\203 A\211\202 \311\312\313\"\207" [match popdrop trouble mp source message "UIDL %s failed on %s, skipping this mailbox..." sleep-for 2 throw replay t] 5))) get-buffer-create "*POP Expunge Trouble*" erase-buffer format "%s POP message%s expunged.\n\n" zerop "No" 1 "" "s" "VM had problems expunging messages from:\n" "   " "\n" display-buffer message "%s POP message%s expunged." "No" "" "s" data uidl-alist popdrop vm-pop-ok-to-ask vm-global-block-new-mail delete-count trouble source process vm-pop-retrieved-messages buffer-read-only] 12 "\
Deletes all messages from POP mailbox that have already been retrieved
into the current folder.  VM sends POP DELE commands to all the
relevant POP servers to remove the messages." nil])
(defalias 'vm-pop-make-session #[(source) "\306\211\307	!\n\203 \310\202 \203 \310\202 \311\n\203 \310\202( \203' \310\202( \311\306\211\312\306\211\211\211\211\211\211\211\211\211\211\211 \313\216\314\315\215.\207" [vm-folder-type source vm-xemacs-mule-p vm-xemacs-file-coding-p source-nopwd process-buffer nil vm-safe-popdrop-string binary no-conversion "POP" ((byte-code "\203	 \301\302\"\210\303 \207" [process-to-shutdown vm-pop-end-session t vm-tear-down-stunnel-random-data] 3)) done (byte-code "\306!\211G\307U\2038 	@\310\232\203! \311\312\f\2045 \313\314!\210\2025 	@\315\232\2035 \311\316@\2045 \313\317!\210	A	@A	A@B\320	8C\321	8D\322	8E\323!FA\204_ \313\324\"\210B\204i \313\325\"\210\326\327B\"\203w \330B!BC\204\201 \313\331\"\210D\204\213 \313\332\"\210E\204\225 \313\333\"\210E\334\232\203\306 \335FG\"A@\211E\204\306 H\204\275 \336\337I\"\210\340\341\342\"\210\202\306 \343\344\345I\"!E\335FG\"\204\331 FEDGBG\346\344\347A#!J\212Jq\210K\206\357 LM\350J!\210\351\352!\210\353 \210\354\355!\203\355N\203\356\202O\203\356\202\357\311\"\210\360\361\362 \363\261\210\344\364AB#c\210\n\203H\365 \210\366\367J\f\370AB\"P\244%Q\202h\203]\371J\372\373AB\"$Q\202h\371JAB$QQ\204r\340\341\342\"\210\374\375!\210`*\376Q!\210\377Q\311\"\211R\204\225\201U Q!\210\340\341\342\"\210QSC\201V \232\203\371\201W Q\344\201X D\"\"\210\377Q!\204\274\340\341\342\"\210\201W Q\344\201Y E\"\"\210\377Q!\204\304\201Z FEDG\"G\336\201[ I\"\210H\203\361\201\\ \320!\210\340\341\342\"\210\202\304C\201] \232\2039\201W Q\344\201^ D\"\"\210\377Q!\204\340\341\342\"\210\201W Q\344\201_ E\"\"\210\377Q!\204\304\340\341\342\"\210\202\304C\201` \232\203\274\201a R\201b \"\211T@\211T\204vdb\210\374\201c !\210\336\201d I\"\210H\203q\201\\ \320!\210\340\341\342\"\210\201W Q\344\201e D\201f TEP!#\"\210\377Q!\204\304\201Z FEDG\"G\336\201g I\"\210H\203\264\201\\ \320!\210\340\341\342\"\210\202\304\313\201h C\"\210\342SQ)\207" [source source-list use-ssl session-name vm-stunnel-program use-ssh vm-pop-parse-spec-to-list 6 "pop-ssl" t "POP over SSL" error "vm-stunnel-program must be non-nil to use POP over SSL." "pop-ssh" "POP over SSH" "vm-ssh-program must be non-nil to use POP over SSH." 2 3 4 vm-popdrop-sans-password "No host in POP maildrop specification, \"%s\"" "No port in POP maildrop specification, \"%s\"" string-match "^[0-9]+$" string-to-int "No authentication method in POP maildrop specification, \"%s\"" "No user in POP maildrop specification, \"%s\"" "No password in POP maildrop specification, \"%s\"" "*" assoc message "Need password for %s" throw done nil vm-read-password format "POP password for %s: " vm-make-work-buffer "trace of %s session to %s" buffer-disable-undo make-local-variable vm-pop-read-point erase-buffer fboundp set-buffer-file-coding-system binary no-conversion "starting " " session " current-time-string "\n" "connecting to %s:%s\n" vm-setup-stunnel-random-data-if-needed apply start-process vm-stunnel-configuration-args open-network-stream "127.0.0.1" vm-setup-ssh-tunnel insert-before-markers "connected\n" process-kill-without-query vm-pop-read-response vm-ssh-program host port auth user pass source-nopwd vm-pop-passwords vm-pop-ok-to-ask popdrop process-buffer folder-type vm-default-folder-type vm-folder-type vm-xemacs-mule-p vm-xemacs-file-coding-p vm-stunnel-program-switches process greeting process-to-shutdown timestamp delete-process "pass" vm-pop-send-command "USER %s" "PASS %s" delete "POP password for %s incorrect" sleep-for "rpop" "USER %s" "RPOP %s" "apop" vm-parse "[^<]+\\(<[^>]+>\\)" "<<< ooops, no timestamp found in greeting! >>>\n" "Server of %s does not support APOP" "APOP %s %s" vm-pop-md5 "POP password for %s incorrect" "Don't know how to authenticate using %s"] 9) source-list pass user auth port host ssh-process timestamp greeting process-connection-type session-name use-ssh use-ssl coding-system-for-write coding-system-for-read popdrop folder-type process process-to-shutdown] 21])
(defalias 'vm-pop-end-session #[(process &optional keep-buffer verbose) "\305!\306>\2034 \307\310!!\2034 \212\310!q\210\311\312\"\210	\2033 \n\203' \313\314!\210\315!\210\n\2033 \313\316!\210)\204I \307\310!!\203^ \317\310!!\210\202^ \212\310!q\210\320\321\322 P\323\"\210\324p\325\f#\210)\326\327!\203j \327\330\331#\207\332\330\333\331$\207" [process vm-pop-read-quit-response verbose keep-buffer vm-pop-keep-failed-trace-buffers process-status (open run) buffer-live-p process-buffer vm-pop-send-command "QUIT" message "Waiting for response to POP QUIT command..." vm-pop-read-response "Waiting for response to POP QUIT command... done" kill-buffer rename-buffer "saved " buffer-name t vm-keep-some-buffers vm-kept-pop-buffers fboundp add-async-timeout 2 delete-process run-at-time nil] 5])
(defalias 'vm-pop-stat-timer #[(o) "\301H\207" [o 0] 2])
(defalias 'vm-pop-stat-did-report #[(o) "\301H\207" [o 1] 2])
(defalias 'vm-pop-stat-x-box #[(o) "\301H\207" [o 2] 2])
(defalias 'vm-pop-stat-x-currmsg #[(o) "\301H\207" [o 3] 2])
(defalias 'vm-pop-stat-x-maxmsg #[(o) "\301H\207" [o 4] 2])
(defalias 'vm-pop-stat-x-got #[(o) "\301H\207" [o 5] 2])
(defalias 'vm-pop-stat-x-need #[(o) "\301H\207" [o 6] 2])
(defalias 'vm-pop-stat-y-box #[(o) "\301H\207" [o 7] 2])
(defalias 'vm-pop-stat-y-currmsg #[(o) "\301H\207" [o 8] 2])
(defalias 'vm-pop-stat-y-maxmsg #[(o) "\301H\207" [o 9] 2])
(defalias 'vm-pop-stat-y-got #[(o) "\301H\207" [o 10] 2])
(defalias 'vm-pop-stat-y-need #[(o) "\301H\207" [o 11] 2])
(defalias 'vm-set-pop-stat-timer #[(o val) "\302	I\207" [o val 0] 3])
(defalias 'vm-set-pop-stat-did-report #[(o val) "\302	I\207" [o val 1] 3])
(defalias 'vm-set-pop-stat-x-box #[(o val) "\302	I\207" [o val 2] 3])
(defalias 'vm-set-pop-stat-x-currmsg #[(o val) "\302	I\207" [o val 3] 3])
(defalias 'vm-set-pop-stat-x-maxmsg #[(o val) "\302	I\207" [o val 4] 3])
(defalias 'vm-set-pop-stat-x-got #[(o val) "\302	I\207" [o val 5] 3])
(defalias 'vm-set-pop-stat-x-need #[(o val) "\302	I\207" [o val 6] 3])
(defalias 'vm-set-pop-stat-y-box #[(o val) "\302	I\207" [o val 7] 3])
(defalias 'vm-set-pop-stat-y-currmsg #[(o val) "\302	I\207" [o val 8] 3])
(defalias 'vm-set-pop-stat-y-maxmsg #[(o val) "\302	I\207" [o val 9] 3])
(defalias 'vm-set-pop-stat-y-got #[(o val) "\302	I\207" [o val 10] 3])
(defalias 'vm-set-pop-stat-y-need #[(o val) "\302	I\207" [o val 11] 3])
(defalias 'vm-pop-start-status-timer #[nil "\302\303\304\"\304\305\306\307	\306$\310	\"\210	*\207" [timer blob make-vector 12 nil add-timeout 5 vm-pop-report-retrieval-status vm-set-pop-stat-timer] 5])
(defalias 'vm-pop-stop-status-timer #[(status-blob) "\301!\203\n \302\303!\210\304\305!\203 \305\306!!\207\307\306!!\207" [status-blob vm-pop-stat-did-report message "" fboundp disable-timeout vm-pop-stat-timer cancel-timer] 3])
(defalias 'vm-pop-report-retrieval-status #[(o) "\301\302\"\210\303!\203] \304!\305!=\203] \306!\307!=\203] \310\311\306!\312!\304!\313!\203Z \314\315\303!\303!\313!V\203C \316\202D \317\313!\303!\320!=\203U \321\202V \322%\202[ \323%\210\324\304!\"\210\325\306!\"\210\326\312!\"\210\327\303!\"\210\330\313!\"\207" [o vm-set-pop-stat-did-report t vm-pop-stat-x-got vm-pop-stat-x-box vm-pop-stat-y-box vm-pop-stat-x-currmsg vm-pop-stat-y-currmsg message "Retrieving message %d (of %d) from %s, %s..." vm-pop-stat-x-maxmsg vm-pop-stat-x-need format "%d%s of %d%s" "!" "" vm-pop-stat-y-got " (stalled)" "" "post processing" vm-set-pop-stat-y-box vm-set-pop-stat-y-currmsg vm-set-pop-stat-y-maxmsg vm-set-pop-stat-y-got vm-set-pop-stat-y-need] 13])
(defalias 'vm-pop-check-connection #[(process) "\301!\302>\204 \303\304\"\207\305\306!!?\205 \303\307\"\207" [process process-status (open run) error "POP connection not open: %s" buffer-live-p process-buffer "POP process %s's buffer has been killed"] 3])
(defalias 'vm-pop-send-command #[(process command) "\303!\210db\210	\304H\305U\203 \306\307!\210\202 \306	\310\"\210`\311\312\313	\"\"\207" [process command vm-pop-read-point vm-pop-check-connection 0 80 insert-before-markers "PASS <omitted>\n" "\n" process-send-string format "%s\n"] 5])
(defalias 'vm-pop-read-response #[(process &optional return-response-string) "\305!\210\306\211b\210\307\310\306\311#\204! \305!\210\312!\210b\210\202 `b\210\313\314!\2042 	\306\202? 	\f\203> `	{\202? \311*\207" [process match-end case-fold-search vm-pop-read-point return-response-string vm-pop-check-connection nil search-forward "\n" t accept-process-output looking-at "+OK"] 4])
(defalias 'vm-pop-read-past-dot-sentinel-line #[(process) "\304!\210\305\nb\210\306\307\305\310#\204% \311 \210`\304!\210\312!\210b\210)\202	 `\211)\207" [process case-fold-search vm-pop-read-point opoint vm-pop-check-connection nil re-search-forward "^\\.\n" 0 beginning-of-line accept-process-output] 4])
(defalias 'vm-pop-read-stat-response #[(process) "\303\304\"\305\211\205 \306\n\307\"\310	A@!\310\311	8!D*\207" [process list response vm-pop-read-response t nil vm-parse "\\([^ ]+\\) *" string-to-int 2] 5])
(defalias 'vm-pop-read-list-response #[(process) "\302\303\"\211\205 \304\305\306	\307\"8!)\207" [process response vm-pop-read-response t string-to-int 2 vm-parse "\\([^ ]+\\) *"] 6])
(defalias 'vm-pop-read-uidl-long-response #[(process) "\306!\210	\307\211\211\310\311\215,\207" [process vm-pop-read-point uidl n list start vm-pop-check-connection nil done (byte-code "b\210\306\307\310\311#\204 \312 \210`\313\n!\210\314\n!\210	b\210)\202 \315 b\210\316\317!\2040 \320\321\310\"\210\322y\210`f\323=\204r \316\324!\204E \320\321\310\"\210\325\326p!!\327\310w\210`\330\310w\210`U\203` \320\321\310\"\210`{\fBB\322y\210\2023 \204{ \310\211B\207\207" [start opoint process vm-pop-read-point n uidl re-search-forward "^\\.\n\\|^-ERR .*$" nil 0 beginning-of-line vm-pop-check-connection accept-process-output point-marker looking-at "\\+OK" throw done 1 46 "[0-9]" int-to-string read " " "!-~" list] 4)] 4])
(defalias 'vm-pop-ask-about-large-message #[(process popdrop size n) "\304p\304\211\305\216\212\306\213.\207" [end start pop-buffer work-buffer nil ((byte-code "\203 \301!\210\301\207" [work-buffer kill-buffer] 2)) ((byte-code "\306\307\310	\311#\"\210\312!\203\\ \n\313!\210\n\314\307\315	#!\211q\210\316 \f#\210\317y\210`d|\210\320ed\"\210\321!\210\322 !eb\210\323\324\325\326#\203V \311\224b\210\327\325\"##\210\330\322 `\"\210\331\307\332	$#!\203i \333\207\331\307\334	$#!\203v \335\207\336\207" [process n vm-pop-read-point start end popdrop vm-pop-send-command format "TOP %d %d" 0 vm-pop-read-response vm-pop-read-past-dot-sentinel-line generate-new-buffer "*headers of %s message %d*" insert-buffer-substring -1 vm-pop-cleanup-region vm-display-buffer selected-window re-search-forward "^Received:" nil t vm-reorder-message-headers set-window-point y-or-n-p "Message %d, size = %d, retrieve? " retrieve "Delete message %d from popdrop? " delete skip work-buffer pop-buffer minibuffer-scroll-window vm-visible-headers vm-invisible-header-regexp size] 7))] 4])
(defalias 'vm-pop-ask-about-no-uidl #[(popdrop) "\304p\304\211\305\216\212\306\213.\207" [end start pop-buffer work-buffer nil ((byte-code "\203 \301!\210\301\207" [work-buffer kill-buffer] 2)) ((byte-code "\303\304\305\"!\211q\210\306\307\261\210\310ed\"\210\311	!\210\312 \313\314!\207" [popdrop work-buffer minibuffer-scroll-window generate-new-buffer format "*trouble with %s*" "You have asked VM to leave messages on the server for the POP mailbox " ".  VM cannot do so because the server does not seem to support the POP UIDL command.\n\nYou can either continue to retrieve messages from this mailbox with VM deleting the messages from the server, or you can skip this mailbox, leaving messages on the server and not retrieving any messages." fill-individual-paragraphs vm-display-buffer selected-window yes-or-no-p "Continue retrieving anyway? "] 5))] 4])
(defalias 'vm-pop-retrieve-to-target #[(process target statblob) "\306!\210	\307\211b\210\310\f\311\"\210\312\313\307\311#\2045 \314 \210`\315\211%&B&\306!\210\316!\210b\210+\202 \317\f\307\"\210\320 \311\224b\210\320 \321\n\"\210\310\f\307\"\210\322\307\n#\323=\203\301 \324'\n#\210b\210'\325=\203\251 (;\203\204 \326(!\211)?\206\200 \327)8\311\232)\202\225 \330(!\203\251 \212(q\210\331\332 !)\203\251 `\333\307'\"\210\211b\210\334 \210)\335 c\210\214`\n}\210\336\337'\"\210)\nb\210\340\341 !\210(;\203\332 \342\307*+\343\n(\342\311%\210*\202\355 p,\212(q\210\307-\344,\n#\210+\n|\210*\342\207" [process vm-pop-read-point end start statblob opoint vm-pop-check-connection nil vm-set-pop-stat-x-got 0 re-search-forward "^\\.\n" beginning-of-line #[(beg end len) "\205 \304	\nZ\"\210\305\306 \307\246!\205 \310	!\207" [vm-pop-read-point statblob end start vm-set-pop-stat-x-got zerop random 10 vm-pop-report-retrieval-status] 4] accept-process-output vm-set-pop-stat-x-need point-marker vm-pop-cleanup-region vm-get-folder-type unknown vm-munge-message-separators babyl file-attributes 7 bufferp zerop buffer-size vm-convert-folder-header vm-skip-past-folder-header vm-leading-message-separator vm-convert-folder-type-headers baremessage insert-before-markers vm-trailing-message-separator t write-region insert-buffer-substring func after-change-functions vm-folder-type target attrs selective-display buffer-file-type b buffer-read-only] 7])
(defalias 'vm-pop-cleanup-region #[(start end) "\304\305 \n	\223*\212b\210`W\203& \306\307\310#\203& \311\312\310\211#\210\202 b\210`W\203C \313\314\310#\203C \311\315\310\211#\210\304u\210\202) )\304\211\223\207" [end buffer pos start nil make-marker search-forward "\n" t replace-match "\n" re-search-forward "^\\." ""] 4])
(defalias 'vm-popdrop-sans-password #[(source) "\302\303	\304\"\211G\305U\203 A@\306A@\307\3108\311\3128\313\260)\207" [source-list source nil vm-parse "\\([^:]+\\):?" 6 ":" ":" 2 ":" 3 ":*"] 9])
(defalias 'vm-establish-new-folder-pop-session #[(&optional interactive) "\305H	\306!\203 \307!\210\310\311H!\211\305\fI\210)*\207" [vm-folder-access-data interactive vm-pop-ok-to-ask process val 1 processp vm-pop-end-session vm-pop-make-session 0] 4])
(defalias 'vm-pop-get-uidl-data #[nil "\306\307\310\"\311H\212\312	!q\210\313	\314\"\210\315\211\316\317\215.\207" [vm-folder-access-data process there vm-pop-read-point uidl n make-vector 67 0 1 process-buffer vm-pop-send-command "UIDL" nil done (byte-code "b\210\306\307\310\311#\204 \312 \210`\313\n!\210\314\n!\210	b\210)\202 \315 b\210\316\317!\2040 \320\321\310\"\210\322y\210`f\323=\204r \316\324!\204E \320\321\310\"\210\325\326p!!\327\310w\210`\330\310w\210`U\203` \320\321\310\"\210`{\331\"\fL\210\322y\210\2023 \207" [start opoint process vm-pop-read-point n uidl re-search-forward "^\\.\n\\|^-ERR .*$" nil 0 beginning-of-line vm-pop-check-connection accept-process-output point-marker looking-at "\\+OK" throw done 1 46 "[0-9]" int-to-string read " " "!-~" intern there] 4) start] 3])
(defalias 'vm-pop-get-synchronization-data #[nil "\306\307\310\"\311 \312H\313\211\211\211\203W 	@\211\314H\315H)\203P \316	@\211\314H\315H)\"	@L\210\317\316	@\211\314H\315H)\"!\204P 	@\nB	A\211\204 \320\321\"\210\n.D\207" [vm-folder-access-data mp expunge-list retrieve-list process there make-vector 67 0 vm-pop-get-uidl-data 1 nil 3 23 intern boundp mapatoms #[(sym) "\304\305\306!	\"!?\205  \307\306!\n\"?\205  \306!JBB\211\207" [sym here vm-pop-retrieved-messages retrieve-list boundp intern symbol-name assoc] 4] here vm-message-list message] 7])
(defalias 'vm-pop-synchronize-folder #[(&optional interactive do-remote-expunges do-local-expunges do-retrieves) "\203\f 	\203\f \306\307!\210\n\206 \310!??\2050\203 \311 \210\312 \211@\fA@'(\313H)\313*\314+(\315H,\316,!-\314\211./\314\21101p2\203\351 \203\351 \212\317 deZV\314\21134\2115\203~ \320 e\314\223\2114\203~ \320 d\314\2233\321\216~\210db\210\322\323\324\217\210+\203\224 \325+!\210\3146\326\327 7\"\2108T8\330 \210\311\331!\211/0./\203\350 /@.@@9\211:\332H\3339I\210*/@\3319\211:\334H\3359I\210*/A/.A.\202\261 -;\203\365 \336\331\211'#\210<\203,=\203,(\313H)\337)!\203\340)!\341>\203\342)!\210\343\344=\">\345 \210\343\346>\"=)0.\207" [do-retrieves vm-block-new-mail vm-global-block-new-mail interactive sync-data retrieve-list error "Can't get new mail until you save this folder." vm-establish-new-folder-pop-session vm-assimilate-new-messages vm-pop-get-synchronization-data 1 nil 0 vm-safe-popdrop-string buffer-size make-marker ((byte-code "~\210\203 	\n}\210	\303\211\223\210\n\303\211\223\210\303\207" [#1=#:vm-sr-clip #2=#:vm-sr-min #3=#:vm-sr-max nil] 3)) error-data (byte-code "\212\306!q\210\307 \310	\n\"\210\311	G\"\210\f\203[ \312	\"\210\313\314\315\f@A\"\"\210\316!\317	\"\210\313\314\320\f@A\"\"\210\321!\204K \322\323\f@A\"\210\324	#\210\fAT\202 )\306\207" [process statblob safe-popdrop retrieve-list r-list n process-buffer vm-pop-start-status-timer vm-set-pop-stat-x-box vm-set-pop-stat-x-maxmsg vm-set-pop-stat-x-currmsg vm-pop-send-command format "LIST %s" vm-pop-read-list-response vm-set-pop-stat-x-need "RETR %s" vm-pop-read-response error "server didn't say +OK to RETR %s command" vm-pop-retrieve-to-target message-size folder-buffer] 5) ((error (message "Retrieval from %s signaled: %s" safe-popdrop error-data)) (quit (message "Quit received during retrieval from %s" safe-popdrop))) vm-pop-stop-status-timer intern buffer-name vm-update-summary-and-mode-line t 3 23 4 2 vm-expunge-folder processp process-status (open run) vm-pop-end-session mapcar #[(x) "	\302E\207" [x popdrop uidl] 3] vm-expunge-pop-messages #[(x) "@\207" [x] 1] local-expunge-list vm-folder-access-data process n statblob popdrop safe-popdrop r-list mp got-some message-size folder-buffer #3# #2# #1# vm-spooled-mail-waiting vm-buffers-needing-display-update vm-modification-counter val message do-local-expunges do-remote-expunges vm-pop-messages-to-expunge vm-pop-retrieved-messages] 5])
(defalias 'vm-pop-folder-check-for-mail #[(&optional interactive) "\206 \304	!??\205 \305 @\306\307H!\210\n)\207" [vm-global-block-new-mail interactive result vm-folder-access-data vm-establish-new-folder-pop-session vm-pop-get-synchronization-data vm-pop-end-session 1] 3])
(defalias 'vm-pop-find-spec-for-name #[(name) "\304	\204! \n\203! \n@A@\232\203 \305\211\202 \nA\202 \n\205( \n@@*\207" [vm-pop-folder-alist done list name nil t] 3])
(defalias 'vm-pop-find-name-for-spec #[(spec) "\304	\204  \n\203  \n@@\232\203 \305\211\202 \nA\202 \n\205( \n@A@*\207" [vm-pop-folder-alist done list spec nil t] 3])
(defalias 'vm-pop-find-name-for-buffer #[(buffer) "\304	\204$ \n\203$ \305\306\n@@!!=\203 \307\211\202 \nA\202 \n\205, \n@A@*\207" [vm-pop-folder-alist done list buffer nil vm-get-file-buffer vm-pop-make-filename-for-spec t] 5])
(defalias 'vm-pop-make-filename-for-spec #[(spec &optional scrub-password scrub-spec) "\306\211\n\204\f \203J \307\f!\310!\311\240\210\203D G\312U\2034 \313\240\210AA\314\240\210\315\233\316\240\210\202D \317B\211AA\320\240\210\315\233\321\240\210\322\323\324#\325\f!\326\327	P\206^ \206^ \330\331!\"*\207" [list md5 scrub-password scrub-spec spec vm-pop-folder-cache-directory nil vm-pop-parse-spec-to-list vm-last "*" 6 "pop" "*" 3 "*" "pop" "*" "*" mapconcat identity ":" vm-md5-string expand-file-name "pop-cache-" getenv "HOME" vm-folder-directory] 5])
(defalias 'vm-pop-parse-spec-to-list #[(spec) "\301\302\"\203 \303\304\305\306$\207\303\307\305\310$\207" [spec string-match "\\(pop\\|pop-ssh\\|pop-ssl\\)" vm-parse "\\([^:]+\\):?" 1 5 "\\([^:]+\\):?" 4] 5])
(provide 'vm-pop)
