Ensure that a declined media stream is terminated with a '\r\n'
authorMatthew Jordan <mjordan@digium.com>
Tue, 29 Jan 2013 14:48:28 +0000 (14:48 +0000)
committerMatthew Jordan <mjordan@digium.com>
Tue, 29 Jan 2013 14:48:28 +0000 (14:48 +0000)
commit126060042ed39993576948e437ea82b8de183de7
tree1d38f9140e445e3b51cc5c50aa77b183dda40d72
parent148b6e7fba1d5061bf59b712b72d83cc8d85dd69
Ensure that a declined media stream is terminated with a '\r\n'

In r369028, chan_sip's processing of media streams in an SDP was modified to
better handle multiple offered media streams. Part of that change modified
how streams were declined. Previously, declined media streams were not
handled in an RFC compliant manner; now, we set the port number to 0 in the
media stream definition and proceed on with the next media stream.

Unfortunately, the formatting of the declined media stream forgot to append a
'\r\n' to the end of the media stream. This is normally added to the accepted
media streams later on in the processing of the SDP. Since the declined media
stream uses a different buffer than the accepted media streams (and is a
malloc'd buffer as opposed to a struct ast_str), it's easier to just slap the
'\r\n' on the declined media stream buffer rather than attempt to append it
later on.

So, that's what we do. And now some devices (and probably some providers) will
be a bit happier (but probably not terribly happy, since we just rejected
something they offered).

Review: https://reviewboard.asterisk.org/r/2297/

(closes issue ASTERISK-20908)
Reported by: Dennis DeDonatis
Tested by: Dennis DeDonatis
........

Merged revisions 380331 from http://svn.asterisk.org/svn/asterisk/branches/11

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@380332 65c4cc65-6c06-0410-ace0-fbb531ad65f3
channels/chan_sip.c