\
Network Working Group                                        A. Melnikov
Internet-Draft                                                 Isode Ltd
Updates: 5228 (if approved)                                 K. Murchison
Intended status: Standards Track                                Fastmail
Expires: 8 September 2022                                   7 March 2022


                    IANA registry for Sieve actions
               draft-ietf-extra-sieve-action-registry-02

Abstract

   This document creates a registry of Sieve (RFC 5228) actions in order
   to help developers and Sieve extension writers track interactions
   between different extensions.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on 8 September 2022.

Copyright Notice

   Copyright (c) 2022 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents (https://trustee.ietf.org/
   license-info) in effect on the date of publication of this document.
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document.  Code Components
   extracted from this document must include Revised BSD License text as
   described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Revised BSD License.





Melnikov & Murchison    Expires 8 September 2022                [Page 1]


Internet-Draft       IANA registry for Sieve actions          March 2022


Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Conventions Used in This Document . . . . . . . . . . . . . .   2
   3.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   2
     3.1.  Sieve Actions Registration Template and Procedure . . . .   2
     3.2.  Initial Sieve Action Registry . . . . . . . . . . . . . .   3
   4.  Security Considerations . . . . . . . . . . . . . . . . . . .   6
   5.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   6
     5.1.  Normative References  . . . . . . . . . . . . . . . . . .   6
     5.2.  Informative References  . . . . . . . . . . . . . . . . .   6
   Appendix A.  Acknowledgements . . . . . . . . . . . . . . . . . .   8
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   8

1.  Introduction

   Sieve Email Filtering Language [RFC5228] is a popular email filtering
   language used upon final mail delivery.  Popularity of Sieve resulted
   in a myriad of Sieve extensions that can interact with each other in
   wonderful and complex ways.  There is currently no easy way to find
   out all actions defined by Sieve extensions published in RFCs, which
   make it quite difficult for Sieve extension writers and Sieve
   implementation developers to forsee interactions between Sieve
   actions.

   This document creates a registry of Sieve [RFC5228] actions in order
   to help developers and Sieve extension writers track interactions
   between different extensions.

2.  Conventions Used in This Document

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in BCP
   14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

3.  IANA Considerations

3.1.  Sieve Actions Registration Template and Procedure

   IANA is requested to create a new registry for Sieve actions (see
   Section 2.9 of [RFC5228] for details on Sieve actions).  Registration
   of both actions specified in IETF Stream RFCs and vendor specific
   actions is allowed and encouraged.  The registration template
   contains:

   1.  name of the action;



Melnikov & Murchison    Expires 8 September 2022                [Page 2]


Internet-Draft       IANA registry for Sieve actions          March 2022


   2.  short description;

   3.  references: one or more documents describing the action and any
       significant updates to its definition (this field is REQUIRED for
       actions described in RFCs and OPTIONAL otherwise);

   4.  name(s) of Sieve capabilit(ies) associated with the Sieve action
       being registered;

   5.  interactions with other Sieve actions, if any;

   6.  flag specifying whether the action cancels the implicit keep (see
       Section 2.10.2 of [RFC5228]);

   7.  whether or not this action can be used with IMAP events in Sieve
       ([RFC6785]), and

   8.  optional comment.

   Registration procedure for this registry is Expert Review.  The
   Designated Expert only checks that the name of the action being
   registered matches documentation, that the description field is
   accurate, that the correct documents are referenced and that the list
   of relevant documents is as complete as possible.  The Designated
   Expert can't reject a registration based on personal dislike of the
   document defining an action and should always err on the side of
   registering, even if documentation is not complete.

   Addition of a new reference to an existing registration or change to
   the description field goes through the same registration procedure as
   a new registration.

3.2.  Initial Sieve Action Registry

   The following table is used to initialize the actions registry.

   +============+=============+==========+==============+============+========+=======+========+
   |Name        |Description  |References|Capabilities  |Interactions|Cancels |Use    |Comments|
   |            |             |          |              |            |Implicit|with   |        |
   |            |             |          |              |            |Keep?   |IMAP   |        |
   |            |             |          |              |            |        |Events?|        |
   +============+=============+==========+==============+============+========+=======+========+
   |addheader   |Add a header |[RFC5293] |"editheader"  |All         |N       |       |        |
   |            |field to the |          |              |subsequent  |        |       |        |
   |            |existing     |          |              |tests and   |        |       |        |
   |            |message      |          |              |actions     |        |       |        |
   |            |header       |          |              |apply to the|        |       |        |
   |            |             |          |              |altered     |        |       |        |



Melnikov & Murchison    Expires 8 September 2022                [Page 3]


Internet-Draft       IANA registry for Sieve actions          March 2022


   |            |             |          |              |message     |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |addflag     |Add flags to |[RFC5232],|"imap4flags", |            |N       |       |        |
   |            |a list of    |[RFC5229] |"variables"   |            |        |       |        |
   |            |IMAP flags   |          |              |            |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |convert     |Convert body |[RFC6558] |"convert"     |All         |N       |       |        |
   |            |parts from   |          |              |subsequent  |        |       |        |
   |            |one MIME type|          |              |tests and   |        |       |        |
   |            |to another   |          |              |actions     |        |       |        |
   |            |             |          |              |apply to the|        |       |        |
   |            |             |          |              |altered     |        |       |        |
   |            |             |          |              |message     |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |deleteheader|Remove a     |[RFC5293] |"editheader"  |All         |N       |       |        |
   |            |header field |          |              |subsequent  |        |       |        |
   |            |from the     |          |              |tests and   |        |       |        |
   |            |existing     |          |              |actions     |        |       |        |
   |            |message      |          |              |apply to the|        |       |        |
   |            |header       |          |              |altered     |        |       |        |
   |            |             |          |              |message     |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |discard     |Silently     |[RFC5228] |              |Compatible  |Y       |       |        |
   |            |throw away   |          |              |with all    |        |       |        |
   |            |the message  |          |              |other       |        |       |        |
   |            |             |          |              |actions     |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |enclose     |Enclose a    |[RFC5703] |"enclose"     |All         |N       |       |        |
   |            |message as an|          |              |subsequent  |        |       |        |
   |            |attachment to|          |              |tests and   |        |       |        |
   |            |a new message|          |              |actions,    |        |       |        |
   |            |             |          |              |except      |        |       |        |
   |            |             |          |              |"redirect"  |        |       |        |
   |            |             |          |              |apply to the|        |       |        |
   |            |             |          |              |altered     |        |       |        |
   |            |             |          |              |message     |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |ereject     |Refuse       |[RFC5429] |"ereject"     |            |Y       |N      |        |
   |            |delivery of  |          |              |            |        |       |        |
   |            |the message  |          |              |            |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |extracttext |Store text of|[RFC5703],|"extracttext",|            |N       |       |        |
   |            |a MIME part  |[RFC5229] |"variables"   |            |        |       |        |
   |            |into a       |          |              |            |        |       |        |
   |            |variable     |          |              |            |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |fileinto    |Deliver the  |[RFC5228],|"fileinto",   |Use of :copy|Y       |       |        |
   |            |message into |[RFC3894],|"copy",       |suppresses  |        |       |        |



Melnikov & Murchison    Expires 8 September 2022                [Page 4]


Internet-Draft       IANA registry for Sieve actions          March 2022


   |            |the specified|[RFC5232],|"imap4flags", |cancelation |        |       |        |
   |            |mailbox      |[RFC5490],|"mailbox",    |of implicit |        |       |        |
   |            |             |[RFC9042],|"mailboxid",  |keep        |        |       |        |
   |            |             |[RFC8579] |"special-use" |            |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |keep        |File message |[RFC5228],|"imap4flags"  |            |Y       |       |        |
   |            |into the     |[RFC5232] |              |            |        |       |        |
   |            |user's main  |          |              |            |        |       |        |
   |            |mailbox      |          |              |            |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |notify      |Send a       |[RFC5435],|"enotify",    |            |N       |       |        |
   |            |notification |[RFC8580] |"fcc"         |            |        |       |        |
   |            |to a user    |          |              |            |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |redirect    |Send         |[RFC5228],|"copy",       |Use of :copy|Y       |       |        |
   |            |(forward) the|[RFC3894],|"redirect-    |suppresses  |        |       |        |
   |            |message to   |[RFC6009],|dsn",         |cancelation |        |       |        |
   |            |another user |[RFC6134] |"redirect-    |of implicit |        |       |        |
   |            |             |          |deliverby",   |keep        |        |       |        |
   |            |             |          |"extlists"    |            |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |reject      |Refuse       |[RFC5429] |"reject"      |            |Y       |N      |        |
   |            |delivery of  |          |              |            |        |       |        |
   |            |the message  |          |              |            |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |removeflag  |Remove flags |[RFC5232],|"imap4flags", |            |N       |       |        |
   |            |from a list  |[RFC5229] |"variables"   |            |        |       |        |
   |            |of IMAP flags|          |              |            |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |replace     |Replace a    |[RFC5703] |"replace"     |All         |N       |       |        |
   |            |MIME part    |          |              |subsequent  |        |       |        |
   |            |             |          |              |tests and   |        |       |        |
   |            |             |          |              |actions,    |        |       |        |
   |            |             |          |              |except      |        |       |        |
   |            |             |          |              |"redirect"  |        |       |        |
   |            |             |          |              |apply to the|        |       |        |
   |            |             |          |              |altered     |        |       |        |
   |            |             |          |              |message     |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |set         |Store a value|[RFC5229] |"variables"   |            |N       |       |        |
   |            |in a variable|          |              |            |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |setflag     |Set IMAP     |[RFC5232],|"imap4flags", |            |N       |       |        |
   |            |system flags |[RFC5229] |"variables"   |            |        |       |        |
   |            |or keywords  |          |              |            |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+
   |vacation    |Vacation     |[RFC5230],|"vacation",   |            |N       |N      |        |
   |            |autoresponder|[RFC6131],|"vacation-    |            |        |       |        |



Melnikov & Murchison    Expires 8 September 2022                [Page 5]


Internet-Draft       IANA registry for Sieve actions          March 2022


   |            |             |[RFC8580] |seconds",     |            |        |       |        |
   |            |             |          |"fcc"         |            |        |       |        |
   +------------+-------------+----------+--------------+------------+--------+-------+--------+

                                  Table 1

4.  Security Considerations

   The sole purpose of this document is to create a new IANA registry,
   so it doesn't create new security considerations for Sieve
   implementations.

   The new registry should help Sieve extension writers and Sieve
   implementors track interactions between different Sieve actions, so
   it might improve quality of specifications and implementations,
   including security aspects.

5.  References

5.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC5228]  Guenther, P., Ed. and T. Showalter, Ed., "Sieve: An Email
              Filtering Language", RFC 5228, DOI 10.17487/RFC5228,
              January 2008, <https://www.rfc-editor.org/info/rfc5228>.

   [RFC6785]  Leiba, B., "Support for Internet Message Access Protocol
              (IMAP) Events in Sieve", RFC 6785, DOI 10.17487/RFC6785,
              November 2012, <https://www.rfc-editor.org/info/rfc6785>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

5.2.  Informative References

   [RFC3894]  Degener, J., "Sieve Extension: Copying Without Side
              Effects", RFC 3894, DOI 10.17487/RFC3894, October 2004,
              <https://www.rfc-editor.org/info/rfc3894>.

   [RFC5229]  Homme, K., "Sieve Email Filtering: Variables Extension",
              RFC 5229, DOI 10.17487/RFC5229, January 2008,
              <https://www.rfc-editor.org/info/rfc5229>.




Melnikov & Murchison    Expires 8 September 2022                [Page 6]


Internet-Draft       IANA registry for Sieve actions          March 2022


   [RFC5230]  Showalter, T. and N. Freed, Ed., "Sieve Email Filtering:
              Vacation Extension", RFC 5230, DOI 10.17487/RFC5230,
              January 2008, <https://www.rfc-editor.org/info/rfc5230>.

   [RFC5232]  Melnikov, A., "Sieve Email Filtering: Imap4flags
              Extension", RFC 5232, DOI 10.17487/RFC5232, January 2008,
              <https://www.rfc-editor.org/info/rfc5232>.

   [RFC5293]  Degener, J. and P. Guenther, "Sieve Email Filtering:
              Editheader Extension", RFC 5293, DOI 10.17487/RFC5293,
              August 2008, <https://www.rfc-editor.org/info/rfc5293>.

   [RFC5429]  Stone, A., Ed., "Sieve Email Filtering: Reject and
              Extended Reject Extensions", RFC 5429,
              DOI 10.17487/RFC5429, March 2009,
              <https://www.rfc-editor.org/info/rfc5429>.

   [RFC5435]  Melnikov, A., Ed., Leiba, B., Ed., Segmuller, W., and T.
              Martin, "Sieve Email Filtering: Extension for
              Notifications", RFC 5435, DOI 10.17487/RFC5435, January
              2009, <https://www.rfc-editor.org/info/rfc5435>.

   [RFC5490]  Melnikov, A., "The Sieve Mail-Filtering Language --
              Extensions for Checking Mailbox Status and Accessing
              Mailbox Metadata", RFC 5490, DOI 10.17487/RFC5490, March
              2009, <https://www.rfc-editor.org/info/rfc5490>.

   [RFC5703]  Hansen, T. and C. Daboo, "Sieve Email Filtering: MIME Part
              Tests, Iteration, Extraction, Replacement, and Enclosure",
              RFC 5703, DOI 10.17487/RFC5703, October 2009,
              <https://www.rfc-editor.org/info/rfc5703>.

   [RFC6009]  Freed, N., "Sieve Email Filtering: Delivery Status
              Notifications and Deliver-By Extensions", RFC 6009,
              DOI 10.17487/RFC6009, October 2010,
              <https://www.rfc-editor.org/info/rfc6009>.

   [RFC6131]  George, R. and B. Leiba, "Sieve Vacation Extension:
              "Seconds" Parameter", RFC 6131, DOI 10.17487/RFC6131, July
              2011, <https://www.rfc-editor.org/info/rfc6131>.

   [RFC6134]  Melnikov, A. and B. Leiba, "Sieve Extension: Externally
              Stored Lists", RFC 6134, DOI 10.17487/RFC6134, July 2011,
              <https://www.rfc-editor.org/info/rfc6134>.







Melnikov & Murchison    Expires 8 September 2022                [Page 7]


Internet-Draft       IANA registry for Sieve actions          March 2022


   [RFC6558]  Melnikov, A., Leiba, B., and K. Li, "Sieve Extension for
              Converting Messages before Delivery", RFC 6558,
              DOI 10.17487/RFC6558, March 2012,
              <https://www.rfc-editor.org/info/rfc6558>.

   [RFC8579]  Bosch, S., "Sieve Email Filtering: Delivering to Special-
              Use Mailboxes", RFC 8579, DOI 10.17487/RFC8579, May 2019,
              <https://www.rfc-editor.org/info/rfc8579>.

   [RFC8580]  Murchison, K. and B. Gondwana, "Sieve Extension: File
              Carbon Copy (FCC)", RFC 8580, DOI 10.17487/RFC8580, May
              2019, <https://www.rfc-editor.org/info/rfc8580>.

   [RFC9042]  Gondwana, B., Ed., "Sieve Email Filtering: Delivery by
              MAILBOXID", RFC 9042, DOI 10.17487/RFC9042, June 2021,
              <https://www.rfc-editor.org/info/rfc9042>.

Appendix A.  Acknowledgements

   TBD.

Authors' Addresses

   Alexey Melnikov
   Isode Ltd
   14 Castle Mews
   Hampton
   TW12 2NP
   United Kingdom
   Email: Alexey.Melnikov@isode.com


   Kenneth Murchison
   Fastmail US LLC
   1429 Walnut Street - Suite 1201
   Philadelphia, PA 19102
   United States of America
   Email: murch@fastmailteam.com













Melnikov & Murchison    Expires 8 September 2022                [Page 8]