;ELC   
;;; compiled by amu@mit.edu on Sat Sep 13 16:20:51 1997
;;; from file /afs/sipb.mit.edu/contrib/emacs/packages/gnus-5.4.67/lisp/pop3.el
;;; emacs version 19.30.1.
;;; bytecomp version FSF 2.10
;;; optimization is on.
;;; this file uses opcodes which do not exist in Emacs 18.

(if (and (boundp 'emacs-version)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`pop3.el' was compiled for Emacs 19.29 or later"))


(byte-code "!!B" [require mail-utils provide pop3 "1.3g" pop3-version current-load-list] 2)
#@17 *POP3 maildrop.
(defvar pop3-maildrop (byte-code " ! !" [user-login-name getenv "LOGNAME" "USER"] 2) (#$ . -593))
#@17 *POP3 mailhost.
(defvar pop3-mailhost (getenv "MAILHOST") (#$ . -723))
#@13 *POP3 port.
(defvar pop3-port 110 (#$ . -800))
#@67 *Non-nil if a password is required when connecting to POP server.
(defvar pop3-password-required t (#$ . -853))
#@49 *Password to use when connecting to POP server.
(defvar pop3-password nil (#$ . -971))
#@123 *POP3 authentication scheme.
Defaults to 'pass, for the standard USER/PASS authentication.  Other valid
values are 'apop.
(defvar pop3-authentication-scheme (quote pass) (#$ . -1065))
#@94 Timestamp returned when initially connected to the POP server.
Used for APOP authentication.
(defvar pop3-timestamp nil (#$ . 1255))
#@57 Crashbox made by pop3-movemail with this coding system.
(defvar pop3-movemail-file-coding-system nil (#$ . 1394))
(byte-code "! B! B" [boundp pop3-read-point nil current-load-list pop3-debug] 2)
#@60 Transfer contents of a maildrop to the specified CRASHBOX.
(defalias 'pop3-movemail #[(&optional crashbox) " !\f\"!	% !!Қ6 \"P ՚L \"!P !!@X \f$!	#	q ed#)!q V ebye`| )\"\\ !W !W !	!," [crashbox expand-file-name "~/.crashbox" pop3-open-server pop3-mailhost pop3-port process get-buffer-create " *pop3-retr*" crashbuf 1 n nil message-count pop3-debug switch-to-buffer process-buffer pop3-authentication-scheme apop pop3-apop pop3-maildrop pass pop3-user pop3-pass error "Invalid POP3 authentication scheme." pop3-stat message format "Retrieving message %d of %d from %s..." pop3-retr pop3-movemail-file-coding-system coding-system-for-write append-to-file buffer-size 5000 50 pop3-dele sit-for 0.10000000000000001 pop3-quit kill-buffer] 6 (#$ . 1615)])
#@86 Open TCP connection to MAILHOST.
Returns the process associated with the connection.
(defalias 'pop3-open-server #[(mailhost port) "\"!q )\n$e\"\"/ \"8 \\O)*" [get-buffer-create format "trace of POP session to %s" mailhost nil process process-buffer erase-buffer open-network-stream "POP" port pop3-read-point pop3-read-response t response string-match "<" 0 ">" -1 1 pop3-timestamp] 6 (#$ . 2506)])
(defalias 'pop3-process-filter #[(process output) "	!qdb\nc)" [process-buffer process output] 2])
(defalias 'pop3-send-command #[(process command) "	!qdb`db	\f\"	\"" [process-buffer process pop3-read-point process-send-string command "\n"] 3])
#@103 Read the response from the server.
Return the response string if optional second argument is non-nil.
(defalias 'pop3-read-response #[(process &optional return) "\f!qb#  \f\"b `b!5 `	Z{!O !A 	O 	N `	{O +" [nil match-end case-fold-search process-buffer process pop3-read-point search-forward "\n" t accept-process-output 3 looking-at "-ERR" error 2 "+OK" return] 4 (#$ . 3219)])
#@31 Chop up a string into a list.
(defalias 'pop3-string-to-list #[(string &optional regexp) "	 \" ƉO !K 	\"? ƉZOBƕO B\" +" [nil regexp " " string-match "" string 0 list store-match-data 1] 6 (#$ . 3647)])
(byte-code "! B" [boundp pop3-read-passwd nil current-load-list] 2)
(defalias 'pop3-read-passwd #[(prompt) " \"  \"!" [pop3-read-passwd load "passwd" t read-passwd autoload ange-ftp-read-passwd "ange-ftp" prompt] 3])
(defalias 'pop3-clean-region #[(start end) " 	b`	W! 	#! Ɖ#\n b`	W> 	#> Ɖ#u$ )	" [make-marker end nil start search-forward "\n" t replace-match "\n" re-search-forward "^\\." ""] 4])
#@68 Check to see if a message separator exists.  If not, generate one.
(defalias 'pop3-munge-message-separator #[(start end) "! \"\f}eb!# !# !? !!!5  !@\"` @8A@88&r A@@88%#\" ݉OݕOP} ebc+*" [fboundp message-make-date autoload "message" start end looking-at "From .?" "\n" "BABYL OPTIONS:" mail-strip-quoted-names mail-fetch-field "From" pop3-string-to-list "Date" nil From_ date from string-match "[A-Z]" format "%s %s %s %s %s" 2 4 3 "Sun %s %s %s %s" "\nFrom %s  %s\n" "," 0] 8 (#$ . 4378)])
#@39 Send USER information to POP3 server.
(defalias 'pop3-user #[(process user) "	\f\"\"	\" \"?! \f\"!)" [pop3-send-command process format "USER %s" user pop3-read-response t response string-match "+OK" error "USER %s not valid."] 6 (#$ . 4980)])
#@48 Send authentication information to the server.
(defalias 'pop3-pass #[(process) "\n 	 \"!	8 	\"\"\"\f/ \f\"?7 !))" [pop3-password pass pop3-password-required pop3-read-passwd format "Password for %s: " pop3-maildrop pop3-send-command process "PASS %s" pop3-read-response t response string-match "+OK" pop3-quit] 6 (#$ . 5249)])
#@38 *Program to encode its input in MD5.
(defvar pop3-md5-program "md5" (#$ . -5617))
(defalias 'pop3-md5 #[(string) "	ced p&ee\\{#" [with-temp-buffer string call-process-region shell-file-name "/bin/sh" t nil "-c" pop3-md5-program 32] 11])
#@58 Send alternate authentication information to the server.
(defalias 'pop3-apop #[(process user) "\n 	 \"!	C 	P!		#\"\": \"?B !*)" [pop3-password pass pop3-password-required pop3-read-passwd format "Password for %s: " pop3-maildrop pop3-md5 pop3-timestamp hash pop3-send-command process "APOP %s %s" user pop3-read-response t response string-match "+OK" pop3-quit] 7 (#$ . 5874)])
#@72 Return the number of messages in the maildrop and the maildrop's size.
(defalias 'pop3-stat #[(process) "	\"	\"!A@!!8!)D" [pop3-send-command process "STAT" pop3-read-response t response string-to-int pop3-string-to-list 2] 5 (#$ . 6302)])
#@75 Scan listing of available messages.
This function currently does nothing.
(defalias 'pop3-list #[(process &optional msg) "" [nil] 1 (#$ . 6561)])
#@45 Retrieve message-id MSG to buffer CRASHBUF.
(defalias 'pop3-retr #[(process msg crashbuf) "	\f\"\"	!		!q#d 	\" V1 ! V< ! VG ! VR ! V] !	b  ٔb 	\"	\"q )	#	|+" [pop3-send-command process format "RETR %s" msg pop3-read-response pop3-read-point nil end start process-buffer re-search-forward "^\\.\n" t accept-process-output 3 buffer-size 20000 sleep-for 1 50000 100000 200000 500000 point-marker 0 pop3-clean-region pop3-munge-message-separator crashbuf erase-buffer copy-to-buffer] 5 (#$ . 6715)])
#@33 Mark message-id MSG as deleted.
(defalias 'pop3-dele #[(process msg) "	\f\"\"	!" [pop3-send-command process format "DELE %s" msg pop3-read-response] 5 (#$ . 7310)])
#@15 No-operation.
(defalias 'pop3-noop #[(process msg) "	\"	!" [pop3-send-command process "NOOP" pop3-read-response] 3 (#$ . 7487)])
#@60 Return highest accessed message-id number for the session.
(defalias 'pop3-last #[(process) "	\"	\"!A@!)" [pop3-send-command process "LAST" pop3-read-response t response string-to-int pop3-string-to-list] 3 (#$ . 7627)])
#@48 Remove all delete marks from current maildrop.
(defalias 'pop3-rset #[(process) "	\"	!" [pop3-send-command process "RSET" pop3-read-response] 3 (#$ . 7864)])
#@135 Close connection to POP3 server.
Tell server to remove all messages marked as deleted, unlock the maildrop,
and close the connection.
(defalias 'pop3-quit #[(process) "	\"	\"	 	!qdb	!)" [pop3-send-command process "QUIT" pop3-read-response t process-buffer delete-process] 3 (#$ . 8034)])
