Fix critical issue that would prevent any address aliases from being resolved if a domain has no domain alias

This commit is contained in:
Alexander Schlarb
2019-01-23 23:19:37 +01:00
parent 1fbc12ec1e
commit ee22c50e04
+9 -9
View File
@@ -116,10 +116,10 @@ class SenderLoginMap(object):
"WHERE sad.address='%s') "
"UNION "
"(SELECT concat(mb.address, '@', dom.name) FROM admin_mailbox mb "
"INNER JOIN modoboa_admin_aliasrecipient alr ON alr.r_mailbox_id=mb.id"
" INNER JOIN admin_domain dom ON dom.id=mb.domain_id"
" INNER JOIN admin_domainalias adom ON adom.target_id=dom.id"
" INNER JOIN admin_alias al ON alr.alias_id=al.id "
"INNER JOIN modoboa_admin_aliasrecipient alr ON alr.r_mailbox_id=mb.id "
"INNER JOIN admin_domain dom ON dom.id=mb.domain_id "
"INNER JOIN admin_alias al ON alr.alias_id=al.id "
"LEFT JOIN admin_domainalias adom ON adom.target_id=dom.id "
"WHERE al.enabled=1 AND ("
" al.address='%s' OR ("
" adom.name='@d' AND al.address='%u'||'@'||dom.name"
@@ -134,10 +134,10 @@ class SenderLoginMap(object):
"WHERE sad.address='%s') "
"UNION "
"(SELECT mb.address || '@' || dom.name FROM admin_mailbox mb "
"INNER JOIN modoboa_admin_aliasrecipient alr ON alr.r_mailbox_id=mb.id"
" INNER JOIN admin_domain dom ON dom.id=mb.domain_id"
" INNER JOIN admin_domainalias adom ON adom.target_id=dom.id"
" INNER JOIN admin_alias al ON alr.alias_id=al.id "
"INNER JOIN modoboa_admin_aliasrecipient alr ON alr.r_mailbox_id=mb.id "
"INNER JOIN admin_domain dom ON dom.id=mb.domain_id "
"INNER JOIN admin_alias al ON alr.alias_id=al.id "
"LEFT JOIN admin_domainalias adom ON adom.target_id=dom.id "
"WHERE al.enabled AND ("
" al.address='%s' OR ("
" adom.name='@d' AND al.address='%u'||'@'||dom.name"
@@ -154,8 +154,8 @@ class SenderLoginMap(object):
"SELECT mb.address || '@' || dom.name FROM admin_mailbox mb "
"INNER JOIN modoboa_admin_aliasrecipient alr ON alr.r_mailbox_id=mb.id "
"INNER JOIN admin_domain dom ON dom.id=mb.domain_id "
"INNER JOIN admin_domainalias adom ON adom.target_id=dom.id "
"INNER JOIN admin_alias al ON alr.alias_id=al.id "
"LEFT JOIN admin_domainalias adom ON adom.target_id=dom.id "
"WHERE al.enabled=1 AND ("
" al.address='%s' OR ("
" adom.name='@d' AND al.address='%u'||'@'||dom.name"