[Dovecot] Pigeonhole sieve include namespace regression

Daniel Piddock dgp-dove at corefiling.co.uk
Fri Aug 3 14:30:34 EEST 2012


Hi,

We've recently upgraded from Dovecot 1.2.15 with Sieve 0.1.18 (Debian
Squeeze) to Dovecot 2.1.8 and Pigeonhole 0.3.1.

We provide a selection of global sieve scripts to make users' lives
easier and one noticed that some of these have stopped working. I
tracked it down to them having personal scripts with the same name.

Using a really simple sieve script:
require "include";
include :personal "svn";
include :global "svn";

sievec debug output for sieve 0.1.18 (trimmed a bit):
* Required extensions:
  0: include (16)
  1: fileinto (5)
* Included personal script 'svn' (block: 3):
[script code here]
* Included global script 'svn' (block: 4):
[script code here]
* Main program (block: 1):
00000000: EXTENSIONS [1]:
00000001:   include
00000002: INCLUDE:
00000004:   script: svn.sieve [ID: 1, BLOCK: 3]
00000006: INCLUDE:
00000008:   script: svn.sieve [ID: 2, BLOCK: 4]
0000000a: [End of code]

sievec debug output for Pigeonhole 0.3.1:
* Required extensions (block: 1):
  0: include (id: 16; block: 4)
  1: fileinto (id: 5)
* Included personal script 'svn' (block: 5):
[script code here]
* Main program (block: 2):
Address   Line  Code
00000000:       DEBUG BLOCK: 3
00000001:       EXTENSIONS [1]:
00000002:         include
00000003:    2: INCLUDE:
00000005:         script: `svn' from /home/notroot/sieve/svn.sieve [ID:
1, BLOCK: 5]
00000007:    3: INCLUDE:
00000009:         script: `svn' from /home/notroot/sieve/svn.sieve [ID:
1, BLOCK: 5]
0000000b:    3: [End of code]

As can be seen the personal script is included twice. Obvious work
around is to rename the personal script. However it'd be nice if
namespacing came back.

Cheers,
Dan
-- 
Daniel Piddock, Systems Administrator, CoreFiling Limited
http://www.corefiling.com


More information about the dovecot mailing list