Am 06.08.2012 22:54, schrieb email builder: > I read in http://www.postfix.org/mysql_table.5.html for the %d substitution > in the query if the lookup is not a full email address with domain, the > entire query is not even executed? Is this right? > > If that's the case, you can't do complex queries like: > > select IF('%d' = 'example.com', ..... > > Even though a query like that might account for the case where %d is null, > postfix won't execute it?
how do you come to that conclusion?
below a grep of a since 2009 working config
[root@srv-rhsoft:~]$ cat /etc/postfix/mysql* | grep '%d'
query = select deliver_to from dbmail_aliases where alias='%u@%d' and
(select count(*) from dbmail_aliases where
alias='%u@%d' and (round(deliver_to)<>0))=0;
query = select target from dbma_rewrite_domains where source='%d' and
((select count(*) from dbmail_aliases
where alias=(select concat('%u', (select target from dbma_rewrite_domains where
source='%d' limit 1)) from
dbma_rewrite_domains limit 1))>0 or (select count(*) from dbmail_aliases where
alias='%u@' limit 1)>0) limit 1;
query = select userid from dbmail_users where ((select count(*) from
dbma_mta where mydestination='%d') > 0 or
(select count(*) from dbma_sender_relay where email='%s') > 0) and user_idnr>3;
query = select filter from dbma_spamfilter where domain='%d';
query = select transport from dbma_transports where mydestination='%s' or
mydestination='%d' order by transport
desc limit 1;
signature.asc
Description: OpenPGP digital signature
