]> git.ipfire.org Git - thirdparty/mlmmj.git/commitdiff
0.8.2 stuff
authormmj <none@none>
Sat, 3 Jul 2004 12:29:25 +0000 (22:29 +1000)
committermmj <none@none>
Sat, 3 Jul 2004 12:29:25 +0000 (22:29 +1000)
ChangeLog
README
THANKS
src/find_email_adr.c
src/mlmmj-process.c

index f26b4f911bc8c2f1da96c931b006ce0a385cc1e8..b27b3fccf933c4ffacaae67698e445b18fa76128 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+0.8.2
+ o Make sure we don't cut of the first char of an emailaddress
+ o Fix header value copying (thanks Anders Johansson)
+ o Don't segfault if there's no email address in the To: header
  o Clean up the subconf and unsubconf directories for stale requests as well
 0.8.1.1
  o Fix bug with prepstdreply not opening correct file. Thanks Christian Laursen
diff --git a/README b/README
index 9188cece9e1b610b686da57ace5c7e1856999f75..989bc5b5cc8344cd798a524d707aef43cc29f854 100644 (file)
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-README mlmmj-0.8.1                                     Jun 25th 2004
+README mlmmj-0.8.2                                     Jul 3rd 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
@@ -51,12 +51,10 @@ To use mlmmj, do the following:
     /var/spool/mlmmj/mlmmj-test/subscribers.d
     /var/spool/mlmmj/mlmmj-test/requeue
 
-    And creates files similar to the ones in the listtexts/ directory of the
-    source distribution in /var/spool/mlmmj/text/.
-
-    NOTE: The mailinglist directory have to be owned by the user the mailserver
-    writes as. On some Postfix installations Postfix is run by the user postfix,
-    but still writes files as nobody:nogroup or nobody:nobody
+    NOTE: The mailinglist directory (/var/spool/mlmmj/mlmmj-test in our
+    example) have to be owned by the user the mailserver writes as. On some
+    Postfix installations Postfix is run by the user postfix, but still writes
+    files as nobody:nogroup or nobody:nobody
 
  3) Make the changes to your mailserver aliases that came as output from
     mlmmj-make-ml.sh. Following the example above they will look like this:
@@ -70,8 +68,11 @@ To use mlmmj, do the following:
 
     "0 */2 * * *  /usr/bin/mlmmj-maintd -F -L /var/spool/mlmmj/mlmmj-test"
 
-    mlmmj-maintd will become the user owning the listdir, and log it's
-    last maintenance run to listdir/mlmmj-maintd.lastrun.log.
+    It should be started as root, as mlmmj-maintd will become the user owning
+    the listdir (/var/spool/mlmmj/mlmmj-test), and log it's last maintenance
+    run to listdir/mlmmj-maintd.lastrun.log.
+
+    You need one entry for each list or a wrapper script added once in crontab.
 
 That's it! You might want to go through the next steps too.
 
diff --git a/THANKS b/THANKS
index 37bbbe33cedd232d14d996824fa8a5e8dd81349c..ecbc215f4659a46f97e84e68fd4d4692644f23ec 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -4,3 +4,4 @@ Thanks to
  · Hendrik 'henne' Vogelsang <hvogel@hennevogel.de> for mlmmj-make-ml.sh
  · Søren Boll Overgaard <boll@debian.org> for testing and feedback
  · Christian Laursen <xi@borderworlds.dk> for the FreeBSD port
+ · Anders Johansson <andjoh@rydsbo.net> for bugfixes and feedback
index 1c089d24efe318174942c6de71ce73e10c2e0233..2cfd8ddfddccd4b81fde482e24d1d7d619a07a34 100644 (file)
@@ -41,9 +41,9 @@ struct email_container *find_email_adr(const char *str,
        while(index_atsign) {
                c = index_atsign;
                retstruct->emailcount++;
-               while(*c != '<' && *c != ' ' && *c != ',' && *c != ';'
-                               && *c != '(' && *c != '[' && *c >= 32
-                               && *c != '{' && c != tempstr) {
+               while(c >= tempstr && *c != '<' && *c != ' ' && *c != ','
+                               && *c != ';' && *c != '(' && *c != '[' &&
+                               *c >= 32 && *c != '{') {
                        c--;
                }
                first_char = ++c;
@@ -64,7 +64,7 @@ struct email_container *find_email_adr(const char *str,
                snprintf(retstruct->emaillist[retstruct->emailcount-1], len,
                         "%s", first_char);
 #if 0
-               printf("find_email_adr, [%s]\n",
+               log_error(LOG_ARGS, "find_email_adr POST, [%s]\n",
                                retstruct->emaillist[retstruct->emailcount-1]);
 #endif
                *index_atsign = 'A'; /* Clear it so we don't find it again */
index 73c30901b62ae1f9808c4fced130b6691a7a6b83..fdaa286edfb7403091fc6549214fb5135a6d104c 100644 (file)
@@ -489,7 +489,10 @@ int main(int argc, char **argv)
                }
        }
 
-       recipdelim = strchr(toemails.emaillist[0], RECIPDELIM);
+       if(toemails.emaillist)
+               recipdelim = strchr(toemails.emaillist[0], RECIPDELIM);
+       else
+               recipdelim = NULL;
 
        if(recipdelim) {
                owner = concatstr(2, listdir, "control/owner");