changeset 304:2825f29bb451

Small updates
author mmj
date Mon, 23 Aug 2004 23:20:44 +1000
parents e8ccc422fe9b
children 743c858b21c3
files ChangeLog README VERSION contrib/web/perl-admin/README contrib/web/php-user/README src/mlmmj-process.c
diffstat 6 files changed, 35 insertions(+), 19 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Fri Aug 20 23:28:09 2004 +1000
+++ b/ChangeLog	Mon Aug 23 23:20:44 2004 +1000
@@ -1,3 +1,5 @@
+ o php-user updates from Christoph Thiel
+ o Use Delivered-To: instead of To: when available
 1.0.0-RC1
  o Add web-interface. Thanks Christian Laursen for new perl-admin
  o Dump the customheaders before any Mime headers
--- a/README	Fri Aug 20 23:28:09 2004 +1000
+++ b/README	Mon Aug 23 23:20:44 2004 +1000
@@ -1,10 +1,10 @@
-README mlmmj-0.8.3					Aug 11th 2004
+README mlmmj-1.0.0-RC1					Aug 20th 2004
 
 This is an attempt at implementing a mailing list manager with the same
 functionality as the brilliant ezmlm, but with a decent license and mail server
 independency.
 
-The functionality is not vast, but slowly improving:
+The functionality:
 
  · Archive
  · Custom headers / footer
@@ -14,6 +14,8 @@
  · Subject prefix
  · Subscribers only posting
  · Regular expression access control
+ · Functionality to retrieve old posts
+ · Web-interface
 
 To use mlmmj, do the following:
 
--- a/VERSION	Fri Aug 20 23:28:09 2004 +1000
+++ b/VERSION	Mon Aug 23 23:20:44 2004 +1000
@@ -1,1 +1,1 @@
-1.0.0-RC1
+1.0.0-RC2
--- a/contrib/web/perl-admin/README	Fri Aug 20 23:28:09 2004 +1000
+++ b/contrib/web/perl-admin/README	Mon Aug 23 23:20:44 2004 +1000
@@ -39,7 +39,8 @@
 Further customization:
 
 You can set two environment variables in your apache config to control the
-configuration of the mlmmj webinterface.
+configuration of the mlmmj webinterface. Remember to have mod_env loaded if
+you do this.
 
    SetEnv CONFIG_PATH /home/mlmmj/conf/config.pl
    SetEnv TUNABLES_PATH /home/mlmmj/conf/tunables.pl
--- a/contrib/web/php-user/README	Fri Aug 20 23:28:09 2004 +1000
+++ b/contrib/web/php-user/README	Mon Aug 23 23:20:44 2004 +1000
@@ -2,23 +2,22 @@
 
 Ehh, what's that?
    The mlmmj-webinterface was created to give people the opportunity to
-{sub,unsub}scribe to your mailinglists without having to write an initial
-{sub,unsub}scribe-mail, but only completing a form.
+{sub,unsub}scribe to a mailinglists via a webinterface (without having to
+write an initial {sub,unsub}scribe-mail).
 
 
 What are the requirements?
-   Only a webserver, that has PHP >= 3.0.8 support.
+   You only need a webserver with PHP >= 3.0.8 support.
 
 
 How can I install/use the webinterface?
-   - Upload webinterface/mlmmj.php to your webserver.
-   - Have a look at webinterface/example.html and copy one or both forms
-     and put them into your website.
+   - Upload mlmmj.php to your webserver.
+   - Have a look at example.html and copy one or both forms
+     into your website.
    - Adjust the options to satisfy your needs:
 
-
       The mailinglist your want to {sub,unsub}scribe to:
-      <input name="mailinglist" type="hidden" value="test@ct.kki.org">
+      <input name="mailinglist" type="hidden" value="mlmmj-test@example.org">
 
       Do you want to subscribe or unsubscribe?
       <input name="job" type="hidden" value="subscribe">
@@ -30,6 +29,6 @@
      <input name="redirect_success" type="hidden" value="http://www.success.com/">
 
 
-That's it - have a fun!
+That's it - have a lot of fun!
 
 	Christoph Thiel <ct at kki dot org>
--- a/src/mlmmj-process.c	Fri Aug 20 23:28:09 2004 +1000
+++ b/src/mlmmj-process.c	Mon Aug 23 23:20:44 2004 +1000
@@ -348,6 +348,7 @@
 	struct email_container toemails = { 0, NULL };
 	struct email_container ccemails = { 0, NULL };
 	struct email_container efromemails = { 0, NULL };
+	struct email_container dtoemails = { 0, NULL };
 	struct strlist *access_rules = NULL;
 	struct strlist *delheaders = NULL;
 	struct strlist allheaders;
@@ -356,6 +357,7 @@
 		{ "To:", 0, NULL },
 		{ "Cc:", 0, NULL },
 		{ "Return-Path: ", 0, NULL },
+		{ "Delivered-To:", 0, NULL },
 		{ NULL, 0, NULL }
 	};
 
@@ -518,7 +520,17 @@
 		}
 	}
 
-	if(toemails.emaillist)
+	if(readhdrs[4].token) { /* Delivered-To: (envelope to) */
+		for(i = 0; i < readhdrs[4].valuecount; i++) {
+			find_email_adr(readhdrs[4].values[i], &dtoemails);
+		}
+	}
+
+	if(dtoemails.emaillist) {
+		recipdelim = strchr(dtoemails.emaillist[0], RECIPDELIM);
+		log_error(LOG_ARGS, "recipdelim = [%s]", recipdelim);
+	}
+	else if(toemails.emaillist)
 		recipdelim = strchr(toemails.emaillist[0], RECIPDELIM);
 	else
 		recipdelim = NULL;