diff options
author | Gilles Chehade <gilles@cvs.openbsd.org> | 2010-03-01 22:00:53 +0000 |
---|---|---|
committer | Gilles Chehade <gilles@cvs.openbsd.org> | 2010-03-01 22:00:53 +0000 |
commit | 0256a40533d04c2ccdfc63a6aee436c6ae0ba94b (patch) | |
tree | 2c4a8524f51663aa8f4c0687fad43a1b5e12548f /sys/net/raw_usrreq.c | |
parent | 356c9ace818c89ef636a651ab0c4a9d3355545c7 (diff) |
mda_event() assumed the mbox fp to be a file when it could be a pipe, do
not fatal on read/write errors otherwise a broken pipe in an external mda
will bring smtpd down.
mda_store() assumed write would succeed and fatal otherwise, change code
so that EINTR/EAGAIN trigger a new write while other errors gracefully
return causing the message to be rescheduled later.
these two prevent a fatal() from being hit when execution of a filter or
external mda fails (bug experienced and fix verified by nicm@)
while at it, fix a small bug where logs would not display the recipient
when mail went through a ~/.forward / aliases expansion.
Diffstat (limited to 'sys/net/raw_usrreq.c')
0 files changed, 0 insertions, 0 deletions