"maildir" field isn't used for anything. Perhaps there is some
completely undocumented and unreliable code that makes use of it for
pop3/imap, but it is used in no way by Sieve. Try something like:
user_query = SELECT CONCAT('/home/vmail', maildir) AS home, 207 AS
uid, 207 AS gid FROM mailbox WHERE username = '%u'
And in dovecot.conf:
mail_location = maildir:~/
(or actually preferrably mail_location = maildir:~/Maildir if can
afford to change it).
On Jan 3, 2009, at 10:43 AM, Guillaume Hilt wrote:
In dovecot-sql.conf
user_query = SELECT CONCAT('/home/vmail/',maildir) AS maildir, 207
AS uid, 207 AS gid FROM mailbox WHERE username = '%u' So I'll have a complete path like /home/vmail/mydomain/myuser/.Guillaume Hilt
Timo Sirainen a écrit :
Where did you add that? You'll need to return a "home" field from
user_query poiting to the sieve script directory.On Jan 3, 2009, at 10:35 AM, Guillaume Hilt wrote:
Anyway, I correct the sql request by adding a concat with .home/ vmail/ and now I have the good home directory but the error still
occurs. Setting sieve_global_dir didn't change anything.Guillaume Hilt
Timo Sirainen a écrit :
On Jan 3, 2009, at 10:21 AM, Guillaume Hilt wrote:
Timo Sirainen a écrit :
On Jan 2, 2009, at 9:38 AM, Guillaume Hilt wrote:
> Jan 2 14:48:52 mail deliver(postmaster@adomain.fr): chdir(/ > root) failed: Permission denied .. > Why does it look inside the /root folder for sieve
> configuration ?Your userdb returns /root as home directory. Show your dovecot- sql.conf and enable auth_debug=yes and show the logs again.
Oh.
Postfixadmin inly store a portion of the maildir path. Instead of storing /home/vmail/domain/user it stores domain/user.
OK. Looks like I was a bit wrong. Your userdb doesn't return any
home directory (it's preferred to return one, http://wiki.dovecot.org/VirtualUsers#homedirs) and deliver preserves HOME environment which is set to /root in
your case. That causes the chdir() error. I think I'll have to do
something about this in v1.2. The HOME environment shouldn't be
preserved when using -d parameter.