< draft-tschofenig-sipping-spit-policy-01.txt   draft-tschofenig-sipping-spit-policy-02.txt >
SIPPING H. Tschofenig SIPPING H. Tschofenig
Internet-Draft Nokia Siemens Networks Internet-Draft Nokia Siemens Networks
Intended status: Standards Track D. Wing Intended status: Standards Track D. Wing
Expires: January 9, 2008 Cisco Expires: May 22, 2008 Cisco
H. Schulzrinne H. Schulzrinne
Columbia University Columbia University
T. Froment T. Froment
Alcatel-Lucent Alcatel-Lucent
G. Dawirs G. Dawirs
University of Namur University of Namur
July 8, 2007 November 19, 2007
A Document Format for Expressing Authorization Policies to tackle Spam A Document Format for Expressing Authorization Policies to tackle Spam
and Unwanted Communication for Internet Telephony and Unwanted Communication for Internet Telephony
draft-tschofenig-sipping-spit-policy-01.txt draft-tschofenig-sipping-spit-policy-02.txt
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 42 skipping to change at page 1, line 42
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 January 9, 2008. This Internet-Draft will expire on May 22, 2008.
Copyright Notice Copyright Notice
Copyright (C) The IETF Trust (2007). Copyright (C) The IETF Trust (2007).
Abstract Abstract
SPAM, defined as sending unsolicited messages to someone in bulk, SPAM, defined as sending unsolicited messages to someone in bulk,
might be a problem on SIP open-wide deployed networks. The might be a problem on SIP open-wide deployed networks. The
responsibility for filtering or blocking calls can belong to responsibility for filtering or blocking calls can belong to
skipping to change at page 3, line 18 skipping to change at page 3, line 18
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Generic Processing . . . . . . . . . . . . . . . . . . . . . . 5 3. Generic Processing . . . . . . . . . . . . . . . . . . . . . . 5
3.1. Structure of SPIT Authorization Documents . . . . . . . . 5 3.1. Structure of SPIT Authorization Documents . . . . . . . . 5
3.2. Rule Transport . . . . . . . . . . . . . . . . . . . . . . 5 3.2. Rule Transport . . . . . . . . . . . . . . . . . . . . . . 5
4. Condition Elements . . . . . . . . . . . . . . . . . . . . . . 6 4. Condition Elements . . . . . . . . . . . . . . . . . . . . . . 6
4.1. Identity . . . . . . . . . . . . . . . . . . . . . . . . . 6 4.1. Identity . . . . . . . . . . . . . . . . . . . . . . . . . 6
4.1.1. Acceptable Forms of Authentication . . . . . . . . . . 6 4.1.1. Acceptable Forms of Authentication . . . . . . . . . . 6
4.1.2. Computing a URI for the Sender . . . . . . . . . . . . 7 4.1.2. Computing a URI for the Sender . . . . . . . . . . . . 7
4.2. Sphere . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4.2. Sphere . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4.3. SPIT Handling . . . . . . . . . . . . . . . . . . . . . . 9 4.3. SPIT Handling . . . . . . . . . . . . . . . . . . . . . . 9
4.4. Media List . . . . . . . . . . . . . . . . . . . . . . . . 9 4.4. Presence Status . . . . . . . . . . . . . . . . . . . . . 9
4.5. Method List . . . . . . . . . . . . . . . . . . . . . . . 10 4.5. Time Period Condition . . . . . . . . . . . . . . . . . . 9
4.6. MIME List . . . . . . . . . . . . . . . . . . . . . . . . 10 5. Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.7. Presence Status . . . . . . . . . . . . . . . . . . . . . 10 5.1. Execute Action . . . . . . . . . . . . . . . . . . . . . . 11
4.8. Rule Deactivated . . . . . . . . . . . . . . . . . . . . . 10 5.2. Forward To . . . . . . . . . . . . . . . . . . . . . . . . 12
4.9. Time Period Condition . . . . . . . . . . . . . . . . . . 10 6. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
5. Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 6.1. Identity and Time-Based Policy . . . . . . . . . . . . . . 12
5.1. Execute Action . . . . . . . . . . . . . . . . . . . . . . 18 6.2. Extended Time-Based Policy . . . . . . . . . . . . . . . . 13
5.2. Forward To . . . . . . . . . . . . . . . . . . . . . . . . 18 6.3. Policy for triggering Captcha and Hashcash Challenges . . 14
6. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 7. XML Schema . . . . . . . . . . . . . . . . . . . . . . . . . . 16
7. XML Schema . . . . . . . . . . . . . . . . . . . . . . . . . . 20 8. XCAP USAGE . . . . . . . . . . . . . . . . . . . . . . . . . . 19
8. XCAP USAGE . . . . . . . . . . . . . . . . . . . . . . . . . . 27 8.1. Application Unique ID . . . . . . . . . . . . . . . . . . 19
8.1. Application Unique ID . . . . . . . . . . . . . . . . . . 27 8.2. XML Schema . . . . . . . . . . . . . . . . . . . . . . . . 19
8.2. XML Schema . . . . . . . . . . . . . . . . . . . . . . . . 27 8.3. Default Namespace . . . . . . . . . . . . . . . . . . . . 20
8.3. Default Namespace . . . . . . . . . . . . . . . . . . . . 27 8.4. MIME Type . . . . . . . . . . . . . . . . . . . . . . . . 20
8.4. MIME Type . . . . . . . . . . . . . . . . . . . . . . . . 27 8.5. Validation Constraints . . . . . . . . . . . . . . . . . . 20
8.5. Validation Constraints . . . . . . . . . . . . . . . . . . 27 8.6. Data Semantics . . . . . . . . . . . . . . . . . . . . . . 20
8.6. Data Semantics . . . . . . . . . . . . . . . . . . . . . . 27 8.7. Naming Conventions . . . . . . . . . . . . . . . . . . . . 20
8.7. Naming Conventions . . . . . . . . . . . . . . . . . . . . 28 8.8. Resource Interdependencies . . . . . . . . . . . . . . . . 20
8.8. Resource Interdependencies . . . . . . . . . . . . . . . . 28 8.9. Authorization Policies . . . . . . . . . . . . . . . . . . 20
8.9. Authorization Policies . . . . . . . . . . . . . . . . . . 28 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 20
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 28 9.1. Anti-SPIT Policy XML Schema Registration . . . . . . . . . 21
9.1. Anti-SPIT Policy XML Schema Registration . . . . . . . . . 28 9.2. Anti-SPIT Policy Namespace Registration . . . . . . . . . 21
9.2. Anti-SPIT Policy Namespace Registration . . . . . . . . . 28 9.3. XCAP Application Usage ID . . . . . . . . . . . . . . . . 21
9.3. XCAP Application Usage ID . . . . . . . . . . . . . . . . 29 10. Security Considerations . . . . . . . . . . . . . . . . . . . 21
10. Security Considerations . . . . . . . . . . . . . . . . . . . 29 11. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 22
11. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 29 12. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 22
12. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 29 13. References . . . . . . . . . . . . . . . . . . . . . . . . . . 22
13. References . . . . . . . . . . . . . . . . . . . . . . . . . . 30 13.1. Normative References . . . . . . . . . . . . . . . . . . . 22
13.1. Normative References . . . . . . . . . . . . . . . . . . . 30 13.2. Informative References . . . . . . . . . . . . . . . . . . 24
13.2. Informative References . . . . . . . . . . . . . . . . . . 31 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 26
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 34 Intellectual Property and Copyright Statements . . . . . . . . . . 28
Intellectual Property and Copyright Statements . . . . . . . . . . 36
1. Introduction 1. Introduction
The problem of SPAM for Internet Telephony (SPIT) is an imminent The problem of SPAM for Internet Telephony (SPIT) is an imminent
challenge and only the combination of several techniques can provide challenge and only the combination of several techniques can provide
a framework for dealing with unwanted communication, as stated in a framework for dealing with unwanted communication, as stated in
[I-D.jennings-sip-hashcash]. [I-D.jennings-sip-hashcash].
One important building block is to have a mechanism that can instruct One important building block is to have a mechanism that can instruct
SIP intermediaries to react differently on incoming requests based on SIP intermediaries to react differently on incoming requests based on
skipping to change at page 9, line 28 skipping to change at page 9, line 28
element provides such a condition capability. element provides such a condition capability.
The <spit-handling> condition evaluates to TRUE if any of its child The <spit-handling> condition evaluates to TRUE if any of its child
elements evaluate to TRUE, i.e., the results of the individual child elements evaluate to TRUE, i.e., the results of the individual child
element are combined using a logical OR. element are combined using a logical OR.
The <spit-handling> element MAY contain zero or more <challenge> The <spit-handling> element MAY contain zero or more <challenge>
elements. The <challenge> elements has an attribute 'result' that elements. The <challenge> elements has an attribute 'result' that
either contains "SUCCESS" or "FAILURE". either contains "SUCCESS" or "FAILURE".
4.4. Media List 4.4. Presence Status
The <media-list> condition evaluates to TRUE if any of its child
elements evaluate to TRUE, i.e., the results of the individual child
element are combined using a logical OR.
The <media-list> element SHOULD include either
o an <all-media-except> element or;
o a list of one or more >media> elements selected from the list of
possible media elements below.
List of possible media elements:
o The <message-session> media element indicating session based
messaging as defined in [I-D.ietf-simple-message-sessions];
o The <pager-mode-message> media element indicating pager mode
message requests as defined in [RFC3428];
o The <file-transfer> media element indicating file transfer as
defined in [I-D.ietf-mmusic-file-transfer-mech];
o The <audio> media element indicating a streaming media type as
defined in [RFC3840];
o The <video> media element indicating a streaming media type as
defined in [RFC3840];
o Any elements from any other namespaces defining a media element.
The <all-media-except> element MAY include a list of one or more
>media> elements selected from the list of possible >media> elements
above.
The <audio>, <video> and <message-session> elements:
o MAY include the <full-duplex> element indicating that media can be
exchanged in both directions simultaneously;
o MAY include the <half-duplex> element indicating that media can be
exchanged in only one direction at a time.
4.5. Method List
The <method-list> element contains one or more child elements
<method> in order to provide matching capabilities of any SIP method
invoked by the user can be used to filter incoming messages.
The <method-list> condition element evaluates to TRUE if any of its
child elements evaluate to TRUE, i.e., the results of the individual
child element are combined using a logical OR.
4.6. MIME List
The <mime-list> element contains one or more child <mime> child
elements
The <mime-list> condition element evaluates to TRUE if any of its
child elements evaluate to TRUE, i.e., the results of the individual
child element are combined using a logical OR.
4.7. Presence Status
This condition evaluates to TRUE when the called user's current This condition evaluates to TRUE when the called user's current
presence activity status is equal to the value in the <presence- presence activity status is equal to the value in the <presence-
status> element. Otherwise the condition evaluates to FALSE. status> element. Otherwise the condition evaluates to FALSE.
4.8. Rule Deactivated 4.5. Time Period Condition
The <rule-deactivated> condition always evaluates to FALSE. This can
be used to deactivate a rule, without loosing information. By
removing this condition the rule can be activated again.
4.9. Time Period Condition
The <time-period> element allows to make decisions based on the time, The <time-period> element allows to make decisions based on the time,
date and timezone. The <time> element may contain the following date and timezone. It defines an extended version of the <validity>
attributes: element.
tzid:
RFC 2445 [RFC2445] Time Zone Identifier
tzurl:
RFC 2445 [RFC2445] Time Zone URL The <time-period> element may contain the following attributes:
dtstart: dtstart:
Start of interval (RFC 2445 [RFC2445] DATE-TIME) Start of interval (RFC 2445 [RFC2445] DATE-TIME). This attribute
is MANDATORY.
dtend: dtend:
End of interval (RFC 2445 [RFC2445] DATE-TIME) End of interval (RFC 2445 [RFC2445] DATE-TIME). This attribute is
MANDATORY.
duration:
Length of interval (RFC 2445 [RFC2445] DURATION)
freq:
Frequency of recurrence ("secondly", "minutely", "hourly",
"daily", "weekly", "monthly", or "yearly")
interval:
How often the recurrence repeats
until:
Bound of recurrence (RFC 2445 [RFC2445] DATE-TIME)
count:
Number of occurrences of recurrence
bysecond:
List of seconds within a minute
byminute:
List of minutes within an hour
byhour:
List of hours of the day
byday: List of days of the week
bymonthday:
List of days of the month
byyearday:
List of days of the year
byweekno:
List of weeks of the year
bymonth:
List of months of the year
wkstv:
First day of the work week
bysetpos:
List of values within set of events specified
The <time-period> is based on the description in CPL [RFC3880] and
furthemore based closely on the specification of recurring intervals
of time in the Internet Calendaring and Scheduling Core Object
Specification (iCalendar COS), RFC 2445 [RFC2445].
This allows policies to be generated automatically from calendar
books. It also allows us to re-use the extensive existing work
specifying time intervals.
If future standards-track documents are published that update or
obsolete RFC 2445 [RFC2445], any changes or clarifications those
documents make to recurrence handling apply to CPL time-switches as
well.
An algorithm to determine whether an instant falls within a given
recurrence is given in Appendix A of RFC 3880 [RFC3880].
The <time-period> element takes two optional attributes, "tzid" and
"tzurl", both of which are defined in Sections 4.8.3.1 and 4.8.3.5 of
RFC 2445 [RFC2445]. The "tzid" is the identifying attribute by which
a time zone definition is referenced. If it begins with a forward
slash (solidus), it references a to-be-defined global time zone
registry; otherwise it is locally-defined at the server. The "tzurl"
attribute gives a network location from which an up-to-date VTIMEZONE
definition for the timezone can be retrieved.
While the content of the "tzid" attribute does not begin with a
forward slash are locally defined, it is RECOMMENDED that servers
support at least the naming scheme used by the Olson Time Zone
database [OTZ]. Examples of timezone databases that use the Olson
scheme are the zoneinfo files on most Unix-like systems, and the
standard Java TimeZone class.
Servers SHOULD resolve "tzid" and "tzurl" references to time zone timestart:
definitions at the time the policy is uploaded. They MAY
periodically refresh these resolutions to obtain the most up-to-date
definition of a time zone. If a "tzurl" becomes invalid, servers
SHOULD remember the most recent valid data retrieved from the URL.
If a script is uploaded with a "tzid" and "tzurl" which the CPL Start of time interval in a particular day. It is of the TIME
server does not recognize or cannot resolve, it SHOULD diagnose and data type as mentioned in Section 4.3.12 of RFC 2445 [RFC2445].
reject this at script upload time. If neither "tzid" nor "tzurl" are This attribute is OPTIONAL. The default value is 000000.
present, all non-UTC times within this time switch should be
interpreted as being "floating" times, i.e., that they are specified
in the local timezone of the CPL server.
Because of daylight-savings-time changes over the course of a timeend:
year, it is necessary to specify time switches in a given
timezone. UTC offsets are not sufficient, or a time-of-day
routing rule which held between 9 am and 5 pm in the eastern
United States would start holding between 8 am and 4 pm at the end
of October.
The developers of tools used creating policy documents should be End of time interval in a particular day. It is of the TIME data
careful to handle correctly the intervals when local time is type as mentioned in Section 4.3.12 of RFC 2445 [RFC2445]. This
discontinuous, at the beginning or end of daylight-savings time. attribute is OPTIONAL. The default value is 235959.
Note especially that some times may occur more than once when clocks
are set back. The algorithm in Appendix A of RFC 3880 [RFC3880] is
believed to handle this correctly.
The <time> element specifies a list of periods. They have two byweekday: List of days of the week. This attribute is OPTIONAL.
required attributes a:
o "dtstart", which specifies the beginning of the first period of
the list,
o and exactly one of "dtend" or "duration", which specify the ending The <time-period> is based on the description in CPL [RFC3880] but
time or the duration of the period, respectively. with a reduced feature set.
The "dtstart" and "dtend" attributes are formatted as iCalendar COS The "dtstart" and "dtend" attributes are formatted as iCalendar COS
DATE-TIME values, as specified in Section 4.3.5 of RFC 2445 DATE-TIME values, as specified in Section 4.3.5 of RFC 2445
[RFC2445]. Only floating or UTC times can be used with time zones. [RFC2445]. Only floating or UTC times can be used with time zones.
The "duration" attribute is given as an iCalendar COS DURATION The DATE-TIME is a subset of the corresponding syntaxes from ISO 8601
parameter, as specified in section 4.3.6 of RFC 2445 [RFC2445]. Both [ISO8601].
the DATE-TIME and the DURATION syntaxes are subsets of the
corresponding syntaxes from ISO 8601 [ISO8601].
For a recurring interval, the "duration" attribute MUST be small
enough such that subsequent intervals do not overlap. For non-
recurring intervals, durations of any positive length are permitted.
Zero-length and negative-length durations are not allowed.
If no other parameters are specified, a <time> element indicates only
a single period of time. More complicated sets of period intervals
are constructed as recurrences. A recurrence is specified by
including the "freq" attribute, which indicates the type of
recurrence rule. Parameters other than "dtstart", "dtend", and
"duration" SHOULD NOT be specified unless "freq" is present, though
servers SHOULD accept rules with such parameters present, and ignore
the other parameters.
The "freq" parameter takes one of the following values: "secondly",
to specify repeating periods based on an interval of a second or
more, "minutely", to specify repeating periods based on an interval
of a minute or more, "hourly", to specify repeating periods based on
an interval of an hour or more, "daily", to specify repeating periods
based on an interval of a day or more, "weekly", to specify repeating
periods based on an interval of a week or more, "monthly", to specify
repeating periods based on an interval of a month or more, and
"yearly", to specify repeating periods based on an interval of a year
or more. These values are not case-sensitive.
The "interval" attribute contains a positive integer representing how
often the recurrence rule repeats. The default value is "1", meaning
every second for a "secondly" rule, every minute for a "minutely"
rule, every hour for an "hourly" rule, every day for a "daily" rule,
every week for a "weekly" rule, every month for a "monthly" rule, and
every year for a "yearly" rule.
The "until" attribute defines an iCalendar COS DATE or DATE-TIME
value which bounds the recurrence rule in an inclusive manner. If
the value specified by "until" is synchronized with the specified
recurrence, this date or date-time becomes the last instance of the
recurrence. If specified as a date-time value, then it MUST be
specified in UTC time format. If not present, and the "count"
parameter is not also present, the recurrence is considered to repeat
forever.
The "count" attribute defines the number of occurrences at which to
range-bound the recurrence. The "dtstart" attribute counts as the
first occurrence. The "until" and "count" attribute MUST NOT occur
in the same <time> element.
The "bysecond" attribute specifies a comma-separated list of seconds
within a minute. Valid values are 0 to 59. The "byminute" attribute
specifies a comma-separated list of minutes within an hour. Valid
values are 0 to 59. The "byhour" attribute specifies a comma-
separated list of hours of the day. Valid values are 0 to 23.
The "byday" attribute specifies a comma-separated list of days of the
week. "MO" indicates Monday, "TU" indicates Tuesday, "WE" indicates
Wednesday, "TH" indicates Thursday, "FR" indicates Friday, "SA"
indicates Saturday, and "SU" indicates Sunday. These values are not
case-sensitive.
Each "byday" value can also be preceded by a positive (+n) or
negative (-n) integer. If present, this indicates the nth occurrence
of the specific day within the "monthly" or "yearly" recurrence. For
example, within a "monthly" rule, +1MO (or simply 1MO) represents the
first Monday within the month, whereas -1MO represents the last
Monday of the month. If an integer modifier is not present, it means
all days of this type within the specified frequency. For example,
within a "monthly" rule, MO represents all Mondays within the month.
The "bymonthday" attribute specifies a comma-separated list of days
of the month. Valid values are 1 to 31 or -31 to -1. For example,
-10 represents the tenth to the last day of the month.
The "byyearday" attribute specifies a comma-separated list of days of
the year. Valid values are 1 to 366 or -366 to -1. For example, -1
represents the last day of the year (December 31st) and -306
represents the 306th to the last day of the year (March 1st).
The "byweekno" attribute specifies a comma-separated list of ordinals
specifying weeks of the year. Valid values are 1 to 53 or -53 to -1.
This corresponds to weeks according to week numbering as defined in
ISO 8601 [ISO8601]. A week is defined as a seven day period,
starting on the day of the week defined to be the week start (see
"wkst"). Week number one of the calendar year is the first week
which contains at least four (4) days in that calendar year. This
parameter is only valid for "yearly" rules. For example, 3
represents the third week of the year.
Note: Assuming a Monday week start, week 53 can only occur when
January 1 is a Thursday or, for leap years, if January 1 is a
Wednesday.
The "bymonth" attribute specifies a comma-separated list of months of
the year. Valid values are 1 to 12.
The "wkst" attribute specifies the day on which the work week starts.
Valid values are "MO", "TU", "WE", "TH", "FR", "SA" and "SU". This
is significant when a "weekly" recurrence has an interval greater
than 1, and a "byday" parameter is specified. This is also
significant in a "yearly" recurrence when a "byweekno" parameter is
specified. The default value is "MO", following ISO 8601 [ISO8601].
The "bysetpos" attribute specifies a comma-separated list of values
which corresponds to the nth occurrence within the set of events
specified by the rule. Valid values are 1 to 366 or -366 to -1. It
MUST only be used in conjunction with another byxxx attribute. For
example, "the last work day of the month" could be represented as:
<time dtstart="19970105T083000"
freq="monthly"
byday="MO,TU,WE,TH,FR"
bysetpos="-1"
/>
Each "bysetpos" value can include a positive (+n) or negative (-n)
integer. If present, this indicates the nth occurrence of the
specific occurrence within the set of events specified by the rule.
If byxxx attribute values are found which are beyond the available
scope (i.e., bymonthday="30" in February), they are simply ignored.
Byxxx attribute modify the recurrence in some manner. Byxxx rule The "timestart" specifes a time value to indicate the beginning of
parts for a period of time which is the same or greater than the every day. The default value is 000000 representing the beginning of
frequency generally reduce or limit the number of occurrences of the the day.
recurrence generated. For example, freq="daily" bymonth="1" reduces
the number of recurrence instances from all days (if the "bymonth"
attribute is not present) to all days in January. Byxxx attribute
for a period of time less than the frequency generally increase or
expand the number of occurrences of the recurrence. For example,
freq="yearly" bymonth="1,2" increases the number of days within the
yearly recurrence set from 1 (if "bymonth" parameter is not present)
to 2.
If multiple Byxxx attribute are specified, then after evaluating the The "timeend" specifes a time value to indicate the end of every day.
specified "freq" and "interval" attribute, the Byxxx attribute are The default value is 235959 representing the end of the day.
applied to the current set of evaluated occurrences in the following
order: "bymonth", "byweekno", "byyearday", "bymonthday", "byday",
"byhour", "byminute", "bysecond", and "bysetpos"; then "count" and
"until" are evaluated.
Here is an example of evaluating multiple Byxxx attribute. The "byweekday" attribute specifies a comma-separated list of days of
the week. "MO" indicates Monday, "TU" indicates Tuesday, "WE"
indicates Wednesday, "TH" indicates Thursday, "FR" indicates Friday,
"SA" indicates Saturday, and "SU" indicates Sunday. These values are
not case-sensitive.
<time dtstart="19970105T083000" Here is an example of the time-period element.
duration="10M"
freq="yearly"
interval="2"
bymonth="1"
byday="SU"
byhour="8,9"
byminute="30">
/>
First, the interval="2" would be applied to freq="yearly" to arrive <time dtstart="20070112T083000"
at "every other year." Then, bymonth="1" would be applied to arrive timestart="0800"
at "every January, every other year." Then, byday="SU" would be timeend="1800"
applied to arrive at "every Sunday in January, every other year." byweekday="MO,TU,WE,TH,FR"
Then, byhour="8,9" would be applied to arrive at "every Sunday in dtend="20080101T183000"/>
January at 8 AM and 9 AM, every other year." Then, byminute="30"
would be applied to arrive at "every Sunday in January at 8:30 AM and
9:30 AM, every other year." Then the second is derived from
"dtstart" to end up in "every Sunday in January from 8:30:00 AM to
8:40:00 AM, and from and 9:30:00 AM to 9:40:00 AM, every other year."
Similarly, if the "byminute", "byhour", "byday", "bymonthday", or
"bymonth" parameter were missing, the appropriate minute, hour, day,
or month would have been retrieved from the "dtstart" parameter.
The iCalendar COS RDATE, EXRULE, and EXDATE recurrence rules are not The following aspects need to be considered:
specifically mapped to components of the <time-period> element.
Equivalent functionality to the exception rules can be attained by
using the ordering of rules to exclude times using earlier rules.
Section 4.4.1 of [RFC3880] provides some background of the 1) By default, if all the OPTIONAL parameters are missing, <time-
differences to iCalendar and implementation issues. period> element is valid for the whole duration from 'dtstart' to
'dtend'.
2) The 'byweekday' attribute comes into effect only if the period
from 'dtstart' till 'dtstart' is long enough to accommodate the
specified values, else they are just neglected.
3) If the values of the 'byweekday' attribute values do not
correspond to the expected domain, they are simply ignored.
4) Only a single 'byweekday' attribute MUST be listed in a <time>
element.
5. Actions 5. Actions
As stated in [RFC4474], conditions are the 'if'-part of rules, As stated in [RFC4474], conditions are the 'if'-part of rules,
whereas actions and transformations form their 'then'-part. The whereas actions and transformations form their 'then'-part. The
actions and transformations parts of a rule determine which actions and transformations parts of a rule determine which
operations the proxy server MUST execute on receiving a connection operations the proxy server MUST execute on receiving a connection
request attempt that matches all conditions of this rule. Actions request attempt that matches all conditions of this rule. Actions
and transformations permit certain operations to be executed. and transformations permit certain operations to be executed.
skipping to change at page 18, line 35 skipping to change at page 12, line 8
etc. can be executed. Each mechanism needs to register a URI and the etc. can be executed. Each mechanism needs to register a URI and the
value of URI is placed in this field. value of URI is placed in this field.
[Editior's Note: For editorial purposes the schema currently lists a [Editior's Note: For editorial purposes the schema currently lists a
few examples but in a non-URI format. When solution documents define few examples but in a non-URI format. When solution documents define
these URIs then they can be used with this document.] these URIs then they can be used with this document.]
5.2. Forward To 5.2. Forward To
The action supported in this section is forwarding of calls with the The action supported in this section is forwarding of calls with the
<forward-to> element that contains the following child elements: <forward-to> element that contains the following child element
<target> that specifies the address of the forwarding rule. It
target: should be a valid SIP URI (RFC 3261 [RFC3261]) or TEL URI (RFC 3966
[RFC3966]).
Specifies the address of the forwarding rule. It should be a
valid SIP URI (RFC 3261 [RFC3261]) or TEL URI (RFC 3966
[RFC3966]).
6. Examples 6. Examples
This section provides a few examples for policy rules defined in this This section provides a few examples for policy rules defined in this
document. The example policy shows three rules with the rule id r1 - document.
6.1. Identity and Time-Based Policy
The following policy shows a white list with an identity condition
and a simple time-based condition.
<?xml version="1.0" encoding="UTF-8"?>
<ruleset xmlns="urn:ietf:params:xml:ns:common-policy"
xmlns:spit="urn:ietf:params:xml:ns:spit-policy"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<rule id="AA56i09">
<conditions>
<identity>
<one id="sip:bob@example.com"/>
<many>
<except domain="example.com"/>
<except domain="example.org"/>
<except id="sip:alice@bad.example.net"/>
<except id="sip:bob@good.example.net"/>
<except id="tel:+1-212-555-1234" />
<except id="sip:alice@example.com"/>
</many>
</identity>
<sphere value="work"/>
<validity>
<from>2003-12-24T17:00:00+01:00</from>
<until>2003-12-24T19:00:00+01:00</until>
</validity>
</conditions>
<actions>
<spit:handling>allow</spit:handling>
</actions>
<transformations/>
</rule>
</ruleset>
6.2. Extended Time-Based Policy
The following policy shows the usage of the <time-period> element to
forward calls to an answering machine during the night.
<?xml version="1.0" encoding="UTF-8"?>
<ruleset xmlns="urn:ietf:params:xml:ns:common-policy"
xmlns:spit="urn:ietf:params:xml:ns:spit-policy"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<rule id="AA56i10">
<conditions>
<spit:time-period>
<time dtstart="19970105T083000"
timestart="2200"
timeend="0800"
byweekday="MO,TU,WE,TH,FR"
dtend="19991230T183000"/>
</spit:time-period>
</conditions>
<actions>
<spit:forward-to>
<target>sip:answering-machine@home.foo-bar.com
</target>
</spit:forward-to>
</actions>
<transformations/>
</rule>
</ruleset>
6.3. Policy for triggering Captcha and Hashcash Challenges
The following example policy shows three rules with the rule id r1 -
r4. r4.
Rule r1 matches for authenticated identities from the domain Rule r1 matches for authenticated identities from the domain
"example.com", "example.org" and the single identity "example.com", "example.org" and the single identity
"sip:bob@good.example.net". For these conditions SIP messages are "sip:bob@good.example.net". For these conditions SIP messages are
forwarded to the SIP UA as indicated with the <handling> element. forwarded to the SIP UA as indicated with the <handling> element.
Rule r2 indicates that for SIP messages where the identity has not Rule r2 indicates that for SIP messages where the identity has not
been verifiable the hash cash mechanism been verifiable the hash cash mechanism
[I-D.jennings-sip-hashcash] and CAPTCHAs [I-D.jennings-sip-hashcash] and CAPTCHAs
skipping to change at page 21, line 20 skipping to change at page 17, line 4
elementFormDefault="qualified" elementFormDefault="qualified"
attributeFormDefault="unqualified"> attributeFormDefault="unqualified">
<!-- This import brings in the XML language attribute xml:lang--> <!-- This import brings in the XML language attribute xml:lang-->
<xs:import namespace="http://www.w3.org/XML/1998/namespace" <xs:import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd"/> schemaLocation="http://www.w3.org/2001/xml.xsd"/>
<xs:import namespace="urn:ietf:params:xml:ns:common-policy"/> <xs:import namespace="urn:ietf:params:xml:ns:common-policy"/>
<!-- Conditions --> <!-- Conditions -->
<xs:element name="method-list">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="xs:anyType">
<xs:sequence>
<xs:element name="method" type="spit:method-type"
minOccurs="0" maxOccurs="unbounded"/>
<xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="spit-handling"> <xs:element name="spit-handling">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="challenge" type="spit:challenge-type" <xs:element name="challenge" type="spit:challenge-type"
minOccurs="0" maxOccurs="unbounded"/> minOccurs="0" maxOccurs="unbounded"/>
<xs:any namespace="##other" processContents="lax" <xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/> minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence> </xs:sequence>
<xs:attribute name="result" use="required"> <xs:attribute name="result" use="required">
<xs:simpleType> <xs:simpleType>
<xs:restriction base="xs:string"> <xs:restriction base="xs:string">
<xs:enumeration value="SUCCESS"/> <xs:enumeration value="SUCCESS"/>
<xs:enumeration value="FAILURE"/> <xs:enumeration value="FAILURE"/>
</xs:restriction> </xs:restriction>
</xs:simpleType> </xs:simpleType>
</xs:attribute>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="mime-list">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="xs:anyType">
<xs:sequence>
<xs:element name="mime" type="spit:mime-type"
minOccurs="0" maxOccurs="unbounded"/>
<xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="media-list">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="xs:anyType">
<xs:sequence>
<xs:element name="media" type="spit:media-type"
minOccurs="0" maxOccurs="unbounded"/>
<xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="rule-deactivated"
type="spit:empty-element-type"/>
<xs:complexType name="empty-element-type"/>
<xs:element name="presence-status" <xs:element name="presence-status"
type="spit:presence-status-activity-type"/> type="spit:presence-status-activity-type"/>
<xs:simpleType name="presence-status-activity-type"> <xs:simpleType name="presence-status-activity-type">
<xs:restriction base="xs:string"/> <xs:restriction base="xs:string"/>
</xs:simpleType> </xs:simpleType>
<xs:simpleType name="media-type">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="challenge-type"> <xs:simpleType name="challenge-type">
<xs:restriction base="xs:string"/> <xs:restriction base="xs:string"/>
</xs:simpleType> </xs:simpleType>
<xs:simpleType name="mime-type">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="method-type">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:element name="time-period" type="spit:TimeSwitchType"/> <xs:element name="time-period" type="spit:TimeSwitchType"/>
<xs:simpleType name="YearDayType">
<xs:union>
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="-366"/>
<xs:maxInclusive value="-1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="1"/>
<xs:maxExclusive value="366"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
<xs:simpleType name="DayType">
<xs:restriction base="xs:NMTOKEN">
<xs:pattern value="[m|M][o|O]"/>
<xs:pattern value="[t|T][u|U]"/>
<xs:pattern value="[w|W][e|E]"/>
<xs:pattern value="[t|T][h|H]"/>
<xs:pattern value="[f|F][r|R]"/>
<xs:pattern value="[s|S][a|A]"/>
<xs:pattern value="[s|S][u|U]"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TimeType"> <xs:complexType name="TimeType">
<xs:annotation> <xs:annotation>
<xs:documentation>Exactly one of the two attributes <xs:documentation>Exactly one of the two attributes
"dtend" and "duration" must occur. None of "dtend" and "duration" must occur. None of
the attributes following freq are meaningful the attributes following freq are meaningful
unless freq appears. </xs:documentation> unless freq appears. </xs:documentation>
</xs:annotation> </xs:annotation>
<xs:attribute name="dtstart" type="xs:string" use="required"> <xs:attribute name="dtstart" type="xs:string" use="required">
<xs:annotation> <xs:annotation>
<xs:documentation>RFC 2445 DATE-TIME</xs:documentation> <xs:documentation>RFC 2445 DATE-TIME</xs:documentation>
</xs:annotation> </xs:annotation>
</xs:attribute> </xs:attribute>
<xs:attribute name="dtend" type="xs:string" use="optional">
<xs:annotation> <xs:attribute name="dtend" type="xs:string" use="required">
<xs:documentation>RFC 2445 DATE-TIME</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="duration" type="xs:string" use="optional">
<xs:annotation>
<xs:documentation>RFC 2445 DURATION</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="freq" type="spit:FreqType" use="optional"/>
<xs:attribute name="interval"
type="xs:positiveInteger" default="1"/>
<xs:attribute name="until" type="xs:string" use="optional">
<xs:annotation> <xs:annotation>
<xs:documentation>RFC 2445 DATE-TIME</xs:documentation> <xs:documentation>RFC 2445 DATE-TIME</xs:documentation>
</xs:annotation> </xs:annotation>
</xs:attribute> </xs:attribute>
<xs:attribute name="count"
type="xs:positiveInteger" use="optional"/> <xs:attribute name="timestart" type="xs:string" use="optional"
<xs:attribute name="bysecond" default="000000">
type="xs:string" use="optional">
<xs:annotation> <xs:annotation>
<xs:documentation>Comma-separated list of <xs:documentation>RFC 2445 TIME. It represents time in hours,
seconds within a minute. Valid values are 0 to minutes and seconds and denotes the beginning of the day
59.</xs:documentation> time. The default value is 000000, denoting the
beginning of the day. </xs:documentation>
</xs:annotation> </xs:annotation>
</xs:attribute> </xs:attribute>
<xs:attribute name="byminute"
type="xs:string" use="optional"> <xs:attribute name="timeend" type="xs:string" use="optional"
default="235959">
<xs:annotation> <xs:annotation>
<xs:documentation>Comma-separated list of <xs:documentation>RFC 2445 TIME. It represents time in
minutes within an hour. Valid values are 0 to hours, minutes and seconds and denotes the
59.</xs:documentation> end of the day time. The default value is 235959,
denoting the end of the day. </xs:documentation>
</xs:annotation> </xs:annotation>
</xs:attribute> </xs:attribute>
<xs:attribute name="byhour" type="xs:string" use="optional">
<xs:annotation>
<xs:documentation>Comma-separated list of
hours of the day. Valid values are 0 to
23.</xs:documentation> <xs:attribute name="byweekday" type="xs:string" use="optional">
</xs:annotation>
</xs:attribute>
<xs:attribute name="byday" type="xs:string" use="optional">
<xs:annotation> <xs:annotation>
<xs:documentation>Comma-separated list of days of the week. <xs:documentation>Comma-separated list of days of the week.
Valid values are "MO", "TU", Valid values are "MO", "TU",
"WE", "TH", "FR", "SA" and "SU". These values are "WE", "TH", "FR", "SA" and "SU". These values are
not case-sensitive. Each can be preceded not case-sensitive. Each can be preceded
by a positive (+n) or negative (-n) integer. by a positive (+n) or negative (-n) integer.
</xs:documentation> </xs:documentation>
</xs:annotation> </xs:annotation>
</xs:attribute> </xs:attribute>
<xs:attribute name="bymonthday" type="xs:string" use="optional">
<xs:annotation>
<xs:documentation>Comma-separated list of days of the month.
Valid values are 1 to 31 or -31
to -1.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="byyearday" type="xs:string" use="optional">
<xs:annotation>
<xs:documentation>Comma-separated list of days of the year.
Valid values are 1 to 366 or
-366 to -1.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="byweekno" type="xs:string" use="optional">
<xs:annotation>
<xs:documentation>Comma-separated list of ordinals
specifying weeks of the year. Valid
values are 1 to 53 or -53 to -1.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="bymonth" type="xs:string" use="optional">
<xs:annotation>
<xs:documentation>Comma-separated list of months of the year.
Valid values are 1 to
12.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="wkst" type="spit:DayType" default="MO"/>
<xs:attribute name="bysetpos" type="spit:YearDayType"/>
<xs:anyAttribute namespace="##any" processContents="lax"/> <xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType> </xs:complexType>
<xs:simpleType name="TZIDType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="TZURLType">
<xs:restriction base="xs:anyURI"/>
</xs:simpleType>
<xs:complexType name="TimeSwitchType"> <xs:complexType name="TimeSwitchType">
<xs:complexContent> <xs:complexContent>
<xs:restriction base="xs:anyType"> <xs:restriction base="xs:anyType">
<xs:sequence> <xs:sequence>
<xs:element name="time" type="spit:TimeType" <xs:element name="time" type="spit:TimeType"
minOccurs="1" maxOccurs="unbounded"/> minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence> </xs:sequence>
<xs:attribute name="tzid" type="spit:TZIDType"/>
<xs:attribute name="tzurl" type="spit:TZURLType"/>
</xs:restriction> </xs:restriction>
</xs:complexContent> </xs:complexContent>
</xs:complexType> </xs:complexType>
<xs:simpleType name="FreqType">
<xs:restriction base="xs:NMTOKEN">
<xs:pattern value="[s|S][e|E][c|C][o|O][n|N][d|D][l|L][y|Y]"/>
<xs:pattern value="[m|M][i|I][n|N][u|U][t|T][e|E][l|L][y|Y]"/>
<xs:pattern value="[h|H][o|O][u|U][r|R][l|L][y|Y]"/>
<xs:pattern value="[d|D][a|A][i|I][l|L][y|Y]"/>
<xs:pattern value="[w|W][e|E][e|E][k|K][l|L][y|Y]"/>
<xs:pattern value="[m|M][o|N][n|N][t|T][h|H][l|L][y|Y]"/>
<xs:pattern value="[y|Y][e|E][a|A][r|R][l|L][y|Y]"/>
</xs:restriction>
</xs:simpleType>
<!-- Action --> <!-- Action -->
<xs:element name="execute"> <xs:element name="execute">
<xs:simpleType> <xs:simpleType>
<xs:restriction base="xs:string"> <xs:restriction base="xs:string">
</xs:restriction> </xs:restriction>
</xs:simpleType> </xs:simpleType>
</xs:element> </xs:element>
<xs:element name="forward-to" type="spit:forward-to-type"/> <xs:element name="forward-to" type="spit:forward-to-type"/>
<xs:complexType name="forward-to-type"> <xs:complexType name="forward-to-type">
<xs:sequence> <xs:sequence>
<xs:element name="target" type="spit:target-type"/> <xs:element name="target" type="spit:target-type"/>
<xs:any namespace="##other" processContents="lax" <xs:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/> minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
skipping to change at page 28, line 33 skipping to change at page 21, line 8
of such policies is outside the scope of this document. of such policies is outside the scope of this document.
9. IANA Considerations 9. IANA Considerations
There are several IANA considerations associated with this There are several IANA considerations associated with this
specification. specification.
9.1. Anti-SPIT Policy XML Schema Registration 9.1. Anti-SPIT Policy XML Schema Registration
URI: urn:ietf:params:xml:schema:spit-policy URI: urn:ietf:params:xml:schema:spit-policy
Registrant Contact: Hannes Tschofenig Registrant Contact: Hannes Tschofenig (hannes.tschofenig@nsn.com).
(hannes.tschofenig@siemens.com).
XML: The XML schema to be registered is contained in Section 7. Its XML: The XML schema to be registered is contained in Section 7. Its
first line is first line is
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
and its last line is and its last line is
</xs:schema> </xs:schema>
9.2. Anti-SPIT Policy Namespace Registration 9.2. Anti-SPIT Policy Namespace Registration
URI: urn:ietf:params:xml:ns:spit-policy URI: urn:ietf:params:xml:ns:spit-policy
Registrant Contact: Hannes Tschofenig Registrant Contact: Hannes Tschofenig (hannes.tschofenig@nsn.com).
(hannes.tschofenig@siemens.com).
XML: XML:
9.3. XCAP Application Usage ID 9.3. XCAP Application Usage ID
This section registers an XCAP Application Usage ID (AUID) according This section registers an XCAP Application Usage ID (AUID) according
to the IANA procedures defined in [RFC4825]. to the IANA procedures defined in [RFC4825].
Name of the AUID: spit-policy Name of the AUID: spit-policy
Description: The rules defined in this documents describe ways to Description: The rules defined in this documents describe ways to
skipping to change at page 30, line 4 skipping to change at page 22, line 18
We would like to thank Mayutan Arumaithurai We would like to thank Mayutan Arumaithurai
(mayutan.arumaithurai@gmail.com) for his work on this document. (mayutan.arumaithurai@gmail.com) for his work on this document.
12. Acknowledgments 12. Acknowledgments
We would like to thank We would like to thank
o Jonathan Rosenberg, David Schwartz and Dan York for sharing their o Jonathan Rosenberg, David Schwartz and Dan York for sharing their
thoughts with us before the first version of this document was thoughts with us before the first version of this document was
written. written.
o Miguel Garcia and Remi Denis-Courmont for their review comments to o Miguel Garcia and Remi Denis-Courmont for their review comments to
the -00 version. the -00 version.
o Mayutan Arumaithurai for his editing help with the -00 version. o Mayutan Arumaithurai for his editing help with the -00 version.
o Poikselka Miikka, Isomaki Markus, Jari Mutikainen, Jean-Marie o Poikselka Miikka, Isomaki Markus, Jari Mutikainen, Jean-Marie
Stupka, and Antti Laurila for their comments and for pointing us Stupka, and Antti Laurila for their comments and for pointing us
to specifications outside the IETF. to specifications outside the IETF.
This document intentionally re-uses concept from existing documents. This document intentionally re-uses concept from existing documents.
In particular, we reused In particular, we reused
o ideas from SIEVE [RFC3028], a mail filtering language. o ideas from SIEVE [RFC3028], a mail filtering language.
o the text in Section 4.9 from the Call Processing Language (CPL) o the text in Section 4.5 is based on the description in the Call
[RFC3880]. The difference between CPL and this document is that Processing Language (CPL) [RFC3880]. In general, the difference
CPL has a more procedural approach, while this proposal is between CPL and this document is that CPL has a more procedural
matching-based. approach, while this proposal is matching-based. It is obviously
possible to enhance CPL as well to provide the functionality
offered in this document.
o text in Section 4.1 from [I-D.ietf-simple-presence-rules]. o text in Section 4.1 from [I-D.ietf-simple-presence-rules].
o content of Section 5.2, Section 4.8 and Section 4.7 is reused from o content of Section 5.2, and Section 4.4 is reused from
[ETSI-TS-183-004]. [ETSI-TS-183-004].
o text of Section 4.4 from [OMA-TS-XDM_Shared_Policy]
13. References 13. References
13.1. Normative References 13.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", March 1997. Requirement Levels", March 1997.
[RFC2617] Franks, J., Hallam-Baker, P., Hostetler, J., Lawrence, S., [RFC2617] Franks, J., Hallam-Baker, P., Hostetler, J., Lawrence, S.,
Leach, P., Luotonen, A., and L. Stewart, "HTTP Leach, P., Luotonen, A., and L. Stewart, "HTTP
skipping to change at page 31, line 51 skipping to change at page 24, line 19
13.2. Informative References 13.2. Informative References
[ETSI-TS-183-004] [ETSI-TS-183-004]
ETSI, "TS 183 004, Telecommunications and Internet ETSI, "TS 183 004, Telecommunications and Internet
converged Services and Protocols for Advanced Networking converged Services and Protocols for Advanced Networking
(TISPAN); PSTN/ISDN simulation services: Communication (TISPAN); PSTN/ISDN simulation services: Communication
Diversion (CDIV); Protocol specification", 2007. Diversion (CDIV); Protocol specification", 2007.
[I-D.froment-sipping-spit-requirements] [I-D.froment-sipping-spit-requirements]
Froment, T., "Requirements for Authorization Policies to Froment, T., "Requirements for Authorization Policies to
tackle Spam for Internet Telephony and Unwanted Traffic", tackle Spam and Unwanted Communication for Internet
draft-froment-sipping-spit-requirements-00 (work in Telephony", draft-froment-sipping-spit-requirements-01
progress), June 2007. (work in progress), July 2007.
[I-D.ietf-ecrit-service-urn] [I-D.ietf-ecrit-service-urn]
Schulzrinne, H., "A Uniform Resource Name (URN) for Schulzrinne, H., "A Uniform Resource Name (URN) for
Services", draft-ietf-ecrit-service-urn-06 (work in Emergency and Other Well-Known Services",
progress), March 2007. draft-ietf-ecrit-service-urn-07 (work in progress),
August 2007.
[I-D.ietf-mmusic-file-transfer-mech] [I-D.ietf-mmusic-file-transfer-mech]
Garcia-Martin, M., "A Session Description Protocol (SDP) Garcia-Martin, M., Isomaki, M., Camarillo, G., and S.
Offer/Answer Mechanism to Enable File Transfer", Loreto, "A Session Description Protocol (SDP) Offer/Answer
draft-ietf-mmusic-file-transfer-mech-03 (work in Mechanism to Enable File Transfer",
progress), June 2007. draft-ietf-mmusic-file-transfer-mech-04 (work in
progress), October 2007.
[I-D.ietf-simple-message-sessions] [I-D.ietf-simple-message-sessions]
Campbell, B., "The Message Session Relay Protocol", Campbell, B., "The Message Session Relay Protocol",
draft-ietf-simple-message-sessions-19 (work in progress), draft-ietf-simple-message-sessions-19 (work in progress),
February 2007. February 2007.
[I-D.ietf-simple-presence-rules] [I-D.ietf-simple-presence-rules]
Rosenberg, J., "Presence Authorization Rules", Rosenberg, J., "Presence Authorization Rules",
draft-ietf-simple-presence-rules-09 (work in progress), draft-ietf-simple-presence-rules-10 (work in progress),
March 2007. July 2007.
[I-D.ietf-sip-consent-framework] [I-D.ietf-sip-consent-framework]
Rosenberg, J., "A Framework for Consent-Based Rosenberg, J., Camarillo, G., and D. Willis, "A Framework
Communications in the Session Initiation Protocol (SIP)", for Consent-based Communications in the Session Initiation
draft-ietf-sip-consent-framework-02 (work in progress), Protocol (SIP)", draft-ietf-sip-consent-framework-03 (work
July 2007. in progress), November 2007.
[I-D.ietf-sipping-spam] [I-D.ietf-sipping-spam]
Jennings, C. and J. Rosenberg, "The Session Initiation Rosenberg, J. and C. Jennings, "The Session Initiation
Protocol (SIP) and Spam", draft-ietf-sipping-spam-04 (work Protocol (SIP) and Spam", draft-ietf-sipping-spam-05 (work
in progress), February 2007. in progress), July 2007.
[I-D.jennings-sip-hashcash] [I-D.jennings-sip-hashcash]
Jennings, C., "Computational Puzzles for SPAM Reduction in Jennings, C., "Computational Puzzles for SPAM Reduction in
SIP", draft-jennings-sip-hashcash-05 (work in progress), SIP", draft-jennings-sip-hashcash-06 (work in progress),
June 2007. July 2007.
[I-D.mahy-iptel-cpc] [I-D.mahy-iptel-cpc]
Mahy, R., "The Calling Party's Category tel URI Mahy, R., "The Calling Party's Category tel URI
Parameter", draft-mahy-iptel-cpc-06 (work in progress), Parameter", draft-mahy-iptel-cpc-06 (work in progress),
March 2007. March 2007.
[I-D.rosenberg-sipping-service-identification] [I-D.rosenberg-sipping-service-identification]
Rosenberg, J., "Identification of Communications Services Rosenberg, J., "Identification of Communications Services
in the Session Initiation Protocol (SIP)", in the Session Initiation Protocol (SIP)",
draft-rosenberg-sipping-service-identification-02 (work in draft-rosenberg-sipping-service-identification-03 (work in
progress), May 2007. progress), July 2007.
[I-D.schubert-sipping-saml-cpc] [I-D.schubert-sipping-saml-cpc]
Schubert, S., "Conveying CPC using the SAML", Schubert, S., "Conveying CPC using the SAML",
draft-schubert-sipping-saml-cpc-02 (work in progress), draft-schubert-sipping-saml-cpc-02 (work in progress),
July 2006. July 2006.
[I-D.schwartz-sipping-spit-saml] [I-D.schwartz-sipping-spit-saml]
Schwartz, D., "SPAM for Internet Telephony (SPIT) Schwartz, D., "SPAM for Internet Telephony (SPIT)
Prevention using the Security Assertion Markup Language Prevention using the Security Assertion Markup Language
(SAML)", draft-schwartz-sipping-spit-saml-01 (work in (SAML)", draft-schwartz-sipping-spit-saml-01 (work in
skipping to change at page 33, line 26 skipping to change at page 25, line 46
[I-D.tschofenig-sipping-captcha] [I-D.tschofenig-sipping-captcha]
Tschofenig, H. and E. Leppanen, "Completely Automated Tschofenig, H. and E. Leppanen, "Completely Automated
Public Turing Test to Tell Computers and Humans Apart Public Turing Test to Tell Computers and Humans Apart
(CAPTCHA) based Robot Challenges for the Session (CAPTCHA) based Robot Challenges for the Session
Initiation Protocol (SIP)", Initiation Protocol (SIP)",
draft-tschofenig-sipping-captcha-00 (work in progress), draft-tschofenig-sipping-captcha-00 (work in progress),
July 2007. July 2007.
[I-D.tschofenig-sipping-framework-spit-reduction] [I-D.tschofenig-sipping-framework-spit-reduction]
Tschofenig, H., "A Framework for Reducing Spam for Tschofenig, H., "A Framework to tackle Spam and Unwanted
Internet Telephony", Communication for Internet Telephony",
draft-tschofenig-sipping-framework-spit-reduction-00 (work draft-tschofenig-sipping-framework-spit-reduction-01 (work
in progress), June 2007. in progress), July 2007.
[ISO8601] ISO (International Organization for Standardization), [ISO8601] ISO (International Organization for Standardization),
""Data elements and interchange formats -- Information ""Data elements and interchange formats -- Information
interchange -- Representation of dates and times", ISO interchange -- Representation of dates and times", ISO
Standard ISO 8601:2000(E), International Organization for Standard ISO 8601:2000(E), International Organization for
Standardization, Geneva, Switzerland,", December 2000. Standardization, Geneva, Switzerland,", December 2000.
[OMA-TS-XDM_Shared_Policy] [OMA-TS-XDM_Shared_Policy]
Open Mobile Alliance, "Shared Policy XDM Specification", Open Mobile Alliance, "Shared Policy XDM Specification",
2007. 2007.
 End of changes. 62 change blocks. 
644 lines changed or deleted 237 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/