Age | Commit message (Collapse) | Author |
|
In its current state, it causes too much slowdown, in particular
during system builds, and there are other regressions.
That cannot be fixed quickly while it's enabled.
Problems pointed out by espie@, backout requested by deraadt@,
diff "looks good" to espie@.
|
|
This fixes build warnings for portable smptd.
ok eric@ gilles@
|
|
|
|
if there is already an entry with the same name.
ok gilles@ chl@
|
|
ok gilles@ eric@
|
|
fatal(). Make sure at init time that all paths can contain envelopes,
then these calls will never fail (provided that buffers are always
correctly sized, which is true internally).
ok gilles@ chl@
|
|
already exist in queue/ to prevent possible collision on commit.
ok gilles@
|
|
and use it where appropriate.
ok gilles@ chl@
|
|
ok gilles@
|
|
thing. Remove queue_message_purge() in favor of queue_message_delete
and simplify fsqueue_message_delete() implementation to move the
message dir to purge/
ok gilles@
|
|
session, and cleanup the DS_* flags.
ok gilles@ chl@
|
|
runner/queue. Instead, replace IMSG_QUEUE_MESSAGE_UPDATE with three
messages:
- IMSG_QUEUE_DELIVERY_OK
- IMSG_QUEUE_DELIVERY_TEMPFAIL
- IMSG_QUEUE_DELIVERY_PERMFAIL
1) it's less confusing as status is also used by smtp
2) it's easier to see what happens just looking at imsg traces
3) it makes the code path generally easier to follow
4) it's safer because it enforces clear semantics and intent, whereas
the status field is loosely defined and could carry bogus values.
ok gilles@ chl@
|
|
committed on behalf of gilles@
ok gilles@ chl@
|
|
first schedulable envelope otherwise we end up with nsched wrong ...
heck, let's kill ramqueue_first_envelope() and be done with it ;)
|
|
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@
|
|
one instead of doing it efficiently.
fix runner_timeout() and ramqueue_load() so that at startup smtpd fills the
ramqueue as long as there's no schedulable envelope in it, interrupts
filling if there is and resume once it's scheduled.
bug spotted by Nathanael Rensel, bug fix by me w/ help from eric@
tested by eric@ and I
|
|
to make ramqueue_next_envelope() aware of pauses in mda/mta. while at it
kill the pausing of bounces since they are reinjected in smtp and end up
paused by the mda/mta cases.
fixes an infinite loop observed by eric@ when pausing deliveries and
trying to interrupt smtpd while it attempts to fetch next envelope :)
tested by eric@ and I, ok eric@
|
|
ok gilles@
|
|
from Michael W. Bombardieri
ok miod@
|
|
and confusing.
ok gilles@
|
|
to incoming/envelope.tmp before moving it to its final destination.
This allows to make sure that envelopes created directly in the queue
(such as bounces) can't let the queue in an inconsistent state if
the program stops in the middle of an envelope dump.
This also allow to simplify qwalk, since we don't put any temporary
contents anywhere in "walkable" queue dirs.
ok gilles@
|
|
to envelope.c
ok gilles@
|
|
ok gilles@
|
|
ok gilles@
|
|
|
|
|
|
ok gilles@
|
|
we'll do it, but it isn't used and causes potential bugs
idea by Nathanael Rensel, diff by me, ok eric@
|
|
reschedule of the entire queue as that can lead to an infinite loop.
bug spotted and bugfix by Nathanael Rensen, thanks !
ok eric@
|
|
|
|
simplify queue_fsqueue
|
|
ok gilles@
|
|
relays to be given as IP address in the config file.
ok gilles@
|
|
tested @ home
|
|
periodically clear the purge/ directory. At init time, the fsqueue
backend simply moves the existing incoming/ dir in purge/ to discard
aborted sessions.
ok gilles@ chl@
|
|
being only called by bounce sessions, so most of the code there was
actually useless. The envelope is directly deleted or updated at the
relevant place.
ok gilles@
|
|
now correctly reported as temporary failures.
from Nathanael Rensen, tweaks by me.
|
|
from Nathanael Rensen
ok gilles@
|
|
from Nathanael Rensen
ok gilles@
|
|
such that makewhatis(8) called from pkg_delete(1)
does not fail trying to open old-style whatis.db files as btree(3).
Suggested by espie@ deraadt@ millert@
|
|
fix PkgCheck to use the proper API.
|
|
|
|
OK yasuoka@
|
|
Unlink the old apropos(1), whatis(1), and makewhatis(8) from the build.
Call the new tools from pkg_create(1) and pkg_add(1).
"Please enable it now." deraadt@
|
|
|
|
but user(8) behaviour has become OS specific in time so there's no
sense keeping this. We are OpenBSD and we use BSD EXTENSIONS
unconditionally.
ok miod@ millert@ deraadt@
|
|
inputs from and ok miod@
|
|
from Matt Dainty. ok haesbaert@
|
|
|
|
noticed by zepard at gmail
OK henning@
|