Up to [local] / src / usr.sbin / smtpd
Request diff between arbitrary revisions
Default branch: MAIN
Revision 1.172 / (download) - annotate - [select for diffs], Wed May 31 16:51:46 2023 UTC (12 months, 1 week ago) by op
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE,
OPENBSD_7_5,
OPENBSD_7_4_BASE,
OPENBSD_7_4,
HEAD
Changes since 1.171: +2 -1 lines
Diff to previous 1.171 (colored)
add missing include of time.h spotted after a report on OpenSMTPD-portable. While here include sys/time.h in smtpd.h, as noted in event_init(3), since it includes event.h. ok millert@
Revision 1.171 / (download) - annotate - [select for diffs], Mon May 15 12:03:04 2023 UTC (12 months, 3 weeks ago) by op
Branch: MAIN
Changes since 1.170: +2 -2 lines
Diff to previous 1.170 (colored)
cast to '(long long)' instead of '(long long int)' while here adjust the spacing in some of the touched lines. requested by deraadt@, ok tb@
Revision 1.170 / (download) - annotate - [select for diffs], Fri Feb 25 17:31:40 2022 UTC (2 years, 3 months ago) by rob
Branch: MAIN
CVS Tags: OPENBSD_7_3_BASE,
OPENBSD_7_3,
OPENBSD_7_2_BASE,
OPENBSD_7_2,
OPENBSD_7_1_BASE,
OPENBSD_7_1
Changes since 1.169: +5 -5 lines
Diff to previous 1.169 (colored)
Whitespace.
Revision 1.169 / (download) - annotate - [select for diffs], Mon Jun 14 17:58:16 2021 UTC (2 years, 11 months ago) by eric
Branch: MAIN
CVS Tags: OPENBSD_7_0_BASE,
OPENBSD_7_0
Changes since 1.168: +1 -12 lines
Diff to previous 1.168 (colored)
add required headers for smtpd.h and remove unnecessary ones in other files. ok jung@
Revision 1.168 / (download) - annotate - [select for diffs], Wed May 26 18:08:55 2021 UTC (3 years ago) by eric
Branch: MAIN
Changes since 1.167: +3 -2 lines
Diff to previous 1.167 (colored)
replaces calls to err(3)/errx(3) with fatal()/fatalx() from log.c for code that runs in the daemon. ok florian@ millert@
Revision 1.163.2.1 / (download) - annotate - [select for diffs], Mon Feb 24 16:20:06 2020 UTC (4 years, 3 months ago) by millert
Branch: OPENBSD_6_5
Changes since 1.163: +2 -2 lines
Diff to previous 1.163 (colored) next main 1.164 (colored)
OpenBSD 6.5 errata 031, February 24, 2020: An out of bounds read in smtpd allows an attacker to inject arbitrary commands into the envelope file which are then executed as root. Separately, missing privilege revocation in smtpctl allows arbitrary commands to be run with the _smtpq group.
Revision 1.165.2.1 / (download) - annotate - [select for diffs], Mon Feb 24 16:19:32 2020 UTC (4 years, 3 months ago) by millert
Branch: OPENBSD_6_6
Changes since 1.165: +2 -2 lines
Diff to previous 1.165 (colored) next main 1.166 (colored)
OpenBSD 6.6 errata 021, February 24, 2020: An out of bounds read in smtpd allows an attacker to inject arbitrary commands into the envelope file which are then executed as root. Separately, missing privilege revocation in smtpctl allows arbitrary commands to be run with the _smtpq group.
Revision 1.167 / (download) - annotate - [select for diffs], Mon Feb 24 16:16:07 2020 UTC (4 years, 3 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_6_9_BASE,
OPENBSD_6_9,
OPENBSD_6_8_BASE,
OPENBSD_6_8,
OPENBSD_6_7_BASE,
OPENBSD_6_7
Changes since 1.166: +2 -2 lines
Diff to previous 1.166 (colored)
Fix two security vulnerabilities discovered by Qualys. An out of bounds read in smtpd allows an attacker to inject arbitrary commands into the envelope file which are then executed as root. Separately, missing privilege revocation in smtpctl allows arbitrary commands to be run with the _smtpq group.
Revision 1.166 / (download) - annotate - [select for diffs], Mon Jan 6 11:03:06 2020 UTC (4 years, 5 months ago) by gilles
Branch: MAIN
Changes since 1.165: +2 -2 lines
Diff to previous 1.165 (colored)
do not allow passing options to smtpctl encrypt
Revision 1.165 / (download) - annotate - [select for diffs], Tue Jul 23 08:11:10 2019 UTC (4 years, 10 months ago) by gilles
Branch: MAIN
CVS Tags: OPENBSD_6_6_BASE
Branch point for: OPENBSD_6_6
Changes since 1.164: +2 -1 lines
Diff to previous 1.164 (colored)
include grp.h for setgroups()
Revision 1.164 / (download) - annotate - [select for diffs], Tue Jul 2 09:36:20 2019 UTC (4 years, 11 months ago) by martijn
Branch: MAIN
Changes since 1.163: +3 -13 lines
Diff to previous 1.163 (colored)
Replace mkstemp/fdopen/unlink dances with tmpfile. No functional change. OK gilles@
Revision 1.163 / (download) - annotate - [select for diffs], Mon Jan 14 09:37:40 2019 UTC (5 years, 4 months ago) by eric
Branch: MAIN
CVS Tags: OPENBSD_6_5_BASE
Branch point for: OPENBSD_6_5
Changes since 1.162: +10 -1 lines
Diff to previous 1.162 (colored)
correctly retrieve envelope strings. fixes mailq output. ok gilles@
Revision 1.162 / (download) - annotate - [select for diffs], Thu May 31 21:06:12 2018 UTC (6 years ago) by gilles
Branch: MAIN
CVS Tags: OPENBSD_6_4_BASE,
OPENBSD_6_4
Changes since 1.161: +2 -2 lines
Diff to previous 1.161 (colored)
remove 'where' parameter from all x*() functions in utils.c, it doesn't really help us with anything, propagate the change in codebase ok millert@
Revision 1.161 / (download) - annotate - [select for diffs], Thu May 24 11:38:24 2018 UTC (6 years ago) by gilles
Branch: MAIN
Changes since 1.160: +2 -2 lines
Diff to previous 1.160 (colored)
switch smtpd to new grammar ok eric@
Revision 1.160 / (download) - annotate - [select for diffs], Mon May 14 15:23:05 2018 UTC (6 years ago) by gilles
Branch: MAIN
Changes since 1.159: +1 -27 lines
Diff to previous 1.159 (colored)
kill corrupt / uncorrupt queue mechanism as it has never been usable and it will be made irrelevant when the new config comes up soon ok eric@
Revision 1.159 / (download) - annotate - [select for diffs], Thu Apr 26 20:57:59 2018 UTC (6 years, 1 month ago) by eric
Branch: MAIN
Changes since 1.158: +2 -1 lines
Diff to previous 1.158 (colored)
sync log.h with other daemons ok gilles@
Revision 1.158 / (download) - annotate - [select for diffs], Wed Mar 14 22:22:30 2018 UTC (6 years, 2 months ago) by gilles
Branch: MAIN
CVS Tags: OPENBSD_6_3_BASE,
OPENBSD_6_3
Changes since 1.157: +14 -4 lines
Diff to previous 1.157 (colored)
newaliases is so 70s, very tied to the 'db' table backend (which has not been the default for a long time now) but users still assume this is the way to update aliases within the MTA. when smtpctl is invoked as newaliases, have it notify the daemon that it has had the aliases table updated, no matter what backend it uses, as it will at worst be a noop and at best do what user expected. ok eric@
Revision 1.157 / (download) - annotate - [select for diffs], Tue Jan 30 12:44:55 2018 UTC (6 years, 4 months ago) by eric
Branch: MAIN
Changes since 1.156: +6 -3 lines
Diff to previous 1.156 (colored)
don't reject smtp responses containing non-printable chars as long as the status is valid. use strnvis() for displaying status lines in "smtpctl show queue". ok gilles@ sunil@
Revision 1.156 / (download) - annotate - [select for diffs], Fri Jan 26 08:00:54 2018 UTC (6 years, 4 months ago) by eric
Branch: MAIN
Changes since 1.155: +88 -49 lines
Diff to previous 1.155 (colored)
allow unpriviledged user to run "encrypt" and "spf walk" ok todd@, gilles@, sunil@
Revision 1.155 / (download) - annotate - [select for diffs], Sat Jan 6 07:59:27 2018 UTC (6 years, 5 months ago) by sunil
Branch: MAIN
Changes since 1.154: +4 -1 lines
Diff to previous 1.154 (colored)
Import gilles@'s standalone spfwalk utility into smtpctl(8) as 'spf walk' command. Ok gilles@
Revision 1.154 / (download) - annotate - [select for diffs], Thu Jul 27 18:48:30 2017 UTC (6 years, 10 months ago) by sunil
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE,
OPENBSD_6_2
Changes since 1.153: +7 -8 lines
Diff to previous 1.153 (colored)
smtpctl(8): Use an int to determine mode instead of __progname. Ok millert@ gilles@
Revision 1.153 / (download) - annotate - [select for diffs], Fri May 19 19:56:42 2017 UTC (7 years ago) by eric
Branch: MAIN
Changes since 1.152: +6 -12 lines
Diff to previous 1.152 (colored)
- switch to recallocarray - remove pre-allocation - use a better growth pattern ok gilles@ deraadt@
Revision 1.152 / (download) - annotate - [select for diffs], Mon Jan 9 09:53:23 2017 UTC (7 years, 5 months ago) by reyk
Branch: MAIN
CVS Tags: OPENBSD_6_1_BASE,
OPENBSD_6_1
Changes since 1.151: +2 -2 lines
Diff to previous 1.151 (colored)
smtpd joins the 7 other daemons that share the same log.c file. The only major difference was the "log_trace" concept that is only used by smtpd - move it from log.c into util.c and make it a local concept. This also needed to rename the global "verbose" variable to "tracing" in a few places. OK krw@ gilles@ eric@
Revision 1.151 / (download) - annotate - [select for diffs], Sun Sep 4 09:33:49 2016 UTC (7 years, 9 months ago) by eric
Branch: MAIN
Changes since 1.150: +1 -9 lines
Diff to previous 1.150 (colored)
Remove the "smtpctl stop" command. The daemon is stopped with kill(1). ok gilles@
Revision 1.150 / (download) - annotate - [select for diffs], Sat Sep 3 16:06:26 2016 UTC (7 years, 9 months ago) by eric
Branch: MAIN
Changes since 1.149: +24 -18 lines
Diff to previous 1.149 (colored)
get rid of the type-checking system on internal messages. bump all imsg protocol versions since message format changed. ok gilles@ sunil@
Revision 1.149 / (download) - annotate - [select for diffs], Fri Apr 29 08:55:08 2016 UTC (8 years, 1 month ago) by eric
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE,
OPENBSD_6_0
Changes since 1.148: +55 -10 lines
Diff to previous 1.148 (colored)
fix "smtpctl show queue" reporting "invalid" envelope state. runtime state is not serialized with the envelope, so add it to the imsg. ok gilles@
Revision 1.148 / (download) - annotate - [select for diffs], Thu Mar 17 19:40:43 2016 UTC (8 years, 2 months ago) by krw
Branch: MAIN
Changes since 1.147: +4 -4 lines
Diff to previous 1.147 (colored)
Last parameter to execl[e]() functions *must* be cast to a pointer. Just NULL is not good practise as NULL is theoretically allowed to be an integer rather than a pointer. Use (char *)NULL consistently instead of scattering a few (char *)0 and (void *)NULL into the mix. Prompted by and probably ok deraadt@ millert@ kettenis@ Definitely ok mestre@ ratchov@
Revision 1.147 / (download) - annotate - [select for diffs], Fri Feb 12 03:11:16 2016 UTC (8 years, 3 months ago) by sunil
Branch: MAIN
CVS Tags: OPENBSD_5_9_BASE,
OPENBSD_5_9
Changes since 1.146: +41 -66 lines
Diff to previous 1.146 (colored)
Cleanup getopt(3) mis-use in sendmail compat code. Avoid multiple getopt(3) evaluations without optreset set and unspecified behavior of optind = 0 as per POSIX. Instead, iterate over argv the first time for classification. Fixes -portable without any divergence from -current, and all newaliases opts are handled in one place. Looks good to me millert@ Ok gilles@ jung@ eric@
Revision 1.146 / (download) - annotate - [select for diffs], Tue Feb 9 10:38:02 2016 UTC (8 years, 4 months ago) by gilles
Branch: MAIN
Changes since 1.145: +6 -6 lines
Diff to previous 1.145 (colored)
rename variable sun to s_un to ease portability diff from Freddy DISSAUX, ok gilles@, jung@, sunil@, millert@
Revision 1.145 / (download) - annotate - [select for diffs], Wed Feb 3 08:03:21 2016 UTC (8 years, 4 months ago) by gilles
Branch: MAIN
Changes since 1.144: +2 -2 lines
Diff to previous 1.144 (colored)
NULL initialize two file pointers to make it more obvious when reading that they can't end up uninitialized after the mkstemp/fdopen dance
Revision 1.144 / (download) - annotate - [select for diffs], Mon Dec 28 22:08:30 2015 UTC (8 years, 5 months ago) by jung
Branch: MAIN
Changes since 1.143: +7 -7 lines
Diff to previous 1.143 (colored)
remove spaces after '!' no binary change ok millert
Revision 1.143 / (download) - annotate - [select for diffs], Tue Dec 22 21:50:22 2015 UTC (8 years, 5 months ago) by gilles
Branch: MAIN
Changes since 1.142: +9 -4 lines
Diff to previous 1.142 (colored)
fix sendmail options parsing diff from Serguey Parkhomovsky <sergueyparkhomovsky@gmail.com>
Revision 1.142 / (download) - annotate - [select for diffs], Tue Dec 22 15:59:10 2015 UTC (8 years, 5 months ago) by sunil
Branch: MAIN
Changes since 1.141: +2 -2 lines
Diff to previous 1.141 (colored)
Kill a trailing whitespace that snuck in with previous commit.
Revision 1.141 / (download) - annotate - [select for diffs], Mon Dec 21 11:20:07 2015 UTC (8 years, 5 months ago) by sunil
Branch: MAIN
Changes since 1.140: +40 -1 lines
Diff to previous 1.140 (colored)
Start accepting some sendmail compatible commandline arguments. This diff teaches smtpctl to understand '-bi -O AliasFile=<path_aliases>' and generate aliases.db. Ok gilles@ jung@ millert@
Revision 1.140 / (download) - annotate - [select for diffs], Fri Dec 11 07:30:24 2015 UTC (8 years, 6 months ago) by gilles
Branch: MAIN
Changes since 1.139: +2 -2 lines
Diff to previous 1.139 (colored)
whitespace
Revision 1.139 / (download) - annotate - [select for diffs], Thu Dec 10 07:49:58 2015 UTC (8 years, 6 months ago) by sunil
Branch: MAIN
Changes since 1.138: +10 -2 lines
Diff to previous 1.138 (colored)
While listing envelopes using mailq(or smtpctl show queue), pass the data between processes by dumping to and loading from a buffer which is shorter compared to transferring a structure. Also fixes mailq on platforms where PATH_MAX is way larger than on OpenBSD thus exceeding max imsg. Ok jung@ millert@
Revision 1.138 / (download) - annotate - [select for diffs], Mon Dec 7 12:29:19 2015 UTC (8 years, 6 months ago) by sunil
Branch: MAIN
Changes since 1.137: +9 -9 lines
Diff to previous 1.137 (colored)
Merge makemap(8) into smtpctl(8). Ok gilles@, jung@
Revision 1.137 / (download) - annotate - [select for diffs], Sat Dec 5 13:14:21 2015 UTC (8 years, 6 months ago) by claudio
Branch: MAIN
Changes since 1.136: +2 -2 lines
Diff to previous 1.136 (colored)
EAGAIN handling for imsg_read. OK henning@ benno@
Revision 1.136 / (download) - annotate - [select for diffs], Thu Nov 5 09:14:31 2015 UTC (8 years, 7 months ago) by sunil
Branch: MAIN
Changes since 1.135: +27 -1 lines
Diff to previous 1.135 (colored)
Implement smtpctl uncorrupt <msgid> "uncorrupt" moves envelopes from corrupt bucket back to the queue for further discovery by the daemon. After correcting the corrupt envelopes, admin could now... # smtpctl uncorrupt msgid # smtpctl discover msgid to schedule the messages. Ok gilles@
Revision 1.135 / (download) - annotate - [select for diffs], Thu Oct 29 10:25:36 2015 UTC (8 years, 7 months ago) by sunil
Branch: MAIN
Changes since 1.134: +35 -1 lines
Diff to previous 1.134 (colored)
Implement smtpctl discover <evpid|msgid>. discover subcommand schedules envelopes manually moved to the queue. It triggers a queue walk searching for envelopes with the given id, schedules them and informs the user number of envelopes scheduled. Admins no longer would need to restart the daemon to discover manually moved messages. Ok gilles@
Revision 1.134 / (download) - annotate - [select for diffs], Wed Oct 28 07:24:28 2015 UTC (8 years, 7 months ago) by sunil
Branch: MAIN
Changes since 1.133: +1 -6 lines
Diff to previous 1.133 (colored)
Remove dead code. Ok jung@ gilles@
Revision 1.133 / (download) - annotate - [select for diffs], Tue Oct 27 21:01:09 2015 UTC (8 years, 7 months ago) by gilles
Branch: MAIN
Changes since 1.132: +3 -2 lines
Diff to previous 1.132 (colored)
enqueue pledge: getmailname() needs dns, ~/dead.letter needs cpath/wpath ok jung@, ok millert@
Revision 1.132 / (download) - annotate - [select for diffs], Fri Oct 16 13:37:44 2015 UTC (8 years, 7 months ago) by millert
Branch: MAIN
Changes since 1.131: +2 -2 lines
Diff to previous 1.131 (colored)
Implement real "flock" request and add it to userland programs that use pledge and file locking. OK deraadt@
Revision 1.131 / (download) - annotate - [select for diffs], Thu Oct 15 08:18:23 2015 UTC (8 years, 7 months ago) by sunil
Branch: MAIN
Changes since 1.130: +4 -1 lines
Diff to previous 1.130 (colored)
Let "all" as an argument for "resume envelope", "pause envelope" and "remove" subcommands. seems potentially useful millert@, Ok gilles@
Revision 1.130 / (download) - annotate - [select for diffs], Tue Oct 13 08:06:22 2015 UTC (8 years, 8 months ago) by gilles
Branch: MAIN
Changes since 1.129: +5 -1 lines
Diff to previous 1.129 (colored)
let the enqueuer pledge() in both online and offline modes ok deraadt@
Revision 1.129 / (download) - annotate - [select for diffs], Mon Oct 12 07:58:19 2015 UTC (8 years, 8 months ago) by deraadt
Branch: MAIN
Changes since 1.128: +1 -4 lines
Diff to previous 1.128 (colored)
do not umask() [with the wrong umask] around mkstemp() calls, no matter how broken other systems are. ok guenther gilles
Revision 1.128 / (download) - annotate - [select for diffs], Fri Oct 9 14:37:38 2015 UTC (8 years, 8 months ago) by gilles
Branch: MAIN
Changes since 1.127: +53 -3 lines
Diff to previous 1.127 (colored)
turn our local enqueuer setgid _smtpq and restrict access to offline queue, the enqueuer will revoke group and regain real gid right after mkstemp. this would have prevented the symlink/hardlink attacks against offline, and it will avoid having to deal with new ways users can mess with it. ok eric@, ok millert@
Revision 1.127 / (download) - annotate - [select for diffs], Tue Oct 6 06:07:28 2015 UTC (8 years, 8 months ago) by gilles
Branch: MAIN
Changes since 1.126: +2 -2 lines
Diff to previous 1.126 (colored)
fix chdir() call for the sake of correctness reported by qualys
Revision 1.126 / (download) - annotate - [select for diffs], Tue Oct 6 05:48:34 2015 UTC (8 years, 8 months ago) by gilles
Branch: MAIN
Changes since 1.125: +5 -4 lines
Diff to previous 1.125 (colored)
fix reallocarray() constructs to always use temporary variable
Revision 1.125 / (download) - annotate - [select for diffs], Tue Jan 20 17:37:54 2015 UTC (9 years, 4 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE,
OPENBSD_5_8,
OPENBSD_5_7_BASE,
OPENBSD_5_7
Changes since 1.124: +5 -4 lines
Diff to previous 1.124 (colored)
use <limits.h> comprehensively. For now try to push <> includes to each .c file, and out of the .h files. To avoid overinclude. ok gilles, in principle. If this has been done right, -portable should become easier to maintain.
Revision 1.124 / (download) - annotate - [select for diffs], Sun Jul 20 01:38:40 2014 UTC (9 years, 10 months ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE,
OPENBSD_5_6
Changes since 1.123: +3 -2 lines
Diff to previous 1.123 (colored)
Make sure the correct errno is reported by warn* or err* and not the errno of an intervening cleanup operation like close/unlink/etc. Diff from Doug Hogan (doug (at) acyclic.org)
Revision 1.123 / (download) - annotate - [select for diffs], Tue Jul 8 20:14:46 2014 UTC (9 years, 11 months ago) by eric
Branch: MAIN
Changes since 1.122: +2 -2 lines
Diff to previous 1.122 (colored)
get rid of mfa leftovers
Revision 1.122 / (download) - annotate - [select for diffs], Mon Jul 7 09:11:24 2014 UTC (9 years, 11 months ago) by eric
Branch: MAIN
Changes since 1.121: +2 -2 lines
Diff to previous 1.121 (colored)
Allow to enable profiling at runtime and fix timings output. ok gilles@
Revision 1.121 / (download) - annotate - [select for diffs], Fri May 23 13:28:32 2014 UTC (10 years ago) by espie
Branch: MAIN
Changes since 1.120: +4 -3 lines
Diff to previous 1.120 (colored)
use reallocarray okay gilles@
Revision 1.120 / (download) - annotate - [select for diffs], Tue May 20 18:47:01 2014 UTC (10 years ago) by eric
Branch: MAIN
Changes since 1.119: +3 -3 lines
Diff to previous 1.119 (colored)
format string cleanup: change "%i" to "%d" and fix a few typos
Revision 1.119 / (download) - annotate - [select for diffs], Tue Apr 22 13:57:58 2014 UTC (10 years, 1 month ago) by gilles
Branch: MAIN
Changes since 1.118: +3 -3 lines
Diff to previous 1.118 (colored)
malloc -> calloc
Revision 1.118 / (download) - annotate - [select for diffs], Sat Apr 19 13:57:17 2014 UTC (10 years, 1 month ago) by gilles
Branch: MAIN
Changes since 1.117: +8 -8 lines
Diff to previous 1.117 (colored)
(void) cast a strlcpy() that cannot truncate (void) cast a few snprintf()/strlcat() that cannot truncate and that would be harmless if they could
Revision 1.117 / (download) - annotate - [select for diffs], Fri Apr 4 16:10:42 2014 UTC (10 years, 2 months ago) by eric
Branch: MAIN
Changes since 1.116: +9 -9 lines
Diff to previous 1.116 (colored)
Merge the mda, mta and smtp processes into a single unprivileged process managing message reception, delivery and transfer. Mostly mechanical, but very intrusive as it required to rewamp all IMSG to fix ambiguities. with and ok gilles@
Revision 1.116 / (download) - annotate - [select for diffs], Mon Feb 17 13:33:56 2014 UTC (10 years, 3 months ago) by eric
Branch: MAIN
CVS Tags: OPENBSD_5_5_BASE,
OPENBSD_5_5
Changes since 1.115: +20 -1 lines
Diff to previous 1.115 (colored)
new "smtpctl show status" command to show if mta/mda/smtp are currently running or paused.
Revision 1.115 / (download) - annotate - [select for diffs], Tue Feb 4 15:22:39 2014 UTC (10 years, 4 months ago) by eric
Branch: MAIN
Changes since 1.114: +50 -3 lines
Diff to previous 1.114 (colored)
Allow the admin to pause relaying to a specific domain: - smtpctl pause mta from <source> for <domain> - smtpctl resume mta from <source> for <domain> - smtpctl show mta paused
Revision 1.114 / (download) - annotate - [select for diffs], Thu Dec 26 17:25:32 2013 UTC (10 years, 5 months ago) by eric
Branch: MAIN
Changes since 1.113: +4 -4 lines
Diff to previous 1.113 (colored)
bcopy -> memmove bzero -> memset
Revision 1.113 / (download) - annotate - [select for diffs], Wed Nov 13 09:15:41 2013 UTC (10 years, 6 months ago) by eric
Branch: MAIN
Changes since 1.112: +14 -0 lines
Diff to previous 1.112 (colored)
document smtpctl "show hosts" and "show relays". add an encrypt wrapper usable for auth tables.
Revision 1.112 / (download) - annotate - [select for diffs], Wed Oct 30 21:37:48 2013 UTC (10 years, 7 months ago) by eric
Branch: MAIN
Changes since 1.111: +19 -1 lines
Diff to previous 1.111 (colored)
add "smtpctl show relays" and "smtpctl show hosts" commands
Revision 1.111 / (download) - annotate - [select for diffs], Sun Oct 27 17:47:53 2013 UTC (10 years, 7 months ago) by eric
Branch: MAIN
Changes since 1.110: +2 -1 lines
Diff to previous 1.110 (colored)
Implement a feedback mechanism which allows the mta to "hold" envelopes in the scheduler when it has too many tasks for a given relay. The envelopes are put on a wait queue, and are not scheduled again until the mta "releases" some envelopes from that queue. It prevents from having too many inflight envelopes, which are out of reach for the admin.
Revision 1.110 / (download) - annotate - [select for diffs], Fri Oct 25 21:31:23 2013 UTC (10 years, 7 months ago) by eric
Branch: MAIN
Changes since 1.109: +2 -4 lines
Diff to previous 1.109 (colored)
local enqueuer improvements: - parse the whole input before trying to establish the connection to the local socket: fixes timeout problems when reading the output of a long running program. - use sendmail(8)-like exit status.
Revision 1.109 / (download) - annotate - [select for diffs], Fri Oct 25 18:58:10 2013 UTC (10 years, 7 months ago) by eric
Branch: MAIN
Changes since 1.108: +135 -123 lines
Diff to previous 1.108 (colored)
Improve reporting in smtpctl and a few fixes. When sending a request to the scheduler, wait for the success/failure report from the scheduler. Simplify the code by introducing generic functions for interruptible iteration over envelopes. Report the total number of affected envelopes for schedule, pause, resume and remove envelope operations.
Revision 1.108 / (download) - annotate - [select for diffs], Fri Jul 19 21:14:52 2013 UTC (10 years, 10 months ago) by eric
Branch: MAIN
CVS Tags: OPENBSD_5_4_BASE,
OPENBSD_5_4
Changes since 1.107: +51 -0 lines
Diff to previous 1.107 (colored)
Many MTA improvements: - Better transient error handling logic: failing destinations are automatically disabled for a while. When a destination is active again, ask the scheduler to retry previous envelopes immediatly. - More informative error report when all routes fail for a mail. - Implement a "smtpctl show hoststats" command to get the latest stat message per MX domain. - Implement a "smtpctl show routes" command to show the state the currently known routes to remote MXs. - Implement a "smtpctl resume route" command to re-enable a route that has been disabled. - Do not hardcode limits - Minor code improvements
Revision 1.107 / (download) - annotate - [select for diffs], Fri Jul 19 15:14:23 2013 UTC (10 years, 10 months ago) by eric
Branch: MAIN
Changes since 1.106: +59 -0 lines
Diff to previous 1.106 (colored)
scheduler improvements: - implement suspend/resume scheduling for individual envelopes or message, with the associated smtpctl commands. - allow the mta to request immediate scheduling of an envelope. - on temporary failures a penalty can be given to further delay the next try.
Revision 1.106 / (download) - annotate - [select for diffs], Fri Jul 19 13:41:23 2013 UTC (10 years, 10 months ago) by eric
Branch: MAIN
Changes since 1.105: +688 -586 lines
Diff to previous 1.105 (colored)
New implementation for smtpctl and the command line parser. Allows richer syntax, and makes the code way simpler to follow and extend with new commands.
Revision 1.105 / (download) - annotate - [select for diffs], Fri Jul 19 11:14:08 2013 UTC (10 years, 10 months ago) by eric
Branch: MAIN
Changes since 1.104: +1 -14 lines
Diff to previous 1.104 (colored)
Get rid of env->sc_pw and env->sc_pwqueue. Early queue initialization now happens in queue_init(), and backends take the queue passwd as parameter in their init function. Remove useless SMTPD_FILTER_USER while there.
Revision 1.104 / (download) - annotate - [select for diffs], Fri May 24 17:03:14 2013 UTC (11 years ago) by eric
Branch: MAIN
Changes since 1.103: +70 -49 lines
Diff to previous 1.103 (colored)
sync with OpenSMTPD 5.3.2 ok gilles@
Revision 1.103 / (download) - annotate - [select for diffs], Wed Apr 17 15:02:38 2013 UTC (11 years, 1 month ago) by deraadt
Branch: MAIN
Changes since 1.102: +4 -4 lines
Diff to previous 1.102 (colored)
large time_t problems ok gilles
Revision 1.102 / (download) - annotate - [select for diffs], Fri Apr 12 18:22:49 2013 UTC (11 years, 2 months ago) by eric
Branch: MAIN
Changes since 1.101: +2 -2 lines
Diff to previous 1.101 (colored)
replace MAX_LINE_SIZE and SMTP_LINE_MAX with SMTPD_MAXLINESIZE for consistency and clarity. Remove useless and confusing extra byte in a few arrays based on this define. ok gilles@
Revision 1.101 / (download) - annotate - [select for diffs], Thu Feb 14 12:30:49 2013 UTC (11 years, 3 months ago) by gilles
Branch: MAIN
CVS Tags: OPENBSD_5_3_BASE,
OPENBSD_5_3
Changes since 1.100: +9 -1 lines
Diff to previous 1.100 (colored)
- smtpctl trace expand, enables tracing of aliases expansion - replace "users" keyword with "userbase" when providing alternate userbase - disambiguise expansion nodes when expanding across domains and userbases - allow use of '=' instead of '=>' when declaring a mapping ok eric@
Revision 1.100 / (download) - annotate - [select for diffs], Mon Jan 28 11:09:53 2013 UTC (11 years, 4 months ago) by gilles
Branch: MAIN
Changes since 1.99: +9 -1 lines
Diff to previous 1.99 (colored)
- introduce 'smtpctl trace lookup' to trace lookup process - improve logging of the transfer process trace by me, logging by eric
Revision 1.99 / (download) - annotate - [select for diffs], Sat Jan 26 09:37:23 2013 UTC (11 years, 4 months ago) by gilles
Branch: MAIN
Changes since 1.98: +214 -48 lines
Diff to previous 1.98 (colored)
Sync with our smtpd repo: * first bricks of ldap and sqlite support (not finished but both working) * new table API to replace map API, all lookups are done through tables * improved handling of temporary errors throughout the daemon * improved scheduler and mta logic: connection reuse, optimizes batches * improved queue: more tolerant to admin errors, new layout, less disk-IO * improved memory usage under high load * SSL certs/keys isolated to lookup process to avoid facing network * VIRTUAL support improved, fully virtual setups possible now * runtime tracing of processes through smtpctl trace * ssl_privsep.c sync-ed with relayd * ssl.c no longer contains smtpd specific interfaces * smtpd-specific ssl bits moved to ssl_smtpd.c * update mail address in copyright FLUSH YOUR QUEUE. FLUSH YOUR QUEUE. FLUSH YOUR QUEUE. FLUSH YOUR QUEUE. smtpd.conf(5) simplified, it will require adaptations ok eric@
Revision 1.98 / (download) - annotate - [select for diffs], Fri Nov 23 09:25:44 2012 UTC (11 years, 6 months ago) by eric
Branch: MAIN
Changes since 1.97: +5 -13 lines
Diff to previous 1.97 (colored)
Replace the qwalk API (to retreive on disk envelopes at runtime) with a simple QOP_WALK queue operation. Some knf and formating fixes while there. ok gilles@
Revision 1.97 / (download) - annotate - [select for diffs], Tue Nov 20 09:47:46 2012 UTC (11 years, 6 months ago) by eric
Branch: MAIN
Changes since 1.96: +190 -57 lines
Diff to previous 1.96 (colored)
Allow "smtpctl show queue" to run in "online" mode if the smtpd server is running. The scheduler sends the runtime state of each envelope to the queue process which loads the envelope, fills the runtime bits and sends the envelope back to the client. Iteration over the envelope set happens in small chunks to make the request interruptible and to allow the server to keep doing its job in the meantime. Adpat "smtpctl schedule-all" to schedule the messages one by one using the same iteration mechanism. Document "smtpctl monitor" and "smtpctl show queue". ok gilles@
Revision 1.96 / (download) - annotate - [select for diffs], Tue Nov 13 09:35:18 2012 UTC (11 years, 6 months ago) by eric
Branch: MAIN
Changes since 1.95: +184 -185 lines
Diff to previous 1.95 (colored)
Simplify the smtpctl code: add a try_connect() function to test if the server is running, and flush()/next_message() helpers to make imsg request/response loops easier. ok gilles@
Revision 1.95 / (download) - annotate - [select for diffs], Mon Nov 12 14:58:53 2012 UTC (11 years, 7 months ago) by eric
Branch: MAIN
Changes since 1.94: +59 -3 lines
Diff to previous 1.94 (colored)
Cleanups and improvements: * Log more events (especially client session) and use a better scheme for that: each messages is prefixed with a token to easily identify its class: - info/warn/debug: general server messages - smtp-in: smtp client connections - relay: status update for relayed messages - delivery: status update for local deliveries * Implement "smtpctl monitor" to display updates of selected internal counters. * When reloading the on-disk queue at startup do not commit a message if no envelope was submitted for that message. * Remove unused stuff in the config parser. ok gilles@
Revision 1.94 / (download) - annotate - [select for diffs], Fri Oct 26 19:16:42 2012 UTC (11 years, 7 months ago) by chl
Branch: MAIN
Changes since 1.93: +9 -7 lines
Diff to previous 1.93 (colored)
add a new uptime.human entry in stats, derived from uptime, but displayed in a human readable fashion: uptime=123456 uptime.human=1d10h17m36s ok gilles@
Revision 1.93 / (download) - annotate - [select for diffs], Sun Oct 14 11:58:23 2012 UTC (11 years, 7 months ago) by gilles
Branch: MAIN
Changes since 1.92: +12 -1 lines
Diff to previous 1.92 (colored)
introduce map_file.c which will deprecate map_stdio.c The idea is to have a file-backed map but to have smtpd(8) cache the maps so that it cannot be partially read if edited while mail is received. The file is read and converted to a static map (map_static.c), changes aren't visible to smtpd until an explicit: smtpctl update map which reads file, builds a new static map and invalidates the former. partial-read issue discussed with beck@ and halex@ idea to convert internally to a static map by eric@ diff ok eric@ and chl@
Revision 1.92 / (download) - annotate - [select for diffs], Wed Oct 10 19:39:11 2012 UTC (11 years, 8 months ago) by gilles
Branch: MAIN
Changes since 1.91: +68 -11 lines
Diff to previous 1.91 (colored)
teach smtpctl how to display envelopes and messages using their id. this allows an admin to inspect the queue without having to manually extract bucket and find the path to an envelope or message. diff by Sunil Nimmagadda <sunil@poolp.org> ok eric@, chl@ and I
Revision 1.91 / (download) - annotate - [select for diffs], Wed Sep 19 20:08:53 2012 UTC (11 years, 8 months ago) by eric
Branch: MAIN
Changes since 1.90: +11 -11 lines
Diff to previous 1.90 (colored)
use lower case for envelope fields. requested by gilles@
Revision 1.90 / (download) - annotate - [select for diffs], Wed Sep 19 18:20:36 2012 UTC (11 years, 8 months ago) by eric
Branch: MAIN
Changes since 1.89: +12 -5 lines
Diff to previous 1.89 (colored)
Remove DF_ENQUEUE flag. It is mostly unused and logically broken. Ignore it in existing envelopes until it gets completely dropped. Change "smtpctl show queue" to display the address family of the envelope source instead of the ENQUEUE flag. ok gilles@
Revision 1.89 / (download) - annotate - [select for diffs], Thu Aug 30 22:06:00 2012 UTC (11 years, 9 months ago) by gilles
Branch: MAIN
Changes since 1.88: +4 -6 lines
Diff to previous 1.88 (colored)
- rename show_envelope() to show_queue_envelope() - remove SHOW_RUNQUEUE it was a noop since runqueues have been removed years ago from smtpd
Revision 1.88 / (download) - annotate - [select for diffs], Sat Aug 25 10:23:12 2012 UTC (11 years, 9 months ago) by gilles
Branch: MAIN
Changes since 1.87: +27 -4 lines
Diff to previous 1.87 (colored)
- introduce struct stat_value - statistics can now have a type (counter, timestamp, timeval, timespec and possibly others in the future) - stat_increment() / stat_decrement() now take an increment/decrement value and are at the moment only of type counter - stat_set() now takes a stat_value - provide helpers to convert raw values to stat_value ok eric@, ok chl@ while at it fix a rq_queue_dump() call using a bogus timestamp in scheduler ramqueue.
Revision 1.87 / (download) - annotate - [select for diffs], Sun Aug 19 14:16:58 2012 UTC (11 years, 9 months ago) by chl
Branch: MAIN
Changes since 1.86: +6 -6 lines
Diff to previous 1.86 (colored)
coding style: replace all occurences of u_int* with uint* ok eric@
Revision 1.86 / (download) - annotate - [select for diffs], Sat Aug 18 18:18:23 2012 UTC (11 years, 9 months ago) by gilles
Branch: MAIN
Changes since 1.85: +45 -130 lines
Diff to previous 1.85 (colored)
- introduce stat_backend, an API for pluggable statistic backends > statistics are no longer static structures in shared memory > statistics are only set, smtpd never uses them in its logic > each statistic is a key/value where key can be any (dynamic) string - convert all uses of the former API to use the new one - implement stat_ramstat that keeps non-persistent stats in ram structure ok eric@, ok chl@
Revision 1.85 / (download) - annotate - [select for diffs], Wed Aug 8 17:33:55 2012 UTC (11 years, 10 months ago) by eric
Branch: MAIN
Changes since 1.84: +2 -2 lines
Diff to previous 1.84 (colored)
remove useless defines ok gilles@ chl@
Revision 1.84 / (download) - annotate - [select for diffs], Tue Aug 7 20:36:10 2012 UTC (11 years, 10 months ago) by eric
Branch: MAIN
Changes since 1.83: +2 -2 lines
Diff to previous 1.83 (colored)
fix evpid parsing on 32bit archs ok gilles@
Revision 1.83 / (download) - annotate - [select for diffs], Mon Jul 9 09:57:53 2012 UTC (11 years, 11 months ago) by gilles
Branch: MAIN
CVS Tags: OPENBSD_5_2_BASE,
OPENBSD_5_2
Changes since 1.82: +13 -13 lines
Diff to previous 1.82 (colored)
- runner is the terminology we used back when we had runqueues, we no longer have them and runner is actually a scheduler so rename. - introduce scheduler_backend which does the same to scheduler than queue_backend does to queue and map_backend does to maps - remove all occurences of RUNNER and runner, replace them with SCHEDULER and scheduler ok eric@, ok chl@
Revision 1.82 / (download) - annotate - [select for diffs], Mon Jul 2 17:00:05 2012 UTC (11 years, 11 months ago) by eric
Branch: MAIN
Changes since 1.81: +2 -2 lines
Diff to previous 1.81 (colored)
Lookup queue and scheduler backends by name, rather than enum. Add a command-line option to specify the backend to use at runtime. ok gilles@
Revision 1.81 / (download) - annotate - [select for diffs], Wed Jun 20 20:45:23 2012 UTC (11 years, 11 months ago) by eric
Branch: MAIN
Changes since 1.80: +7 -7 lines
Diff to previous 1.80 (colored)
Finally get rid of the queue_kind enum in the queue API. Keep that internally in fsqueue backend for now, and let the fsqueue_message() and fsqueue_envelope() dispatchers do the right thing. Based on a diff by chl@ ok chl@ gilles@
Revision 1.80 / (download) - annotate - [select for diffs], Sun May 13 09:18:52 2012 UTC (12 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.79: +2 -2 lines
Diff to previous 1.79 (colored)
Remove sizes entry so it doesn't appear as a valid command in the "smtpctl show" output, and use errx rather than err for the unknown message error. ok gilles
Revision 1.79 / (download) - annotate - [select for diffs], Sun Apr 15 12:12:35 2012 UTC (12 years, 1 month ago) by chl
Branch: MAIN
Changes since 1.78: +1 -3 lines
Diff to previous 1.78 (colored)
Remove dead assignments and newly created unused variables. Found by LLVM/Clang Static Analyzer. ok gilles@
Revision 1.78 / (download) - annotate - [select for diffs], Sat Jan 28 11:33:07 2012 UTC (12 years, 4 months ago) by gilles
Branch: MAIN
CVS Tags: OPENBSD_5_1_BASE,
OPENBSD_5_1
Changes since 1.77: +1 -40 lines
Diff to previous 1.77 (colored)
- introduce the scheduler_backend API - introduce the scheduler_ramqueue backend - remove all occurences of ramqueue outside of the ramqueue backend - teach runner how to use the new API it is now possible to write custom schedulers ! ok eric@, ok chl@
Revision 1.77 / (download) - annotate - [select for diffs], Tue Jan 24 12:20:18 2012 UTC (12 years, 4 months ago) by eric
Branch: MAIN
Changes since 1.76: +2 -2 lines
Diff to previous 1.76 (colored)
Add a parameter to the queue backend init() call to specify wether the call is issued by smtpd or smtpctl. In the latter case, only perform sanity checks and do not touch directories. A running server no longer lose its "incoming/" directory each time smtpctl is called... ok gilles@
Revision 1.76 / (download) - annotate - [select for diffs], Thu Jan 12 22:59:55 2012 UTC (12 years, 5 months ago) by eric
Branch: MAIN
Changes since 1.75: +1 -8 lines
Diff to previous 1.75 (colored)
The status field in the envelope is confusing. Its only purpose is to notify the runner of what happened with an envelope that has been scheduled. It is not part of the state of the envelope, and it is not even dumped. So it should only be set by mta/mda, checked by runner to decide what to do with the envelope, and ignored everywhere else. ok gilles@
Revision 1.75 / (download) - annotate - [select for diffs], Thu Jan 12 18:06:18 2012 UTC (12 years, 5 months ago) by eric
Branch: MAIN
Changes since 1.74: +1 -2 lines
Diff to previous 1.74 (colored)
Remove dead code for config reloading for now. It is not functionnal and confusing. ok gilles@
Revision 1.74 / (download) - annotate - [select for diffs], Sun Dec 18 22:52:25 2011 UTC (12 years, 5 months ago) by chl
Branch: MAIN
Changes since 1.73: +2 -1 lines
Diff to previous 1.73 (colored)
Add missing header needed by PRI format string ok eric@
Revision 1.73 / (download) - annotate - [select for diffs], Wed Dec 14 18:42:27 2011 UTC (12 years, 5 months ago) by eric
Branch: MAIN
Changes since 1.72: +99 -1 lines
Diff to previous 1.72 (colored)
move show_queue() and related functions from queue_shared.c to smtpctl.c ok gilles@
Revision 1.72 / (download) - annotate - [select for diffs], Wed Nov 23 13:48:03 2011 UTC (12 years, 6 months ago) by chl
Branch: MAIN
Changes since 1.71: +22 -13 lines
Diff to previous 1.71 (colored)
Fix Segmentation Fault when launching mailq(8) Bug reported by Mark Patruck <mark at wrapped.cx> ok gilles@ eric@
Revision 1.71 / (download) - annotate - [select for diffs], Tue Nov 15 23:06:39 2011 UTC (12 years, 6 months ago) by gilles
Branch: MAIN
Changes since 1.70: +18 -3 lines
Diff to previous 1.70 (colored)
Qwalk, our API to linearly walk over the persistent queue, did not take the queue_backend into account and assumed a filesystem with a specific layout. This commit does plenty of things: - make qwalk an abstraction in the queue_backend API, and impose queue drivers to implement qwalk_open(), qwalk() and qwalk_close(); - move previous qwalk_open(), qwalk() and qwalk_close() to the fsqueue driver since they were fsqueue specific ... - make qwalk API work with msgid/evpid instead of pathnames since we're going to use the queue_backend API to load envelopes by evpid anyway; - makes smtpd use *solely* the queue_backend API when manipulating the queue. pathnames were removed from smtpd.h and moved into the fsqueue which means we can now store a queue anywhere ... as long as we write the ten functions or so required for a queue driver ;-) ok eric@, ok chl@
Revision 1.70 / (download) - annotate - [select for diffs], Wed Oct 26 20:47:31 2011 UTC (12 years, 7 months ago) by gilles
Branch: MAIN
Changes since 1.69: +5 -5 lines
Diff to previous 1.69 (colored)
- fix smtpctl pause/resume so the ramqueue scheduling is done correctly - rename IMSG and smtpctl pause/resume parameters - update man page tested by me, ok chl@, eric@
Revision 1.69 / (download) - annotate - [select for diffs], Sun Oct 23 17:12:41 2011 UTC (12 years, 7 months ago) by gilles
Branch: MAIN
Changes since 1.68: +12 -1 lines
Diff to previous 1.68 (colored)
- smtpctl schedule no longer works, instead, use 'smtpctl schedule-id <id>' - introduce 'smtpctl schedule-all' ok eric@
Revision 1.68 / (download) - annotate - [select for diffs], Sun Oct 23 09:30:07 2011 UTC (12 years, 7 months ago) by gilles
Branch: MAIN
Changes since 1.67: +1 -2 lines
Diff to previous 1.67 (colored)
fsqueue no longer stores envelopes by dumping the structure, instead use a couple of load/dump functions to convert to and from a human readable fmt. while at it kill struct delivery and merge back its fields to the envelope. this basically means we shouldn't require users to flush their queues every time we make a change to struct envelope. work is not done, but we're at a better state than the binary fsqueue so we'll improve it in-tree. has been running on my own box for the last 12 hours or so ok eric@, chl@
Revision 1.67 / (download) - annotate - [select for diffs], Thu Sep 1 19:56:49 2011 UTC (12 years, 9 months ago) by eric
Branch: MAIN
Changes since 1.66: +111 -63 lines
Diff to previous 1.66 (colored)
Introduce a small set of functions to manage stat counters in a simpler and hopefully saner way. ok gilles@ chl@
Revision 1.66 / (download) - annotate - [select for diffs], Tue Aug 30 07:06:06 2011 UTC (12 years, 9 months ago) by chl
Branch: MAIN
Changes since 1.65: +7 -7 lines
Diff to previous 1.65 (colored)
fix format string ok gilles@
Revision 1.65 / (download) - annotate - [select for diffs], Mon Aug 29 21:43:09 2011 UTC (12 years, 9 months ago) by chl
Branch: MAIN
Changes since 1.64: +3 -2 lines
Diff to previous 1.64 (colored)
cast all printed time_t to long long int, and change format string accordingly. ok gilles@
Revision 1.64 / (download) - annotate - [select for diffs], Fri Aug 26 14:39:47 2011 UTC (12 years, 9 months ago) by chl
Branch: MAIN
Changes since 1.63: +2 -1 lines
Diff to previous 1.63 (colored)
add missing header needed by time() ok gilles@
Revision 1.63 / (download) - annotate - [select for diffs], Tue Aug 16 19:12:40 2011 UTC (12 years, 9 months ago) by gilles
Branch: MAIN
Changes since 1.62: +31 -2 lines
Diff to previous 1.62 (colored)
smtpctl show sizes, displays the size of queue-related structures, useful for developers to see the impact of structure changes on memory and disk usage, and useful for users to better understand 'smtpctl show stats'
Revision 1.62 / (download) - annotate - [select for diffs], Tue Aug 16 19:02:03 2011 UTC (12 years, 9 months ago) by gilles
Branch: MAIN
Changes since 1.61: +9 -1 lines
Diff to previous 1.61 (colored)
add a host-tree and an envelope-tree in the ramqueue, they will be used to improve scheduling and general ramqueue operations. unused yet
Revision 1.61 / (download) - annotate - [select for diffs], Thu Jul 21 23:29:24 2011 UTC (12 years, 10 months ago) by gilles
Branch: MAIN
CVS Tags: OPENBSD_5_0_BASE,
OPENBSD_5_0
Changes since 1.60: +26 -1 lines
Diff to previous 1.60 (colored)
- update smtpctl.8 to reflect reality - bring back 'smtpctl schedule' and 'smtpctl remove' to life Things you should know: The ramqueue data structure is not finished yet and lacks an envelope tree for evpid lookups. I wanted to wait until I'm done but too many people are affected by not being able to reschedule envelopes, this is a quick fix. So right now there's an O(rrible) complexity as both commands will perform a (possibly aborted) queue scan leading to O(n). I will make that O(log n) soon. Also, smtpctl remove no longer supports removing an entire message, I will fix that very soon too.
Revision 1.60 / (download) - annotate - [select for diffs], Sun May 1 12:57:11 2011 UTC (13 years, 1 month ago) by eric
Branch: MAIN
Changes since 1.59: +3 -1 lines
Diff to previous 1.59 (colored)
the smtpd env is meant to be global, so do not pass it all around. discussed with and ok gilles@
Revision 1.59 / (download) - annotate - [select for diffs], Sun Apr 17 13:36:07 2011 UTC (13 years, 1 month ago) by gilles
Branch: MAIN
Changes since 1.58: +6 -6 lines
Diff to previous 1.58 (colored)
cleanups, cosmethic changes, functions that should be static are now static no functionnal change
Revision 1.58 / (download) - annotate - [select for diffs], Wed Apr 13 20:53:18 2011 UTC (13 years, 2 months ago) by gilles
Branch: MAIN
Changes since 1.57: +13 -28 lines
Diff to previous 1.57 (colored)
following an idea from jacekm@, smtpd now uses a ram-queue instead of doing a continuous walk on the disk-queue. the implementation differs from what jacekm@ commited (and I backed out) a while ago in that it uses a queue and a host tree required for upcoming features. code will be improved in tree, it requires changes to be done in queue and bounce API, I just wanted to commit a working version first ... tested by todd@ and I
Revision 1.57 / (download) - annotate - [select for diffs], Sat Apr 2 16:40:19 2011 UTC (13 years, 2 months ago) by eric
Branch: MAIN
Changes since 1.56: +9 -1 lines
Diff to previous 1.56 (colored)
add stat counters for the lookup agent ok gilles@
Revision 1.56 / (download) - annotate - [select for diffs], Wed Mar 9 20:59:22 2011 UTC (13 years, 3 months ago) by gilles
Branch: MAIN
Changes since 1.55: +4 -1 lines
Diff to previous 1.55 (colored)
smtpctl show stats displays inet4/inet6 repartition for incoming sessions
Revision 1.55 / (download) - annotate - [select for diffs], Sun Nov 28 14:35:58 2010 UTC (13 years, 6 months ago) by gilles
Branch: MAIN
CVS Tags: OPENBSD_4_9_BASE,
OPENBSD_4_9
Changes since 1.54: +2 -10 lines
Diff to previous 1.54 (colored)
remove all unused headers
Revision 1.54 / (download) - annotate - [select for diffs], Sun Nov 28 13:56:43 2010 UTC (13 years, 6 months ago) by gilles
Branch: MAIN
Changes since 1.53: +2 -1 lines
Diff to previous 1.53 (colored)
a bit of .h cleanups, no functionnal change
Revision 1.53 / (download) - annotate - [select for diffs], Wed Nov 24 23:27:04 2010 UTC (13 years, 6 months ago) by todd
Branch: MAIN
Changes since 1.52: +16 -2 lines
Diff to previous 1.52 (colored)
add *maxactive stats "ok and no need to keep them for yourself" gilles@
Revision 1.52 / (download) - annotate - [select for diffs], Sat Oct 9 22:05:35 2010 UTC (13 years, 8 months ago) by gilles
Branch: MAIN
Changes since 1.51: +29 -102 lines
Diff to previous 1.51 (colored)
backout the "new" queue code commited 4 months ago. it has many good ideas, is way more optimized than what we had earlier and there's definitely stuff we want to keep, however it is early optimization that doesn't account for many features and makes them hard (if not impossible) to write without ugly workarounds that ruin the purpose of the optimizations. the backout goes to 30 May's right before the commit and catches up on all the non-queue related commits that happened since then. i'll work on reintroducing the ideas from this queue when the basic features we expect from a MTA are implemented. suggested on tech@ about a week ago, no objections, several "please make smtpd move forward" mails from hackers and tech readers.
Revision 1.51 / (download) - annotate - [select for diffs], Tue Jun 1 23:06:25 2010 UTC (14 years ago) by jacekm
Branch: MAIN
CVS Tags: OPENBSD_4_8_BASE,
OPENBSD_4_8
Changes since 1.50: +102 -29 lines
Diff to previous 1.50 (colored)
new queue, again; gcc2 compile tested by deraadt
Revision 1.50 / (download) - annotate - [select for diffs], Tue Jun 1 19:47:09 2010 UTC (14 years ago) by jacekm
Branch: MAIN
Changes since 1.49: +29 -102 lines
Diff to previous 1.49 (colored)
New queue doesn't compile on gcc2, back out. Spotted by deraadt@
Revision 1.49 / (download) - annotate - [select for diffs], Tue Jun 1 11:37:26 2010 UTC (14 years ago) by jacekm
Branch: MAIN
Changes since 1.48: +2 -1 lines
Diff to previous 1.48 (colored)
Include birth time in smtpctl show queue raw.
Revision 1.48 / (download) - annotate - [select for diffs], Mon May 31 23:38:56 2010 UTC (14 years ago) by jacekm
Branch: MAIN
Changes since 1.47: +101 -29 lines
Diff to previous 1.47 (colored)
Rewrite entire queue code. Major goals: 1) Fix bad performance caused by the runner process doing full queue read in 1s intervals. My Soekris can now happily accept >50 msg/s while having multi-thousand queue; before, one hundred queue would bring the system to its knees. 2) Introduce Qmail-like scheduler that doesn't write as much to the disk so that it needs less code for servicing error conditions, which in some places can be tricky to get right. 3) Introduce separation between the scheduler and the backend; these two queue aspects shouldn't be too tied too each other. This means that eg. storing queue in SQL requires rewrite of just queue_backend.c. 4) Make on-disk queue format architecture independent, and more easily extensible, to reduce number of flag days in the future. Minor goals: ENOSPC no longer prevents delivery attempts, fixed session limiting for relayed mail, improved batching of "relay via" mails, human-readable mailq output, "show queue raw" command, clearer logging, sending of single bounce about multiple recipients, exact delay= computation, zero delay between deliveries while within session limit (currently 1s delay between re-scheduling is enforced), mta no longer requests content fd, corrected session limit for bounce submissions, tiny <100B queue files instead of multi-KB, detect loops before accepting mail, reduce traffic on imsg channels by killing enormous struct submit_status.
Revision 1.47 / (download) - annotate - [select for diffs], Wed Apr 21 18:54:43 2010 UTC (14 years, 1 month ago) by jacekm
Branch: MAIN
Changes since 1.46: +7 -7 lines
Diff to previous 1.46 (colored)
Runner process is just a helper for queue, so tear down its imsg channels to parent, mda, mta, lka, smtp, and control. This leaves just the channel to queue, which forwards imsgs on runner's behalf and redirects any replies back to it. OK gilles@
Revision 1.46 / (download) - annotate - [select for diffs], Sun Jan 10 16:42:35 2010 UTC (14 years, 5 months ago) by gilles
Branch: MAIN
CVS Tags: OPENBSD_4_7_BASE,
OPENBSD_4_7
Changes since 1.45: +11 -18 lines
Diff to previous 1.45 (colored)
- teach runner how to remove a message from queue given a message id/uid and assuming message is not in processing/scheduled state - teach smtpctl how to request message removal from runner discussed with todd@, idea ok jacekm@
Revision 1.45 / (download) - annotate - [select for diffs], Sun Jan 3 14:37:37 2010 UTC (14 years, 5 months ago) by chl
Branch: MAIN
Changes since 1.44: +13 -2 lines
Diff to previous 1.44 (colored)
Implement "log verbose" and "log brief" to enable or disable verbose debug logging on runtime. Based on claudio@'s work on ripd, ospfd, ospf6d, dvmrpd, ldpd, bgpd. With help/ideas/testing from gilles@ jacekm@ todd@ ok jacekm@
Revision 1.44 / (download) - annotate - [select for diffs], Mon Dec 14 18:21:53 2009 UTC (14 years, 5 months ago) by jacekm
Branch: MAIN
Changes since 1.43: +3 -1 lines
Diff to previous 1.43 (colored)
Control maximum number of bounce sessions similarly to how the mta and mda are now controlled.
Revision 1.43 / (download) - annotate - [select for diffs], Mon Dec 14 16:44:14 2009 UTC (14 years, 5 months ago) by jacekm
Branch: MAIN
Changes since 1.42: +4 -2 lines
Diff to previous 1.42 (colored)
Impose sessions limit on the delivery sessions (mta and mda).
Revision 1.42 / (download) - annotate - [select for diffs], Sun Dec 13 22:02:55 2009 UTC (14 years, 6 months ago) by jacekm
Branch: MAIN
Changes since 1.41: +3 -0 lines
Diff to previous 1.41 (colored)
Use safe fd limits in smtp, lka, queue, and control. Removes a possibility for fd-starvation fatal when under heavy load.
Revision 1.41 / (download) - annotate - [select for diffs], Sun Dec 13 21:48:21 2009 UTC (14 years, 6 months ago) by jacekm
Branch: MAIN
Changes since 1.40: +2 -2 lines
Diff to previous 1.40 (colored)
typo
Revision 1.40 / (download) - annotate - [select for diffs], Fri Nov 13 20:34:51 2009 UTC (14 years, 7 months ago) by chl
Branch: MAIN
Changes since 1.39: +2 -1 lines
Diff to previous 1.39 (colored)
add missing headers needed by time() ok jacekm@
Revision 1.39 / (download) - annotate - [select for diffs], Sun Oct 25 19:46:31 2009 UTC (14 years, 7 months ago) by gilles
Branch: MAIN
Changes since 1.38: +4 -2 lines
Diff to previous 1.38 (colored)
smtpctl reload is work in progress, do not expose it and make sure smtpd's control process does not try to handle it. spotted and reported by martijn@bunix.org
Revision 1.38 / (download) - annotate - [select for diffs], Sat Sep 12 12:24:51 2009 UTC (14 years, 9 months ago) by jacekm
Branch: MAIN
Changes since 1.37: +1 -3 lines
Diff to previous 1.37 (colored)
Simplify line len checking: use one limit for all SMTP exchanges. This is not as strict as various RFCs want it, but we can make it more granular later. For now, let all mails flow by using the maximum of all limits found in the RFCs. ok gilles@
Revision 1.37 / (download) - annotate - [select for diffs], Sat Sep 12 09:38:45 2009 UTC (14 years, 9 months ago) by gilles
Branch: MAIN
Changes since 1.36: +2 -1 lines
Diff to previous 1.36 (colored)
cmdlinetoolong stat was incremented at the wrong place, fix
Revision 1.36 / (download) - annotate - [select for diffs], Sat Sep 12 09:22:33 2009 UTC (14 years, 9 months ago) by gilles
Branch: MAIN
Changes since 1.35: +3 -2 lines
Diff to previous 1.35 (colored)
- fix a compile time warning - add a new stats counter to distinguish between command lines which exceeded the limit and data lines which exceeded the limits
Revision 1.35 / (download) - annotate - [select for diffs], Wed Sep 2 12:47:06 2009 UTC (14 years, 9 months ago) by jacekm
Branch: MAIN
Changes since 1.34: +2 -1 lines
Diff to previous 1.34 (colored)
Include mbox write errors in "show stats". Suggested by gilles.
Revision 1.34 / (download) - annotate - [select for diffs], Thu Aug 27 11:38:50 2009 UTC (14 years, 9 months ago) by jacekm
Branch: MAIN
Changes since 1.33: +2 -2 lines
Diff to previous 1.33 (colored)
s/relayd/smtpd/
Revision 1.33 / (download) - annotate - [select for diffs], Sat Aug 8 19:16:41 2009 UTC (14 years, 10 months ago) by ian
Branch: MAIN
Changes since 1.32: +7 -2 lines
Diff to previous 1.32 (colored)
mailq is a common sendmail alias for showing the queue; make smtpctl implement this, ignoring sendmail options for now. OK gilles@, jackekm@
Revision 1.32 / (download) - annotate - [select for diffs], Sat Aug 8 00:16:49 2009 UTC (14 years, 10 months ago) by gilles
Branch: MAIN
Changes since 1.31: +2 -1 lines
Diff to previous 1.31 (colored)
missing header
Revision 1.31 / (download) - annotate - [select for diffs], Sat Jun 6 04:14:21 2009 UTC (15 years ago) by pyr
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE,
OPENBSD_4_6
Changes since 1.30: +2 -9 lines
Diff to previous 1.30 (colored)
Sync with relayd: Stop pushing event handling in the imsg framework. Instead, provide a small glue layer on top of both imsg and libevent. This finally clearly separates event handling and imsg construction. Sidetrack bonus: remove the mega-ugly hack of having a dummy imsg_event_add stub in smtpctl. ok jaceckm@
Revision 1.30 / (download) - annotate - [select for diffs], Sat Jun 6 03:22:21 2009 UTC (15 years ago) by jacekm
Branch: MAIN
Changes since 1.29: +4 -3 lines
Diff to previous 1.29 (colored)
if smtpctl is run in unsupported mode, exit with a warning instead of defaulting to smtpctl-mode; aja@ ok
Revision 1.29 / (download) - annotate - [select for diffs], Sat May 30 16:30:33 2009 UTC (15 years ago) by gilles
Branch: MAIN
Changes since 1.28: +4 -1 lines
Diff to previous 1.28 (colored)
- increment stats.mta.sessions_active when session is allocated in mta - reorder alphabetically and add mta to the statistics
Revision 1.28 / (download) - annotate - [select for diffs], Wed May 27 13:09:07 2009 UTC (15 years ago) by jacekm
Branch: MAIN
Changes since 1.27: +2 -1 lines
Diff to previous 1.27 (colored)
request flood mitigation: 1) each state may have 2 responses sent quickly; 2) more responses are delayed exponentially, up to a defined limit. Delay count is user visible (smtp.errors.delays). ok gilles@
Revision 1.27 / (download) - annotate - [select for diffs], Sun May 24 14:22:24 2009 UTC (15 years ago) by jacekm
Branch: MAIN
Changes since 1.26: +38 -53 lines
Diff to previous 1.26 (colored)
Instead of keeping stats private to each process, and querying every process individually whenever stats need to be fetched, keep stats in MAP_ANON shared memory allocated by parent. This means control has direct access to stats and can respond very quickly without troubling any other daemon processes. ok gilles@
Revision 1.26 / (download) - annotate - [select for diffs], Wed May 20 11:58:06 2009 UTC (15 years ago) by gilles
Branch: MAIN
Changes since 1.25: +2 -2 lines
Diff to previous 1.25 (colored)
fix a pasto causing "smtpctl resume mta" to try to resume mda spotted and diff by giovanni <qgiovanni@gmail.com>
Revision 1.25 / (download) - annotate - [select for diffs], Mon May 18 20:23:35 2009 UTC (15 years ago) by jacekm
Branch: MAIN
Changes since 1.24: +15 -3 lines
Diff to previous 1.24 (colored)
Complete rework of bufferevent event masking allowing for more strictness: - Drop clients attempting command pipelining; protects the daemon from all kinds of abuse. - Replace F_EVLOCKED flag with F_WRITEONLY which has cleaner sematics: when up, session must not be destroyed nor read from, but may be written to. - Write callback becomes a central place for enabling EV_READ. - Delay bufferevent creation until after ssl handshake is completed. A bunch of session error stats were added to smtpctl's "show stats". These could help spotting event masking errors in the future. ok gilles@
Revision 1.24 / (download) - annotate - [select for diffs], Thu Apr 23 08:28:45 2009 UTC (15 years, 1 month ago) by jacekm
Branch: MAIN
Changes since 1.23: +2 -2 lines
Diff to previous 1.23 (colored)
sort "show stats" output
Revision 1.23 / (download) - annotate - [select for diffs], Tue Apr 21 18:12:05 2009 UTC (15 years, 1 month ago) by jacekm
Branch: MAIN
Changes since 1.22: +5 -3 lines
Diff to previous 1.22 (colored)
Make /usr/sbin/sendmail not fail due to smtpd being down. The approach is to save cmdline + stdin in a file under a newly added directory /var/spool/smtpd/offline (uid 0 gid 0 mode 1777). Next time daemon starts, it uses information in that directory to replay sendmail on user's behalf. ok gilles@
Revision 1.22 / (download) - annotate - [select for diffs], Mon Apr 20 17:07:01 2009 UTC (15 years, 1 month ago) by jacekm
Branch: MAIN
Changes since 1.21: +2 -1 lines
Diff to previous 1.21 (colored)
Rewrite smtp session timeouts; use evtimer_* from event(3) instead of regularly walking session tree in search of idle clients. Gives the smtp process a chance to become idle. As a bonus, add smtp.sessions.timeout counter to "smtpctl show stats". ok gilles@
Revision 1.21 / (download) - annotate - [select for diffs], Thu Apr 16 15:35:06 2009 UTC (15 years, 1 month ago) by jacekm
Branch: MAIN
Changes since 1.20: +3 -2 lines
Diff to previous 1.20 (colored)
Total rewrite of the sendmail interface. Adds support for -t, -v, and -F cmdline args. Also, date and Message-Id headers are added when missing. The main trouble with the current enqueue code is that it requires dealing with problems in the control process that are already solved in the smtp process, ie. duplicating a lot of code which interacts with untrusted clients. This diff solves this by making sendmail obtain a SMTP socket from smtp via smtpd.sock, and using that socket to deliver the message. For smtpd it looks as if connection was made from the network, only difference being the F_MESSAGE_ENQUEUED message flag, handy when differentation between local and remote deliveries is wanted. Most of the features come from the femail program, created by henning@. Additional testing by Nigel J. Taylor. ok gilles@, henning@ happy with smtpd using femail code
Revision 1.20 / (download) - annotate - [select for diffs], Wed Apr 15 20:34:59 2009 UTC (15 years, 1 month ago) by jacekm
Branch: MAIN
Changes since 1.19: +3 -3 lines
Diff to previous 1.19 (colored)
s/ssmtp/smtps/; ok gilles@
Revision 1.19 / (download) - annotate - [select for diffs], Mon Mar 23 21:48:40 2009 UTC (15 years, 2 months ago) by jmc
Branch: MAIN
Changes since 1.18: +2 -2 lines
Diff to previous 1.18 (colored)
various minor improvements; ok jacekm gilles
Revision 1.18 / (download) - annotate - [select for diffs], Sun Mar 22 13:52:03 2009 UTC (15 years, 2 months ago) by ian
Branch: MAIN
Changes since 1.17: +2 -2 lines
Diff to previous 1.17 (colored)
trivial message repair, ok jacek@
Revision 1.17 / (download) - annotate - [select for diffs], Sun Mar 15 19:32:10 2009 UTC (15 years, 2 months ago) by gilles
Branch: MAIN
Changes since 1.16: +3 -3 lines
Diff to previous 1.16 (colored)
since we are going to share code in smtp sessions and mta sessions, we need to also share the statistics structure, still being worked on
Revision 1.16 / (download) - annotate - [select for diffs], Sun Mar 1 12:12:58 2009 UTC (15 years, 3 months ago) by jacekm
Branch: MAIN
Changes since 1.15: +3 -2 lines
Diff to previous 1.15 (colored)
In "smtpctl show stats", break queue.inserts into queue.inserts.remote and queue.inserts.local; ok gilles@
Revision 1.15 / (download) - annotate - [select for diffs], Tue Feb 24 12:07:47 2009 UTC (15 years, 3 months ago) by gilles
Branch: MAIN
CVS Tags: OPENBSD_4_5_BASE,
OPENBSD_4_5
Changes since 1.14: +13 -1 lines
Diff to previous 1.14 (colored)
teach smtpctl's parser how to deal with parameters that are not necessarily a token so that it is possible to do: smtpctl schedule <message id/uid> introduce F_MESSAGE_FORCESCHEDULE which lets the runner schedule a message even if the retry delay has not been expired. F_MESSAGE_ENQUEUED is a valid flag for a message and should not cause an\ errx() in smtpctl show queue
Revision 1.14 / (download) - annotate - [select for diffs], Tue Feb 17 22:49:22 2009 UTC (15 years, 3 months ago) by jacekm
Branch: MAIN
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)
imsg_init depends on ibuf being calloc'd. fix few places where malloc is used instead; ok gilles@ Problem made visible by malloc.conf = AFGJ, and pointed out by otto@
Revision 1.13 / (download) - annotate - [select for diffs], Fri Feb 13 20:44:46 2009 UTC (15 years, 3 months ago) by jacekm
Branch: MAIN
Changes since 1.12: +11 -11 lines
Diff to previous 1.12 (colored)
Make stats output more sysctl-like by killing spaces around '='; ok gilles@
Revision 1.12 / (download) - annotate - [select for diffs], Fri Jan 30 21:52:55 2009 UTC (15 years, 4 months ago) by gilles
Branch: MAIN
Changes since 1.11: +2 -1 lines
Diff to previous 1.11 (colored)
when decreasing ssl related counters, make sure the session was flagged as F_SECURE. while at it, add "smtp.sessions.aborted" which keeps track of sessions which were interrupted before completion.
Revision 1.11 / (download) - annotate - [select for diffs], Fri Jan 30 21:40:21 2009 UTC (15 years, 4 months ago) by gilles
Branch: MAIN
Changes since 1.10: +8 -0 lines
Diff to previous 1.10 (colored)
improve statistics for smtp process. not only collect the current sessions count, but also the total sessions count, ssmtp sessions (both current and total) and starttls sessions (both current and total) # ./smtpctl/smtpctl show stats|grep smtp.sessions smtp.sessions = 0 smtp.sessions.active = 0 smtp.sessions.ssmtp = 0 smtp.sessions.ssmtp.active = 0 smtp.sessions.starttls = 0 smtp.sessions.starttls.active = 0 #
Revision 1.10 / (download) - annotate - [select for diffs], Fri Jan 30 21:22:33 2009 UTC (15 years, 4 months ago) by gilles
Branch: MAIN
Changes since 1.9: +2 -2 lines
Diff to previous 1.9 (colored)
clear the F_EVLOCK flag earlier to prevent the error event handler from being called again with F_EVLOCK set. this fixes a bug where disconnect after smtpd sends greeting and before entering any command failed to go into session_destroy(). while at it, rename the "smtp.clients" statistic to "smtp.sessions" and add counters to struct s_smtp so that I can add ssmtp and starttls with my next commit ;)
Revision 1.9 / (download) - annotate - [select for diffs], Thu Jan 29 22:34:21 2009 UTC (15 years, 4 months ago) by jacekm
Branch: MAIN
Changes since 1.8: +2 -2 lines
Diff to previous 1.8 (colored)
fix compiler warning
Revision 1.8 / (download) - annotate - [select for diffs], Thu Jan 29 21:59:15 2009 UTC (15 years, 4 months ago) by jacekm
Branch: MAIN
Changes since 1.7: +46 -1 lines
Diff to previous 1.7 (colored)
Implement "smtpctl show stats"; ok gilles@
Revision 1.7 / (download) - annotate - [select for diffs], Thu Jan 29 12:43:25 2009 UTC (15 years, 4 months ago) by jacekm
Branch: MAIN
Changes since 1.6: +3 -5 lines
Diff to previous 1.6 (colored)
Common queue walking code for smtpd and smtpctl. Kills majority of showqueue.c, the remaining code was moved to queue_shared.c; ok gilles@
Revision 1.6 / (download) - annotate - [select for diffs], Tue Jan 27 22:48:29 2009 UTC (15 years, 4 months ago) by gilles
Branch: MAIN
Changes since 1.5: +35 -22 lines
Diff to previous 1.5 (colored)
first bricks of enqueue code which allows smtpctl to submit mail to queue without "talking" smtp to listeners. currently, a big part of the server side code is done (and requires a cleanup), next step is to get it usable properly from a mail user agent.
Revision 1.5 / (download) - annotate - [select for diffs], Sun Jan 4 22:35:09 2009 UTC (15 years, 5 months ago) by gilles
Branch: MAIN
Changes since 1.4: +13 -5 lines
Diff to previous 1.4 (colored)
- smtp can now pause/resume the accepting of incoming messages - smtpctl recognizes "pause incoming" and "resume incoming" - setup imsg communication between control process and smtp process
Revision 1.4 / (download) - annotate - [select for diffs], Sun Jan 4 19:37:41 2009 UTC (15 years, 5 months ago) by gilles
Branch: MAIN
Changes since 1.3: +17 -1 lines
Diff to previous 1.3 (colored)
- runner is now capable of pausing/resuming the scheduling of deliveries for both mda and mta batches. - smtpctl can be used to disable/enable deliveries at runtime using the pause/resume commands. ok jacekm@
Revision 1.3 / (download) - annotate - [select for diffs], Sat Dec 27 16:45:01 2008 UTC (15 years, 5 months ago) by jacekm
Branch: MAIN
Changes since 1.2: +7 -4 lines
Diff to previous 1.2 (colored)
Break showqueue and showrunqueue into 2 words; ok gilles@
Revision 1.2 / (download) - annotate - [select for diffs], Sat Dec 6 02:44:08 2008 UTC (15 years, 6 months ago) by gilles
Branch: MAIN
Changes since 1.1: +21 -1 lines
Diff to previous 1.1 (colored)
- teach smtpctl how to inspect queue and runqueue, it supports two commands `showqueue' which displays the content of the queue (all envelopes) `showrunqueue` which displays envelopes scheduled for delivery. The utility will be improved and extended, but for now we need at least this basic support to help debug queue-related issues. Output format is spamdb-alike: type|envelope uid|sender|recipient|last delivery date|retry count ok jacek@
Revision 1.1 / (download) - annotate - [select for diffs], Fri Dec 5 03:28:37 2008 UTC (15 years, 6 months ago) by gilles
Branch: MAIN
- smtpctl utility to control the smtpd, don't expect too much yet as it is just an empty clone of relayctl with the glue needed to have it exchange imsg with smtpd correctly. code mostly by pyr@, reviewed by chl@ and I a while ago.