idnits 2.17.1 draft-ietf-extra-sieve-action-registry-02.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** There are 111 instances of too long lines in the document, the longest one being 24 characters in excess of 72. -- The draft header indicates that this document updates RFC5228, but the abstract doesn't seem to directly say this. It does mention RFC5228 though, so this could be OK. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year (Using the creation date from RFC5228, updated by this document, for RFC5378 checks: 2005-05-09) -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (7 March 2022) is 778 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Unused Reference: 'RFC3894' is defined on line 280, but no explicit reference was found in the text == Unused Reference: 'RFC5229' is defined on line 284, but no explicit reference was found in the text == Unused Reference: 'RFC5230' is defined on line 288, but no explicit reference was found in the text == Unused Reference: 'RFC5232' is defined on line 292, but no explicit reference was found in the text == Unused Reference: 'RFC5293' is defined on line 296, but no explicit reference was found in the text == Unused Reference: 'RFC5429' is defined on line 300, but no explicit reference was found in the text == Unused Reference: 'RFC5435' is defined on line 305, but no explicit reference was found in the text == Unused Reference: 'RFC5490' is defined on line 310, but no explicit reference was found in the text == Unused Reference: 'RFC5703' is defined on line 315, but no explicit reference was found in the text == Unused Reference: 'RFC6009' is defined on line 320, but no explicit reference was found in the text == Unused Reference: 'RFC6131' is defined on line 325, but no explicit reference was found in the text == Unused Reference: 'RFC6134' is defined on line 329, but no explicit reference was found in the text == Unused Reference: 'RFC6558' is defined on line 333, but no explicit reference was found in the text == Unused Reference: 'RFC8579' is defined on line 338, but no explicit reference was found in the text == Unused Reference: 'RFC8580' is defined on line 342, but no explicit reference was found in the text == Unused Reference: 'RFC9042' is defined on line 346, but no explicit reference was found in the text Summary: 1 error (**), 0 flaws (~~), 17 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group A. Melnikov 3 Internet-Draft Isode Ltd 4 Updates: 5228 (if approved) K. Murchison 5 Intended status: Standards Track Fastmail 6 Expires: 8 September 2022 7 March 2022 8 IANA registry for Sieve actions 9 draft-ietf-extra-sieve-action-registry-02 11 Abstract 13 This document creates a registry of Sieve (RFC 5228) actions in order 14 to help developers and Sieve extension writers track interactions 15 between different extensions. 17 Status of This Memo 19 This Internet-Draft is submitted in full conformance with the 20 provisions of BCP 78 and BCP 79. 22 Internet-Drafts are working documents of the Internet Engineering 23 Task Force (IETF). Note that other groups may also distribute 24 working documents as Internet-Drafts. The list of current Internet- 25 Drafts is at https://datatracker.ietf.org/drafts/current/. 27 Internet-Drafts are draft documents valid for a maximum of six months 28 and may be updated, replaced, or obsoleted by other documents at any 29 time. It is inappropriate to use Internet-Drafts as reference 30 material or to cite them other than as "work in progress." 32 This Internet-Draft will expire on 8 September 2022. 34 Copyright Notice 36 Copyright (c) 2022 IETF Trust and the persons identified as the 37 document authors. All rights reserved. 39 This document is subject to BCP 78 and the IETF Trust's Legal 40 Provisions Relating to IETF Documents (https://trustee.ietf.org/ 41 license-info) in effect on the date of publication of this document. 42 Please review these documents carefully, as they describe your rights 43 and restrictions with respect to this document. Code Components 44 extracted from this document must include Revised BSD License text as 45 described in Section 4.e of the Trust Legal Provisions and are 46 provided without warranty as described in the Revised BSD License. 48 Table of Contents 50 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 51 2. Conventions Used in This Document . . . . . . . . . . . . . . 2 52 3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 2 53 3.1. Sieve Actions Registration Template and Procedure . . . . 2 54 3.2. Initial Sieve Action Registry . . . . . . . . . . . . . . 3 55 4. Security Considerations . . . . . . . . . . . . . . . . . . . 6 56 5. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 57 5.1. Normative References . . . . . . . . . . . . . . . . . . 6 58 5.2. Informative References . . . . . . . . . . . . . . . . . 6 59 Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 8 60 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 62 1. Introduction 64 Sieve Email Filtering Language [RFC5228] is a popular email filtering 65 language used upon final mail delivery. Popularity of Sieve resulted 66 in a myriad of Sieve extensions that can interact with each other in 67 wonderful and complex ways. There is currently no easy way to find 68 out all actions defined by Sieve extensions published in RFCs, which 69 make it quite difficult for Sieve extension writers and Sieve 70 implementation developers to forsee interactions between Sieve 71 actions. 73 This document creates a registry of Sieve [RFC5228] actions in order 74 to help developers and Sieve extension writers track interactions 75 between different extensions. 77 2. Conventions Used in This Document 79 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 80 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 81 "OPTIONAL" in this document are to be interpreted as described in BCP 82 14 [RFC2119] [RFC8174] when, and only when, they appear in all 83 capitals, as shown here. 85 3. IANA Considerations 87 3.1. Sieve Actions Registration Template and Procedure 89 IANA is requested to create a new registry for Sieve actions (see 90 Section 2.9 of [RFC5228] for details on Sieve actions). Registration 91 of both actions specified in IETF Stream RFCs and vendor specific 92 actions is allowed and encouraged. The registration template 93 contains: 95 1. name of the action; 96 2. short description; 98 3. references: one or more documents describing the action and any 99 significant updates to its definition (this field is REQUIRED for 100 actions described in RFCs and OPTIONAL otherwise); 102 4. name(s) of Sieve capabilit(ies) associated with the Sieve action 103 being registered; 105 5. interactions with other Sieve actions, if any; 107 6. flag specifying whether the action cancels the implicit keep (see 108 Section 2.10.2 of [RFC5228]); 110 7. whether or not this action can be used with IMAP events in Sieve 111 ([RFC6785]), and 113 8. optional comment. 115 Registration procedure for this registry is Expert Review. The 116 Designated Expert only checks that the name of the action being 117 registered matches documentation, that the description field is 118 accurate, that the correct documents are referenced and that the list 119 of relevant documents is as complete as possible. The Designated 120 Expert can't reject a registration based on personal dislike of the 121 document defining an action and should always err on the side of 122 registering, even if documentation is not complete. 124 Addition of a new reference to an existing registration or change to 125 the description field goes through the same registration procedure as 126 a new registration. 128 3.2. Initial Sieve Action Registry 130 The following table is used to initialize the actions registry. 132 +============+=============+==========+==============+============+========+=======+========+ 133 |Name |Description |References|Capabilities |Interactions|Cancels |Use |Comments| 134 | | | | | |Implicit|with | | 135 | | | | | |Keep? |IMAP | | 136 | | | | | | |Events?| | 137 +============+=============+==========+==============+============+========+=======+========+ 138 |addheader |Add a header |[RFC5293] |"editheader" |All |N | | | 139 | |field to the | | |subsequent | | | | 140 | |existing | | |tests and | | | | 141 | |message | | |actions | | | | 142 | |header | | |apply to the| | | | 143 | | | | |altered | | | | 144 | | | | |message | | | | 145 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 146 |addflag |Add flags to |[RFC5232],|"imap4flags", | |N | | | 147 | |a list of |[RFC5229] |"variables" | | | | | 148 | |IMAP flags | | | | | | | 149 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 150 |convert |Convert body |[RFC6558] |"convert" |All |N | | | 151 | |parts from | | |subsequent | | | | 152 | |one MIME type| | |tests and | | | | 153 | |to another | | |actions | | | | 154 | | | | |apply to the| | | | 155 | | | | |altered | | | | 156 | | | | |message | | | | 157 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 158 |deleteheader|Remove a |[RFC5293] |"editheader" |All |N | | | 159 | |header field | | |subsequent | | | | 160 | |from the | | |tests and | | | | 161 | |existing | | |actions | | | | 162 | |message | | |apply to the| | | | 163 | |header | | |altered | | | | 164 | | | | |message | | | | 165 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 166 |discard |Silently |[RFC5228] | |Compatible |Y | | | 167 | |throw away | | |with all | | | | 168 | |the message | | |other | | | | 169 | | | | |actions | | | | 170 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 171 |enclose |Enclose a |[RFC5703] |"enclose" |All |N | | | 172 | |message as an| | |subsequent | | | | 173 | |attachment to| | |tests and | | | | 174 | |a new message| | |actions, | | | | 175 | | | | |except | | | | 176 | | | | |"redirect" | | | | 177 | | | | |apply to the| | | | 178 | | | | |altered | | | | 179 | | | | |message | | | | 180 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 181 |ereject |Refuse |[RFC5429] |"ereject" | |Y |N | | 182 | |delivery of | | | | | | | 183 | |the message | | | | | | | 184 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 185 |extracttext |Store text of|[RFC5703],|"extracttext",| |N | | | 186 | |a MIME part |[RFC5229] |"variables" | | | | | 187 | |into a | | | | | | | 188 | |variable | | | | | | | 189 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 190 |fileinto |Deliver the |[RFC5228],|"fileinto", |Use of :copy|Y | | | 191 | |message into |[RFC3894],|"copy", |suppresses | | | | 192 | |the specified|[RFC5232],|"imap4flags", |cancelation | | | | 193 | |mailbox |[RFC5490],|"mailbox", |of implicit | | | | 194 | | |[RFC9042],|"mailboxid", |keep | | | | 195 | | |[RFC8579] |"special-use" | | | | | 196 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 197 |keep |File message |[RFC5228],|"imap4flags" | |Y | | | 198 | |into the |[RFC5232] | | | | | | 199 | |user's main | | | | | | | 200 | |mailbox | | | | | | | 201 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 202 |notify |Send a |[RFC5435],|"enotify", | |N | | | 203 | |notification |[RFC8580] |"fcc" | | | | | 204 | |to a user | | | | | | | 205 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 206 |redirect |Send |[RFC5228],|"copy", |Use of :copy|Y | | | 207 | |(forward) the|[RFC3894],|"redirect- |suppresses | | | | 208 | |message to |[RFC6009],|dsn", |cancelation | | | | 209 | |another user |[RFC6134] |"redirect- |of implicit | | | | 210 | | | |deliverby", |keep | | | | 211 | | | |"extlists" | | | | | 212 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 213 |reject |Refuse |[RFC5429] |"reject" | |Y |N | | 214 | |delivery of | | | | | | | 215 | |the message | | | | | | | 216 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 217 |removeflag |Remove flags |[RFC5232],|"imap4flags", | |N | | | 218 | |from a list |[RFC5229] |"variables" | | | | | 219 | |of IMAP flags| | | | | | | 220 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 221 |replace |Replace a |[RFC5703] |"replace" |All |N | | | 222 | |MIME part | | |subsequent | | | | 223 | | | | |tests and | | | | 224 | | | | |actions, | | | | 225 | | | | |except | | | | 226 | | | | |"redirect" | | | | 227 | | | | |apply to the| | | | 228 | | | | |altered | | | | 229 | | | | |message | | | | 230 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 231 |set |Store a value|[RFC5229] |"variables" | |N | | | 232 | |in a variable| | | | | | | 233 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 234 |setflag |Set IMAP |[RFC5232],|"imap4flags", | |N | | | 235 | |system flags |[RFC5229] |"variables" | | | | | 236 | |or keywords | | | | | | | 237 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 238 |vacation |Vacation |[RFC5230],|"vacation", | |N |N | | 239 | |autoresponder|[RFC6131],|"vacation- | | | | | 240 | | |[RFC8580] |seconds", | | | | | 241 | | | |"fcc" | | | | | 242 +------------+-------------+----------+--------------+------------+--------+-------+--------+ 244 Table 1 246 4. Security Considerations 248 The sole purpose of this document is to create a new IANA registry, 249 so it doesn't create new security considerations for Sieve 250 implementations. 252 The new registry should help Sieve extension writers and Sieve 253 implementors track interactions between different Sieve actions, so 254 it might improve quality of specifications and implementations, 255 including security aspects. 257 5. References 259 5.1. Normative References 261 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 262 Requirement Levels", BCP 14, RFC 2119, 263 DOI 10.17487/RFC2119, March 1997, 264 . 266 [RFC5228] Guenther, P., Ed. and T. Showalter, Ed., "Sieve: An Email 267 Filtering Language", RFC 5228, DOI 10.17487/RFC5228, 268 January 2008, . 270 [RFC6785] Leiba, B., "Support for Internet Message Access Protocol 271 (IMAP) Events in Sieve", RFC 6785, DOI 10.17487/RFC6785, 272 November 2012, . 274 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 275 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 276 May 2017, . 278 5.2. Informative References 280 [RFC3894] Degener, J., "Sieve Extension: Copying Without Side 281 Effects", RFC 3894, DOI 10.17487/RFC3894, October 2004, 282 . 284 [RFC5229] Homme, K., "Sieve Email Filtering: Variables Extension", 285 RFC 5229, DOI 10.17487/RFC5229, January 2008, 286 . 288 [RFC5230] Showalter, T. and N. Freed, Ed., "Sieve Email Filtering: 289 Vacation Extension", RFC 5230, DOI 10.17487/RFC5230, 290 January 2008, . 292 [RFC5232] Melnikov, A., "Sieve Email Filtering: Imap4flags 293 Extension", RFC 5232, DOI 10.17487/RFC5232, January 2008, 294 . 296 [RFC5293] Degener, J. and P. Guenther, "Sieve Email Filtering: 297 Editheader Extension", RFC 5293, DOI 10.17487/RFC5293, 298 August 2008, . 300 [RFC5429] Stone, A., Ed., "Sieve Email Filtering: Reject and 301 Extended Reject Extensions", RFC 5429, 302 DOI 10.17487/RFC5429, March 2009, 303 . 305 [RFC5435] Melnikov, A., Ed., Leiba, B., Ed., Segmuller, W., and T. 306 Martin, "Sieve Email Filtering: Extension for 307 Notifications", RFC 5435, DOI 10.17487/RFC5435, January 308 2009, . 310 [RFC5490] Melnikov, A., "The Sieve Mail-Filtering Language -- 311 Extensions for Checking Mailbox Status and Accessing 312 Mailbox Metadata", RFC 5490, DOI 10.17487/RFC5490, March 313 2009, . 315 [RFC5703] Hansen, T. and C. Daboo, "Sieve Email Filtering: MIME Part 316 Tests, Iteration, Extraction, Replacement, and Enclosure", 317 RFC 5703, DOI 10.17487/RFC5703, October 2009, 318 . 320 [RFC6009] Freed, N., "Sieve Email Filtering: Delivery Status 321 Notifications and Deliver-By Extensions", RFC 6009, 322 DOI 10.17487/RFC6009, October 2010, 323 . 325 [RFC6131] George, R. and B. Leiba, "Sieve Vacation Extension: 326 "Seconds" Parameter", RFC 6131, DOI 10.17487/RFC6131, July 327 2011, . 329 [RFC6134] Melnikov, A. and B. Leiba, "Sieve Extension: Externally 330 Stored Lists", RFC 6134, DOI 10.17487/RFC6134, July 2011, 331 . 333 [RFC6558] Melnikov, A., Leiba, B., and K. Li, "Sieve Extension for 334 Converting Messages before Delivery", RFC 6558, 335 DOI 10.17487/RFC6558, March 2012, 336 . 338 [RFC8579] Bosch, S., "Sieve Email Filtering: Delivering to Special- 339 Use Mailboxes", RFC 8579, DOI 10.17487/RFC8579, May 2019, 340 . 342 [RFC8580] Murchison, K. and B. Gondwana, "Sieve Extension: File 343 Carbon Copy (FCC)", RFC 8580, DOI 10.17487/RFC8580, May 344 2019, . 346 [RFC9042] Gondwana, B., Ed., "Sieve Email Filtering: Delivery by 347 MAILBOXID", RFC 9042, DOI 10.17487/RFC9042, June 2021, 348 . 350 Appendix A. Acknowledgements 352 TBD. 354 Authors' Addresses 356 Alexey Melnikov 357 Isode Ltd 358 14 Castle Mews 359 Hampton 360 TW12 2NP 361 United Kingdom 362 Email: Alexey.Melnikov@isode.com 364 Kenneth Murchison 365 Fastmail US LLC 366 1429 Walnut Street - Suite 1201 367 Philadelphia, PA 19102 368 United States of America 369 Email: murch@fastmailteam.com