Thanks both for the useful pointers.

Adding an explicit keep does indeed set the header. I’m confused why it makes a 
difference though since the default implicit action is keep. I’m also surprised 
this is necessary given that the setflag directive of the imap4flags extension 
does not require an explicit keep. I can’t find anything in the Pigeonhole 
documentation or the edit headers RFC about requiring an explicit keep either.

Thanks for pointing out sieve-test, however, it doesn’t help clear up my 
confusion as it doesn’t mention the addheader directive at all:

sieve-test without explicit keep:

Performed actions:

  (none)

Implicit keep:

 * store message in folder: INBOX

sieve-test(root): Info: final result: success

sieve-test with explicit keep:

Performed actions:

 * store message in folder: INBOX

Implicit keep:

  (none)

In any case, adding keep has fixed my problem though - so thanks for the 
suggestion!

Peter

> On May 14, 2020, at 7:08 AM, Aki Tuomi <aki.tu...@open-xchange.com> wrote:
> 
> 
>> On 13/05/2020 21:10 Peter Folta <m...@peterfolta.net> wrote:
>> 
>> 
>> Hi all,
>> 
>> I want to add a custom header to incoming emails from a particular sender. 
>> This is what my user Sieve script looks like:
>> 
>> require “editheader”;
>> 
>> if address :is "From” “special-sen...@example.com” {
>>    addheader “X-My-Custom-Header” “Header Value";
>> }
>> 
>> I have enabled the editheader extension in my Dovecot configuration:
>> 
>> plugin {
>>    …
>>    sieve_extensions = +editheader
>> }
>> 
>> This doesn’t seem to work and no header is added to the email.
>> However, if I also move the email to a different folder in the same 
>> if-block, the header gets added just fine:
>> 
>> require “editheader”;
>> require “fileinto”;
>> 
>> if address :is "From” “special-sen...@example.com” {
>>    addheader “X-My-Custom-Header” “Header Value”;
>>    fileinto “MyFolder”;
>> }
>> 
>> Am I missing something?
>> 
>> Thanks
>> Peter
> 
> Try 'sieve-test' utility to see what it is doing.
> 
> Aki

Reply via email to