Due to the UNION query in address_list, the assumption that the list of
gids received from the database would be continuous does not hold.
To prevent addresses for domains with multiple entry types from being
listed, it is necessary to check the list of domain gids for every
entry.
Signed-off-by: martin f. krafft <madduck@debian.org>
---
VirtualMailManager/common.py | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
# This document contains a minimal configuration for a vmm setup with
# Dovecot v2.x.
#
# You could save this file as local.conf in the dovecot configuration directory
# (commonly /etc/dovecot or /usr/local/etc/dovecot).
# When you want to use this file as your configuration file for Dovecot, make
# sure you have commented out the line "!include conf.d/*.conf". The last line
# "!include_try local.conf" is sufficient.
#
# Otherwise you have to apply the following settings to the configuration files
# in the conf.d directory.
###
# dovecot.conf
###
protocols = imap lmtp
# uncomment if your users should be able to manage their sieve scripts
#protocols = imap lmtp sieve
# uncomment if you want to use the quota plugin
#dict {
# quota = pgsql:/usr/local/etc/dovecot/dovecot-dict-sql.conf.ext
#}
###
# conf.d/10-auth.conf
###
auth_mechanisms = plain login cram-md5
passdb {
driver = sql
args = /usr/local/etc/dovecot/dovecot-sql.conf.ext
}
userdb {
driver = sql
args = /usr/local/etc/dovecot/dovecot-sql.conf.ext
}
#!include auth-system.conf.ext
###
# conf.d/10-mail.conf
###
first_valid_gid = 70000
first_valid_uid = 70000
mail_access_groups = dovemail
mail_location = maildir:~/Maildir
# uncomment if you want to use the quota plugin
#mail_plugins = quota
###
# conf.d/10-master.conf
###
# if you don't want to use secure imap, you have to disable the imaps listener
##service imap-login {
## inet_listener imaps {
## port = 0
## }
##}
service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
user = postfix
group = postfix
mode = 0600
}
}
service auth {
user = doveauth
unix_listener auth-userdb {
}
unix_listener /var/spool/postfix/private/dovecot-auth {
user = postfix
group = postfix
mode = 0600
}
}
service auth-worker {
unix_listener auth-worker {
user = doveauth
group = $default_internal_user
mode = 0660
}
user = doveauth
}
service dict {
unix_listener dict {
group = dovemail
mode = 0660
}
}
###
# conf.d/10-ssl.conf
###
# SSL/TLS support: yes, no, required. <doc/wiki/SSL.txt>
#ssl = yes
ssl_cert = </etc/ssl/certs/dovecot.pem
ssl_key = </etc/ssl/private/dovecot.pem
# if you want to disable SSL/TLS, you have set 'ssl = no' and disable the
# imaps listener in conf.d/10-master.conf
###
# conf.d/15-lda.conf
###
postmaster_address = postmaster@YOUR-DOMAIN.TLD
recipient_delimiter = +
protocol lda {
# uncomment if you want to use the quota plugin
#mail_plugins = $mail_plugins
# uncomment if you want to use the quota and sieve plugins
#mail_plugins = $mail_plugins sieve
}
###
# conf.d/20-imap.conf
###
protocol imap {
# uncomment if you want to use the quota plugin
#mail_plugins = $mail_plugins imap_quota
}
###
# conf.d/20-lmtp.conf
###
protocol lmtp {
# uncomment if you want to use the quota plugin
#mail_plugins = $mail_plugins
# uncomment if you want to use the quota and sieve plugins
#mail_plugins = $mail_plugins sieve
}
###
# conf.d/90-quota.conf
###
# uncomment if you want to use the quota plugin
#plugin {
# quota = dict:user:%{uid}::proxy::quota
# quota_rule = *:storage=0:messages=0
# quota_rule2 = Trash:storage=+100M
#}
###
# conf.d/90-sieve.conf
###
# uncomment if you want to use sieve (and maybe managesieve)
#plugin {
# recipient_delimiter = +
# sieve = ~/.dovecot.sieve
# sieve_dir = ~/sieve
#}
###############################################################################
# end of local configuration #
###############################################################################
###
# etc/dovecot/dovecot-sql.conf.ext
###
# apply this settings to your dovecot-sql.conf.ext
#driver = pgsql
#connect = host=localhost dbname=mailsys user=dovecot password=$Dovecot_PASS
#
#password_query = \
# SELECT userid AS "user", password FROM dovecotpassword('%Ln', '%Ld') WHERE %Ls
#
## uncomment this user_query if you want to use the quota plugin
#user_query = \
# SELECT home, uid, gid, mail, quota_rule FROM dovecotquotauser('%Ln', '%Ld')
## otherwise uncomment the following user_query
#user_query = SELECT home, uid, gid, mail FROM dovecotuser('%Ln', '%Ld')
#
#iterate_query = \
# SELECT local_part AS username, domain_name.domainname AS domain \
# FROM users \
# LEFT JOIN domain_data USING (gid) \
# LEFT JOIN domain_name USING (gid)
###
# etc/dovecot/dovecot-dict-sql.conf.ext
###
# if you want to use the quota plugin add this lines to your
# dovecot-dict-sql.conf.ext
#connect = host=localhost dbname=mailsys user=dovecot password=$Dovecot_PASS
#map {
# pattern = priv/quota/storage
# table = userquota
# username_field = uid
# value_field = bytes
#}
#map {
# pattern = priv/quota/messages
# table = userquota
# username_field = uid
# value_field = messages
#}