------------------------------------------------------------------------ r67 | vedge | 2007-11-26 23:00:08 -0400 (Mon, 26 Nov 2007) | 2 lines Changed paths: M /local.c M /local.h M /maillist.c M /maillist.h M /message.c M /message.h M /policy.c M /smtp.c M /spamcheck.c M /spamcheck.h implement SMTP connection caching and multiple recipient support ------------------------------------------------------------------------ r68 | vedge | 2007-11-27 01:50:28 -0400 (Tue, 27 Nov 2007) | 2 lines Changed paths: M /mailprocd.c disable policy and ctl servers by default for now. ------------------------------------------------------------------------ r69 | vedge | 2007-11-27 01:51:27 -0400 (Tue, 27 Nov 2007) | 2 lines Changed paths: M /spamcheck.c just create per-user directories and put the unix sockets in them. ------------------------------------------------------------------------ r70 | vedge | 2007-11-27 22:52:36 -0400 (Tue, 27 Nov 2007) | 2 lines Changed paths: M /maillist.c use the new spamcheck system ------------------------------------------------------------------------ r71 | vedge | 2007-11-27 22:55:37 -0400 (Tue, 27 Nov 2007) | 4 lines Changed paths: M /local.c M /local.h M /message.c M /smtp.c M /spamcheck.c - more helpful error msgs and proctitles. - add dropPrivs argument to FeedToPipe(). - debug check for possible erroneous drop in privileges. ------------------------------------------------------------------------ r72 | vedge | 2007-11-28 03:15:09 -0400 (Wed, 28 Nov 2007) | 2 lines Changed paths: M /maillist.c fix potential crash bug if a database entry does not contain maxsize. ------------------------------------------------------------------------ r73 | vedge | 2007-11-28 03:25:35 -0400 (Wed, 28 Nov 2007) | 3 lines Changed paths: M /smtp.c - allow RSET to be issued at any time. - don't report EOF in the logs ------------------------------------------------------------------------ r74 | vedge | 2007-11-28 03:29:55 -0400 (Wed, 28 Nov 2007) | 2 lines Changed paths: M /maillist.c another atoi() check ------------------------------------------------------------------------ r75 | vedge | 2007-12-06 02:40:22 -0400 (Thu, 06 Dec 2007) | 2 lines Changed paths: M /smtp.c close the connection on BadContext() ------------------------------------------------------------------------ r76 | vedge | 2007-12-11 02:43:07 -0400 (Tue, 11 Dec 2007) | 2 lines Changed paths: M /spamcheck.c sleep 1s before reconnecting to a spamcheck socket ------------------------------------------------------------------------ r77 | vedge | 2007-12-12 11:05:16 -0400 (Wed, 12 Dec 2007) | 3 lines Changed paths: M /spamcheck.c don't attempt to unlink sockets before bind(). if a socket exists, then it was probably created concurrently under heavy load. ------------------------------------------------------------------------ r79 | vedge | 2007-12-12 23:29:14 -0400 (Wed, 12 Dec 2007) | 3 lines Changed paths: M /smtp.c - add ehlo flag. - don't drop connection on BadContext. ------------------------------------------------------------------------ r80 | vedge | 2007-12-13 01:32:07 -0400 (Thu, 13 Dec 2007) | 5 lines Changed paths: M /mailprocd.c M /smtp.c - use full buffering. - fix a bug that would allow some commands to terminate the data stream prematurely. - return 502 if invalid commands are given in the QUIT phase. ------------------------------------------------------------------------ r82 | vedge | 2007-12-13 04:42:12 -0400 (Thu, 13 Dec 2007) | 2 lines Changed paths: A /tests A /tests/Makefile A /tests/inject A /tests/inject/Makefile A /tests/inject/inject.c A /tests/inject/nonspam1.txt A /tests/inject/spam1.txt regression tests ------------------------------------------------------------------------ r83 | vedge | 2007-12-13 11:33:24 -0400 (Thu, 13 Dec 2007) | 2 lines Changed paths: A /mailmond A /mailmond/Makefile A /mailmond/configure A /mailmond/configure.in A /mailmond/mailmond.c A /mailmond/mailmond.conf.sample A /mailmond/nonspam1.txt A /mailmond/pathnames.h A /mailmond/smtp.c A /mailmond/smtp.h A /mailmond/spam1.txt M /mk/dist.sh mail delivery delay monitoring daemon ------------------------------------------------------------------------ r86 | vedge | 2007-12-13 12:30:15 -0400 (Thu, 13 Dec 2007) | 2 lines Changed paths: M /mailmond/mailmond.c Verbose flag ------------------------------------------------------------------------ r87 | vedge | 2007-12-13 22:04:16 -0400 (Thu, 13 Dec 2007) | 2 lines Changed paths: M /mailmond/mailmond.c signal handlers, syslog ------------------------------------------------------------------------ r88 | vedge | 2007-12-14 10:20:04 -0400 (Fri, 14 Dec 2007) | 1 line Changed paths: M /mailmond/mailmond.c test ------------------------------------------------------------------------ r89 | vedge | 2007-12-14 10:38:00 -0400 (Fri, 14 Dec 2007) | 2 lines Changed paths: M /smtp.c ifdef 8BITMIME ------------------------------------------------------------------------ r91 | vedge | 2007-12-14 11:31:47 -0400 (Fri, 14 Dec 2007) | 2 lines Changed paths: M /smtp.c implement RFC2034 ------------------------------------------------------------------------ r92 | vedge | 2007-12-14 20:19:46 -0400 (Fri, 14 Dec 2007) | 2 lines Changed paths: M /mailprocd.c M /pathnames.h M /smtp.c M /smtp.h implement LMTP interface ------------------------------------------------------------------------ r93 | vedge | 2007-12-14 21:07:04 -0400 (Fri, 14 Dec 2007) | 2 lines Changed paths: M /mailprocd.c don't write the pid file until we are accepting connections ------------------------------------------------------------------------ r94 | vedge | 2007-12-15 00:55:25 -0400 (Sat, 15 Dec 2007) | 2 lines Changed paths: M /mailmond/mailmond.c check for signals after sleep() too. ------------------------------------------------------------------------ r95 | vedge | 2007-12-15 04:28:26 -0400 (Sat, 15 Dec 2007) | 2 lines Changed paths: M /configure.in 1.2 ------------------------------------------------------------------------ r96 | vedge | 2007-12-15 09:20:13 -0400 (Sat, 15 Dec 2007) | 2 lines Changed paths: M /tests/Makefile +rfc1854 ------------------------------------------------------------------------ r97 | vedge | 2007-12-15 09:21:47 -0400 (Sat, 15 Dec 2007) | 2 lines Changed paths: A /tests/rfc1854 A /tests/rfc1854/Makefile A /tests/rfc1854/rfc1854.c test for RFC1854 (PIPELINING) compliance ------------------------------------------------------------------------ r98 | vedge | 2007-12-15 22:54:55 -0400 (Sat, 15 Dec 2007) | 3 lines Changed paths: M /spamcheck.c use SA_RESTART with termination signals such that system calls in SA tests may not be interrupted in unexpected ways. ------------------------------------------------------------------------ r99 | vedge | 2007-12-15 23:21:04 -0400 (Sat, 15 Dec 2007) | 3 lines Changed paths: M /smtp.c - per RFC2821, EHLO must reset the state as if RSET had been issued. - add buffering option to WriteClient(). ------------------------------------------------------------------------ r100 | vedge | 2007-12-16 22:25:48 -0400 (Sun, 16 Dec 2007) | 3 lines Changed paths: M /mailprocd.c M /qmgr.c M /qmgr.h M /smtp.c - implement QMGR_AddMessage(). - don't use select() timeout to scan the queue. ------------------------------------------------------------------------ r101 | vedge | 2007-12-16 22:34:57 -0400 (Sun, 16 Dec 2007) | 2 lines Changed paths: M /mailprocd.h M /smtp.c prevent possible memleak with line buffer ------------------------------------------------------------------------ r102 | vedge | 2007-12-16 22:35:42 -0400 (Sun, 16 Dec 2007) | 2 lines Changed paths: M /message.c M /qmgr.c use Strl*() ------------------------------------------------------------------------ r103 | vedge | 2007-12-17 09:02:22 -0400 (Mon, 17 Dec 2007) | 2 lines Changed paths: M /message.c M /message.h M /qmgr.c M /qmgr.h M /smtp.c implement queue I/O ------------------------------------------------------------------------ r104 | vedge | 2007-12-17 19:55:22 -0400 (Mon, 17 Dec 2007) | 2 lines Changed paths: M /qmgr.c M /smtp.c chown the queue files ------------------------------------------------------------------------ r105 | vedge | 2007-12-18 03:56:50 -0400 (Tue, 18 Dec 2007) | 5 lines Changed paths: M /mailprocd.c M /mailprocd.h M /qmgr.c M /qmgr.h M /smtp.c M /smtp.h - implement notifications between smtpd processes and the master. - manage the smtpd child processes. - process SIGCHLD safely. - save message metadata to the queue in the event of a crash. ------------------------------------------------------------------------ r106 | vedge | 2007-12-18 12:30:21 -0400 (Tue, 18 Dec 2007) | 2 lines Changed paths: M /spamcheck.c report any SIGPIPE ------------------------------------------------------------------------ r107 | vedge | 2007-12-18 12:33:38 -0400 (Tue, 18 Dec 2007) | 2 lines Changed paths: M /maillist.c M /maillist.h M /mailmond/mailmond.c M /mailprocd.c M /mailprocd.h M /message.c M /message.h M /qmgr.c M /qmgr.h M /smtp.c M /tests/inject/inject.c implement queueing ------------------------------------------------------------------------ r108 | vedge | 2007-12-18 13:03:20 -0400 (Tue, 18 Dec 2007) | 2 lines Changed paths: M /qmgr.c scan the queue dir in worker ------------------------------------------------------------------------ r109 | vedge | 2007-12-18 23:01:02 -0400 (Tue, 18 Dec 2007) | 3 lines Changed paths: M /local.c - FeedToPipe: safer write, no need to terminate with \n. - FeedToPipe: log any SIGPIPE so we can notify users about broken filters. ------------------------------------------------------------------------ r110 | vedge | 2007-12-18 23:03:10 -0400 (Tue, 18 Dec 2007) | 3 lines Changed paths: M /mailprocd.c - ignore SIGPIPE by default. - we expect EOF from the smtpd pipes. ------------------------------------------------------------------------ r111 | vedge | 2007-12-18 23:06:06 -0400 (Tue, 18 Dec 2007) | 3 lines Changed paths: M /qmgr.c don't immediately exit after processing on timeout if there were messages in the queue. ------------------------------------------------------------------------ r112 | vedge | 2007-12-18 23:06:36 -0400 (Tue, 18 Dec 2007) | 2 lines Changed paths: M /message.c fix code 99 handling with COMPAT_QMAIL. ------------------------------------------------------------------------ r113 | vedge | 2007-12-18 23:07:30 -0400 (Tue, 18 Dec 2007) | 2 lines Changed paths: M /qmgr.c for now we expect notifications about already-processed messages. ------------------------------------------------------------------------ r114 | vedge | 2007-12-19 10:24:56 -0400 (Wed, 19 Dec 2007) | 2 lines Changed paths: M /qmgr.c handle malloc failure when loading messages ------------------------------------------------------------------------ r115 | vedge | 2007-12-19 10:25:30 -0400 (Wed, 19 Dec 2007) | 2 lines Changed paths: M /spamcheck.c lower default maxidle to 60s ------------------------------------------------------------------------ r116 | vedge | 2007-12-19 12:15:48 -0400 (Wed, 19 Dec 2007) | 3 lines Changed paths: M /mailprocd.c M /qmgr.c instead of sending metadata over pipes to worker processes, just use signals. it is actually more efficient this way. ------------------------------------------------------------------------ r117 | vedge | 2007-12-19 12:27:24 -0400 (Wed, 19 Dec 2007) | 2 lines Changed paths: M /local.c reset USR2 to default in user commands ------------------------------------------------------------------------ r118 | vedge | 2007-12-19 12:28:35 -0400 (Wed, 19 Dec 2007) | 3 lines Changed paths: M /mailprocd.c M /qmgr.c - avoid a race where USR2 would be sent to worker prior to its setup. - use SA_NODEFER flag for USR2 in worker. ------------------------------------------------------------------------ r119 | vedge | 2007-12-19 12:32:46 -0400 (Wed, 19 Dec 2007) | 2 lines Changed paths: M /qmgr.c increment the message counter ------------------------------------------------------------------------ r120 | vedge | 2007-12-19 13:05:50 -0400 (Wed, 19 Dec 2007) | 2 lines Changed paths: M /mailprocd.c ignore USR2 in the master ------------------------------------------------------------------------ r121 | vedge | 2007-12-19 19:54:07 -0400 (Wed, 19 Dec 2007) | 2 lines Changed paths: M /qmgr.c fork multiple cleanup processes ------------------------------------------------------------------------ r122 | vedge | 2007-12-19 20:08:09 -0400 (Wed, 19 Dec 2007) | 3 lines Changed paths: M /mailprocd.c - clear die_flag and chld_flag properly. - don't use SA_RESTART for SIGCHLD. ------------------------------------------------------------------------ r123 | vedge | 2007-12-19 20:23:34 -0400 (Wed, 19 Dec 2007) | 2 lines Changed paths: M /spamcheck.c ignore SIGPIPE ------------------------------------------------------------------------ r124 | vedge | 2007-12-19 20:32:37 -0400 (Wed, 19 Dec 2007) | 2 lines Changed paths: M /spamcheck.c writes can be interrupted ------------------------------------------------------------------------ r125 | vedge | 2007-12-19 20:41:39 -0400 (Wed, 19 Dec 2007) | 2 lines Changed paths: M /spamcheck.c missed some ------------------------------------------------------------------------ r126 | vedge | 2007-12-22 21:42:30 -0400 (Sat, 22 Dec 2007) | 2 lines Changed paths: M /smtp.c allow mail from without helo ------------------------------------------------------------------------ r127 | vedge | 2007-12-22 22:28:14 -0400 (Sat, 22 Dec 2007) | 6 lines Changed paths: M /local.c M /mailprocd.h M /qmgr.c M /spamcheck.c - use Read(), Write() and Unlink(). - remove unused code. - set spamcheck listen backlog to 20. - return temporary failures on temporary conditions in Deliver*() routines. - properly revert temporary SIGPIPE handler on code 99 in FeedToPipe(). ------------------------------------------------------------------------ r128 | vedge | 2007-12-22 22:33:17 -0400 (Sat, 22 Dec 2007) | 3 lines Changed paths: M /qmgr.c check scan_flag after processing in case the signal arrived in the middle of the operation. r130 | vedge | 2007-12-22 22:42:15 -0400 (Sat, 22 Dec 2007) | 2 lines Changed paths: M /configure.in Release 1.2 (Damnable Dominion) ------------------------------------------------------------------------ r131 | vedge | 2007-12-22 22:43:19 -0400 (Sat, 22 Dec 2007) | 2 lines Changed paths: M /qmgr.c use Strl*() for portability