Re: [Sip] [sipcore] [Technical Errata Reported] RFC3261 (2910)

"Worley, Dale R (Dale)" <> Sun, 07 August 2011 01:31 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 6764A21F86B9; Sat, 6 Aug 2011 18:31:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -103.463
X-Spam-Status: No, score=-103.463 tagged_above=-999 required=5 tests=[AWL=0.136, BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1, USER_IN_WHITELIST=-100]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id 1+FjadiTrMbX; Sat, 6 Aug 2011 18:31:25 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id D0CB621F861A; Sat, 6 Aug 2011 18:31:21 -0700 (PDT)
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-AV: E=Sophos;i="4.67,330,1309752000"; d="scan'208";a="296030204"
Received: from unknown (HELO ([]) by with ESMTP; 06 Aug 2011 21:31:41 -0400
Received: from unknown (HELO ([]) by with ESMTP; 06 Aug 2011 21:23:49 -0400
Received: from ([]) by ([]) with mapi; Sat, 6 Aug 2011 21:31:41 -0400
From: "Worley, Dale R (Dale)" <>
To: Samir Srivastava <>, Romel Khan <>
Date: Sat, 6 Aug 2011 21:31:40 -0400
Thread-Topic: [Sip] [sipcore] [Technical Errata Reported] RFC3261 (2910)
Thread-Index: AcxTJnZvGdfReHLySCa4E0AQQAYa8wBembTs
Message-ID: <>
References: <> <> <> <> <> <>, <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: en-US
acceptlanguage: en-US
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: " List" <>, "SIPCORE \(Session Initiation Protocol Core\) WG" <>
Subject: Re: [Sip] [sipcore] [Technical Errata Reported] RFC3261 (2910)
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Session Initiation Protocol <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Sun, 07 Aug 2011 01:31:25 -0000

> From: Samir Srivastava []
> Hi, IMHO presentation of information in tabulated form helps a lot to
> starters. Like ABNF it helps parser developers (expert of syntax &
> semantic analysis) to develop it without referring each line of SIP
> rfc's.

The tables are a useful guide to starters.  But as others have noted,
it is very difficult to keep the tables up to date, and there is no
format for the tables that correctly presents the conditions for
all "optional" headers.

Parser developers may be tempted to use the tables to determine
whether a message has all the required headers, but it is nearly
impossible to make that determination other than while carrying out
the processing for the message.

The real rule for the presence of headers is: "Perform the processing
that is mandated by the SIP message.  Headers whose values are
required to perform this processing must be present; headers whose
values are not used in the processing are ignored.  If a needed header
is not present, the processing of the message is aborted and it has no
effect.  If the message is a request, an appropriate error response is
sent (if enough information is present in the request to allow doing