Differences

This shows you the differences between two versions of the page.

Link to this comparison view

documents [2009/04/12 13:28]
avel ihave extension (RFC), sieve-in-xml (draft) and various other edits
documents [2020/02/08 22:15] (current)
avel2 Add RFC 8580
Line 8: Line 8:
    This document describes a language for filtering email messages at time of final delivery.  It is designed to be implementable on either a mail client or mail server.  It is meant to be extensible, simple, and independent of access protocol, mail architecture, and operating system.  It is suitable for running on a mail server where users may not be allowed to execute arbitrary programs, such as on black box Internet Message Access Protocol (IMAP) servers, as the base language has no variables, loops, or ability to shell out to external programs.    This document describes a language for filtering email messages at time of final delivery.  It is designed to be implementable on either a mail client or mail server.  It is meant to be extensible, simple, and independent of access protocol, mail architecture, and operating system.  It is suitable for running on a mail server where users may not be allowed to execute arbitrary programs, such as on black box Internet Message Access Protocol (IMAP) servers, as the base language has no variables, loops, or ability to shell out to external programs.
  
-==== Sieve Extensions ==== 
  
-  * [[http://www.ietf.org/rfc/rfc5229.txt|RFC 5173: Body Extension]]+==== ManageSieve Protocol ==== 
 + 
 +  * [[http://www.ietf.org/rfc/rfc5804.txt|RFC 5804: ManageSieve: A Protocol for Remotely Managing Sieve Scripts]] 
 +Message stores are commonly sealed servers so users cannot log into them, yet users must be able to update their scripts on them.  This document describes a protocol "ManageSieve" for securely managing Sieve scripts on a remote server.  This protocol allows a user to have  multiple scripts and also alerts a user to syntactically flawed scripts. 
 + 
 + 
 +==== Alternative Representations ==== 
 + 
 +  * [[http://www.ietf.org/rfc/rfc5784.txt|RFC 5784: Sieves and Display Directives in XML]] 
 +This document describes a way to represent Sieve email filtering language scripts in XML.  Representing Sieves in XML is intended not as an alternate storage format for Sieve but rather as a means to facilitate manipulation of scripts using XML tools. 
 + 
 + 
 +==== Sieve Language Extensions ==== 
 + 
 +  * [[http://www.ietf.org/rfc/rfc5173.txt|RFC 5173: Body Extension]]
 This document defines a new command that tests for the occurrence of one or more strings in the body of an email message. This document defines a new command that tests for the occurrence of one or more strings in the body of an email message.
  
Line 38: Line 51:
   * [[http://www.ietf.org/rfc/rfc3894.txt|RFC 3894: Copying Without Side Effects]]   * [[http://www.ietf.org/rfc/rfc3894.txt|RFC 3894: Copying Without Side Effects]]
 By default, an e-mail message that is processed by a Sieve script is saved in the owner's "inbox". By default, an e-mail message that is processed by a Sieve script is saved in the owner's "inbox".
-Actions such as "fileinto" and "redirect" cancel this default behavior. This document defines a new keyword parameter, ":copy", to be used +Actions such as "fileinto" and "redirect" cancel this default behavior. This document defines a new keyword parameter, ":copy", to be used with the Sieve "fileinto" and "redirect" actions.  Adding ":copy" to an action suppresses cancellation of the default "inbox" save.
-with the Sieve "fileinto" and "redirect" actions.  Adding ":copy" to an action suppresses cancellation of the default "inbox" save.+
  
   * [[http://www.ietf.org/rfc/rfc5183.txt|RFC 5183: Environment Extension]]   * [[http://www.ietf.org/rfc/rfc5183.txt|RFC 5183: Environment Extension]]
Line 59: Line 71:
 This is an extension for accessing mailbox and server annotations, checking for mailbox existence, and controlling mailbox creation on "fileinto" action. This is an extension for accessing mailbox and server annotations, checking for mailbox existence, and controlling mailbox creation on "fileinto" action.
  
 +  * [[http://www.ietf.org/rfc/rfc5703.txt|RFC 5703: MIME Part Tests, Iteration, Extraction, Replacement, and Enclosure]]
 +Extensions to the Sieve email filtering language to permit analysis and manipulation of the MIME body parts of an email message.
 +
 +  * [[http://www.ietf.org/rfc/rfc6609.txt|RFC 6609: Sieve Email Filtering: Include Extension]]
 +This extension permits users to include one Sieve script inside another.  This can make managing large scripts or multiple sets of scripts much easier, and allows a site and its users to build up libraries of scripts.  Users are able to include their own personal scripts or site-wide scripts.
 +
 +  * [[http://www.ietf.org/rfc/rfc6558.txt|RFC 6558 Sieve Extension for Converting Messages before Delivery]]
 +This document describes how the "CONVERT" IMAP extension can be used within the Sieve mail filtering language to transform messages before final delivery.
 +
 +  * [[http://www.ietf.org/rfc/rfc6785.txt|RFC 6785 Support for Internet Message Access Protocol (IMAP) Events in Sieve]]
 +Sieve defines an email filtering language that can, in principle, plug into any point in the processing of an email message.  As defined in the base specification, it plugs into mail delivery.  This document defines how Sieve can plug into points in IMAP where messages are created or changed, adding the option of user-defined or installation-defined filtering (or, with Sieve extensions, features such as notifications).
 +
 +   * [[http://www.ietf.org/rfc/rfc8580.txt|RFC 8580: Sieve Extension: File Carbon Copy (FCC)]]
 +The Sieve email filtering language provides a number of action commands, some of which can generate additional messages on behalf of the user.  This document defines an extension to such commands to allow a copy of any generated message to be filed into a target mailbox.
  
  
Line 72: Line 98:
 This document describes a profile of the Sieve extension for notifications, to allow notifications to be sent over the Extensible Messaging and Presence Protocol (XMPP), also known as Jabber. This document describes a profile of the Sieve extension for notifications, to allow notifications to be sent over the Extensible Messaging and Presence Protocol (XMPP), also known as Jabber.
  
 +   * [[http://www.ietf.org/rfc/rfc6468.txt|RFC 6468: Sieve Notification Mechanism: SIP Message]] 
 +This document describes a profile of the Sieve extension for notifications, to allow notifications to be sent over SIP MESSAGE.
  
  
 ===== Internet Drafts ===== ===== Internet Drafts =====
  
-Note that the following links refer to the [[http://ietfreport.isoc.org|IETFreport site]] by ISOC. The linked page will always show the latest version of the I-D in question, and provide diffs to previous versions.+   * [[http://tools.ietf.org/html/draft-ietf-sieve-regex|Regular Expression Extension]] 
 +The Sieve base specification defines so-called match types for tests: is, contains, and matches.  An "is" test requires an exact match, a "contains" test provides a substring match, and "matches" provides glob-style wildcards.  This document describes an extension to the Sieve language that provides a new match type for regular expression comparisons.
  
- 
-==== Sieve Extensions ==== 
- 
-   * [[http://ietfreport.isoc.org/idref/draft-ietf-sieve-regex|Regular Expression Extension]] 
-   * [[http://ietfreport.isoc.org/idref/draft-ietf-sieve-mime-loop|Sieve Extensions: MIME Tests, MIME Bodypart Iteration, Replacement and Enclosure]] 
-   * [[http://ietfreport.isoc.org/idref/draft-daboo-sieve-include/|Include Extension]] 
    * [[http://tools.ietf.org/html/draft-melnikov-sieve-external-lists|Externally Stored Lists]]    * [[http://tools.ietf.org/html/draft-melnikov-sieve-external-lists|Externally Stored Lists]]
-   * [[http://ietfreport.isoc.org/idref/draft-freed-sieve-in-xml|Sieves and display directives in XML]] +Sieve scripting language can be used for implementing of whitelisting, blacklisting and personal distribution listsCurrently this requires that all members of such lists be hardcoded in the script itself.  Whenever a member of such list is added or deleted, the script needs to be updated and possibly uploaded to a mail server. This document defines a Sieve extension for accessing externally stored mailing lists, i.elist whose members are stored externally to the script, for example in LDAP (RFC 4510), ACAP (RFC 2244or a relational database.
- +
- +
-==== Sieve-Related ==== +
- +
-   * [[http://ietfreport.isoc.org/idref/draft-ietf-lemonade-imap-sieve|Support for Sieve in Internet Message Access Protocol (IMAP4)]] (Lemonade WG) +
-   * [[http://ietfreport.isoc.org/idref/draft-ietf-sieve-managesieve/|ManageSieve, A Protocol for Remotely Managing Sieve Scripts]]+
  
  
 +===== Additional Links  ====
  
-===== Obsolete: Previous Versions of RFCs ====+Obsoleted RFCs:
  
   * [[http://www.ietf.org/rfc/rfc3028.txt|RFC 3028: Sieve: A Mail Filtering Language]], obsoleted by RFC 5228   * [[http://www.ietf.org/rfc/rfc3028.txt|RFC 3028: Sieve: A Mail Filtering Language]], obsoleted by RFC 5228
Line 103: Line 120:
   * [[http://www.ietf.org/rfc/rfc3685.txt|RFC 3685: Spamtest and VirusTest Extensions]], obsoleted by RFC 5235   * [[http://www.ietf.org/rfc/rfc3685.txt|RFC 3685: Spamtest and VirusTest Extensions]], obsoleted by RFC 5235
  
- +Other related pages and documents:
-===== Useful Links =====+
  
    * [[http://tools.ietf.org/wg/sieve/|Sieve WG Status Pages]]    * [[http://tools.ietf.org/wg/sieve/|Sieve WG Status Pages]]
    * [[http://tools.ietf.org/id/draft-*-sieve-|All drafts related to Sieve]]    * [[http://tools.ietf.org/id/draft-*-sieve-|All drafts related to Sieve]]
    * [[http://ietfreport.isoc.org/idref/rfc4790/|RFC 4790: Internet Application Protocol Collation Registry]]    * [[http://ietfreport.isoc.org/idref/rfc4790/|RFC 4790: Internet Application Protocol Collation Registry]]
 + and