draft-ietf-sieve-spamtestbis-04.txt   draft-ietf-sieve-spamtestbis-05.txt 
SIEVE Email Filtering Working C. Daboo SIEVE Email Filtering Working C. Daboo
Group June 25, 2006 Group July 13, 2006
Internet-Draft Internet-Draft
Expires: December 27, 2006 Expires: January 14, 2007
SIEVE Email Filtering: Spamtest and Virustest Extensions SIEVE Email Filtering: Spamtest and Virustest Extensions
draft-ietf-sieve-spamtestbis-04 draft-ietf-sieve-spamtestbis-05
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 34 skipping to change at page 1, line 34
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on December 27, 2006. This Internet-Draft will expire on January 14, 2007.
Copyright Notice Copyright Notice
Copyright (C) The Internet Society (2006). Copyright (C) The Internet Society (2006).
Abstract Abstract
The SIEVE email filtering language "spamtest", "spamtestplus" and The SIEVE email filtering language "spamtest", "spamtestplus" and
"virustest" extensions permit users to use simple, portable commands "virustest" extensions permit users to use simple, portable commands
for spam and virus tests on email messages. Each extension provides for spam and virus tests on email messages. Each extension provides
a new test using matches against numeric "scores". It is the a new test using matches against numeric "scores". It is the
responsibility of the underlying SIEVE implementation to do the responsibility of the underlying SIEVE implementation to do the
actual checks that result in proper input to the tests. actual checks that result in proper input to the tests.
Change History (to be removed prior to publication as an RFC) Change History (to be removed prior to publication as an RFC)
Changes from -04:
1. Relaxed capability requirement so that both spamtest and
spamtestplus can be present.
2. Tweaked text describing spam numeric value ranges.
Changes from -03: Changes from -03:
1. Clarified that there are two possible ways to test for not-spam. 1. Clarified that there are two possible ways to test for not-spam.
2. Clarified that 'not tested for xxx' also implies 'SIEVE could not 2. Clarified that 'not tested for xxx' also implies 'SIEVE could not
determine whether a test was done or not'. determine whether a test was done or not'.
Changes from -02: Changes from -02:
1. Changed formatting of tables. 1. Changed formatting of tables.
2. Fixed missing 2119 definitions. 2. Fixed missing 2119 definitions.
3. Moved reference to previous extension to informative. 3. Moved reference to previous extension to informative.
4. Minor text improvements. 4. Minor text improvements.
skipping to change at page 6, line 9 skipping to change at page 6, line 9
3.2. Test spamtest 3.2. Test spamtest
Usage: spamtest [":percent"] [COMPARATOR] [MATCH-TYPE] Usage: spamtest [":percent"] [COMPARATOR] [MATCH-TYPE]
<value: string> <value: string>
SIEVE implementations that implement the "spamtest" test use an SIEVE implementations that implement the "spamtest" test use an
identifier of either "spamtest" or "spamtestplus" for use with the identifier of either "spamtest" or "spamtestplus" for use with the
capability mechanism. capability mechanism.
If the ":percent" argument is not used with any spamtest test, then If the ":percent" argument is not used with any spamtest test, then
one of either the "spamtest" or "spamtestplus" capability identifiers one or both of "spamtest" or "spamtestplus" capability identifiers
MUST be present. MUST be present.
If the ":percent" argument is used with any spamtest test, then the If the ":percent" argument is used with any spamtest test, then the
"spamtestplus" capability identifier MUST be present. SIEVE "spamtestplus" capability identifier MUST be present. SIEVE
implementations MUST return an error if the ":percent" argument is implementations MUST return an error if the ":percent" argument is
used and "spamtestplus" is not specified. used and "spamtestplus" is not specified.
In the interests of brevity and clarity, scripts SHOULD NOT specify In the interests of brevity and clarity, scripts SHOULD NOT specify
both "spamtestplus" and "spamtest" capability identifiers together. both "spamtestplus" and "spamtest" capability identifiers together.
skipping to change at page 6, line 40 skipping to change at page 6, line 40
+----------+--------------------------------------------------------+ +----------+--------------------------------------------------------+
| spamtest | interpretation | | spamtest | interpretation |
| value | | | value | |
+----------+--------------------------------------------------------+ +----------+--------------------------------------------------------+
| 0 | message was not tested for spam, or SIEVE could not | | 0 | message was not tested for spam, or SIEVE could not |
| | determine whether any test was done | | | determine whether any test was done |
| | | | | |
| 1 | message was tested and is clear of spam | | 1 | message was tested and is clear of spam |
| | | | | |
| 2 - 9 | message was tested and has a varying likelihood of | | 2 - 9 | message was tested and may contain spam; a higher |
| | containing spam in increasing order | | | number indicates a greater likelihood of spam |
| | | | | |
| 10 | message was tested and definitely contains spam | | 10 | message was tested and definitely contains spam |
+----------+--------------------------------------------------------+ +----------+--------------------------------------------------------+
The underlying SIEVE implementation will map whatever spam check is The underlying SIEVE implementation will map whatever spam check is
done into this numeric range, as appropriate. done into this numeric range, as appropriate.
Examples: Examples:
require ["spamtest", "fileinto", require ["spamtest", "fileinto",
skipping to change at page 7, line 30 skipping to change at page 7, line 30
is filed into a mailbox called "INBOX.spam-trap" in the user's is filed into a mailbox called "INBOX.spam-trap" in the user's
mailstore. mailstore.
3.2.2. spamtest with :percent argument 3.2.2. spamtest with :percent argument
When the ":percent" argument is present in the "spamtest" test, the When the ":percent" argument is present in the "spamtest" test, the
normalized result string provided for the left hand side of the test normalized result string provided for the left hand side of the test
starts with a numeric value in the range "0" (zero) through "100", starts with a numeric value in the range "0" (zero) through "100",
with meanings summarized below: with meanings summarized below:
+----------+--------------------------------------------------------+ +----------+-------------------------------------------------------+
| spamtest | interpretation | | spamtest | interpretation |
| value | | | value | |
+----------+--------------------------------------------------------+ +----------+-------------------------------------------------------+
| 0 | message was tested and is clear of spam, or was not | | 0 | message was tested and is clear of spam, or was not |
| | tested for spam, or SIEVE could not determine whether | | | tested for spam, or SIEVE could not determine whether |
| | any test was done | | | any test was done |
| | | | | |
| 1 - 99 | message was tested and has a varying likelihood of | | 1 - 99 | message was tested and may contain spam; a higher |
| | containing spam in increasing order based on the | | | percentage indicates a greater likelihood of spam |
| | spamtest value |
| | | | | |
| 100 | message was tested and definitely contains spam | | 100 | message was tested and definitely contains spam |
+----------+--------------------------------------------------------+ +----------+-------------------------------------------------------+
The underlying SIEVE implementation will map whatever spam check is The underlying SIEVE implementation will map whatever spam check is
done into the numeric range, as appropriate. done into the numeric range, as appropriate.
To determine whether the message was tested for spam or not, two To determine whether the message was tested for spam or not, two
options can be used: options can be used:
a. a test with or without the ":percent" argument and ":count" match a. a test with or without the ":percent" argument and ":count" match
type, testing for the value "0" as described in Section 3.1. type, testing for the value "0" as described in Section 3.1.
skipping to change at page 13, line 29 skipping to change at page 13, line 29
This information should be added to the list of sieve extensions This information should be added to the list of sieve extensions
given on http://www.iana.org/assignments/sieve-extensions. given on http://www.iana.org/assignments/sieve-extensions.
6. References 6. References
6.1. Normative References 6.1. Normative References
[I-D.ietf-sieve-3028bis] [I-D.ietf-sieve-3028bis]
Showalter, T. and P. Guenther, "Sieve: An Email Filtering Showalter, T. and P. Guenther, "Sieve: An Email Filtering
Language", draft-ietf-sieve-3028bis-06 (work in progress), Language", draft-ietf-sieve-3028bis-07 (work in progress),
March 2006. June 2006.
[I-D.ietf-sieve-3431bis] [I-D.ietf-sieve-3431bis]
Segmuller, W. and B. Leiba, "Sieve Extension: Relational Segmuller, W. and B. Leiba, "Sieve Extension: Relational
Tests", draft-ietf-sieve-3431bis-04 (work in progress), Tests", draft-ietf-sieve-3431bis-04 (work in progress),
December 2005. December 2005.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
6.2. Informative References 6.2. Informative References
skipping to change at page 14, line 8 skipping to change at page 14, line 8
Newman, C., "Internet Application Protocol Collation Newman, C., "Internet Application Protocol Collation
Registry", draft-newman-i18n-comparator-12 (work in Registry", draft-newman-i18n-comparator-12 (work in
progress), June 2006. progress), June 2006.
[RFC3685] Daboo, C., "SIEVE Email Filtering: Spamtest and VirusTest [RFC3685] Daboo, C., "SIEVE Email Filtering: Spamtest and VirusTest
Extensions", RFC 3685, February 2004. Extensions", RFC 3685, February 2004.
Appendix A. Acknowledgments Appendix A. Acknowledgments
Thanks to Mark E. Mallett, Tony Hansen, Jutta Degener, Ned Freed, Thanks to Mark E. Mallett, Tony Hansen, Jutta Degener, Ned Freed,
Ashish Gawarikar, Alexey Melnikov and Nigel Swinson for comments and Ashish Gawarikar, Alexey Melnikov, Nigel Swinson and Aaron Stone for
corrections. comments and corrections.
Author's Address Author's Address
Cyrus Daboo Cyrus Daboo
Email: cyrus@daboo.name Email: cyrus@daboo.name
Intellectual Property Statement Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any The IETF takes no position regarding the validity or scope of any
 End of changes. 13 change blocks. 
17 lines changed or deleted 21 lines changed or added

This html diff was produced by rfcdiff 1.32. The latest version is available from http://www.levkowetz.com/ietf/tools/rfcdiff/