[reSIProcate] Resiprocate having trouble parsing this (legal) SDP
Shaun Dawson
scdawson at gmail.com
Mon Jan 8 11:54:41 CST 2007
I've done some more digging on this issued and I've discovered that
the SDP in question is a fully compliant RFC3407 SDP. It appears that
the current SDP parser is limited to RFC2327 SDPs. Is there a way
around this limitation? Should we consider enhancing the parser to
support RFC3407 SDPs?
thanks,
Shaun
On 12/10/06, Scott Godin <slgodin at icescape.com> wrote:
> It is illegal for the session level attributes (a= lines) to proceed the t=
> line - the parser is probably failing when it finds a t= line after the a=
> lines.
>
> -----Original Message-----
> From: resiprocate-devel-bounces at list.resiprocate.org
> [mailto:resiprocate-devel-bounces at list.resiprocate.org] On Behalf Of Shaun
> Dawson
> Sent: Sunday, December 10, 2006 7:15 PM
> To: resiprocate-devel
> Subject: [reSIProcate] Resiprocate having trouble parsing this (legal) SDP
>
> A remote host is sending me the following SDP in a sip message
> (hereafter stored as SipMessage msg):
>
> v=0
> o=PVG 0 0 IN IP4 189.173.77.70
> s=-
> c=IN IP4 189.173.77.70
> a=sqn: 0
> a=cdsc: 1 audio RTP/AVP 8 0 116 18 13 101
> a=cpar: a=rtpmap:116 AAL2-G726-32/8000
> a=cpar: a=rtpmap:101 telephone-event/8000
> a=cpar: a=fmtp:101 0-15
> a=cpar: a=ptime:10
> a=cpar: a=ptime:20
> a=cpar: a=fmtp:18 annexb=yes
> t=0 0
> m=audio 54098 RTP/AVP 0 101
> a=rtpmap:101 telephone-event/8000
> a=fmtp:101 0-15
> a=ptime:20
>
>
> But, if I do the following:
>
> body = msg.getContents()->getBodyData();
> body_sdp = (char *)body.c_str();
>
> the variable body_sdp contains:
>
> v=0
> o=PVG 0 0 IN IP4 189.173.77.70
> s=-
> c=IN IP4 189.173.77.70
> t=0 0
> a=cpar: a=rtpmap:116 AAL2-G726-32/8000
> a=cpar: a=rtpmap:101 telephone-event/8000
> a=cpar: a=fmtp:101 0-15
> a=cpar: a=ptime:10
> a=cpar: a=ptime:20
> a=cpar: a=fmtp:18 annexb=yes
> a=cdsc: 1 audio RTP/AVP 8 0 116 18 13 101
> a=sqn: 0
>
> Note that the a= lines appear in reverse order, and everything after
> the last one in a row in the original message is discarded. In
> particular, the m= line is not present, and that keeps me from
> figuring out what the port is. I'm not seeing any exceptions or
> anything, but I may not be looking hard enough.
>
> Any idea what is going on here?
>
> thanks,
> Shaun
> _______________________________________________
> resiprocate-devel mailing list
> resiprocate-devel at list.resiprocate.org
> https://list.resiprocate.org/mailman/listinfo/resiprocate-devel
>
>
More information about the resiprocate-devel
mailing list