draft-ietf-sipping-torture-tests-02.txt   draft-ietf-sipping-torture-tests-03.txt 
Network Working Group R. Sparks, Ed. Network Working Group R. Sparks, Ed.
Internet-Draft dynamicsoft Internet-Draft dynamicsoft
Expires: March 31, 2004 A. Hawrylyshen Expires: July 21, 2004 A. Hawrylyshen
Jasomi Networks Jasomi Networks
A. Johnston A. Johnston
MCI MCI
J. Rosenberg J. Rosenberg
dynamicsoft dynamicsoft
H. Schulzrinne H. Schulzrinne
Columbia University Columbia University
October 2003 January 21, 2004
Session Initiation Protocol Torture Test Messages Session Initiation Protocol Torture Test Messages
draft-ietf-sipping-torture-tests-02 draft-ietf-sipping-torture-tests-03
Status of this Memo Status of this Memo
This document is an Internet-Draft and is in full conformance with This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026. all provisions of Section 10 of RFC2026.
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 other Task Force (IETF), its areas, and its working groups. Note that other
groups may also distribute working documents as Internet-Drafts. groups may also distribute working documents as Internet-Drafts.
skipping to change at page 1, line 38 skipping to change at page 1, line 38
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 http:// The list of current Internet-Drafts can be accessed at http://
www.ietf.org/ietf/1id-abstracts.txt. 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 March 31, 2004. This Internet-Draft will expire on July 21, 2004.
Copyright Notice Copyright Notice
Copyright (C) The Internet Society (2003). All Rights Reserved. Copyright (C) The Internet Society (2004). All Rights Reserved.
Abstract Abstract
This informational document gives examples of Session Initiation This informational document gives examples of Session Initiation
Protocol (SIP) test messages designed to exercise and "torture" a Protocol (SIP) test messages designed to exercise and "torture" a
parser. parser.
Table of Contents Table of Contents
1. Overview . . . . . . . . . . . . . . . . . . . . . . . . 4 1. Overview . . . . . . . . . . . . . . . . . . . . . . . . 4
skipping to change at page 3, line 10 skipping to change at page 3, line 10
3.2.1 Missing transaction identifier . . . . . . . . . . . . . 32 3.2.1 Missing transaction identifier . . . . . . . . . . . . . 32
3.3 Application layer semantics . . . . . . . . . . . . . . 33 3.3 Application layer semantics . . . . . . . . . . . . . . 33
3.3.1 Missing Required Header Fields . . . . . . . . . . . . . 33 3.3.1 Missing Required Header Fields . . . . . . . . . . . . . 33
3.3.2 Request-URI with unknown scheme . . . . . . . . . . . . 33 3.3.2 Request-URI with unknown scheme . . . . . . . . . . . . 33
3.3.3 Request-URI with known but atypical scheme . . . . . . . 34 3.3.3 Request-URI with known but atypical scheme . . . . . . . 34
3.3.4 Unknown URI schemes in header fields . . . . . . . . . . 34 3.3.4 Unknown URI schemes in header fields . . . . . . . . . . 34
3.3.5 Proxy-Require and Require . . . . . . . . . . . . . . . 35 3.3.5 Proxy-Require and Require . . . . . . . . . . . . . . . 35
3.3.6 Unknown Content-Type . . . . . . . . . . . . . . . . . . 35 3.3.6 Unknown Content-Type . . . . . . . . . . . . . . . . . . 35
3.3.7 Unknown authorization scheme . . . . . . . . . . . . . . 36 3.3.7 Unknown authorization scheme . . . . . . . . . . . . . . 36
3.3.8 Multiple values in single value required fields . . . . 37 3.3.8 Multiple values in single value required fields . . . . 37
3.3.9 Multiple Content-Length values . . . . . . . . . . . . . 37 3.3.9 Multiple Content-Length values . . . . . . . . . . . . . 38
3.3.10 200 OK Response with broadcast Via header field value . 38 3.3.10 200 OK Response with broadcast Via header field value . 38
3.3.11 Max-Forwards of zero . . . . . . . . . . . . . . . . . . 39 3.3.11 Max-Forwards of zero . . . . . . . . . . . . . . . . . . 39
3.3.12 REGISTER with a contact header parameter . . . . . . . . 39 3.3.12 REGISTER with a contact header parameter . . . . . . . . 39
3.3.13 REGISTER with a url parameter . . . . . . . . . . . . . 40 3.3.13 REGISTER with a url parameter . . . . . . . . . . . . . 40
3.3.14 REGISTER with a url escaped header . . . . . . . . . . . 40 3.3.14 REGISTER with a url escaped header . . . . . . . . . . . 40
3.3.15 Unacceptable Accept offering . . . . . . . . . . . . . . 41 3.3.15 Unacceptable Accept offering . . . . . . . . . . . . . . 41
3.4 Backward compatibility . . . . . . . . . . . . . . . . . 42 3.4 Backward compatibility . . . . . . . . . . . . . . . . . 42
3.4.1 INVITE with RFC2543 syntax . . . . . . . . . . . . . . . 42 3.4.1 INVITE with RFC2543 syntax . . . . . . . . . . . . . . . 42
4. Security Considerations . . . . . . . . . . . . . . . . 42 4. Security Considerations . . . . . . . . . . . . . . . . 42
5. Open Issues and Remaining Work . . . . . . . . . . . . . 43 5. Open Issues and Remaining Work . . . . . . . . . . . . . 43
skipping to change at page 9, line 37 skipping to change at page 9, line 37
<allOneLine> <allOneLine>
From: token1~` token2'+_ token3*%!.- <sip:mundane@example.com> From: token1~` token2'+_ token3*%!.- <sip:mundane@example.com>
;fromParam''~+*_!.-%= ;fromParam''~+*_!.-%=
"<hex>D180D0B0D0B1D0BED182D0B0D18ED189D0B8D0B9</hex>" "<hex>D180D0B0D0B1D0BED182D0B0D18ED189D0B8D0B9</hex>"
;tag=_token~1'+`*%!-. ;tag=_token~1'+`*%!-.
</allOneLine> </allOneLine>
Call-ID: word%ZK-!.*_+'@word`~)(><:\/"][?}{ Call-ID: word%ZK-!.*_+'@word`~)(><:\/"][?}{
CSeq: 139122385 !interesting-Method0123456789_*+`.%indeed'~ CSeq: 139122385 !interesting-Method0123456789_*+`.%indeed'~
Max-Forwards: 255 Max-Forwards: 255
<allOneLine> <allOneLine>
extensionHeader-!.%*+_`'~= extensionHeader-!.%*+_`'~:
<hex>EFBBBFE5A4A7E5819CE99BBB</hex> <hex>EFBBBFE5A4A7E5819CE99BBB</hex>
</allOneLine> </allOneLine>
Content-Length: 0 Content-Length: 0
3.1.1.3 Valid use of the % escaping mechanism 3.1.1.3 Valid use of the % escaping mechanism
This INVITE exercises the % HEX HEX escaping mechanism in several This INVITE exercises the % HEX HEX escaping mechanism in several
places. The request is syntactically valid. Interesting features places. The request is syntactically valid. Interesting features
include: include:
skipping to change at page 12, line 44 skipping to change at page 12, line 44
o The Call-ID is one long token o The Call-ID is one long token
Message Details : longreq Message Details : longreq
INVITE sip:user@example.com SIP/2.0 INVITE sip:user@example.com SIP/2.0
<allOneLine> <allOneLine>
To: "I have a user name of To: "I have a user name of
<repeat count=10>extreme</repeat> proportion" <repeat count=10>extreme</repeat> proportion"
<sip:user@example.com:6000; <sip:user@example.com:6000;
unknownparam1=very<repeat count=20>long</count>value; unknownparam1=very<repeat count=20>long</repeat>value;
longparam<repeat count=25>name</repeat>=shortvalue; longparam<repeat count=25>name</repeat>=shortvalue;
very<repeat count=25>long</count>ParameterNameWithNoValue> very<repeat count=25>long</repeat>ParameterNameWithNoValue>
</allOneLine> </allOneLine>
<allOneLine> <allOneLine>
F: sip: F: sip:
<repeat count=5>amazinglylongcallername</repeat>@example.net <repeat count=5>amazinglylongcallername</repeat>@example.net
;tag=12<repeat count=50>982</repeat>424 ;tag=12<repeat count=50>982</repeat>424
;unknownheaderparam<repeat count=20>name</count>= ;unknownheaderparam<repeat count=20>name</repeat>=
unknowheaderparam<repeat count=15>value</count> unknowheaderparam<repeat count=15>value</repeat>
;unknownValueless<repeat count=10>paramname</count> ;unknownValueless<repeat count=10>paramname</repeat>
</allOneLine> </allOneLine>
Call-ID: one<repeat count=20>really</repeat>longcallid Call-ID: one<repeat count=20>really</repeat>longcallid
CSeq: 3882340 INVITE CSeq: 3882340 INVITE
<allOneLine> <allOneLine>
Unknown-<repeat count=20>Long</repeat>-Name: Unknown-<repeat count=20>Long</repeat>-Name:
unknown-<repeat count=20>long</repeat>-value; unknown-<repeat count=20>long</repeat>-value;
unknown-<repeat count=20>long</repeat>-parameter-name = unknown-<repeat count=20>long</repeat>-parameter-name =
unknown-<repeat count=20>long</repeat>-parameter-value unknown-<repeat count=20>long</repeat>-parameter-value
</allOneLine> </allOneLine>
Via: SIP/2.0/TCP sip33.example.com Via: SIP/2.0/TCP sip33.example.com
skipping to change at page 24, line 5 skipping to change at page 24, line 5
o The Retry-After field is unreasonably large (note that RFC 3261 o The Retry-After field is unreasonably large (note that RFC 3261
does not define a legal range for this field). does not define a legal range for this field).
o The Warning field has a warning-value with more than 3 digits o The Warning field has a warning-value with more than 3 digits
An element receiving this response will simply discard it. An element receiving this response will simply discard it.
Message Details : scalarlg Message Details : scalarlg
SIP/2.0 503 Service Unavailable SIP/2.0 503 Service Unavailable
Via: SIP/2.0.TCP host129.example.com;branch=z0hG4bKzzxdiwo34sw Via: SIP/2.0/TCP host129.example.com;branch=z0hG4bKzzxdiwo34sw
To: <sip:user@example.com> To: <sip:user@example.com>
From: <sip:other@example.net>;tag=2easdjfejw From: <sip:other@example.net>;tag=2easdjfejw
CSeq: 9292394834772304023312 OPTIONS CSeq: 9292394834772304023312 OPTIONS
Call-ID: nvoao34irnoase0of0234hn2qofoaf0232aewf2394r Call-ID: nvoao34irnoase0of0234hn2qofoaf0232aewf2394r
Retry-After: 949302838503028349304023988 Retry-After: 949302838503028349304023988
Warning: 1812 overture "In Progress" Warning: 1812 overture "In Progress"
Content-Length: 0 Content-Length: 0
3.1.2.6 Unterminated quoted string in display-name 3.1.2.6 Unterminated quoted string in display-name
skipping to change at page 35, line 8 skipping to change at page 35, line 15
Request response since the To: header field is required to contain a Request response since the To: header field is required to contain a
SIP or SIPS URI as an AOR. SIP or SIPS URI as an AOR.
Message Details : unksm2 Message Details : unksm2
REGISTER sip:example.com SIP/2.0 REGISTER sip:example.com SIP/2.0
To: isbn:2983792873 To: isbn:2983792873
From: <http://www.example.com>;tag=3234233 From: <http://www.example.com>;tag=3234233
Call-ID: 0ha0isndaksdj@hyphenated-host.example.com Call-ID: 0ha0isndaksdj@hyphenated-host.example.com
CSeq: 234902 REGISTER CSeq: 234902 REGISTER
Max-Forward: 70 Max-Forwards: 70
Via: SIP/2.0/UDP 192.0.2.21:5060;branch=z9hG4bKkdjuw Via: SIP/2.0/UDP 192.0.2.21:5060;branch=z9hG4bKkdjuw
Contact: <name:John_Smith> Contact: <name:John_Smith>
l: 0 l: 0
3.3.5 Proxy-Require and Require 3.3.5 Proxy-Require and Require
This request tests proper implementation of SIP's Proxy-Require and This request tests proper implementation of SIP's Proxy-Require and
Require extension mechanisms. Require extension mechanisms.
Any element receiving this request will respond with a 420 Bad Any element receiving this request will respond with a 420 Bad
Extension response containing an Unsupported header field listing Extension response containing an Unsupported header field listing
these features from either the Require or Proxy-Require header field these features from either the Require or Proxy-Require header field
depending on the role in which the element is responding. depending on the role in which the element is responding.
Message Details : bext01 Message Details : bext01
OPTIONS sip:user@example.com SIP/2.0 OPTIONS sip:user@example.com SIP/2.0
To: sip:j_user@example.com To: sip:j_user@example.com
From: sip:caller@example.net;tag=242etr From: sip:caller@example.net;tag=242etr
Max-Forward: 6 Max-Forwards: 6
Call-ID: 0ha0isndaksdj Call-ID: 0ha0isndaksdj
Require: nothingSupportsThis, nothingSupportsThisEither Require: nothingSupportsThis, nothingSupportsThisEither
Proxy-Require: noProxiesSupportThis, norDoAnyProxiesSupportThis Proxy-Require: noProxiesSupportThis, norDoAnyProxiesSupportThis
CSeq: 8 OPTIONS CSeq: 8 OPTIONS
Via: SIP/2.0/TLS fold-and-staple.example.com;branch=z9hG4bKkdjuw Via: SIP/2.0/TLS fold-and-staple.example.com;branch=z9hG4bKkdjuw
Content-Length: 0 Content-Length: 0
3.3.6 Unknown Content-Type 3.3.6 Unknown Content-Type
This INVITE request contains a body of unknown type. It is This INVITE request contains a body of unknown type. It is
skipping to change at page 36, line 46 skipping to change at page 37, line 7
Message Details : regaut01 Message Details : regaut01
REGISTER sip:example.com SIP/2.0 REGISTER sip:example.com SIP/2.0
To: sip:j.user@example.com To: sip:j.user@example.com
From: sip:j.user@example.com;tag=87321hj23128 From: sip:j.user@example.com;tag=87321hj23128
Max-Forwards: 8 Max-Forwards: 8
Call-ID: 0ha0isndaksdj Call-ID: 0ha0isndaksdj
CSeq: 9338 REGISTER CSeq: 9338 REGISTER
Via: SIP/2.0/TCP 192.0.2.253;branch=z9hG4bKkdjuw Via: SIP/2.0/TCP 192.0.2.253;branch=z9hG4bKkdjuw
Authorization: NoOneKnowsThisScheme opaque data here Authorization: NoOneKnowsThisScheme opaque-data=here
Content-Length:0 Content-Length:0
3.3.8 Multiple values in single value required fields 3.3.8 Multiple values in single value required fields
The message contains a request with multiple Call-ID, To, From, The message contains a request with multiple Call-ID, To, From,
Max-Forwards and CSeq values. An element receiving this request must Max-Forwards and CSeq values. An element receiving this request must
not break. not break.
An element receiving this request would respond with a 400 Bad An element receiving this request would respond with a 400 Bad
Request error. Request error.
skipping to change at page 46, line 8 skipping to change at page 46, line 15
Figure 58 Figure 58
Alternatively, the base-64 encoded block can be edited by hand to Alternatively, the base-64 encoded block can be edited by hand to
remove document structure lines and fed as input to any base-64 remove document structure lines and fed as input to any base-64
decoding utility. decoding utility.
A.1 Encoded Reference Messages A.1 Encoded Reference Messages
-- BEGIN MESSAGE ARCHIVE -- -- BEGIN MESSAGE ARCHIVE --
H4sIAKxjuj8CA+xdy3PbSHq3PZnHaktJbc0tJ1g1XM9YItXobrwoUSOPrdnR H4sIABptDEACA+xdy3PbSHq3PZnHaqJNbc0tJ1g1XM9YItXoxpMyNfLYmh2N
2ONxWbKnarMpT4tokCDBBgWAouVUnMSHrewllXtymEqlKtfNLamtSv4Fzx+x H+OyZE/VZlOeFtEQQYIABYCk5VScxIet7CW1e04OW6mkUjllc0tqq5Iqzx+V
h5xyzDXd4AsEQBKSxYc9aJsiCXx4dBO/r793nxCT+G1aLZkkuDanBmQAVBVf a74GXyAAkpAsPuxB2xAJ4MOjQfy+/t59TA3qt1i1ZNDgypwaEhFSFOkKgqbG
A7xpsXfRFFm7BjRNUbEqqwrg9EhF4JoEri2gdfyAeJJ0zWv4beI1/Ul0s/a/ PnmTsXgFqdDgj6ioQE8UIl0R0JUFtLYfUE8Qrnh1v0W9hj+Jbtb+t7R9++jo
pe3bR8eH3z48kny7Xe741Nunz0mr7dCS69Wko8NH27AE1tee2qQ8+Lb95N4j 4NuHh4Jvtcptn3l77DlttmxWcr0T4fDg0TYuofW1pxYtD9a2n9x9JNRcP5BK
qe76AS4NaKtuq6wAFeyceIRV65UXRv1X+OR+02x0MIIIr699Q54Xv3S9LvFM A9qq2yzLSEE7xx51qrXKC732C+n4XsOotyWCibS+9oA+L37lel3qGX5ZUOGU
vyxp/JRfevwgaeML6jhb0h2Hn4qZ1NuQdsWdkFKtdML37EeusLcTkFoFI4Qh X3lwkLDxJbPtLeG2DadyDOZtCLf4ndDSSekY9uxFrrC7E9CTikSIhMn62pEL
Wl87dvnB35HAd9mWdFx3W8Tnx4bdCErdcPtYV/bW1+4Sxyke3itLvmkBflcM B39HA991toSjmtukPhwbdiModcPtY13ZXV+7Q227eHC3LPiGieCuHOwYPqJI
MtMHBBhGB6I6qjPWBcComk1G+QXuVKu0HZQl0m47dpUEtsu2fbPNT3NET8sS 19uY1EjNcboI6VWj4TC4wO1qlbWCskBbLduq0sBynW3faMFpDtlpWSA6hp7p
MiDvmSH1x299zSlLvFdv3e9/QszejzZHBjAL/0jDcfxrGsrxv1T8c8SN8C/Q Qv/5ra/ZZQF6tb72lv3+x9To/WhzZACz8E9UieNfViRFVGTE8a+qJMf/UvEP
lkYxgLHYV+XwGucfIWARghjGGQBKYSmywT+VYEmOcZFpUBwimpgus1yIbAxB iBvhn6MtjWIAY76vCvAa5x8hYAnBEo4zAJLCUkQdvpVwSYxxkWlQHCKaGq5j
4wwQH3BmYqEGYgPA6nGovoVgnQ/+OfDpPKf/WfiXgazE8Y8xzvG/iHb48Onh uphYEkb1DqI+AmZikjpxBoDV3nqozgv/AHw2z+F/Fv5FJMpx/EtSPv4vpB08
8cHVw5/RIIQ/5BOtISbspAQwRC+fR/mc3mIcxRyyEDkNDItFn5oWa4XSQw/B fHpwtH/58HdYEMIfw0Cr8wE7KQEM0QvjKIzpTQdQDJDFxK5LuFj0mWE6zVB6
Mp9zDYSl3i1PEEqiMkmKONJdX7vHH/ey9KVnb0lAlr4mTIL8EZRktQwA/y8d 6CFYhDFXJ5LQu+UJQklUJkkRR7rra3fhdS8LX3nWloBE4RvqCBheQUFUygjB
HB3zK7osIFXOc3YjfRPnV0qRHu71CCkLisfnbZrGofq7H1BWC+q8D4osOM9Z f2H/8Aiu6DoBrQLPuRXpGz+/XIr0cLdHyJygeHTWYmkcqr/7PnNOghr0QRY5
hfffrbTqXOhx6LkEDY3LEhrUeAcN3kHp8BEeMkRlfc2vFNfXqpXkjqACBC9r 5+lUoP9upVkDocdmZwLWVZAlVKxCB3XooHDwSBoyRHl9za8U19eqleSOoII4
VUjHtF2JD7WsAenx8aPtO08fSbxXUOw8s03qSghCbbgL8fsgFS9ot0i7jGTp L2tWaNuwXAEetagi4fHRo+3bTx8J0CvMd3Ysg7kCwVgd7iJwH7TiBa0mbZWJ
waO7OUP8ifJ/Nlfun0H/Awn+L6Nc/lu4/JeqOI3rgKJFWW41iw7YjXP/sI2U KNx/dCdniD9S/u/Mlftn0P9Qgv+LJJf/Fi7/pSpO4zogb1GWW82iA3bj3D9s
QN5iauBsLbA3KYVtXAvsHZrWlagKiGQsK/tjdz9T5ePtXdH6xvBvszMgL9P+ IyUQWkwNnK0F9galsI1rgb1D07oSVQGJKIny3tjdz1T5oE3Q+t5u/FtOB4nL
o0GQkP9UNcf/ysl/jdIlJED+Y8qqzH9aiNWEGBiBJKgTYPvMJE3fbBCfi4LC tP+oGCXkP0XJ8b9y8l+9dAEJEH5MURHhp8WSkhADI5BENYos3zFowzfq1AdR
RkP8kQI3UfAbqo7Kzs7WztZWRH7b+NqlfaNSw6Vj7GCHtzQJDc2U6i4owMkT kNtoqD9S4CYKfkPVUd7Z2drZ2orIbxvfuKxvVKq7bIwd7EBLk9DITKnunAKc
JTh56SIcx/8Z9fxl6n8AIzmOfwVoOf5XZv7XEvO/ljb/Z536x2b+O6Vw8p81 OFGCE5cuwgH+O8zzl6n/IQkGe5HbgTgVwT385+P/6oz/amL8V9PG/6xD/9jI
4592qWuftmlk3j8u9af+7FO+Fp/yhzO7/A7N6RfCf5VwpXmp8j/fixLyvyLn f7sUDv6zRvzTLnOt0xaLjPtHpf7Qn33IV+ND/nBkF3+k5qHjKgWleanyP+wl
+F9E60+jEgRA+vb+tLnV0GP4lhHsmXYSx0BFKUVe8eN8ckI9ceBo7kc61jGA CflfFnP8L6L1h1EBIyR8e2/a2KprMXyLBPdMO4ljsCyXIkv8OJ8eM48fOBr7
QOZzPp//LdJEDUi9LjUt/86RaQ3dLspQChgJHnGhpCd2yBzvaKAoJMio2enb iSZpEsJIhDEfxn+TNkgdM6/LDNO/fWiYQ7eLPJQCRoJHXCjpiR0i4J0MFIUE
p6CRJgQYmUw7IxNReHJhIIJ6lMPsXVxYMPSJ0oKhb8tQy60+ebs6/k+fB/PV GTPaffsU1tOEAD2TaWdkIgpPzg1EWItymN3zCwu6NlFa0LVtEau51Sdvl8f/
/jLYf9Qk/9dgzv8XLf9lUACfXcYFgCENvDFBsCypkzS/9bXH9LRje5zlMjeo 2fNgvtpfBvsPKHsx/z9Guf63cPkvgwL47CIuAAmzwIsLgsok1W997TE7bVse
26x21Gm3XS/wj+u2v5W28cAO6pRf4JHnPj8vRg4XG2zq92kHx3v33DvsPLkv 8FzHDWqWc3LYbrVcL/CPapa/lbZx3wpqDK7wyHOfnxUjh/MNFvP7tIPjvbvu
xVM4NrMdPziSLNcxi5yNF/lTE04js6Tf+MyyapLliV2ruuZS/X9AAVH/vxza becsuS/FVTg2tB3dPxRM1zaKwMeL8NqE48gs8Tc+tKyYaHlsnVRdY6n+PySj
f5Rc/1uo/IehgQ1VQ0CWTmgQUE8ATTrxKGlKHF2SR6vUPhMomywhgrikB5Gh qP9fDPU/Wc3xv0j5T8K6pCsqQaJwzIKAeRxnwrHHaEMAcAkeqzKrw0E2WUJE
c1i7NAJ24puuhToNCBD/yCzEr9zhn+oW8RGth5Yf4hv2SOJD2MAxqW83jV31 cUkPE10DVLssgnXqG65J2nWMCHx1TAJXbsO3mkl9wmqh5Yf6ujWS+IikSzGp
FEVkEOZbdl/u200T/HqEBoANZrImRakonSDe8U4m5Lu3+fevco7tLdn/oylK 71Yau+opikSnjm9afbnvVprg1yPUEa47htNgJBWkE8Q76GRCvnubf/8qcGxv
HP8Q5PP/6th/x004+ptahA3h7+d/XDjJ0d5hNe887mlPFRe61CacX5hNlMFO yf4fVZbj+McI5/hfGfvv+MitvalFWOf+fvjj4kmO9rZz4p3FPe2p0kKXWRT4
PO7AT87ZReHfwUWIFIgu7No3eLuEaXiKbXgRxuEqf6hJa7n+H6yBxPyv5faf hdEgGezE4w785JBd5P4dqYiJjMm5Xfs6tAuYhqfYhhdhHK7CS02by/X/SCpK
hbTHB786PDo+eBziNRX8CRT5JOh47FKO35HlV1wuZq8dWG7uNa2ntUbTC77p jP9qbv9ZSHu8/4uDw6P9xyFeU8GfQJFPg7bnXMjxO7L88svF7LUDy83dhvn0
Eurdvz8w+qYfEmEMGtBksJ+8vQFngNKgtxG+I866KRsaVBQF8rZf68pRzrPT pN7wggddyrx79wZG3/RDIowB9EcR7SVvb8AZsDDobYTv8LNuirqKZVnG0PZO
YU3mdlmIk3cvdrCPf7hU/CtqEv+5//enin8d6XyqvCLMozTM714I9HvvcsSw umKU8+y0nYbjdp0QJ++ecbiPf7xU/MtKEv+5/v9jxb9GNBgqLwnzJA3zt84F
eeJ49HSp9j8RIBDHP0J5/O+K4D+bqJ/c2w/UgorcQA0EE0lA+vraYUyYNwyh +t132SVkHNseO12q/Y8HCMTxT/L8n1XBfzZRP7m3H6iFZbFO6gQnkoC09bWD
/FvMQU4T8kdAhrGJun+VeKDvSPQfgX2ymQIqaawqjFNOtQSIfxE1KRpGMjZQ mDCv61z5Nx2b2A0Mr4CIYwN1/yrxQN+R6D8C+2QzBZbTWFUYpzzBXAd3OlKT
g3sc358lQgbzBz5tfJIqj6Fx4GBD4EfZj0aRXCRGJqX3SAe9SOv5hzNfQTSM omEkYw9qcI/j+7NEyEjwwqc9n6TKo6sAHEnn+JH3olEk54mRSek90VAv0nr+
lFnjyb1bMxr1q/N2/8z2/yMY4/8wz/9avP2Hv/wCuiM4bAGDCAuLMqzkvFDQ 4cyXEA0jZNZ4cu/WjMb86rzdP7P9/zzmZ4z/4zz/a/H2H1j8ArnNOWxBQhEW
FJ8WNJjG9EJB67AAOf86o/yND2GV+tHz9W2xSE+wP219ze7lhgAjNAo3G00G FmVYyXGhoMo+K6g4jemFgtZBAQP/6jD4gEdYZX70fH1bLNES7E9dX7N6uSFI
kcv4F1BEkcQQKFJCcVazj+C66a6aKU7+9TVpaKEqqHfTkkF2+HY+DDusoMot D43CjXrDwcR1YAUVSSQxBPOUUCmr2Ydz3XRPzRQn//qaMLRQFZQ7ackgO7Ad
Wjnjb06Hd1opIFxA8t4Vcc+JzDMPC8jb5fg/XLL9X1UT8r8ICcv5/0Lk/wLW HsOOU1DEJqt04MNuQ6flApEKRNy9JO45kXnmYQF5uxj/x0u2/ytKQv7nIWE5
uMhcwEpPB/BozfYDj3ilidrARuHXnLwfVe1R3+141TGZd2+Y3j+TMmT/FkSw /1+I/F+QVBCZC5Lc0wE8dmL5gUe90kRtYKPwSyDvR1V7zHfbXnVM5t0dpvfP
QUyrMRYUJpg+O+26CHunENkINzzhHawyByLmOU3mi7iwcRf93ZlZgBAYBeuF pAzZv4kJrlPDrI8FhXGm75x2XSJ5p5hYRKp73DtYdWxMHM9uOD6PCxv30N+Z
z6gTnUEMhLEUHYvUhMUx+wFxbOLLPadgzCV4t6B+mSCFvfCwOGnynCgkRDHC mQWIkV4wX/gOs6MjiE4kSYg+i9SExTH7AbUt6os9p2DMJXinoHyVIMW98LA4
OZkgOP5Zx3GW6/9HWhz/Csrtfyum/4vHpFgAoCg+TNJwJxL1LXuGAXv1O6ak afKcJCQkMcI5mSAA/07btpfr/ydqHP8yye1/K6b/89ekWECoyL9M0nAnEvUt
AyMDAsRM66zZMIlvNU9RF7uBdwqI6VucJZAzc5gSjJGhC9lvit4/y+kXCdQZ e7qOe/U7pqQDEx0j4hhmp1E3qG82TklXcgPvFFHDN4El0I4xTAmWiK5x2W+K
AZF3YT9x4F4K1STCB+W3w2DI8e91PHu5+f8p+Me5/2/R+l/cgPf5Y7cT0EoB 3j/L6ReJ0xkBEbqwlzhwN4VqEuH98tthMAT8e23PWm7+fwr+pdz/t2j9L27A
3Y3xhgI6uJLaAAhzDUhPywmblH0f8o9JcQGhqlgUUkO9USQNik68IucNp8DQ ++Kx2w5YpUDuxHhDgexfSm0AIoEGpKXlhE3Kvg/5x6S4gFBVLHKpoVYv0joj
u0WLdKlXh6fFOmbKiH1wVsOnfjhddyy6VjGo02Kdiy/ZI/7maULLlcC8XU2z x14ReMMp0rVu0aRd5tXwabEmOfKIfQCrgaEfT9cdi65ZDGqsWAPxJXvA3zxN
md+xlqz/4ZT4Lzn3/yyb/494fJ9bhnFbsz0MhnIpxuj0c28vyAuNie4EI6+P aLkSmLfLaZbjt80l639SSvyXmPt/ls3/Rzy+zy3DuK3ZHgZdvhBjtPu5t+fk
kgX/QYsG9aXKf7ImJ/W/HP8LaTf5A0A96gc2qxW/4U+Ca4ZJeIqq6caz25vf hfpEd4Ke10fJgv+gyYLaUuU/TBL1H3P5b0HtOrwAzGN+YDknxQfwJrhGmIQn
lwo2Myk1b70MmYT8rMM6foc4pSePD19+GrjFE3rT73j0s1/aPrsVbNrBJ9tV K6qmP7u5+X2pYDkGY8aNlyGTEJ+1nbbfpnbpyeODl58FbvGYXffbHvv855bv
j7w4/3xre2fndvmXdrBZJ35F3upS2zNv3m4T/5Ou+9J8Frhu6VPTpeKwoh18 3Ag2reDT7apHX5x9sbW9s3Oz/HMr2KxRvyJudZnlGddvtqj/add9aTwLXLf0
tj87/GRg35GnBXGWbhZU9fazze9vvezbq744eFD+zYfSwyf87Zp0T3z7m75R meEyfljRCj7fmx1+MrDviNOCOEvXC4py89nm9zde9u1VX+7fL//qQ+HhE/i4
6qL9STVzBW6TMvnl970P8Nbms94ndLtws1TsXajVYSZhMeOXxQ9/JGJMbt16 Itzla3/TN0qdtz+pZq7AbTBHfPl97wu+sfms943cLFwvFXsXarYdgzox45cJ
uXn7GScuVDZ+/NvXv3/976//68dXr3//4z/8+LvX//H6PzdCgflZeNaX8q3N hz/iMSY3brzcvPkMiAuVjR9+9/pvf/jt6z/A8p+w/A+svwrXf/f6H2D5DXz/
7/mZi6WI8Nt1PbPw6/vFmyXe81v74uv3Lz/7dG+3/Jvtjb/8i8//+q8iZbRk L1j+eyMUop+FV3op3tj8Hq5WLEUE4q7rGYVf3iteL8HTuLHHV79/+flnu7fK
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
+q0JrJUV7uo/e8uqf/Y9X7D9+IYD53tfKhkdPZ9X+2J/z0sH7i1Y3Lbx4Br3 rfx733OF246t33+u98XS0dFz+Y4X+nte3H9n4eK2DQdWuw6defnVe5xHdt1/
4bOv/PZ+19HdD19e17Nj8ONtv7v/Z4N77tq39fC7H3XueWfzzc/8wnN53dns aW3P9sFPt752z2ODu2/bu+XQ+5907n5v0zVP/cp9ae2ZBe3HqU3ly8+HP7z6
9hPU5rLlF8Lv33TJO1yY/eaKi2vPWC1h5ealI/sY+o2+d5RT75btXNNw2/gH ome4aMHbN1xYc9psCsvXLB3Zy9Bv9b0nn3y/fMfqhpvGP3I+M1hYObqzafT1
rt8MFlSM7moafW1uyyWbjbhuX4PQEbd93g7gs9p/xcV/N/d/WGL/lW79Dx/g 2alLFgsJ3Z6H0BC3fdUB4DP6fyXkfzfWf1ji/5Vp+w8f4KW6Vl6V23zRdBcN
5bpWXlPapGi4iwaAxJXEVFPAVvlAuy9e6fs9/h6bt0Ft4jcIbidATZ7SwDvW AE1XkkuNCbbCB9q9iUbfH/F3WDwNShO/XnDZAerytA7e8e5ed3Ru395poe1A
3Ouezh07Om20E+g+SQPoV/eJQA62NSOJEglPwHQOMe9inJPytpEQZ6OBKiDy 8/pUgH41rwikYFszmlGiyRMwgkOMqxj7xHxbL0jw0UANEHljadYjy6AZ9Srq
5tasV1FAM2pV1GK4woqCL1TjJYks65jrdg7mFfT8WiOGx7XC/1h6xUdvavMY MdxgWcYHiv6SYi5rm+1yDuYVdH+HnsNjvvA/nr3irTfVOcz/tSLZ/ssyFOH/
/2tlov6XZSjC//Oy/3N15z/8T+c+ANnr4USfV/Dyol9q9bG8X5D5ba3+EFrS OVn/+XL7P/xH+z4AyePmRK9H8PCi39fqZXm/IPFbW/0hpNKrvOrBC0BpjGSz
a7zmxRtAKZRkczoZYvYwwAmF3KsbUSl6plIBXmsVfN5E87i1bqAzM5SjOQcM 2hli5jTASZVcqxpRLXq6WgFebRW8nmT/mDUuoDHT1KM5GwxKAv5Gic10/tDZ
ygL+RvHVdH3X1dDkAjo7Q2FeE6CXEeUkNnkz2sFCnpMEryyKSbagdDWkzff8 0OQEGjtNZV4VoIcRpRROOdP6wUKe8wkeSRRTLEFpSkida/lvhVP9P8j+D5nn
b4fT7T/I+Q/p539VbFN00Ybo0ZJ80xeAVOagRu9L0eOxqQbk4lX3KT4oXn8f f0VskzXRgujRknrRF4B0/mD66Esz4rGrBuQSTfdpPijRfh+Q0SPFooiqHFTc
UNCQYlNFTQmqHjHZwMKxSJRzcHFKfDGkKpInyLCcHWvpZdGLPch9Ks2wdnXW YqoHC8eiqZyNSzDiiyFF9rmDDMtZsZVeEj04gtyr0AxrVWZ8kNCMjYsPLk9t
gYRmHFysc3lyvf4XwrRrbt1f9muets93BJjd/4OZtv9L+D+9/J9gN2U6Rzp1 158/EeNBya+6277aJ8DM8R/MlPVfwv+Z5f8kvykjONKuyRrePNmIkXQbA59k
RcfHSZs+kh6z419n0SCucZ0H5v82ep75n4mV/1mD/yFL+D8dmJv/l6Q1y060 g5hPwPzfRs8x/zNx8Z81UOd/yBL+zwRmF//lU5slO9JdmRqOttUwE1Laq2k4
dmWqOdpRzUzO0j5dxwFjQqFQZbJlP2LMlDZddb7Odp8o87oo2BLDeE9NxiwH YUwoFKpKpfYjxkzr01Xn7Wz3ihKviYIlOY33pDBmORgf4DFVGqdPOErNJiR0
Yx08YkYMczJOHW+UmotH6Cq8+eqsV3zyfe42Sffddt0FCw/K8x7/jYJx8Z8M JV59tdfLXuluV5tP8970/5YtPCjNef43CtLx8p/V4z8pkv8xI4hp9jSEwAHo
/q+mSPyntGBiZU9DCGoBXV7OgHJgLy+nwcBzA8+DSDjSjV4Gnhk4PvB0pAen igoGVABrRQUNBp4deA5EwpFu9DLw1MCxgScjPbgsqSjSHfkJsICBU5Gu2LmB
JSRFuiOPAhsYOB3pmsgbOD6TbSTnSGBKiqFZLu5AWIiWBw4WGtFyWT+e9P1M Y9P5RnK2JJ6kGJrlEjaEhUg9sLFQz5bL+rHQ9zOttKiERMGj3uyaJpVc2mBU
Ky2qIVHware7Zwgll9IZlaLM4+ZSrFpEIWiaBtE0l8zkm5uTiUwyNy7OMS3C ijK2m0ujtYhC0HANomkulcs3NysXmVRhXJxtSoa5y0sTw9nSus5wtmqKrvk6
3JWFieEcKU1nOEcVRVeTE7cJrhohTZI75tf/h6pm2cTxnybxv9K+/9MhdYj+ by9N8DVHSPVJHXMb/0PVWKfofzRL4n8zvf7T4esQ/S11bi/vUyyCpLgTJk1o
ljqPj5dUmyCrnjihCQkKSDiUEQ342MVhA3Dm5c5eHNQAANAAiy0Ra9EARjnw ooAmhxKiAR+vHDYAe37ezNVBLQAAPWCxJ6IDPcAoG/5hGCk/z6PgneaAHZTV
D8PIebleFZ80B5ygtB5sUDRRbhbVFrBly5bS0qjpohltTFBxZt00n1j8Dz+5 g/WyKkrNotICNm/eXFYWdV00so0JCj5ZNyUmFv/Dd3boSd9bBduXXYlKfOrr
1gj63io4rnYnKn7UN6pk+Pp4NCP6MIQc/qgYPyJ8B6IEAFXoZoMcAE91ps3l TdJjfdyqnn0YQg5/VFwcEb4CUQKAanSxTg6ARZ3hczmhh8akHcNBNap+qpho
5EJ0YrZjOKhF158aJppLDN3Jyy0BUbhb5AXsdwiALIa8Zhro4ANBET0KS92S TjF0Ky+1BEThdpEXcNwhAJIY8hhloIMPBEV0Kzzr9klBVDL15AajT4z6TUh9
HEQp0zM3mm1ilm9C69eNclAL8oFNONsJamoqKtBfzaxzlxEIAbdj1FTVcAPV 3SAF1SAf2IhP20FtbWUl+qudUXbpiRBwP0ZdVfUwUDWh+wNKbASE0Oc49AbE
4po/oE70gBD6nFqjAhMpNlmxGQmoQTqcYIImhsKwCmAZHENrl/B0F9cros1n SiySbNELUId02EGMJrrBsBrgOTiG2u7D4i5hVES7z6AQHhkAxHx+ff5WGwDY
Ugj3DAAmbH4lf6sDAGzAOkli84noLV5PGASmVjoqabu9Es3u+FnRB9WiQhOe gXWCxMYd0VusT+gEplbYqmirtQpJd3yv6I0cqFIsEh2HbSLhZy9bF5TRVAOo
6NhtE01+ztL1QQWJGkDTVUlG3asUd6+UHQs9ClHb7Ovoaei98f3M2mpYEyKY muKT0PAqw8Mr7cBCt0LUNsa6I+ZDi0r0b2m0WcX2EMG4pBZsRW2HVczlZ4FL
mTVgG6o1rGSuPP5bygjQbDon9B0iYj/vPMv/NJwm/68k6/8v0P7fTJq+Fp8m mweazYxY3y4i9vPM8fyfhsn6P7OC6P//Q+t/01n6WryqwFJJG36qvNCKTXkB
sFTCgZ8aL7RiVV7AK7fRCh1gGdUehKa6L061x9DUDDt7czrjE2sRpERtI7we j9RGy3SAZRRrEBrmvgTTHkNT06zszWqPT2xF8CXbDiBJ/UpAQEBAQEBAQEBA
lX0EBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBATXHP4LBrhRowAY QEBAQEBAQEBAQEBAQEBAQEBAQEBAQDAP8G/qAJOHABgBAA==
AQA=
-- END MESSAGE ARCHIVE -- -- END MESSAGE ARCHIVE --
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
intellectual property or other rights that might be claimed to intellectual property or other rights that might be claimed to
pertain to the implementation or use of the technology described in pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights this document or the extent to which any license under such rights
might or might not be available; neither does it represent that it might or might not be available; neither does it represent that it
has made any effort to identify any such rights. Information on the has made any effort to identify any such rights. Information on the
skipping to change at page 50, line 29 skipping to change at page 50, line 29
be obtained from the IETF Secretariat. be obtained from the IETF Secretariat.
The IETF invites any interested party to bring to its attention any The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary copyrights, patents or patent applications, or other proprietary
rights which may cover technology that may be required to practice rights which may cover technology that may be required to practice
this standard. Please address the information to the IETF Executive this standard. Please address the information to the IETF Executive
Director. Director.
Full Copyright Statement Full Copyright Statement
Copyright (C) The Internet Society (2003). All Rights Reserved. Copyright (C) The Internet Society (2004). All Rights Reserved.
This document and translations of it may be copied and furnished to This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph are kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works. However, this included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of Internet organizations, except as needed for the purpose of
 End of changes. 

This html diff was produced by rfcdiff 1.23, available from http://www.levkowetz.com/ietf/tools/rfcdiff/