This is an old revision of the document!


Sieve Documents and Specifications

Standards Track Documents (RFCs)

Sieve Base Spec

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

This document defines a new command that tests for the occurrence of one or more strings in the body of an email message.

In advanced mail filtering rule sets, it is useful to keep state or configuration details across rules. This document updates the Sieve filtering language (RFC 5228) with an extension to support variables. The extension changes the interpretation of strings, adds an action to store data in variables, and supplies a new test so that the value of a string can be examined.

This document describes an extension to the Sieve email filtering language for an autoresponder similar to that of the Unix “vacation” command for replying to messages. Various safety features are included to prevent problems such as message loops.

This extension extends existing conditional tests in Sieve to allow relational operators. In addition to testing their content, it also allows for testing of the number of entities in header and envelope fields.

This document describes an extension to the Sieve mail filtering language for setting IMAP flags. The extension allows setting of both IMAP system flags and IMAP keywords.

On email systems that allow for 'subaddressing' or 'detailed addressing' (e.g., “ken+sieve@example.org”), it is sometimes desirable to make comparisons against these sub-parts of addresses. This document defines an extension to the Sieve Email Filtering Language that allows users to compare against the user and detail sub-parts of an address.

The Sieve email filtering language “spamtest”, “spamtestplus”, and “virustest” extensions permit users to use simple, portable commands for spam and virus tests on email messages. Each extension provides a new test using matches against numeric “scores”. It is the responsibility of the underlying Sieve implementation to do the actual checks that result in proper input to the tests.

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 with the Sieve “fileinto” and “redirect” actions. Adding ”:copy” to an action suppresses cancellation of the default “inbox” save.

The “environment” extension gives a Sieve script access to information about the Sieve interpreter itself, where it is running, and about any transport connection currently involved in transferring the message.

The “date” extension gives Sieve the ability to test date and time values in various ways. The “index” extension provides a means to limit header and address tests to specific instances of header fields when header fields are repeated.

Email header fields are a flexible and easy-to-understand means of communication between email processors. This extension enables Sieve scripts to interact with other components that consume or produce header fields by allowing the script to delete and add header fields.

The “reject” and “ereject” actions shall discard a message by refusing delivery during the SMTP transaction, if possible, or by sending a Message Disposition Notification [MDN] to the envelope sender along with an explanatory message.

This is an extension for accessing mailbox and server annotations, checking for mailbox existence, and controlling mailbox creation on “fileinto” action.

Sieve Extension for Notifications and Notification Mechanisms

Internet Drafts

Note that the following links refer to the 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.

Other Sieve Extensions Drafts

Sieve Management Protocol: ManageSieve

Other Drafts related to Sieve

Obsolete: Previous Versions of RFCs

Useful Links