datatracker.ietf.org
Sign in
Version 5.4.0, 2014-04-22
Report a bug

Sieve: An Email Filtering Language
RFC 5228

Document type: RFC - Proposed Standard (January 2008)
Obsoletes RFC 3028
Document stream: IETF
Last updated: 2013-03-02
Other versions: plain text, pdf, html

IETF State: (None)
Consensus: Unknown
Document shepherd: No shepherd assigned

IESG State: RFC 5228 (Proposed Standard)
Responsible AD: Lisa Dusseault
Send notices to: sieve-chairs@tools.ietf.org

Network Working Group                                   P. Guenther, Ed.
Request for Comments: 5228                                Sendmail, Inc.
Obsoletes: 3028                                        T. Showalter, Ed.
Category: Standards Track                                   January 2008

                   Sieve: An Email Filtering Language

Status of This Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Abstract

   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.

Guenther & Showalter        Standards Track                     [Page 1]
RFC 5228           Sieve: An Email Filtering Language       January 2008

Table of Contents

   1. Introduction ....................................................4
      1.1. Conventions Used in This Document ..........................4
      1.2. Example Mail Messages ......................................5
   2. Design ..........................................................6
      2.1. Form of the Language .......................................6
      2.2. Whitespace .................................................7
      2.3. Comments ...................................................7
      2.4. Literal Data ...............................................7
           2.4.1. Numbers .............................................7
           2.4.2. Strings .............................................8
                  2.4.2.1. String Lists ...............................9
                  2.4.2.2. Headers ....................................9
                  2.4.2.3. Addresses .................................10
                  2.4.2.4. Encoding Characters Using
                           "encoded-character" .......................10
      2.5. Tests .....................................................11
           2.5.1. Test Lists .........................................12
      2.6. Arguments .................................................12
           2.6.1. Positional Arguments ...............................12
           2.6.2. Tagged Arguments ...................................12
           2.6.3. Optional Arguments .................................13
           2.6.4. Types of Arguments .................................13
      2.7. String Comparison .........................................13
           2.7.1. Match Type .........................................14
           2.7.2. Comparisons across Character Sets ..................15
           2.7.3. Comparators ........................................15
           2.7.4. Comparisons against Addresses ......................16
      2.8. Blocks ....................................................17
      2.9. Commands ..................................................17
      2.10. Evaluation ...............................................18
           2.10.1. Action Interaction ................................18
           2.10.2. Implicit Keep .....................................18
           2.10.3. Message Uniqueness in a Mailbox ...................19
           2.10.4. Limits on Numbers of Actions ......................19
           2.10.5. Extensions and Optional Features ..................19
           2.10.6. Errors ............................................20
           2.10.7. Limits on Execution ...............................20
   3. Control Commands ...............................................21
      3.1. Control if ................................................21
      3.2. Control require ...........................................22
      3.3. Control stop ..............................................22
   4. Action Commands ................................................23
      4.1. Action fileinto ...........................................23
      4.2. Action redirect ...........................................23
      4.3. Action keep ...............................................24
      4.4. Action discard ............................................25

Guenther & Showalter        Standards Track                     [Page 2]

[include full document text]