Age | Commit message (Collapse) | Author |
|
ambiguity: just use a single switch.
ok gilles@ sunil@
|
|
ok gilles@
|
|
allow read/write of envelopes and messages, unfortunately the purge_task()
function which is in charge of garbage collecting left-overs from aborted
transactions is still executed as _smtpd preventing it from working.
issue reported by Philippe Meunier, fix from Edgar Pettijohn
|
|
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@
|
|
|
|
Only the parent process handles SIGTERM and SIGINT. Upon receiving one
of those, it closes all imsg sockets and waitpid() for the children. It
fatal()s if one of the sockets is closed unexpectedly. Other processes
exit() "normally" when one of the imsg sockets is closed.
ok gilles@ sunil@
|
|
the imsg socket.
ok gilles@ sunil@
|
|
So stop pretending that the *_shutdown() functions could ever be called
in this context, and just fatal() if event_dispatch() returns.
ok gilles@ sunil@ giovanni@
|
|
The daemon is stopped with kill(1).
ok gilles@
|
|
ok sunil@
|
|
ok gilles@ jung@ sunil@
|
|
ok gilles@ sunil@ jung@ millert@
|
|
causing it to exit, we could end up with a NULL deref in parent.
free commit offered by eric@, ok gilles@
|
|
-portable
|
|
The parent process forks child processes and re-exec each of them with
an additional "-x <proc>" argument. During the early setup phase, the
parent process sends ipc socket pairs to interconnect the child
processes as needed, and it passes the queue encryption key to the
queue if necessary. When this is done, all processes have their
environment set as in the fork-only case, and they can start doing
their work as before.
ok gilles@ jung@
|
|
default since it is computationally expensive and a potential DoS vector.
ok gilles@
|
|
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@
|
|
ok gilles
|
|
titles (including flags) to distinguish between daemons, this makes it
possible to manage multiple copies of a daemon using the normal infrastructure
by symlinking rc.d scripts to a new name. ok jung@ ajacoutot@, smtpd ok gilles@
|
|
Ok jung@ gilles@ eric@
|
|
to stdin.
Ok millert@ jung@ gilles@
|
|
paths
this effectively reverts table.c r1.21 which was mainly introduced for a smooth
transition in -current
ok gilles
|
|
no binary change
ok millert
|
|
|
|
ok sunil gilles
|
|
introduce 'ca' keyword to allow specifying a custom CA.
making CA part of pki was a bad idea and several people hit use-cases that
plain couldn't work.
instead of:
pki foobar.org ca "/etc/mail/CA.pem"
use now:
ca foobar.org certificate "/etc/mail/CA.pem"
ok sunil@, jung@
|
|
senders table allows to restrict the addresses that an authenticated
user can use in the SMTP dialogue.
Ok gilles@
|
|
|
|
valid queue key is specified.
Ok gilles@ jung@
|
|
syslog.
Ok gilles@ jung@
|
|
string literal.
Ok gilles@
|
|
Ok jung@ gilles@
|
|
process receives a SIGINT/SIGTERM.
Initial diff by nfnty <git@nfnty.se>
Ok gilles@ jung@ millert@
|
|
|
|
|
|
ports/packages can be installed in the proper place
ok jung@
|
|
ok sunil@, ok jung@
|
|
"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@
|
|
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@
|
|
ok gilles
|
|
from Gregor Best <gbe@unobtanium.de>
|
|
Ok millert@ gilles@
|
|
in mind that a gigantic group is already < ~50% of POSIX). It then
grinds these down bit by bit as it sets up privsep for the various
processes. At startup, smtpd will need the new "id" request as well.
ok gilles tedu
|
|
ok millert@
|
|
ok deraadt@
|
|
Ok millert@ eric@ gilles@
|
|
it serves no purpose.
ok millert@, ok jung@, ok eric@
|
|
how broken other systems are.
ok guenther gilles
|
|
messages as they are left-overs from an errored enqueue.
ok millert@, ok eric@
|
|
away anyways
ok eric@
|