On Tue, Aug 13, 2002 at 03:35:27PM -0400, Venna, Nagarjuna wrote:
> I understand your point, but here are a couple of thoughts:
>
> Displaying misplaced lines as misplaced *is* useful, because SDP is meant to
> be very simple to parse and the 'v', 'a', 'i' or whatever lines are supposed
> to be sent in a fixed order, not in the order the app chooses to. It would
> be better if the SDP parser can flag all those errors, but this is a start.
Well, unfortunately for some simple SDP parsers, I've seen a capture of
a Quicktime session where we have
v=0
s={session name}
u={URL}
e={email address}
c={connection information}
a=contro:/
a=x-qt-text-cpy:Copyright 1997-1998 Apple Computer, Inc.
a=range:npt=0- 0.06667
m=video 0 RTP/AVP 96
a=rtpmap:96 X-Q^/600
a=control:trackID=2
with no time description whatsoever. Perhaps some device between the
client and server deleted them, perhaps because they indicated that it
was an unbounded, permanent session and they mistakenly removed it, or
perhaps because there was a bug, but I don't consider that sufficient
reason to mark them as misplaced items rather than session attributes
(a simple parser doesn't *need* to keep track of whether there's a time
description - it could just switch from parsing session descriptions to
media descriptions based on whether it'd seen an m= entry or not, as per
my comment about how Ethereal could handle this).
So I'm not going to have the SDP dissector report those a= entries as
"misplaced".