Hello all,
First of all sorry for this, it has been discussed many times, but i can not make it work.

I tried for a long time now.
I do something wrong, but i do not know what.

First of all, i have virtual users, with virtual domains.
Mail is stored in /usr/local/virtual/domain name/user

So if my domain is domain.com and my e-mail address is [email protected] the directory is
/usr/local/virtual/domain.com/johan

i followed the wiki, and my configuration looks like the following.

beasty dovecot # dovecot -n

# 2.0.5: /usr/local/etc/dovecot/dovecot.conf
# OS: FreeBSD 8.1-STABLE amd64  ufs
auth_debug = yes
auth_debug_passwords = yes
auth_mechanisms = plain login
auth_verbose = yes
dict {
  acl = mysql:/usr/local/etc/dovecot/dovecot-dict-acl-sql.conf
  quotadict = mysql:/usr/local/etc/dovecot/dovecot-dict-quota.conf
}
disable_plaintext_auth = no
first_valid_gid = 1004
first_valid_uid = 1004
last_valid_gid = 1004
last_valid_uid = 1004
log_timestamp = .%Y-%m-%d %H:%M:%S .
mail_access_groups = vmail
mail_debug = yes
mail_gid = 1004
mail_location = maildir:/usr/local/virtual/%d/%n
mail_uid = 1004
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date
mbox_write_locks = fcntl
namespace {
  hidden = no
  inbox = yes
  list = yes
  location =
  prefix =
  separator = /
  subscriptions = yes
  type = private
}
namespace {
  inbox = no
  list = children
  location = maildir:/usr/local/virtual/%%d/%%n/shared/:INDEX=/shared/%%n
  prefix = shared/%%d/%%u/
  separator = /
  subscriptions = no
  type = shared
}
passdb {
  args = /usr/local/etc/dovecot/dovecot-mysql.conf
  driver = sql
}
plugin {
  acl = vfile
  acl_anyone = allow
  acl_shared_dict = proxy::acl
  autocreate = Trash
  autocreate2 = Junk
  autocreate3 = Sent
  autocreate4 = Drafts
  autocreate5 = Templates
  autosubscribe = Trash
  autosubscribe2 = Junk
  autosubscribe3 = Sent
  autosubscribe4 = Drafts
  autosubscribe5 = Templates
  quota = dict:::proxy::quotadict
  quota_warning = storage=95%% /usr/local/bin/quota-warning.sh 95
  quota_warning2 = storage=80%% /usr/local/bin/quota-warning.sh 80
}
protocols = imap pop3
service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = postfix
    mode = 0660
    user = postfix
  }
  unix_listener auth-master {
    group = vmail
    mode = 0660
    user = vmail
  }
}
service dict {
  unix_listener dict {
    mode = 0600
    user = vmail
  }
}
service imap-login {
  inet_listener imap {
    address = 192.168.50.200
    port = 143
  }
}
service pop3-login {
  inet_listener pop3 {
    address = 192.168.50.200
    port = 110
  }
}
ssl = no
userdb {
  args = /usr/local/etc/dovecot/dovecot-mysql.conf
  driver = sql
}
protocol imap {
  imap_client_workarounds = delay-newmail tb-extra-mailbox-sep
  imap_idle_notify_interval = 2 mins
  imap_logout_format = bytes=%i/%o
  imap_max_line_length = 64 k
  mail_plugins = quota imap_quota autocreate acl imap_acl mail_log notify
}
protocol pop3 {
  mail_plugins = quota trash
  pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
  pop3_uidl_format = %08Xu%08Xv
}
protocol lda {
  auth_socket_path = /var/run/dovecot/auth-master
  mail_plugins = quota acl mail_log notify
  postmaster_address = [email protected]
  sendmail_path = /usr/local/sbin/sendmail
}


That is my config file.
My dovecot-dict-acl-sql.conf looks like the following

connect = host=localhost dbname=postfix user=postfix password=password

map {
  pattern = shared/shared-boxes/$to/$from
  table = user_shares
  value_field = dummy

  fields {
    from_user = $from
    to_user = $to
  }
}

That is slightly different than the wiki says, if i use that , it gives me an error.
the pattern on the wiki looks like this
pattern = shared/shared-boxes/users/$to/$from

if i login as user johan and set ACL on my INBOX i do it this way.
i telnet to the server and issue the following

beasty dovecot # telnet 192.168.50.200 143
Trying 192.168.50.200...
Connected to beasty.localdomain.local.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE AUTH=PLAIN AUTH=LOGIN] imap, pop ready
a login [email protected] mypass
a OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT IDLE CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS QUOTA ACL RIGHTS=texk] Logged in
b SETACL INBOX [email protected] lr
b OK Setacl complete.
c GETACL INBOX
* ACL "INBOX" "[email protected]" lr "[email protected]" lrwstipekxacd
c OK Getacl completed.

This looks good i guess, also my database is filled, with the from and to !

But i can not see the mailbox if i login as user hans.

beasty dovecot # telnet 192.168.50.200 143
Trying 192.168.50.200...
Connected to beasty.localdomain.local.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE AUTH=PLAIN AUTH=LOGIN] imap, pop ready
a login [email protected] hanspass
a OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT IDLE CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS QUOTA ACL RIGHTS=texk] Logged in
b list "" *
* LIST (\HasNoChildren) "/" "Trash"
* LIST (\HasNoChildren) "/" "Junk"
* LIST (\HasNoChildren) "/" "Sent"
* LIST (\HasNoChildren) "/" "Drafts"
* LIST (\HasNoChildren) "/" "Templates"
* LIST (\HasNoChildren) "/" "INBOX"
b OK List completed.
c list "" /shared/*
c OK List completed.

If been trying this for a very long time now, but can not see what i am missing.
It must be something i ovelook, but i really can not find out what.

I also tried some other configs from the mailing list, but still the same, no go.

Thank you for your time to help another one with this issue. i am a little ashamed :D

Regards,
Johan Hendriks
*

*

Reply via email to