On Sat, Jan 03, 2009 at 05:58:59PM -0700, Gilles Chehade wrote: > CVSROOT: /cvs > Module name: src > Changes by: [email protected] 2009/01/03 17:58:59 > > Modified files: > usr.sbin/smtpd : forward.c lka.c mfa.c queue.c smtp.c > smtp_session.c smtpd.h > > Log message: > aliases/forwards expansion was not done correctly and a race could > cause delivery to happen before expansion is over, causing some of > the recipients to never receive the mail. change how the mfa, lka, > queue and smtp processes communicate to ensure smtp never receives > an acknowledgment before ALL expanded envelopes are on disk. While > at it, lka was doing work which belongs in mfa, fix that also. > > this is based on an idea from a talk with jacekm@, change not over > but already better than what we had. >
I forgot to mention that this commit also fixes a bug in the rules evaluation, reported by chl@ a while ago. Basically, the destination was checked before the source and since we do a first match check, the following: accept from 127.0.0.1 for domain "openbsd.org" ... accept from 192.168.0.1 for domain "openbsd.org" ... would reject me if i came with IP 192.168.0.1 because only the first rule would be evaluated. Gilles -- Gilles Chehade http://www.poolp.org/~gilles/
