[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commit-womb] gnumaint Makefile gnumaint testaddr+real.msg te...
From: |
Karl Berry |
Subject: |
[Commit-womb] gnumaint Makefile gnumaint testaddr+real.msg te... |
Date: |
Sat, 17 Feb 2007 01:41:03 +0000 |
CVSROOT: /sources/womb
Module name: gnumaint
Changes by: Karl Berry <karl> 07/02/17 01:41:03
Modified files:
. : Makefile gnumaint
Added files:
. : testaddr+real.msg testaddrangle.msg
testaddrcomment.msg
Log message:
extract email from various From: formats
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnumaint/Makefile?cvsroot=womb&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/gnumaint/gnumaint?cvsroot=womb&r1=1.26&r2=1.27
http://cvs.savannah.gnu.org/viewcvs/gnumaint/testaddr%43real.msg?cvsroot=womb&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/gnumaint/testaddrangle.msg?cvsroot=womb&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/gnumaint/testaddrcomment.msg?cvsroot=womb&rev=1.1
Patches:
Index: Makefile
===================================================================
RCS file: /sources/womb/gnumaint/Makefile,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- Makefile 13 Feb 2007 19:50:49 -0000 1.7
+++ Makefile 17 Feb 2007 01:41:03 -0000 1.8
@@ -7,7 +7,10 @@
test-rece:
# gnumaint recemail </etc/issue
# gnumaint recemail <testjunk1.msg
- gnumaint recemail <testgood1.msg
+# gnumaint recemail <testgood1.msg
+# gnumaint recemail <testaddr+real.msg
+# gnumaint recemail <testaddrangle.msg
+ gnumaint recemail <testaddrcomment.msg
sep = 2>&1 | dos2unix; true ------------------------------
Index: gnumaint
===================================================================
RCS file: /sources/womb/gnumaint/gnumaint,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -b -r1.26 -r1.27
--- gnumaint 13 Feb 2007 19:50:49 -0000 1.26
+++ gnumaint 17 Feb 2007 01:41:03 -0000 1.27
@@ -1,5 +1,6 @@
#!/usr/bin/env tclsh
# gnumaint - GNU maintainers file maintenance (/gd/gnuorg/maintainers)
+# $Id: gnumaint,v 1.27 2007/02/17 01:41:03 karl Exp $
#
# Copyright 2007 Free Software Foundation Inc.
#
@@ -90,11 +91,9 @@
}
proc do_help_recemail {} {
- puts "gnumaint recemail - receive an email from a maintainer"
- puts "Usage:"
- puts ""
- puts " gnumaint recemail"
+ puts "Usage: gnumaint recemail"
puts ""
+ puts "Receive email. This is invoked via /com/mailer/aliases."
}
proc do_help_operation {topic} {
@@ -261,7 +260,6 @@
;# Get data fields from the received email
set from [exec $formail -c -xFrom: << $email_contents]
set subject [exec $formail -c -xSubject << $email_contents]
- set reply_to [exec $formail -c -xReply-To << $email_contents]
set body [exec $formail -I \"\" << $email_contents]
;# Infer the nature of the email from the subject content
@@ -274,7 +272,26 @@
;# Get the maintainer email
set maintainer_email [string trim $from]
- ;# Make sure this maintainer exist on the dabase
+ ;# We need to extract the email address from a From: line in
+ ;# any of several formats:
+ ;# address@hidden
+ ;# <address@hidden>
+ ;# J User <address@hidden>
+ ;# address@hidden (J User)
+ ;# We don't attempt to do this perfectly.
+ ;#
+ if { [regexp {^[^ ]*$} $from] } then {
+ set maintainer_email $from ;# no spaces, take the whole thing
+ } elseif { [regexp {<([^>]+)>} $from "" maintainer_email] } then {
+ ;# take whatever is inside <...>
+ } elseif { [regsub {\(.*\)} $from "" maintainer_email] } then {
+ ;# (Real Name) removed, now remove space. regsub won't do it.
+ set maintainer_email [string trim $maintainer_email]
+ } else {
+ puts "could not find email in $from"
+ }
+
+ ;# See if this maintainer is in the database
set maintainer_found false
foreach maintainer $maintainersdb {
if {[lindex $maintainer 1] == $maintainer_email} then {
@@ -283,13 +300,13 @@
}
if {!$maintainer_found} then {
;# Maintainer not found => discard email
- add_to_log "discarded mail from unknown maintainer
$maintainer_email"
+ add_to_log "discarded msg from unknown maintainer $from"
discard_email $email_contents
return
}
;# Log the operation
- add_to_log "received activity reply from $maintainer_email"
+ add_to_log "received activity reply from $from"
archive_email $email_contents
;# Annotate this packages into the activity file
Index: testaddr+real.msg
===================================================================
RCS file: testaddr+real.msg
diff -N testaddr+real.msg
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ testaddr+real.msg 17 Feb 2007 01:41:03 -0000 1.1
@@ -0,0 +1,14 @@
+From address@hidden Sun Feb 11 14:48:08 2007
+Return-path: <address@hidden>
+Envelope-to: address@hidden
+Delivery-date: Sun, 11 Feb 2007 14:48:08 -0500
+Received: from karl by fencepost.gnu.org with local (Exim 4.60)
+ (envelope-from <address@hidden>)
+ id 1HGKgC-0000P9-M8
+ for address@hidden; Sun, 11 Feb 2007 14:48:08 -0500
+To: address@hidden
+Message-Id: <address@hidden>
+From: Karl Berry <address@hidden>
+Date: Sun, 11 Feb 2007 14:48:08 -0500
+Subject: GNU package maintenance
+
Index: testaddrangle.msg
===================================================================
RCS file: testaddrangle.msg
diff -N testaddrangle.msg
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ testaddrangle.msg 17 Feb 2007 01:41:03 -0000 1.1
@@ -0,0 +1,14 @@
+From address@hidden Sun Feb 11 14:48:08 2007
+Return-path: <address@hidden>
+Envelope-to: address@hidden
+Delivery-date: Sun, 11 Feb 2007 14:48:08 -0500
+Received: from karl by fencepost.gnu.org with local (Exim 4.60)
+ (envelope-from <address@hidden>)
+ id 1HGKgC-0000P9-M8
+ for address@hidden; Sun, 11 Feb 2007 14:48:08 -0500
+To: address@hidden
+Message-Id: <address@hidden>
+From: <address@hidden>
+Date: Sun, 11 Feb 2007 14:48:08 -0500
+Subject: GNU package maintenance
+
Index: testaddrcomment.msg
===================================================================
RCS file: testaddrcomment.msg
diff -N testaddrcomment.msg
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ testaddrcomment.msg 17 Feb 2007 01:41:03 -0000 1.1
@@ -0,0 +1,14 @@
+From address@hidden Sun Feb 11 14:48:08 2007
+Return-path: <address@hidden>
+Envelope-to: address@hidden
+Delivery-date: Sun, 11 Feb 2007 14:48:08 -0500
+Received: from karl by fencepost.gnu.org with local (Exim 4.60)
+ (envelope-from <address@hidden>)
+ id 1HGKgC-0000P9-M8
+ for address@hidden; Sun, 11 Feb 2007 14:48:08 -0500
+To: address@hidden
+Message-Id: <address@hidden>
+From: address@hidden (Karl Berry)
+Date: Sun, 11 Feb 2007 14:48:08 -0500
+Subject: GNU package maintenance
+
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Commit-womb] gnumaint Makefile gnumaint testaddr+real.msg te...,
Karl Berry <=