rfc9122.original   rfc9122.txt 
Network Working Group A. Melnikov Internet Engineering Task Force (IETF) A. Melnikov
Internet-Draft Isode Ltd Request for Comments: 9122 Isode Ltd
Intended status: Standards Track K. Murchison Category: Standards Track K. Murchison
Expires: 28 September 2023 Fastmail ISSN: 2070-1721 Fastmail
27 March 2023 June 2023
IANA registry for Sieve actions IANA Registry for Sieve Actions
draft-ietf-extra-sieve-action-registry-06
Abstract Abstract
Sieve Email Filtering Language (RFC 5228) is a popular email The Sieve Email Filtering Language (RFC 5228) is a popular email
filtering language used upon final mail delivery. This document filtering language used upon final mail delivery. This document
creates a registry of Sieve (RFC 5228) actions in order to help creates a registry for Sieve actions to help developers and Sieve
developers and Sieve extension writers track interactions between extension writers track interactions between different extensions.
different extensions.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This is an Internet Standards Track document.
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 This document is a product of the Internet Engineering Task Force
and may be updated, replaced, or obsoleted by other documents at any (IETF). It represents the consensus of the IETF community. It has
time. It is inappropriate to use Internet-Drafts as reference received public review and has been approved for publication by the
material or to cite them other than as "work in progress." Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of RFC 7841.
This Internet-Draft will expire on 28 September 2023. Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
https://www.rfc-editor.org/info/rfc9122.
Copyright Notice Copyright Notice
Copyright (c) 2023 IETF Trust and the persons identified as the Copyright (c) 2023 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/ Provisions Relating to IETF Documents
license-info) in effect on the date of publication of this document. (https://trustee.ietf.org/license-info) in effect on the date of
Please review these documents carefully, as they describe your rights publication of this document. Please review these documents
and restrictions with respect to this document. Code Components carefully, as they describe your rights and restrictions with respect
extracted from this document must include Revised BSD License text as to this document. Code Components extracted from this document must
described in Section 4.e of the Trust Legal Provisions and are include Revised BSD License text as described in Section 4.e of the
provided without warranty as described in the Revised BSD License. Trust Legal Provisions and are provided without warranty as described
in the Revised BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction
2. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 2 2. IANA Considerations
2.1. Sieve Actions Registration Template and Procedure . . . . 2 2.1. Sieve Actions Registration Template and Procedure
2.2. Initial Sieve Action Registry . . . . . . . . . . . . . . 3 2.2. Initial Sieve Action Registry
3. Security Considerations . . . . . . . . . . . . . . . . . . . 7 3. Security Considerations
4. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 4. References
4.1. Normative References . . . . . . . . . . . . . . . . . . 7 4.1. Normative References
4.2. Informative References . . . . . . . . . . . . . . . . . 7 4.2. Informative References
Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 9 Appendix A. Acknowledgements
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 Authors' Addresses
1. Introduction 1. Introduction
Sieve Email Filtering Language [RFC5228] is a popular email filtering The Sieve Email Filtering Language [RFC5228] is a popular email
language used upon final mail delivery. Popularity of Sieve resulted filtering language used upon final mail delivery. The popularity of
in a myriad of Sieve extensions that can interact with each other in Sieve resulted in a myriad of Sieve extensions that can interact with
wonderful and complex ways. There is currently no easy way to find each other in wonderful and complex ways. Currently, there is no
out all actions defined by Sieve extensions published in RFCs, which easy way to find out all actions defined by Sieve extensions
make it quite difficult for Sieve extension writers and Sieve published in RFCs, which makes it quite difficult for Sieve extension
implementation developers to forsee interactions between Sieve writers and Sieve implementation developers to foresee interactions
actions. between Sieve actions.
This document creates a registry of Sieve [RFC5228] actions in order This document creates a registry for Sieve [RFC5228] actions in order
to help developers and Sieve extension writers track interactions to help developers and Sieve extension writers track interactions
between different extensions. between different extensions.
2. IANA Considerations 2. IANA Considerations
2.1. Sieve Actions Registration Template and Procedure 2.1. Sieve Actions Registration Template and Procedure
IANA is requested to create a new registry for Sieve actions (see IANA has created the "Sieve Actions" registry (see Section 2.9 of
Section 2.9 of [RFC5228] for details on Sieve actions). Registration [RFC5228] for details on Sieve actions). Registration of actions
of both actions specified in IETF Stream RFCs and vendor specific specified in both RFCs and vendor-specific documentation is allowed
actions is allowed and encouraged. The registration template and encouraged. The registration template contains the following:
contains:
1. name of the action; Name: Name of the action
Description: Short description
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 is optional otherwise)
Capabilities: Name of one or more Sieve capabilities associated with
the Sieve action being registered
Action Interactions: Interactions with other Sieve actions (as
described in Section 2.10.1 of [RFC5228]), if any
Cancels Implicit Keep? Flag specifying whether the action cancels
the implicit keep (see Section 2.10.2 of [RFC5228])
Can Use With IMAP Events? Whether or not this action can be used
with IMAP events in Sieve [RFC6785]
Comments: Optional comment or comments
2. short description; The registration procedure is Expert Review [RFC8126]. The
designated expert only checks that the name of the action being
registered matches documentation, the description field is accurate,
the correct documents are referenced, and the list of relevant
documents is as complete as possible. The designated expert can't
reject a registration because of a personal dislike for the document
defining an action and should always err on the side of approving the
registration, even if documentation is not complete.
3. references: one or more documents describing the action and any The same registration procedure is used to add a new reference or to
significant updates to its definition (this field is required for change the description field of an existing registration.
actions described in RFCs and is optional otherwise);
4. name(s) of Sieve capabilit(ies) associated with the Sieve action 2.2. Initial Sieve Action Registry
being registered;
5. interactions with other Sieve actions (as described in The following registrations are used to initialize the "Sieve
Section 2.10.1 of [RFC5228]), if any; Actions" registry. Note that when the relevant "Action Interactions"
entry is marked "N/A", it means that there is no restriction on use
of the corresponding action with any other action; however,
implementors still need to read the one or more corresponding
specifications to determine if there are any surprising behaviors.
Also note that the "Comments" field of the IANA registration template
is omitted from these registrations, as none of them currently have
any comments.
6. flag specifying whether the action cancels the implicit keep (see Name: addheader
Section 2.10.2 of [RFC5228]); Description: Add a header field to the existing message header
References: [RFC5293]
Capabilities: "editheader"
Action Interactions: All subsequent tests and actions apply to the
altered message
Cancels Implicit Keep? No
Can Use with IMAP Events? Yes
7. whether or not this action can be used with IMAP events in Sieve Name: addflag
([RFC6785]); Description: Add IMAP flags to a list of IMAP flags that would be
set on the message if it gets delivered to a mailbox
References: [RFC5232] [RFC5229]
Capabilities: "imap4flags", "variables"
Action Interactions: N/A
Cancels Implicit Keep? No
Can Use with IMAP Events? Yes
8. optional comment. Name: convert
Description: Convert body parts from one MIME type to another
References: [RFC6558]
Capabilities: "convert"
Action Interactions: All subsequent tests and actions apply to the
altered message
Cancels Implicit Keep? No
Can Use with IMAP Events? Yes
Registration procedure for this registry is Expert Review. The Name: deleteheader
Designated Expert only checks that the name of the action being Description: Remove a header field from the existing message header
registered matches documentation, that the description field is References: [RFC5293]
accurate, that the correct documents are referenced and that the list Capabilities: "editheader"
of relevant documents is as complete as possible. The Designated Action Interactions: All subsequent tests and actions apply to the
Expert can’t reject a registration based on personal dislike of the altered message
document defining an action and should always err on the side of Cancels Implicit Keep? No
registering, even if documentation is not complete. Can Use with IMAP Events? Yes
Addition of a new reference to an existing registration or change to Name: discard
the description field goes through the same registration procedure as Description: Silently throw away the message
a new registration. References: [RFC5228]
Capabilities: N/A
Action Interactions: N/A
Cancels Implicit Keep? Yes
Can Use with IMAP Events? Yes
2.2. Initial Sieve Action Registry Name: enclose
Description: Enclose a message as an attachment to a new message
References: [RFC5703]
Capabilities: "enclose"
Action Interactions: All subsequent tests and actions except
"redirect" apply to the altered message
Cancels Implicit Keep? No
Can Use with IMAP Events? Yes
The following table is used to initialize the actions registry. Note Name: ereject
that when "Action Interactions" cell is empty it means that there is Description: Refuse delivery of the message
no restriction on use of the corresponding action with any other References: [RFC5429]
action, however implementors still need to read the corresponding Capabilities: "ereject"
specification(s) to see if there is any surprising behaviour. Also Action Interactions: This action is incompatible with the "vacation"
note that the "Comments" field of the registration template is action. Typically is not permitted with actions that cause mail
omitted from this table, as no registration currently have any delivery, such as "keep", "fileinto", and "redirect"
comment. Cancels Implicit Keep? Yes
Can Use with IMAP Events? No
+============+=============+==========+==============+============+========+=======+ Name: extracttext
|Name |Description |References|Capabilities |Action |Cancels |Can use| Description: Store text of a MIME part into a variable
| | | | |Interactions|Implicit|with | References: [RFC5703] [RFC5229]
| | | | | |Keep? |IMAP | Capabilities: "extracttext", "variables"
| | | | | | |Events?| Action Interactions: N/A
+============+=============+==========+==============+============+========+=======+ Cancels Implicit Keep? No
|addheader |Add a header |[RFC5293] |"editheader" |All |No |Yes | Can Use with IMAP Events? Yes
| |field to the | | |subsequent | | |
| |existing | | |tests and | | | Name: fileinto
| |message | | |actions | | | Description: Deliver the message into the specified mailbox
| |header | | |apply to the| | | References: [RFC5228] [RFC3894] [RFC5232] [RFC5490] [RFC9042]
| | | | |altered | | | [RFC8579]
| | | | |message | | | Capabilities: "fileinto", "copy", "imap4flags", "mailbox",
+------------+-------------+----------+--------------+------------+--------+-------+ "mailboxid", "special-use"
|addflag |Add IMAP |[RFC5232],|"imap4flags", | |No |Yes | Action Interactions: Use of :copy suppresses cancellation of
| |flags to a |[RFC5229] |"variables" | | | | implicit keep
| |list of IMAP | | | | | | Cancels Implicit Keep? Yes
| |flags that | | | | | | Can Use with IMAP Events? Yes
| |would be set | | | | | |
| |on the | | | | | | Name: keep
| |message if it| | | | | | Description: File the message into the user's main mailbox
| |gets | | | | | | References: [RFC5228] [RFC5232]
| |delivered to | | | | | | Capabilities: "imap4flags"
| |a mailbox | | | | | | Action Interactions: N/A
+------------+-------------+----------+--------------+------------+--------+-------+ Cancels Implicit Keep? Yes
|convert |Convert body |[RFC6558] |"convert" |All |No |Yes | Can Use with IMAP Events? Yes
| |parts from | | |subsequent | | |
| |one MIME type| | |tests and | | | Name: notify
| |to another | | |actions | | | Description: Send a notification to a user
| | | | |apply to the| | | References: [RFC5435] [RFC8580]
| | | | |altered | | | Capabilities: "enotify", "fcc"
| | | | |message | | | Action Interactions: N/A
+------------+-------------+----------+--------------+------------+--------+-------+ Cancels Implicit Keep? No
|deleteheader|Remove a |[RFC5293] |"editheader" |All |No |Yes | Can Use with IMAP Events? Yes
| |header field | | |subsequent | | |
| |from the | | |tests and | | | Name: redirect
| |existing | | |actions | | | Description: Send (forward) the message to another user
| |message | | |apply to the| | | References: [RFC5228] [RFC3894] [RFC6009] [RFC6134]
| |header | | |altered | | | Capabilities: "copy", "redirect-dsn", "redirect-deliverby",
| | | | |message | | | "extlists"
+------------+-------------+----------+--------------+------------+--------+-------+ Action Interactions: Use of :copy suppresses cancellation of
|discard |Silently |[RFC5228] | | |Yes |Yes | implicit keep
| |throw away | | | | | | Cancels Implicit Keep? Yes
| |the message | | | | | | Can Use with IMAP Events? Yes
+------------+-------------+----------+--------------+------------+--------+-------+
|enclose |Enclose a |[RFC5703] |"enclose" |All |No |Yes | Name: reject
| |message as an| | |subsequent | | | Description: Refuse delivery of the message
| |attachment to| | |tests and | | | References: [RFC5429]
| |a new message| | |actions, | | | Capabilities: "reject"
| | | | |except | | | Action Interactions: This action is incompatible with the "vacation"
| | | | |"redirect" | | | action. Typically is not permitted with actions that cause mail
| | | | |apply to the| | | delivery, such as "keep", "fileinto", and "redirect"
| | | | |altered | | | Cancels Implicit Keep? Yes
| | | | |message | | | Can Use with IMAP Events? No
+------------+-------------+----------+--------------+------------+--------+-------+
|ereject |Refuse |[RFC5429] |"ereject" |Incompatible|Yes |No | Name: removeflag
| |delivery of | | |with | | | Description: Remove IMAP flags from a list of IMAP flags that would
| |the message | | |"vacation" | | | be set on the message if it gets delivered to a mailbox
| | | | |action. | | | References: [RFC5232] [RFC5229]
| | | | |Typically is| | | Capabilities: "imap4flags", "variables"
| | | | |not | | | Action Interactions: N/A
| | | | |permitted | | | Cancels Implicit Keep? No
| | | | |with actions| | | Can Use with IMAP Events? Yes
| | | | |that cause | | |
| | | | |mail | | | Name: replace
| | | | |delivery, | | | Description: Replace a MIME part
| | | | |such as | | | References: [RFC5703]
| | | | |"keep", | | | Capabilities: "replace"
| | | | |"fileinto", | | | Action Interactions: All subsequent tests and actions except
| | | | |and | | | "redirect" apply to the altered message
| | | | |"redirect". | | | Cancels Implicit Keep? No
+------------+-------------+----------+--------------+------------+--------+-------+ Can Use with IMAP Events? Yes
|extracttext |Store text of|[RFC5703],|"extracttext",| |No |Yes |
| |a MIME part |[RFC5229] |"variables" | | | | Name: set
| |into a | | | | | | Description: Store a value in a variable
| |variable | | | | | | References: [RFC5229]
+------------+-------------+----------+--------------+------------+--------+-------+ Capabilities: "variables"
|fileinto |Deliver the |[RFC5228],|"fileinto", |Use of :copy|Yes |Yes | Action Interactions: N/A
| |message into |[RFC3894],|"copy", |suppresses | | | Cancels Implicit Keep? No
| |the specified|[RFC5232],|"imap4flags", |cancelation | | | Can Use with IMAP Events? Yes
| |mailbox |[RFC5490],|"mailbox", |of implicit | | |
| | |[RFC9042],|"mailboxid", |keep | | | Name: setflag
| | |[RFC8579] |"special-use" | | | | Description: Set IMAP system flags or keywords that would be set on
+------------+-------------+----------+--------------+------------+--------+-------+ the message if it gets delivered to a mailbox
|keep |File message |[RFC5228],|"imap4flags" | |Yes |Yes | References: [RFC5232] [RFC5229]
| |into the |[RFC5232] | | | | | Capabilities: "imap4flags", "variables"
| |user's main | | | | | | Action Interactions: N/A
| |mailbox | | | | | | Cancels Implicit Keep? No
+------------+-------------+----------+--------------+------------+--------+-------+ Can Use with IMAP Events? Yes
|notify |Send a |[RFC5435],|"enotify", | |No |Yes |
| |notification |[RFC8580] |"fcc" | | | | Name: vacation
| |to a user | | | | | | Description: Implement a vacation autoresponder
+------------+-------------+----------+--------------+------------+--------+-------+ References: [RFC5230] [RFC6131] [RFC8580]
|redirect |Send |[RFC5228],|"copy", |Use of :copy|Yes |Yes | Capabilities: "vacation", "vacation-seconds", "fcc"
| |(forward) the|[RFC3894],|"redirect- |suppresses | | | Action Interactions: This action is incompatible with "reject" and
| |message to |[RFC6009],|dsn", |cancelation | | | "ereject" actions
| |another user |[RFC6134] |"redirect- |of implicit | | | Cancels Implicit Keep? No
| | | |deliverby", |keep | | | Can Use with IMAP Events? No
| | | |"extlists" | | | |
+------------+-------------+----------+--------------+------------+--------+-------+
|reject |Refuse |[RFC5429] |"reject" |Incompatible|Yes |No |
| |delivery of | | |with | | |
| |the message | | |"vacation" | | |
| | | | |action. | | |
| | | | |Typically is| | |
| | | | |not | | |
| | | | |permitted | | |
| | | | |with actions| | |
| | | | |that cause | | |
| | | | |mail | | |
| | | | |delivery, | | |
| | | | |such as | | |
| | | | |"keep", | | |
| | | | |"fileinto", | | |
| | | | |and | | |
| | | | |"redirect". | | |
+------------+-------------+----------+--------------+------------+--------+-------+
|removeflag |Remove IMAP |[RFC5232],|"imap4flags", | |No |Yes |
| |flags from a |[RFC5229] |"variables" | | | |
| |list of IMAP | | | | | |
| |flags that | | | | | |
| |would be set | | | | | |
| |on the | | | | | |
| |message if it| | | | | |
| |gets | | | | | |
| |delivered to | | | | | |
| |a mailbox | | | | | |
+------------+-------------+----------+--------------+------------+--------+-------+
|replace |Replace a |[RFC5703] |"replace" |All |No |Yes |
| |MIME part | | |subsequent | | |
| | | | |tests and | | |
| | | | |actions, | | |
| | | | |except | | |
| | | | |"redirect" | | |
| | | | |apply to the| | |
| | | | |altered | | |
| | | | |message | | |
+------------+-------------+----------+--------------+------------+--------+-------+
|set |Store a value|[RFC5229] |"variables" | |No |Yes |
| |in a variable| | | | | |
+------------+-------------+----------+--------------+------------+--------+-------+
|setflag |Set IMAP |[RFC5232],|"imap4flags", | |No |Yes |
| |system flags |[RFC5229] |"variables" | | | |
| |or keywords | | | | | |
| |that would be| | | | | |
| |set on the | | | | | |
| |message if it| | | | | |
| |gets | | | | | |
| |delivered to | | | | | |
| |a mailbox | | | | | |
+------------+-------------+----------+--------------+------------+--------+-------+
|vacation |Vacation |[RFC5230],|"vacation", |Incompatible|No |No |
| |autoresponder|[RFC6131],|"vacation- |with | | |
| | |[RFC8580] |seconds", |"reject" and| | |
| | | |"fcc" |"ereject" | | |
| | | | |actions. | | |
+------------+-------------+----------+--------------+------------+--------+-------+
Table 1
3. Security Considerations 3. Security Considerations
The sole purpose of this document is to create a new IANA registry, The sole purpose of this document is to create the "Sieve Actions"
so it doesn't create new security considerations for Sieve registry; therefore, it doesn't create new security considerations
implementations. for Sieve implementations.
The new registry should help Sieve extension writers and Sieve The new registry should help Sieve extension writers and Sieve
implementors track interactions between different Sieve actions, so implementors track interactions between different Sieve actions;
it might improve quality of specifications and implementations, therefore, it might improve the quality of specifications and
including security aspects. implementations, including security aspects.
For the Security Considerations of particular actions, see the RFC(s) For security considerations related to particular actions, see the
referenced for that action in the Initial Sieve Action Registry in one or more RFCs referenced for the action in question in the "Sieve
Section 2.2. Actions" registry (Section 2.2).
4. References 4. References
4.1. Normative References 4.1. Normative References
[RFC5228] Guenther, P., Ed. and T. Showalter, Ed., "Sieve: An Email [RFC5228] Guenther, P., Ed. and T. Showalter, Ed., "Sieve: An Email
Filtering Language", RFC 5228, DOI 10.17487/RFC5228, Filtering Language", RFC 5228, DOI 10.17487/RFC5228,
January 2008, <https://www.rfc-editor.org/info/rfc5228>. January 2008, <https://www.rfc-editor.org/info/rfc5228>.
[RFC6785] Leiba, B., "Support for Internet Message Access Protocol [RFC6785] Leiba, B., "Support for Internet Message Access Protocol
skipping to change at page 8, line 47 skipping to change at line 371
[RFC6134] Melnikov, A. and B. Leiba, "Sieve Extension: Externally [RFC6134] Melnikov, A. and B. Leiba, "Sieve Extension: Externally
Stored Lists", RFC 6134, DOI 10.17487/RFC6134, July 2011, Stored Lists", RFC 6134, DOI 10.17487/RFC6134, July 2011,
<https://www.rfc-editor.org/info/rfc6134>. <https://www.rfc-editor.org/info/rfc6134>.
[RFC6558] Melnikov, A., Leiba, B., and K. Li, "Sieve Extension for [RFC6558] Melnikov, A., Leiba, B., and K. Li, "Sieve Extension for
Converting Messages before Delivery", RFC 6558, Converting Messages before Delivery", RFC 6558,
DOI 10.17487/RFC6558, March 2012, DOI 10.17487/RFC6558, March 2012,
<https://www.rfc-editor.org/info/rfc6558>. <https://www.rfc-editor.org/info/rfc6558>.
[RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for
Writing an IANA Considerations Section in RFCs", BCP 26,
RFC 8126, DOI 10.17487/RFC8126, June 2017,
<https://www.rfc-editor.org/info/rfc8126>.
[RFC8579] Bosch, S., "Sieve Email Filtering: Delivering to Special- [RFC8579] Bosch, S., "Sieve Email Filtering: Delivering to Special-
Use Mailboxes", RFC 8579, DOI 10.17487/RFC8579, May 2019, Use Mailboxes", RFC 8579, DOI 10.17487/RFC8579, May 2019,
<https://www.rfc-editor.org/info/rfc8579>. <https://www.rfc-editor.org/info/rfc8579>.
[RFC8580] Murchison, K. and B. Gondwana, "Sieve Extension: File [RFC8580] Murchison, K. and B. Gondwana, "Sieve Extension: File
Carbon Copy (FCC)", RFC 8580, DOI 10.17487/RFC8580, May Carbon Copy (FCC)", RFC 8580, DOI 10.17487/RFC8580, May
2019, <https://www.rfc-editor.org/info/rfc8580>. 2019, <https://www.rfc-editor.org/info/rfc8580>.
[RFC9042] Gondwana, B., Ed., "Sieve Email Filtering: Delivery by [RFC9042] Gondwana, B., Ed., "Sieve Email Filtering: Delivery by
MAILBOXID", RFC 9042, DOI 10.17487/RFC9042, June 2021, MAILBOXID", RFC 9042, DOI 10.17487/RFC9042, June 2021,
<https://www.rfc-editor.org/info/rfc9042>. <https://www.rfc-editor.org/info/rfc9042>.
Appendix A. Acknowledgements Appendix A. Acknowledgements
TBD. Thank you to Barry Leiba, Donald Eastlake, Yoshiro Yoneya, and Murray
Kucherawy for reviews and feedback on this document.
Authors' Addresses Authors' Addresses
Alexey Melnikov Alexey Melnikov
Isode Ltd Isode Ltd
14 Castle Mews 14 Castle Mews
Hampton Hampton
TW12 2NP TW12 2NP
United Kingdom United Kingdom
Email: Alexey.Melnikov@isode.com Email: Alexey.Melnikov@isode.com
Kenneth Murchison Kenneth Murchison
Fastmail US LLC Fastmail US LLC
1429 Walnut Street - Suite 1201 Suite 1201
1429 Walnut Street
Philadelphia, PA 19102 Philadelphia, PA 19102
United States of America United States of America
Email: murch@fastmailteam.com Email: murch@fastmailteam.com
 End of changes. 31 change blocks. 
257 lines changed or deleted 255 lines changed or added

This html diff was produced by rfcdiff 1.48.