diff options
Diffstat (limited to 'mail/dbmail22/files/patch-2.0.7_004')
-rw-r--r-- | mail/dbmail22/files/patch-2.0.7_004 | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/mail/dbmail22/files/patch-2.0.7_004 b/mail/dbmail22/files/patch-2.0.7_004 new file mode 100644 index 000000000000..8bbd3b8c3f92 --- /dev/null +++ b/mail/dbmail22/files/patch-2.0.7_004 @@ -0,0 +1,95 @@ +--- ChangeLog (revision 1890) ++++ ChangeLog (revision 1904) +@@ -1,3 +1,12 @@ ++2005-10-01 Paul J Stevens <paul@nfg.nl> ++ ++ * ChangeLog, debian/patches/04_mailfilter.dpatch: ++ added postgres table to mailfilter patch ++ * debian/changelog, serverchild.c, sql/mysql/create_tables.mysql, ++ sql/mysql/create_tables_innoDB.mysql: ++ change dbmail_messageblks.messageblk from longtext to longblob in mysql ++ create scripts ++ + 2005-09-27 Paul J Stevens <paul@nfg.nl> + + * ChangeLog, buildtools/config.guess, buildtools/config.sub, +--- dsn.c (revision 1890) ++++ dsn.c (revision 1904) +@@ -309,8 +309,10 @@ + */ + else { /* from: 'if (delivery->useridnr != 0)' */ + +- alias_count = +- auth_check_user_ext(delivery->address, ++ if (! strlen(delivery->address)) ++ return 0; ++ ++ alias_count = auth_check_user_ext(delivery->address, + delivery->userids, + delivery->forwards, 0); + trace(TRACE_DEBUG, +--- auth/authsql.c (revision 1890) ++++ auth/authsql.c (revision 1904) +@@ -385,6 +385,9 @@ + return 0; + } + ++ if (strlen(username) < 1) ++ return 0; ++ + saveres = db_get_result_set(); + db_set_result_set(NULL); + +--- main.c (revision 1890) ++++ main.c (revision 1904) +@@ -405,27 +405,25 @@ + /* If the NORMAL delivery mode has been selected... */ + if (deliver_to_header != NULL) { + /* parse for destination addresses */ +- trace(TRACE_DEBUG, "main(): scanning for [%s]", +- deliver_to_header); +- if (mail_adr_list(deliver_to_header, &users, &mimelist) != +- 0) { +- trace(TRACE_STOP, +- "main(): scanner found no email addresses (scanned for %s)", ++ trace(TRACE_DEBUG, "main(): scanning for [%s]", deliver_to_header); ++ if (mail_adr_list(deliver_to_header, &users, &mimelist) != 0) { ++ trace(TRACE_STOP, "main(): scanner found no email addresses (scanned for %s)", + deliver_to_header); + exitcode = EX_NOUSER; + goto freeall; + } + + /* Loop through the users list, moving the entries into the dsnusers list. */ +- for (tmp = list_getstart(&users); tmp != NULL; +- tmp = tmp->nextnode) { +- deliver_to_user_t dsnuser; ++ for (tmp = list_getstart(&users); tmp != NULL; tmp = tmp->nextnode) { + ++ if (! (strlen((char *)tmp->data) > 0)) ++ continue; ++ ++ deliver_to_user_t dsnuser; + dsnuser_init(&dsnuser); + dsnuser.address = dm_strdup((char *) tmp->data); + +- list_nodeadd(&dsnusers, &dsnuser, +- sizeof(deliver_to_user_t)); ++ list_nodeadd(&dsnusers, &dsnuser, sizeof(deliver_to_user_t)); + } + } + +@@ -433,11 +431,10 @@ + if (deliver_to_mailbox != NULL) { + trace(TRACE_DEBUG, "main(): setting mailbox for all deliveries to [%s]", + deliver_to_mailbox); ++ + /* Loop through the dsnusers list, setting the destination mailbox. */ +- for (tmp = list_getstart(&dsnusers); tmp != NULL; +- tmp = tmp->nextnode) { ++ for (tmp = list_getstart(&dsnusers); tmp != NULL; tmp = tmp->nextnode) + ((deliver_to_user_t *)tmp->data)->mailbox = dm_strdup(deliver_to_mailbox); +- } + } + + if (dsnuser_resolve_list(&dsnusers) == -1) { |