comparison lisp/gnus/mail-source.el @ 110666:3b9bd3888ee9

nnimap.el (nnimap-request-accept-article): Get the Message-ID without the \r. nnimap.el (nnimap-find-article-by-message-id): Use EXAMINE instead of SELECT to get the message-id. gnus-art.el, gnus.el, nnimap.el: Fix up make-obsolete-variable declarations throughout. gnus.texi (Mail Source Specifiers): Remove webmail.el mentions. mail-source.el: Removed webmail support. nntp.el (nntp-server-list-active-group): Document. gnus.texi (NNTP): Document nntp-server-list-active-group. gnus.texi (Customizing the IMAP Connection): Remove extra quote. nnimap.el (nnimap-find-article-by-message-id): Really return the article number. nnimap.el: Add nnimap-split-fancy. netrc.el (netrc-credentials, netrc-machine): Return the value of the "default" entry. nnimap.el: Use tls.el exclusively, and not starttls.el at all. nnimap.el (nnimap-wait-for-connection): Accept the moronic openssl s_client -starttls output, too. nnrss.el (nnrss-use-local): Add documentation. message.el (message-ignored-supersedes-headers): Strip Injection-* headers before superseding. nnimap.el (nnimap-open-connection): Reinstate the auto-upgrade from unencrypted to STARTTLS, if possible. nnir.el: Use the server names without suffixes. gnus-sum.el (gnus-summary-show-thread): Skip past invisible text when expanding threads. gnus-registry.el: Don't follow nnmairix references. Install the nnregistry refer method. gnus.texi (Spam Package Configuration Examples, SpamOracle): Remove nnimap-split-rule from examples.
author Katsumi Yamaoka <yamaoka@jpl.org>
date Fri, 01 Oct 2010 00:25:50 +0000
parents 6c6f3972c99c
children 236342431786
comparison
equal deleted inserted replaced
110665:49d445615c07 110666:3b9bd3888ee9
211 :value "UNSEEN UNDELETED")) 211 :value "UNSEEN UNDELETED"))
212 (group :inline t 212 (group :inline t
213 (const :format "" :value :fetchflag) 213 (const :format "" :value :fetchflag)
214 (string :tag "Fetchflag" 214 (string :tag "Fetchflag"
215 :value "\\Deleted")) 215 :value "\\Deleted"))
216 (group :inline t
217 (const :format ""
218 :value :dontexpunge)
219 (boolean :tag "Dontexpunge"))
220 (group :inline t
221 (const :format "" :value :plugged)
222 (boolean :tag "Plugged"))))
223 (cons :tag "Webmail server"
224 (const :format "" webmail)
225 (checklist :tag "Options" :greedy t
226 (group :inline t
227 (const :format "" :value :subtype)
228 ;; Should be generated from
229 ;; `webmail-type-definition', but we
230 ;; can't require webmail without W3.
231 (choice :tag "Subtype"
232 :value hotmail
233 (const hotmail)
234 (const yahoo)
235 (const netaddress)
236 (const netscape)
237 (const my-deja)))
238 (group :inline t
239 (const :format "" :value :user)
240 (string :tag "User"))
241 (group :inline t
242 (const :format "" :value :password)
243 (string :tag "Password"))
244 (group :inline t 216 (group :inline t
245 (const :format "" 217 (const :format ""
246 :value :dontexpunge) 218 :value :dontexpunge)
247 (boolean :tag "Dontexpunge")) 219 (boolean :tag "Dontexpunge"))
248 (group :inline t 220 (group :inline t
385 (:predicate "UNSEEN UNDELETED") 357 (:predicate "UNSEEN UNDELETED")
386 (:fetchflag "\\Deleted") 358 (:fetchflag "\\Deleted")
387 (:prescript) 359 (:prescript)
388 (:prescript-delay) 360 (:prescript-delay)
389 (:postscript) 361 (:postscript)
390 (:dontexpunge)) 362 (:dontexpunge)))
391 (webmail
392 (:subtype hotmail)
393 (:user (or (user-login-name) (getenv "LOGNAME") (getenv "USER")))
394 (:password)
395 (:dontexpunge)
396 (:authentication password)))
397 "Mapping from keywords to default values. 363 "Mapping from keywords to default values.
398 All keywords that can be used must be listed here.")) 364 All keywords that can be used must be listed here."))
399 365
400 (defvar mail-source-fetcher-alist 366 (defvar mail-source-fetcher-alist
401 '((file mail-source-fetch-file) 367 '((file mail-source-fetch-file)
402 (directory mail-source-fetch-directory) 368 (directory mail-source-fetch-directory)
403 (pop mail-source-fetch-pop) 369 (pop mail-source-fetch-pop)
404 (maildir mail-source-fetch-maildir) 370 (maildir mail-source-fetch-maildir)
405 (imap mail-source-fetch-imap) 371 (imap mail-source-fetch-imap))
406 (webmail mail-source-fetch-webmail))
407 "A mapping from source type to fetcher function.") 372 "A mapping from source type to fetcher function.")
408 373
409 (defvar mail-source-password-cache nil) 374 (defvar mail-source-password-cache nil)
410 375
411 (defvar mail-source-plugged t) 376 (defvar mail-source-plugged t)
1136 postscript 1101 postscript
1137 (format-spec-make ?p password ?t mail-source-crash-box 1102 (format-spec-make ?p password ?t mail-source-crash-box
1138 ?s server ?P port ?u user)) 1103 ?s server ?P port ?u user))
1139 found))) 1104 found)))
1140 1105
1141 (autoload 'webmail-fetch "webmail")
1142
1143 (defun mail-source-fetch-webmail (source callback)
1144 "Fetch for webmail source."
1145 (mail-source-bind (webmail source)
1146 (let ((mail-source-string (format "webmail:%s:%s" subtype user))
1147 (webmail-newmail-only dontexpunge)
1148 (webmail-move-to-trash-can (not dontexpunge)))
1149 (when (eq authentication 'password)
1150 (setq password
1151 (or password
1152 (cdr (assoc (format "webmail:%s:%s" subtype user)
1153 mail-source-password-cache))
1154 (read-passwd
1155 (format "Password for %s at %s: " user subtype))))
1156 (when (and password
1157 (not (assoc (format "webmail:%s:%s" subtype user)
1158 mail-source-password-cache)))
1159 (push (cons (format "webmail:%s:%s" subtype user) password)
1160 mail-source-password-cache)))
1161 (webmail-fetch mail-source-crash-box subtype user password)
1162 (mail-source-callback callback (symbol-name subtype))
1163 (mail-source-delete-crash-box))))
1164
1165 (provide 'mail-source) 1106 (provide 'mail-source)
1166 1107
1167 ;;; mail-source.el ends here 1108 ;;; mail-source.el ends here