Quoting the document:
,----
| 3. Action addheader
|
| Syntax:
| "addheader" <name: string> <value: string>
|
| The addheader action appends a header field to the existing
| message header.
...
| The header field MUST be added at the end of the existing
| header.
`----
It isn't clear if a Sieve statement
addheader "To" "foo(_at_)bar(_dot_)com";
invoked on a message that have a header
...
To: baz(_at_)foo(_dot_)com
...
To: apa(_at_)baz(_dot_)com
...
will result in:
1) A message header that looks like:
...
To: baz(_at_)foo(_dot_)com foo(_at_)bar(_dot_)com
...
To: apa(_at_)baz(_dot_)com
...
2) A message header that looks like: (somewhat unrealistic interpretation)
...
To: baz(_at_)foo(_dot_)com, foo(_at_)bar(_dot_)com
...
To: apa(_at_)baz(_dot_)com
...
3) A message header that looks like:
...
To: baz(_at_)foo(_dot_)com
To: foo(_at_)bar(_dot_)com
...
To: apa(_at_)baz(_dot_)com
...
4) A message header that looks like:
...
To: baz(_at_)foo(_dot_)com
...
To: apa(_at_)baz(_dot_)com
...
To: foo(_at_)bar(_dot_)com
Honestly I'm not sure what is intended, otherwise I would have
provided clarified text.
I suspect 4 may be what was intended, but I'm not sure it is the best
choice.