Short version: |cyrdeliver -a cyrus -m SharedMailbox| gives ‘+SharedMailbox: Mailbox does not exist’ unless ‘anonymous’ is granted ‘p’ on ‘SharedMailbox’.
Long version: I’ve built Cyrus IMAP from the cyrus-imapd-2.5 branch on a plain Ubuntu 14.04 server (hostname caraway). It’s at the latest version of cyrus on git at the timestamp of this email. It’s configured with: |./configure --prefix=/usr --program-prefix=cyr --enable-event-notification --enable-http --disable-nntp --enable-sieve \ --enable-pcre --with-pgsql --with-sqlite --enable-autocreate --enable-idled --with-pgsql-incdir=/usr/include/postgresql | (The program prefix ‘cyr’ is to try to match the Ubuntu built way of doing things.) With previous versions of cyrus, I could use: |cyrdeliver -a cyrus -m user/fred/Spam| to deliver mails. Now I know to use |cyrdeliver -a cyrus -m Spam fred| instead. My problem comes when delivering mail to non-user (shared) mailboxes. I have a shared mailbox called Arkive which I expect to be able to deliver to using |cyrdeliver -a cyrus -m Arkive|. This, and a whole host of related/similar commands also fail unless I grant ‘p’ rights to ‘anonymous’. Here’s exactly what I have tried: |xxxx@caraway:~$ /usr/cyrus/bin/cyrdeliver -a cyrus -m Arkive +Arkive: Mailbox does not exist xxxx@caraway:~$ sudo /usr/cyrus/bin/cyrdeliver -a cyrus -m Arkive +Arkive: Mailbox does not exist xxxx@caraway:~$ sudo /usr/cyrus/bin/cyrdeliver -a anonymous -m Arkive +Arkive: Mailbox does not exist xxxx@caraway:~$ cyradm -U cyrus localhost Password: localhost> lam Arkive cyrus lrsip xxxx lrs localhost> sam Arkive anonymous p localhost> xxxx@/usr/cyrus/bin/cyrdeliver -a cyrus -m Arkive From: No-one To: Arkive Date: Today Subject: Delete me I'm a test at 1033 1033 ^D | I’m catching event notifications using a little external script which just appends them to a log file for now. So this is what they said: |xxxx@caraway:~$ tail /var/log/mr/notify.log Sat Apr 11 09:32:23 UTC 2015 /apps/mr_project/mr_notify.sh -c EVENT -p -u -m {"event":"Login","timestamp":"2015-04-11T09:32:23.308Z","serverDomain":"::1","serverPort":143,"uri":"imap://caraway","pid":11160,"user":"cyrus"} Sat Apr 11 09:32:43 UTC 2015 /apps/mr_project/mr_notify.sh -c EVENT -p -u -m {"event":"AclChange","timestamp":"2015-04-11T09:32:43.182Z","mailboxID":"imap://caraway/Arkive;UIDVALIDITY=1426985663","uri":"imap://caraway/Arkive;UIDVALIDITY=1426985663","pid":11160,"aclSubject":"anonymous","aclRights":"p","user":"cyrus","vnd.cmu.mbtype":""} Sat Apr 11 09:32:44 UTC 2015 /apps/mr_project/mr_notify.sh -c EVENT -p -u -m {"event":"Logout","timestamp":"2015-04-11T09:32:44.603Z","serverDomain":"::1","serverPort":143,"uri":"imap://caraway","pid":11160,"user":"cyrus"} Sat Apr 11 09:33:22 UTC 2015 /apps/mr_project/mr_notify.sh -c EVENT -p -u -m {"event":"MessageNew","timestamp":"2015-04-11T09:33:22.452Z","uri":"imap://caraway/Arkive;UIDVALIDITY=1426985663/;UID=249085","pid":11152,"user":"","vnd.cmu.mbtype":""} | It looks like cyrdeliver is delivering without authenticating? The events are not showing a user. And I tried a few other things. |xxxx@caraway:~$ /usr/cyrus/bin/cyrdeliver -a cyrus -m Arkive cyrus cyrus+Arkive: Mailbox does not exist xxxx@caraway:~$ /usr/cyrus/bin/cyrdeliver -a cyrus -m Arkive anonymous anonymous+Arkive: Mailbox does not exist xxxx@caraway:~$ /usr/cyrus/bin/cyrdeliver -a anonymous -m Arkive ^D xxxx@caraway:~$ /usr/cyrus/bin/cyrdeliver -m Arkive ^D xxxx@caraway:~$ cyradm -U cyrus localhost Password: localhost> dam Arkive anonymous localhost> lam Arkive cyrus lrsip xxxx lrs localhost> xxxx@caraway:~$ /usr/cyrus/bin/cyrdeliver -m Arkive +Arkive: Mailbox does not exist xxxx@caraway:~$ /usr/cyrus/bin/cyrdeliver -m Arkive +Arkive: Mailbox does not exist | I also tried setting |postuser: shared| in imapd.conf and then |xxxx@caraway:~$ /usr/cyrus/bin/cyrdeliver -a cyrus -m Arkive shared shared+Arkive: Mailbox does not exist | >From syslog, the entries relating to deliver: |Apr 11 09:32:23 caraway cyrus/imap[11160]: login: localhost [::1] cyrus DIGEST-MD5 User logged in SESSIONID=<cyrus-11160-1428744736-1-5746349788344935888> Apr 11 09:33:22 caraway cyrus/lmtpunix[11152]: Delivered: <cmu-lmtpd-11152-1428744773-0@caraway> to mailbox: Arkive Apr 11 09:34:20 caraway cyrus/ctl_cyrusdb[11190]: checkpointing cyrus databases Apr 11 09:34:20 caraway cyrus/ctl_cyrusdb[11190]: done checkpointing cyrus databases Apr 11 09:34:50 caraway cyrus/lmtpunix[11152]: Delivered: <cmu-lmtpd-11152-1428744883-1@caraway> to mailbox: Arkive Apr 11 09:36:57 caraway cyrus/lmtpunix[11701]: Delivered: <cmu-lmtpd-11701-1428745014-0@caraway> to mailbox: Arkive Apr 11 09:37:06 caraway cyrus/imap[11707]: login: localhost [::1] cyrus DIGEST-MD5 User logged in SESSIONID=<cyrus-11707-1428745020-1-18174010649842907076> Apr 11 09:34:50 caraway cyrus/lmtpunix[11152]: Delivered: <cmu-lmtpd-11152-1428744883-1@caraway> to mailbox: Arkive Apr 11 09:36:57 caraway cyrus/lmtpunix[11701]: Delivered: <cmu-lmtpd-11701-1428745014-0@caraway> to mailbox: Arkive | Am I missing something here, or doing something wrong? I don’t want to, or expect to, have to give ‘p’ rights to anonymous on any shared mailbox I want to post into. Thanks for any insight you can give. You can find me on #cyrus as earthspike. John