I'm trying to use a shared public namespace. Clients say it exists,
but sieve scripts can't write to it.
The configuration in /etc/dovecot/conf.d/10-mail.conf:
# Shared namespace for Foo stuff
namespace {
type = public
separator = '/'
prefix = "#Foo/"
location =
maildir:/local/mnt/mail/shared:INDEXPVT=/local/mnt/mail/%n/shared:LAYOUT=fs
# Use the default namespace for saving subscriptions.
#subscriptions = no
# List the shared/ namespace only if there are visible shared mailboxes.
#list = children
}
I created the location, owned by the vmail user:
$ ls -ld /local/mnt/mail/shared
drwxr-xr-x 4 vmail vmail 4096 Dec 11 12:38 /local/mnt/mail/shared
I created the subfolders, verified that they are there. Also, I see that
Dovecot created a dovecot.mailbox.log file:
$ ls -l /local/mnt/mail/shared
total 12
-rw-r--r-- 1 vmail vmail 96 Dec 11 12:38 dovecot.mailbox.log
drwxr-xr-x 3 vmail vmail 4096 Dec 11 12:37 Foo-Bugs
drwxr-xr-x 3 vmail vmail 4096 Dec 11 12:38 Foo-Patches
The dovecot.mailbox.log file is empty:
$ more /local/mnt/mail/shared/dovecot.mailbox.log
The intermediate folder is empty:
$ ls -l /local/mnt/mail/shared/Foo-Bugs/
total 4
drwxr-xr-x 5 vmail vmail 4096 Dec 11 12:36 Foo-Bugs-New
The mailbox has some folders in it:
$ ls -l /local/mnt/mail/shared/Foo-Bugs/Foo-Bugs-New/
total 12
drwxr-xr-x 2 vmail vmail 4096 Dec 11 12:36 cur
drwxr-xr-x 2 vmail vmail 4096 Dec 11 12:36 new
drwxr-xr-x 2 vmail vmail 4096 Dec 11 12:36 tmp
They seem to be empty:
$ ls -l /local/mnt/mail/shared/Foo-Bugs/Foo-Bugs-New/*
/local/mnt/mail/shared/Foo-Bugs/Foo-Bugs-New/cur:
The Sieve log insists the mailbox doesn't exist:
$ more /local/mnt/home/Foo-bugs/.dovecot.sieve.log
sieve: info: started log at Dec 11 15:35:20.
error: msgid=<p06240614d0afdab4a086@[99.111.97.136]>: failed to
store into mailbox '#Foo/Q
popper-Bugs/Foo-Bugs-New': Mailbox doesn't exist:
#Foo/Foo-Bugs/Foo-Bugs-New.
info: msgid=<p06240614d0afdab4a086@[99.111.97.136]>: stored mail
into mailbox 'INBOX'.
But if I telnet into the server, the mailbox shows up:
a1 list "" *
* LIST (\HasNoChildren \Junk) "/" Junk
* LIST (\Noselect \HasChildren) "/" #Foo
* LIST (\Noselect \HasChildren) "/" #Foo/Foo-Patches
* LIST (\HasNoChildren) "/" #Foo/Foo-Patches/Foo-Patches-New
* LIST (\Noselect \HasChildren) "/" #Foo/Foo-Bugs
* LIST (\HasNoChildren) "/" #Foo/Foo-Bugs/Foo-Bugs-New
* LIST (\HasNoChildren) "/" INBOX
a1 OK List completed.
And I can SELECT it:
a2 select "#Foo/Foo-Bugs/Foo-Bugs-New"
* FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
* OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft
\*)] Flags permitted.
* 0 EXISTS
* 0 RECENT
* OK [UIDVALIDITY 1418343553] UIDs valid
* OK [UIDNEXT 1] Predicted next UID
* OK [NOMODSEQ] No permanent modsequences
a2 OK [READ-WRITE] Select completed (0.006 secs).
So why can't the Sieve script store into it?
--
Randall Gellens
Opinions are personal; facts are suspect; I speak for myself only
-------------- Randomly selected tag: ---------------
Broad-mindedness: The result of flattening high-mindedness out.