Skip to main content

Sieve Email Filtering: MIME Part Tests, Iteration, Extraction, Replacement, and Enclosure
RFC 5703

Revision differences

Document history

Date Rev. By Action
2020-04-21
09 (System) Received changes through RFC Editor sync (added Errata tag, added Verified Errata tag)
2015-10-14
09 (System) Notify list changed from sieve-chairs@ietf.org, draft-ietf-sieve-mime-loop@ietf.org, alexey.melnikov@isode.com to alexey.melnikov@isode.com
2012-08-22
09 (System) post-migration administrative database adjustment to the No Objection position for Tim Polk
2009-10-28
09 Amy Vezza State Changes to RFC Published from RFC Ed Queue by Amy Vezza
2009-10-28
09 Amy Vezza [Note]: 'RFC 5703' added by Amy Vezza
2009-10-28
09 (System) RFC published
2009-10-07
09 (System) IANA Action state changed to RFC-Ed-Ack from Waiting on RFC Editor
2009-10-07
09 (System) IANA Action state changed to Waiting on RFC Editor from In Progress
2009-10-07
09 (System) IANA Action state changed to In Progress from Waiting on Authors
2009-10-06
09 (System) IANA Action state changed to Waiting on Authors from In Progress
2009-10-06
09 Cindy Morgan State Changes to RFC Ed Queue from Approved-announcement sent by Cindy Morgan
2009-10-06
09 (System) IANA Action state changed to In Progress
2009-10-06
09 Cindy Morgan IESG state changed to Approved-announcement sent
2009-10-06
09 Cindy Morgan IESG has approved the document
2009-10-06
09 Cindy Morgan Closed "Approve" ballot
2009-10-06
09 Tim Polk [Ballot Position Update] Position for Tim Polk has been changed to No Objection from Undefined by Tim Polk
2009-10-06
09 Tim Polk [Ballot Position Update] Position for Tim Polk has been changed to Undefined from Discuss by Tim Polk
2009-08-25
09 Lisa Dusseault State Changes to IESG Evaluation::External Party from IESG Evaluation::AD Followup by Lisa Dusseault
2009-08-25
09 Lisa Dusseault Getting WG consensus on ":anychild without :mime" issue
2009-08-14
09 Tim Polk
[Ballot comment]
There is at least one occurrence of "SIEVE" in section 11, but most (all?) other occurrences are "Sieve"

For consistency, suggest the global …
[Ballot comment]
There is at least one occurrence of "SIEVE" in section 11, but most (all?) other occurrences are "Sieve"

For consistency, suggest the global change
s/SIEVE/Sieve/
2009-08-14
09 Tim Polk
[Ballot discuss]
This is a good document overall, but there are a few issues that need to be addressed to
ensure consistency and interoperability of …
[Ballot discuss]
This is a good document overall, but there are a few issues that need to be addressed to
ensure consistency and interoperability of implementations.

(1) In section 4.1, the semantics of ":anychild" in the absence of the ":mime" tagged argument
is not specified, but this construct is permitted by the ABNF and is not forbidden by the text.

Since sections 4.2 and 4.3 reference 4.1 for the behavior of ":anychild" this ambiguity ripples
forward.
2009-08-14
09 (System) Removed from agenda for telechat - 2009-08-13
2009-08-13
09 Cindy Morgan State Changes to IESG Evaluation::AD Followup from IESG Evaluation by Cindy Morgan
2009-08-13
09 Tim Polk
[Ballot comment]
There is at least one occurrence of "SIEVE" in section 11, but most (all?) other occurrences are "Sieve"

For consistency, suggest the global …
[Ballot comment]
There is at least one occurrence of "SIEVE" in section 11, but most (all?) other occurrences are "Sieve"

For consistency, suggest the global change
s/SIEVE/Sieve/
2009-08-13
09 Tim Polk
[Ballot discuss]
This is a good document overall, but there are a few issues that need to be addressed to
ensure consistency and interoperability of …
[Ballot discuss]
This is a good document overall, but there are a few issues that need to be addressed to
ensure consistency and interoperability of implementations.

(1) In section 3, the semantics of a "break" command that omits a name in a nested
"foreverypart" is not clearly specified.  In this case, does the "break" terminate the closest
enclosing loop, or the outermost?

(2) In section 4.1, the semantics of ":anychild" in the absence of the ":mime" tagged argument
is not specified, but this construct is permitted by the ABNF and is not forbidden by the text.

Since sections 4.2 and 4.3 reference 4.1 for the behavior of ":anychild" this ambiguity ripples
forward.
2009-08-12
09 Ross Callon [Ballot Position Update] New position, No Objection, has been recorded by Ross Callon
2009-08-12
09 Robert Sparks [Ballot Position Update] New position, No Objection, has been recorded by Robert Sparks
2009-08-12
09 Tim Polk
[Ballot comment]
There is at least one occurrence of "SIEVE" in section 11, but most (all?) other occurrences are "Sieve"

For consistency, suggest the global …
[Ballot comment]
There is at least one occurrence of "SIEVE" in section 11, but most (all?) other occurrences are "Sieve"

For consistency, suggest the global change
s/SIEVE/Sieve/
2009-08-12
09 Tim Polk
[Ballot discuss]
This is a good document overall, but there are a few issues that need to be addressed to
ensure consistency and interoperability of …
[Ballot discuss]
This is a good document overall, but there are a few issues that need to be addressed to
ensure consistency and interoperability of implementations.

(1) In section 3, the semantics of a "break" command that omits a name in a nested
"foreverypart" is not clearly specified.  In this case, does the "break" terminate the closest
enclosing loop, or the outermost?

(2) In section 4.1, the semantics of ":anychild" in the absence of the ":mime" tagged argument
is not specified, but this construct is permitted by the ABNF and is not forbidden by the text.

Since sections 4.2 and 4.3 reference 4.1 for the behavior of ":anychild" this ambiguity ripples
forward.

(3) In sections 4.2 and 4.3, the following text is ambiguous:

    "the use of "address" with no ":mime" and ":anychild" tagged arguments ..."

Does the no apply to both arguments or just one? if it applies to both, it might be clearer
to state:

    "the use of "address" when both the ":mime" and ":anychild" tagged arguments
    are omitted ..."
2009-08-12
09 Tim Polk
[Ballot comment]
There is at least one occurrence of "SIEVE" in section 11, but most (all?) other occurrences are "Sieve"

For consistency, suggest the global …
[Ballot comment]
There is at least one occurrence of "SIEVE" in section 11, but most (all?) other occurrences are "Sieve"

For consistency, suggest the global change
s/SIEVE/Sieve/
2009-08-12
09 Tim Polk
[Ballot discuss]
This is a good document overall, but there are a few issues that need to be addressed to ensure consistency and interoperability of …
[Ballot discuss]
This is a good document overall, but there are a few issues that need to be addressed to ensure consistency and interoperability of implementations.

(1) In section 3, the semantics of a "break" command that omits a name in a nested "foreverypart" is not clearly specified.  In this case, does the "break" terminate the closest enclosing loop, or the outermost?

(2) In section 4.1, the semantics of ":anychild" in the absence of the ":mime" tagged argument is not specified, but this construct is permitted by the ABNF and is not forbidden by the text.

Since sections 4.2 and 4.3 reference 4.1 for the behavior of ":anychild" this ambiguity ripples forward.

(3) In sections 4.2 and 4.3, the following text is ambiguous:

    "the use of "address" with no ":mime" and ":anychild" tagged arguments ..."

Does the no apply to both arguments or just one? if it applies to both, it might be clearer to state:

    "the use of "address" when both the ":mime" and ":anychild" tagged arguments
    are omitted ..."
2009-08-12
09 Tim Polk [Ballot Position Update] New position, Discuss, has been recorded by Tim Polk
2009-08-12
09 Pasi Eronen
[Ballot comment]
It could be useful if the examples 9.1 and 9.2 included a warning
saying that circumventing these tests is easy (e.g. the list …
[Ballot comment]
It could be useful if the examples 9.1 and 9.2 included a warning
saying that circumventing these tests is easy (e.g. the list of file
extensions that are considered "executable and unsafe" by Outlook is
almost 100 entries, and other Content-Types may be used, too), so the
SIEVE code here is not intended to be used in real world.
2009-08-12
09 Pasi Eronen [Ballot Position Update] New position, No Objection, has been recorded by Pasi Eronen
2009-08-11
09 Ron Bonica [Ballot Position Update] New position, No Objection, has been recorded by Ron Bonica
2009-08-11
09 Russ Housley [Ballot Position Update] New position, No Objection, has been recorded by Russ Housley
2009-08-11
09 Lars Eggert [Ballot Position Update] New position, No Objection, has been recorded by Lars Eggert
2009-08-10
09 Dan Romascanu [Ballot Position Update] New position, No Objection, has been recorded by Dan Romascanu
2009-08-10
09 Jari Arkko [Ballot Position Update] New position, No Objection, has been recorded by Jari Arkko
2009-08-05
09 Lisa Dusseault Changes suggested by GenArt reviewer were made and/or responded to
2009-07-18
09 Alexey Melnikov [Ballot Position Update] New position, Recuse, has been recorded by Alexey Melnikov
2009-07-18
09 Adrian Farrel [Ballot Position Update] New position, No Objection, has been recorded by Adrian Farrel
2009-07-18
09 Adrian Farrel
[Ballot comment]
I think the Introduction is a bit terse.
It should at least have a very brief statement about what Sieve is with
a …
[Ballot comment]
I think the Introduction is a bit terse.
It should at least have a very brief statement about what Sieve is with
a reference to RFC 5228. This would then give context to the statement
  This extension defines mechanisms for
  performing tests on MIME body parts...

===

Section 2.

Notwithstanding...

  Conventions for notations are as in [RFC5228] section 1.1.

...it would be helpful to include a normative reference to RFC 5234

===

Section 4.1

  Usage:  The definition of [MIMEOPTS] is:

I am not so hot on ABNF, but shouldn't this read...

  Usage:  The definition of MIMEOPTS is:

as the [] is an ABNF notation not part of the name.
2009-07-14
09 Alexey Melnikov State Change Notice email list have been change to sieve-chairs@tools.ietf.org, draft-ietf-sieve-mime-loop@tools.ietf.org, alexey.melnikov@isode.com from sieve-chairs@tools.ietf.org, draft-ietf-sieve-mime-loop@tools.ietf.org
2009-07-14
09 Alexey Melnikov [Note]: 'Alexey Melnikov <alexey.melnikov@isode.com> is the document shepherd for this document.' added by Alexey Melnikov
2009-07-13
09 Lisa Dusseault [Ballot Position Update] New position, Yes, has been recorded for Lisa Dusseault
2009-07-13
09 Lisa Dusseault Ballot has been issued by Lisa Dusseault
2009-07-13
09 Lisa Dusseault Created "Approve" ballot
2009-07-13
09 Lisa Dusseault Placed on agenda for telechat - 2009-08-13 by Lisa Dusseault
2009-07-13
09 Lisa Dusseault State Changes to IESG Evaluation from Waiting for AD Go-Ahead::AD Followup by Lisa Dusseault
2009-07-13
09 (System) Sub state has been changed to AD Follow up from New Id Needed
2009-07-13
09 (System) New version available: draft-ietf-sieve-mime-loop-09.txt
2009-02-02
09 Lisa Dusseault State Changes to Waiting for AD Go-Ahead::Revised ID Needed from Waiting for AD Go-Ahead by Lisa Dusseault
2009-02-02
09 Lisa Dusseault Waiting for some answers from authors on GenArt review before sending to IESG -- may be a revised ID, maybe not.
2009-02-01
09 Samuel Weiler Request for Last Call review by SECDIR Completed. Reviewer: Brian Weis.
2008-12-19
09 Amanda Baber
IANA comments:

Action 1:

Upon approval of this document, IANA will make the following
assignments in the "Permanent Message Header Field Names"
registry at
http://www.iana.org/assignments/message-headers/perm-headers.html …
IANA comments:

Action 1:

Upon approval of this document, IANA will make the following
assignments in the "Permanent Message Header Field Names"
registry at
http://www.iana.org/assignments/message-headers/perm-headers.html


Header Field Name Protocol Status Reference
----------------- -------- ------ ---------
Original-Subject mail standard [RFC-sieve-mime-loop-08]
Original-From mail standard [RFC-sieve-mime-loop-08]


Action 2:

Upon approval of this document, IANA will make the following
assignments in the "Sieve Extensions" registry at
http://www.iana.org/assignments/sieve-extensions

Capability name: foreverypart
Description: adds the "foreverypart" and "break" actions for
iterating through MIME parts of a message.
RFC number: [RFC-sieve-mime-loop-08]
Contact address: The Sieve discussion list .

Capability name: mime
Description: adds the ":mime" and ":anychild" tagged arguments to the
"header", "address" and "exists" tests.
RFC number: [RFC-sieve-mime-loop-08]
Contact address: The Sieve discussion list .

Capability name: replace
Description: adds the "replace" action for replacing a MIME body part
of a message.
RFC number: [RFC-sieve-mime-loop-08]
Contact address: The Sieve discussion list .

Capability name: enclose
Description: adds the "enclose" action for enclosing a message with a
wrapper.
RFC number: [RFC-sieve-mime-loop-08]
Contact address: The Sieve discussion list .

Capability name: extracttext
Description: adds the "extracttext" action for extracting text from a
MIME body part.
RFC number: [RFC-sieve-mime-loop-08]
Contact address: The Sieve discussion list .


We understand the above to be the only IANA Actions for this document.
2008-12-19
09 (System) State has been changed to Waiting for AD Go-Ahead from In Last Call by system
2008-12-06
09 Samuel Weiler Request for Last Call review by SECDIR is assigned to Brian Weis
2008-12-06
09 Samuel Weiler Request for Last Call review by SECDIR is assigned to Brian Weis
2008-12-05
09 Cindy Morgan Last call sent
2008-12-05
09 Cindy Morgan State Changes to In Last Call from Last Call Requested by Cindy Morgan
2008-12-05
09 Lisa Dusseault Last Call was requested by Lisa Dusseault
2008-12-05
09 Lisa Dusseault State Changes to Last Call Requested from AD Evaluation by Lisa Dusseault
2008-12-05
09 (System) Ballot writeup text was added
2008-12-05
09 (System) Last call text was added
2008-12-05
09 (System) Ballot approval text was added
2008-12-02
09 Lisa Dusseault State Changes to AD Evaluation from Publication Requested by Lisa Dusseault
2008-11-21
09 Lisa Dusseault
Alexey Melnikov  is the document shepherd for this document.  The document is ready for publication.


(1.b)  Has the document had adequate review both from key …
Alexey Melnikov  is the document shepherd for this document.  The document is ready for publication.


(1.b)  Has the document had adequate review both from key WG members
      and from key non-WG members?  Does the Document Shepherd have
      any concerns about the depth or breadth of the reviews that
      have been performed?

This document was reviewed by several active and experienced Sieve WG members.
So there are no concerns about the depth of the reviews.

(1.c)  Does the Document Shepherd have concerns that the document
      needs more review from a particular or broader perspective,
      e.g., security, operational complexity, someone familiar with
      AAA, internationalization or XML?

No concerns.

(1.d)  Does the Document Shepherd have any specific concerns or
      issues with this document that the Responsible Area Director
      and/or the IESG should be aware of?  For example, perhaps he
      or she is uncomfortable with certain parts of the  document, or
      has concerns whether there really is a need for it.  In any
      event, if the WG has discussed those issues and has indicated
      that it still wishes to advance the document, detail those
      concerns here.  Has an IPR disclosure related to this  document
      been filed?  If so, please include a reference to the
      disclosure and summarize the WG discussion and conclusion on
      this issue.

No specific concerns. No IPR disclosure was filed for this document.

(1.e)  How solid is the WG consensus behind this document?  Does it
      represent the strong concurrence of a few individuals, with
      others being silent, or does the WG as a whole understand and
      agree with it?

There is solid WG consensus behind the document.

(1.f)  Has anyone threatened an appeal or otherwise indicated  extreme
      discontent?  If so, please summarise the areas of conflict in
      separate email messages to the Responsible Area Director.  (It
      should be in a separate email because this questionnaire is
      entered into the ID Tracker.)
No.

(1.g)  Has the Document Shepherd personally verified that the
      document satisfies all ID nits?  (See
      http://www.ietf.org/ID-Checklist.html and
      http://tools.ietf.org/tools/idnits/).  Boilerplate checks are
      not enough; this check needs to be thorough.  Has the  document
      met all formal review criteria it needs to, such as the MIB
      Doctor, media type and URI type reviews?

IDnits 2.10.02 was used to verify the document. It reports some missing references, which are
not references, but ABNF-like Sieve productions.
It also reports 1 instance of "non-RFC2606-compliant FQDNs", which is actually not a FQDN at all (for.every.part is a name of a Sieve action).
It also reports "weird spacing" and a couple of outdated references which can easily be fixed by the RFC editor.

(1.h)  Has the document split its references into normative and
      informative?  Are there normative references to documents  that
      are not ready for advancement or are otherwise in an unclear
      state?  If such normative references exist, what is the
      strategy for their completion?  Are there normative  references
      that are downward references, as described in [RFC3967]?  If
      so, list these downward references to support the Area
      Director in the Last Call procedure for them [RFC3967].

Yes, references are properly split. There are no downward normative references.
One informative reference should be replaced with an RFC, but this can be done by the RFC editor.

(1.i)  Has the Document Shepherd verified that the document IANA
      consideration section exists and is consistent with the body
      of the document?  If the document specifies protocol
      extensions, are reservations requested in appropriate IANA
      registries?  Are the IANA registries clearly identified?  If
      the document creates a new registry, does it define the
      proposed initial contents of the registry and an allocation
      procedure for future registrations?  Does it suggest a
      reasonable name for the new registry?  See [RFC2434].  If the
      document describes an Expert Review process has Shepherd
      conferred with the Responsible Area Director so that the IESG
      can appoint the needed Expert during the IESG Evaluation?

IANA considerations section exists and is clearly defined. It contains registration of 5 new Sieve extensions and 2 new RFC 2822 header fields.

(1.j)  Has the Document Shepherd verified that sections of the
      document that are written in a formal language, such as XML
      code, BNF rules, MIB definitions, etc., validate correctly in
      an automated checker?

The document doesn't have any ABNF, MIB, etc.

(1.k)  The IESG approval announcement includes a Document
      Announcement Write-Up.  Please provide such a Document
      Announcement Write-Up?  Recent examples can be found in the
      "Action" announcements for approved documents.  The approval
      announcement contains the following sections:

      Technical Summary
          Relevant content can frequently be found in the abstract
          and/or introduction of the document.  If not, this may be
          an indication that there are deficiencies in the abstract
          or introduction.

This document defines extensions to the Sieve email filtering
language to permit analysis and manipulation of the MIME body parts
of an email message.

      Working Group Summary
          Was there anything in WG process that is worth noting?  For
          example, was there controversy about particular points or
          were there decisions where the consensus was particularly
          rough?

Majority of posted comments were addressed in the latest revision, for the remaining there was no wide WG support in favor of changes.

      Document Quality
          Are there existing implementations of the protocol?  Have a
          significant number of vendors indicated their plan to
          implement the specification?  Are there any reviewers that
          merit special mention as having done a thorough review,
          e.g., one that resulted in important changes or a
          conclusion that the document had no substantive  issues?  If
          there was a MIB Doctor, Media Type or other expert review,
          what was its course (briefly)?  In the case of a Media  Type
          review, on what date was the request posted?

At least 2 server vendors are interested in implementing extensions specified in the document.

At least 6 people have reviewed the document.

      Personnel
          Who is the Document Shepherd for this document?  Who is  the
          Responsible Area Director?

Alexey Melnikov  is the document shepherd for this document.
2008-11-21
09 Lisa Dusseault Draft Added by Lisa Dusseault in state Publication Requested
2008-11-20
08 (System) New version available: draft-ietf-sieve-mime-loop-08.txt
2008-11-03
07 (System) New version available: draft-ietf-sieve-mime-loop-07.txt
2008-09-12
06 (System) New version available: draft-ietf-sieve-mime-loop-06.txt
2008-07-14
05 (System) New version available: draft-ietf-sieve-mime-loop-05.txt
2008-02-24
04 (System) New version available: draft-ietf-sieve-mime-loop-04.txt
2008-01-09
09 (System) Document has expired
2007-07-09
03 (System) New version available: draft-ietf-sieve-mime-loop-03.txt
2007-03-22
02 (System) New version available: draft-ietf-sieve-mime-loop-02.txt
2006-10-24
01 (System) New version available: draft-ietf-sieve-mime-loop-01.txt
2006-03-02
00 (System) New version available: draft-ietf-sieve-mime-loop-00.txt