Hi Ed,

(continued below)

Ed K. wrote:

the [EMAIL PROTECTED] does not exist - so the email must be spam:
mysql> SELECT deliver_to FROM aliases WHERE lower(alias) = lower('[EMAIL 
PROTECTED]');
Empty set (0.00 sec)

mysql> SELECT deliver_to FROM aliases WHERE lower(alias) = 
lower('@motherteresahospice.com');
Empty set (0.00 sec)


I'm more interested in why this email is failing:
May 18 16:52:16 proxy postfix/pipe[26199]: 58A431D4A7: to=<[EMAIL PROTECTED]>, 
relay=dbmail-smtp, delay=434188, status=deferred (temporary failure)

(search for the begining of that line in the log file.)

OK, now I get it :)

I've been looking into this, and I think I've found it, but I guess this is a pretty fundamental problem..

Delivery fails for one recipient. DBMail returns an exit code EX_TEMPFAIL (I think it should return EX_NOUSER, but that's another question), to signal that one recipient failed. Problem is that Postfix has no way to see that the other deliveries did not fail.

I see two workaround solutions:
1. Use LMTP. LMTP gives information on every single recipient.
2. Let Postfix use SQL to see if an alias exists in the database. This way, recipients will not fail in DBMail when they are not present in the database.

These are both workarounds.. We should fix this to do The Right Thing, but I'm not sure what this Right Thing is.. Does anyone else have an idea? How do other programs do it?

Ilja

Reply via email to