[prev in list] [next in list] [prev in thread] [next in thread] 

List:       dovecot
Subject:    Re: [Dovecot] deliver tries to compile already compiled sieve script
From:       Alexander Prinsier <dovecot () aphexer ! mailhaven ! com>
Date:       2008-03-31 19:53:21
Message-ID: 47F14131.8070807 () aphexer ! mailhaven ! com
[Download RAW message or body]

I should have mentioned I'm running dovecot 1.1.rc3

Alexander

Alexander Prinsier wrote:
> Hello,
> 
> I'm trying to setup dovecot with sieve support in a way where all sieve
> scripts are precompiled. All sieve scripts are in /var/cache/sieve/.
> 
> I believe I discovered a bug here. I describe below how to reproduce it.
> 
> Dovecot and the user that deliver runs as do not have write permission
> in /var/cache/sieve/.
> 
> h01:/var/cache/sieve# ls -la
> total 16
> drwxr-xr-x  2 ecp  ecp  4096 Mar 31 21:32 .
> drwxr-xr-x 10 root root 4096 Mar 31 20:14 ..
> -rw-r--r--  1 ecp  ecp    88 Mar 31 21:32 mailtest1@domain.com.sieve
> -rw-r--r--  1 ecp  ecp   132 Mar 31 21:32 mailtest1@domain.com.sievec
> 
> When deliver runs it logs this error:
> 
> open(/var/cache/sieve/mailtest1@domain.com.sievec.tmp) failed:
> Permission denied
> 
> This indicates deliver tries to compile the script, even though the
> compiled version already is there.
> 
> To verify I tested another case. I make the compiled script immutable
> and I did a chmod 777 on /var/cache/sieve/. Then deliver logs this error:
> 
> rename(/var/cache/sieve/mailtest1@domain.com.sievec.tmp,
> /var/cache/sieve/mailtest1@domain.com.sievec) failed: Operation not
> permitted
> 
> And deliver created the file mailtest1@domain.com.sievec.tmp.
> 
> Some relevant pieces of my dovecot.conf:
> 
> protocol lda {
> 	mail_plugins = quota cmusieve
> 	...
> }
> 
> plugin {
> 	sieve = /var/cache/sieve/%u.sieve
> }
> 
> Anyone can help me? Is this an error on my end, or really a bug?
> 
> Alexander
> 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic