Kai Zhu writes :
Hi,
I am using Postfix + MySQL + Maildrop + Authdaemond
(with quota)
Sometimes when maildrop is continously piped from
Postfix a list of recipients (one by one), authdaemond
return TEMPFAIL (when against MySQL), then it seems
Maildrop does not retry and thus Postfix bounces.
Is this normal?
Many thanks,
Kai
Efax: (928) 569-1639
Hi,
By default authdaemon with only mysql doesn't return TEMPFAIL on mysql
failure (that's why mails are bounced in postfix)
For that I use this small patch made by Matthew Reimer to maildrop/main.C:
--- main.C Tue Mar 22 17:42:19 2005
+++ main.C.new Tue Mar 22 17:40:02 2005
@@ -322,7 +322,14 @@
int rc=auth_getuserinfo("login",
user, callback_authlib, maildrop);
- return rc == 0 ? 1:0;
+ if (rc == 0)
+ return 1;
+ else if (rc < 0)
+ return 0;
+ else if (rc > 0) {
+ errexit=EX_TEMPFAIL;
+ throw "Temporary authlib failure.";
+ }
}
#else
int find_in_authlib(Maildrop *maildrop, const char* user)
It will make postfix/maildrop more robust on mysql failures.