Hi, I'm doing quota checks from a remote machine (the real setup is a bit more complex, if necessary I can explain it in more detail, but I just extracted the bits that are easily reproduceable) # nc backend1 24245 VERSION doveadm-server 1 0 PLAIN agrVMDvHgz0ya2HHzax5svwB2ZHS? + heiko quota get But since the backend is upgraded to 2.2.22 it's not possible anymore. The exuse in the log of the backend is: dovecot: doveadm(149.1.1.1?): Fatal: USER environment is missing and -u option not used Running the `doveadm quota get -u heiko` locally on the backend works as expected. But using the the doveadm-server it doesn't. # 2.2.22 (fe789d2): /etc/dovecot/dovecot.conf # Pigeonhole version 0.4.13 (7b14904) # OS: Linux 4.4.0-22-generic x86_64 Ubuntu 16.04 LTS ? auth_cache_negative_ttl = 0 auth_cache_ttl = 0 auth_master_user_separator = * base_dir = /run/dovecot/ imap_metadata = yes lda_mailbox_autocreate = yes lda_mailbox_autosubscribe = yes login_log_format_elements = user=<%u> method=%m rip=%r lip=%l mpid=%e %c %k mail_attribute_dict = file:%h/dovecot-attributes mail_location = maildir:~:INBOX=/volumes/dovecot/inbox/%2.256Nn/%n:INDEX=/volumes/dovecot/cache/%2.256Nn/%n mail_plugins = quota mbox_md5 = all mmap_disable = yes namespace inbox { ? passdb { args = /etc/dovecot/master-users driver = passwd-file master = yes } passdb { args = /etc/dovecot/dovecot-ldap.passdb.conf.ext driver = ldap } plugin { quota = maildir:User quota quota_grace = 10%% sieve = /volumes/dovecot/sieve/%2.256Nn/%n/.dovecot.sieve sieve_dir = /volumes/dovecot/sieve/%2.256Nn/%n } pop3_uidl_format = %v.%u protocols = " imap lmtp pop3" service auth { extra_groups = ssl-cert } service doveadm { inet_listener { port = 24245 } } service lmtp { inet_listener lmtp { port = 2525 } } ssl = required ssl_cert = </etc/ssl/certs/snakeoil-crt.pem ssl_key = </etc/ssl/private/snakeoil-key.pem userdb { driver = prefetch override_fields = home=/volumes/dovecot/home/%2.256Nn/%n uid=vmail gid=vmail } userdb { args = /etc/dovecot/dovecot-ldap.userdb.conf.ext driver = ldap override_fields = home=/volumes/dovecot/home/%2.256Nn/%n uid=vmail gid=vmail } verbose_proctitle = yes protocol lmtp { mail_plugins = quota sieve quota } protocol lda { mail_plugins = quota sieve } protocol imap { mail_plugins = quota imap_quota } local 149.1.1.0/24? { doveadm_password = # hidden, use -P to show it } ?) It's changed :) -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 473 bytes Desc: Digital signature URL: <http://dovecot.org/pipermail/dovecot/attachments/20160530/28425144/attachment.sig>
> On May 30, 2016 at 6:17 PM Heiko Schlittermann <hs at schlittermann.de> wrote: > > > Hi, > > I'm doing quota checks from a remote machine (the real setup is a bit > more complex, if necessary I can explain it in more detail, but I just > extracted the bits that are easily reproduceable) > > # nc backend1 24245 > VERSION doveadm-server 1 0 > PLAIN agrVMDvHgz0ya2HHzax5svwB2ZHS? > + > heiko quota get > > But since the backend is upgraded to 2.2.22 it's not possible anymore. > The exuse in the log of the backend is: > > dovecot: doveadm(149.1.1.1?): Fatal: USER environment is missing and -u option not used > > Running the `doveadm quota get -u heiko` locally on the backend works as > expected. But using the the doveadm-server it doesn't. > > # 2.2.22 (fe789d2)Hi! This has been fixed in 2.2.24. There was a bug in user passing. We also invite you to have a go at our HTTP based interface, see http://wiki.dovecot.org/Design/DoveadmProtocol/HTTP --- Aki Tuomi
> On May 30, 2016 at 6:17 PM Heiko Schlittermann <hs at schlittermann.de> wrote: > > > Hi, > > I'm doing quota checks from a remote machine (the real setup is a bit > more complex, if necessary I can explain it in more detail, but I just > extracted the bits that are easily reproduceable) > > # nc backend1 24245 > VERSION doveadm-server 1 0 > PLAIN agrVMDvHgz0ya2HHzax5svwB2ZHS? > + > heiko quota get > > But since the backend is upgraded to 2.2.22 it's not possible anymore. > The exuse in the log of the backend is: > > dovecot: doveadm(149.1.1.1?): Fatal: USER environment is missing and -u option not used > > Running the `doveadm quota get -u heiko` locally on the backend works as > expected. But using the the doveadm-server it doesn't. > > # 2.2.22 (fe789d2)Hi! This has been fixed in 2.2.24. There was a bug in user passing. We also invite you to have a go at our HTTP based interface, see http://wiki.dovecot.org/Design/DoveadmProtocol/HTTP --- Aki Tuomi
Hi Aki, thank your for responding that fast. aki.tuomi at dovecot.fi <aki.tuomi at dovecot.fi> (Mo 30 Mai 2016 17:49:53 CEST): ?> Hi! This has been fixed in 2.2.24. There was a bug in user passing.Ok, thus at least your answer saves me hours of debugging. We upgraded old Ubuntu Boxes (14.04/LTS) to 16.04 to get around some Dovecot limitations/problems. And now we got new ones :( We did the upgrade to avoid self-built binaries and use the distro packages. Probably we're out of luck.> We also invite you to have a go at our HTTP based interface, see http://wiki.dovecot.org/Design/DoveadmProtocol/HTTPDoes the 2.2.22 HTTP API suffer from the same bug with user passing? Is the HTTP API useable in a Director/Backend configuration? Our setup is about [ mx ] ---> dovecot-protocol ---> [ director ] ----> [ backend ] `---> [ backend ] `-> [ backend ] The bug w/ user passing is in the backend? Or already in the directors? -- Heiko -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 473 bytes Desc: Digital signature URL: <http://dovecot.org/pipermail/dovecot/attachments/20160530/6f7d834d/attachment.sig>