[Dovecot] deliver looking into root directory for sieve configuration ?

Timo Sirainen tss at iki.fi
Sat Jan 3 18:07:49 EET 2009


"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 at 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.
>>>>
>>>>
>>
>>



More information about the dovecot mailing list