[asterisk-dev] RFC: chan_sip SDP parsing changes in behavior
Saúl Ibarra Corretgé
saghul at gmail.com
Thu May 31 07:35:43 CDT 2012
Hi Kevin,
--
Saúl Ibarra Corretgé
http://saghul.net | http://about.me/saghul
On Wednesday, May 30, 2012 at 2:27 PM, Kevin P. Fleming wrote:
> In review 1811 (https://reviewboard.asterisk.org/r/1811/) I've got a set
> of changes designed to accomplish multiple things:
>
> * Improve chan_sip's warning/error messages related to SDP parsing to
> use proper RFC-defined terminology, and ensure that the messages are
> clearly stating exactly what happened.
>
> * Ensure that warning/error messages related to parsing SDP 'm' lines
> include the 'm' line content that was in error.
>
> * Ensure that Asterisk *rejects* SDP offers/answers that contain media
> stream specifications that Asterisk doesn't support.
>
> This latter change is what is of some concern here: if this patch is
> merged, Asterisk will start rejecting SDP offers/answers that it used to
> accept or ignore. Specifically, if:
>
> * An 'm' line for an audio/video/text stream includes an unknown RTP
> profile.
>
> * An 'm' line specifies a top-level media type other than 'audio',
> 'video', 'text' or 'image'.
>
> * An 'm' line specifies more than one port for an audio/video/text
> stream (the current patch allows this to pass, but I think it should be
> changed before it is committed).
>
> Personally I'd prefer that Asterisk behave this way, even in the
> existing release branches, as accepting such SDP offers/answers will
> only lead to broken calls anyway, and it would be better to break the
> call at the beginning as soon as the media offer problems can be identified.
>
> Does anyone out there object to these changes in behavior going into
> 1.8, 10, and trunk?
>
Is this the direction forward in Asterisk? I'd like to see a day when Asterisk copies the media streams it doesn't understand to the outbound call leg. Is this somewhere in the TODO list?
I agree with Olle here, best would be to reject the media stream by just setting the port to 0 but letting it be. If only unsupported streams are proposed then a 488 response would appropriate. Of course, I'm unaware of all the internals involved.
Regards,
More information about the asterisk-dev
mailing list