summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorDave Love <fx@gnu.org>2000-10-18 16:50:53 +0000
committerDave Love <fx@gnu.org>2000-10-18 16:50:53 +0000
commitf49c4ef75cd85edf7516ba3e0ea53208d6d45968 (patch)
treec303e93eaaeef06c6c6dc01596529d8c375b1bc1 /lisp
parent9035a35ae6b68911902bcaec21bd7d64bc0d86f4 (diff)
downloademacs-f49c4ef75cd85edf7516ba3e0ea53208d6d45968.tar.gz
(gnus-nocem-issuers): Update.
(gnus-nocem-check-from): New option. (gnus-nocem-scan-groups): Use it. (gnus-nocem-check-article): Bind gnus-newsgroup-name. (gnus-nocem-check-article-limit): Add :version.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/gnus/ChangeLog8
-rw-r--r--lisp/gnus/gnus-nocem.el38
2 files changed, 39 insertions, 7 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index ff217b9a48a..b9065fb09a8 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,11 @@
+2000-10-18 Dave Love <fx@gnu.org>
+
+ * gnus-nocem.el (gnus-nocem-issuers): Update.
+ (gnus-nocem-check-from): New option.
+ (gnus-nocem-scan-groups): Use it.
+ (gnus-nocem-check-article): Bind gnus-newsgroup-name.
+ (gnus-nocem-check-article-limit): Add :version.
+
2000-10-16 Miles Bader <miles@lsi.nec.co.jp>
* gnus-nocem.el (gnus-nocem-check-article-limit): New variable.
diff --git a/lisp/gnus/gnus-nocem.el b/lisp/gnus/gnus-nocem.el
index c67faaf52b7..c62a9088886 100644
--- a/lisp/gnus/gnus-nocem.el
+++ b/lisp/gnus/gnus-nocem.el
@@ -46,15 +46,17 @@
:type '(repeat (string :tag "Group")))
(defcustom gnus-nocem-issuers
- '("AutoMoose-1" "Automoose-1" ; CancelMoose[tm]
- "rbraver@ohww.norman.ok.us" ; Robert Braver
- "clewis@ferret.ocunix.on.ca" ; Chris Lewis
- "jem@xpat.com" ; Despammer from Korea
- "snowhare@xmission.com" ; Benjamin "Snowhare" Franz
- "red@redpoll.mrfs.oh.us (Richard E. Depew)") ; ARMM! ARMM!
+ '("AutoMoose-1" ; CancelMoose[tm]
+ "clewis@ferret.ocunix" ; Chris Lewis
+ "cosmo.roadkill"
+ "SpamHippo"
+ "hweede@snafu.de")
"*List of NoCeM issuers to pay attention to.
-This can also be a list of `(ISSUER CONDITIONS)' elements."
+This can also be a list of `(ISSUER CONDITION ...)' elements.
+
+See <URL:http://www.xs4all.nl/~rosalind/nocemreg/nocemreg.html> for an
+issuer registry."
:group 'gnus-nocem
:type '(repeat (choice string sexp)))
@@ -87,9 +89,18 @@ matches an previously scanned and verified nocem message."
(defcustom gnus-nocem-check-article-limit nil
"*If non-nil, the maximum number of articles to check in any NoCeM group."
:group 'gnus-nocem
+ :version "21.1"
:type '(choice (const :tag "unlimited" nil)
(integer 1000)))
+(defcustom gnus-nocem-check-from t
+ "Non-nil means check for valid issuers in message bodies.
+Otherwise don't bother fetching articles unless their author matches a
+valid issuer, which is much faster if you are selective about the issuers."
+ :group 'gnus-nocem
+ :version "21.1"
+ :type 'boolean)
+
;;; Internal variables
(defvar gnus-nocem-active nil)
@@ -173,6 +184,18 @@ matches an previously scanned and verified nocem message."
;; are not allowed to have references, so we can
;; ignore scanning followups.
(and (string-match "@@NCM" (mail-header-subject header))
+ (and gnus-nocem-check-from
+ (let ((case-fold-search t))
+ (catch 'ok
+ (mapcar
+ (lambda (author)
+ (if (consp author)
+ (setq author (car author)))
+ (if (string-match
+ author (mail-header-from header))
+ (throw 'ok t)))
+ gnus-nocem-issuers)
+ nil)))
(or gnus-nocem-liberal-fetch
(and (or (string= "" (mail-header-references
header))
@@ -201,6 +224,7 @@ matches an previously scanned and verified nocem message."
"Check whether the current article is an NCM article and that we want it."
;; Get the article.
(let ((date (mail-header-date header))
+ (gnus-newsgroup-name group)
issuer b e type)
(when (or (not date)
(time-less-p