[Dovecot] imap acl write tb3 plugin dovecot2 vs XMAILBOXINFO

Robert Schetterer robert at schetterer.org
Tue Jun 22 17:00:17 EEST 2010


Am 22.06.2010 15:44, schrieb Robert Schetterer:
> Am 22.06.2010 15:01, schrieb Pascal Volk:
>> On 06/22/2010 02:07 PM Robert Schetterer wrote:
>>> Am 22.06.2010 13:59, schrieb Pascal Volk:
>>>> On 06/22/2010 01:22 PM Robert Schetterer wrote:
>>>>> Hi Timo,
>>>>> i played a little bit with
>>>>> an experimental tb3 imap acl write extension
>>>>> https://addons.mozilla.org/de/thunderbird/addon/176736/
>>>>> with dovecot2
>>>>> got errors like
>>>>> XMAILBOXINFO: Unknown command
>>>>> any idea?
>>
>> Hmm, a few steps back. Are you sure that the mentioned addon sends the
>> XMAILBOXINFO command? 
> 
> no this is the message tb gives me
> 
> I've downloaded the .xpi file and had a short look
>> into its contents. I couldn't find XMAILBOXINFO.
> 
> i believe that
> 
>> Please enable Dovecot's rawlog plugin (see
>> http://wiki2.dovecot.org/Debugging/Rawlog and
>> http://wiki2.dovecot.org/PostLoginScripting).
> 
> uff, just upgrade to latest beta dove2
> no time yet , doing later, but all other logging
> is on and very verbose, the acls are set right
> by the plugin, controlled that,
> no Problem in logs so far seen
> 
>>
>> The addon should send the following tagged commands.
>>
>> a002 LOGIN user pass
>> a003 {SETACL,DELETEACL} ...
>> a004 LOGOUT
> 
> yes i believe so
> 
>>
>> Please include your `doveconf -n` output in your reply, maybe there is
>> something 'strange'.
> 
> dont think so but here it is, but it has many testing values
> the server isnt in production stage dont wonder
> 
> # 2.0.beta6 (407e7ff098ca): /etc/dovecot/dovecot.conf
> # OS: Linux 2.6.32-22-generic-pae i686 Ubuntu 10.04 LTS
> auth_debug = yes
> auth_debug_passwords = yes
> auth_mechanisms = plain login
> auth_socket_path = /var/run/dovecot/auth-userdb
> auth_verbose = yes
> debug_log_path = /var/log/dovecot.info
> dict {
>   acl = mysql:/etc/dovecot/dovecot-dict-acl-sql.conf.ext
>   expire = mysql:/etc/dovecot/dovecot-dict-expire-sql.conf.ext
>   quotadict = mysql:/etc/dovecot/dovecot-dict-quota-sql.conf.ext
> }
> disable_plaintext_auth = no
> first_valid_gid = 1001
> first_valid_uid = 1001
> hostname =
> info_log_path = /var/log/dovecot.info
> last_valid_gid = 1001
> last_valid_uid = 1001
> log_path = /var/log/dovecot.info
> login_log_format_elements = user=<%u> method=%m rip=%r lip=%l %c
> mail_access_groups = vmail
> mail_debug = yes
> mail_gid = 1001
> mail_location = maildir:~/
> mail_plugins = expire virtual quota imap_quota imap_acl acl fts
> fts_squat mail_log autocreate notify
> mail_privileged_group = vmail
> mail_uid = 1001
> namespace {
>   hidden = no
>   inbox = yes
>   list = yes
>   location =
>   prefix =
>   separator = /
>   subscriptions = yes
>   type = private
> }
> namespace {
>   hidden = yes
>   list = no
>   location = virtual:/etc/dovecot/virtual:LAYOUT=maildir++
>   prefix = virtual/
>   separator = /
>   subscriptions = no
>   type = private
> }
> namespace {
>   hidden = yes
>   list = no
>   location =
>   prefix = RealMails/
>   separator = /
>   type = private
> }
> namespace {
>   inbox = no
>   list = children
>   location = maildir:/usr/local/virtual/%%d/%%u/:INDEX=~/shared/%%d/%%u/
>   prefix = shared/%%u/
>   separator = /
>   subscriptions = no
>   type = shared
> }
> passdb {
>   args = /etc/dovecot/dovecot-sql.conf.ext
>   driver = sql
> }
> plugin {
>   acl = vfile
>   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
>   expire = Trash 1d
>   expire_dict = proxy::expire
>   fts = squat
>   home = /usr/local/virtual/%d/%u
>   mail_log_events = delete undelete expunge copy mailbox_delete
> mailbox_rename
>   mail_log_fields = uid box msgid size
>   mail_log_group_events = yes
>   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
>   sieve = /usr/local/virtual/%d/%u/dovecot.sieve
>   sieve_before = /etc/dovecot/sieve/global.sieve
>   sieve_dir = /usr/local/virtual/%d/%u/sieve
>   sieve_global_dir = /etc/dovecot/sieve/
>   sieve_global_path = /etc/dovecot/sieve/global.sieve
> }
> postmaster_address =
> protocols = imap pop3 lmtp sieve
> sendmail_path = /usr/lib/sendmail
> service auth {
>   unix_listener /var/spool/postfix/private/auth {
>     group = postfix
>     mode = 0666
>     user = postfix
>   }
>   unix_listener auth-userdb {
>     group = vmail
>     mode = 0600
>     user = vmail
>   }
> }
> service dict {
>   extra_groups = vmail
>   unix_listener dict {
>     group = vmail
>     mode = 0660
>   }
> }
> service imap-login {
>   inet_listener imap {
>     port = 143
>   }
>   inet_listener imaps {
>     port = 993
>     ssl = yes
>   }
>   process_min_avail = 0
>   service_count = 1
> }
> service imap {
>   process_limit = 1024
>   vsz_limit = 268435456
> }
> service lmtp {
>   unix_listener /var/spool/postfix/private/dovecot-lmtp {
>     group = postfix
>     mode = 0660
>     user = postfix
>   }
> }
> service pop3-login {
>   inet_listener pop3 {
>     port = 110
>   }
>   inet_listener pop3s {
>     port = 995
>     ssl = yes
>   }
> }
> service pop3 {
>   process_limit = 1024
> }
> ssl_cert = </etc/ssl/certs/dovecot.pem
> ssl_key = </etc/ssl/private/dovecot.pem
> userdb {
>   args = /etc/dovecot/dovecot-sql.conf.ext
>   driver = sql
> }
> verbose_proctitle = yes
> verbose_ssl = yes
> protocol lda {
>   mail_plugins = quota sieve virtual acl fts fts_squat mail_log notify
> }
> protocol imap {
>   imap_client_workarounds = delay-newmail
>   imap_id_log = *
>   imap_id_send = *
>   imap_idle_notify_interval = 120 s
>   imap_logout_format = bytes=%i/%o
>   imap_max_line_length = 65536
>   mail_max_userip_connections = 10
>   mail_plugins = imap_acl acl fts fts_squat mail_log autocreate notify
> expire virtual quota imap_quota
> }
> protocol lmtp {
>   mail_plugins = quota sieve virtual acl fts fts_squat mail_log notify
> }
> protocol pop3 {
>   mail_max_userip_connections = 3
>   mail_plugins = expire virtual quota mail_log fts fts_squat notify
>   pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
>   pop3_enable_last = yes
>   pop3_logout_format = top=%t/%p, retr=%r/%b, del=%d/%m, size=%s
>   pop3_uidl_format = %08Xu%08Xv
> }
> 
> 
> 
> 
> my bet goes to thunderbird ( 3.05)
> causing the message
>  found something here
> 
> http://thunderbird.sourcearchive.com/documentation/2.0.0.12plus-pnobinonly/nsImapProtocol_8h-source.html
> 
> http://thunderbird.sourcearchive.com/documentation/3.0.3plus-pnobinonly-0ubuntu2/nsImapProtocol_8h-source.html
> 
> but no idea if there is an conection


enabled tb log

found this

-1194329840[7f16b8e74ad0]:
c7c39800:master.schetterer.com:S-INBOX/test1/test2/test3:CreateNewLineFromSocket:
19 OK Idle completed.
-1194329840[7f16b8e74ad0]:
c7c39800:master.schetterer.com:S-INBOX/test1/test2/test3:ProcessCurrentURL:
entering
-1194329840[7f16b8e74ad0]:
c7c39800:master.schetterer.com:S-INBOX/test1/test2/test3:ProcessCurrentURL:imap://robert%40schetterer%2Ecom@master.schetterer.com:143/refreshfolderurls%3E/INBOX/test1/test2/test3:
 = currentUrl
-1194329840[7f16b8e74ad0]:
c7c39800:master.schetterer.com:S-INBOX/test1/test2/test3:SendData: 20
XMAILBOXINFO "INBOX/test1/test2/test3" MANAGEURL POSTURL
-1194329840[7f16b8e74ad0]: ReadNextLine [stream=bb388110 nb=61 needmore=0]
-1194329840[7f16b8e74ad0]:
c7c39800:master.schetterer.com:S-INBOX/test1/test2/test3:CreateNewLineFromSocket:
20 BAD Error in IMAP command XMAILBOXINFO: Unknown command.
-1194329840[7f16b8e74ad0]:
c7c39800:master.schetterer.com:S-INBOX/test1/test2/test3:SendData: 21 IDLE


so XMAILBOXINFO was sended by tb

>>
>>
>> Regards,
>> Pascal
> 
> 


-- 
Best Regards

MfG Robert Schetterer

Germany/Munich/Bavaria


More information about the dovecot mailing list