From: Martin Storsjö Date: Thu, 7 Jan 2010 08:11:56 +0000 (+0000) Subject: Check the URL used for the SDP destination. X-Git-Tag: v0.6~2107 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=c47b0738b559c3ded0e2941b89a970f54d73b283;p=coroid%2Flibav_saccubus.git Check the URL used for the SDP destination. Patch by Martin Storsjo (martin AT martin DOT st) Originally committed as revision 21056 to svn://svn.ffmpeg.org/ffmpeg/trunk --- diff --git a/libavformat/sdp.c b/libavformat/sdp.c index 2d4257258..c3ba3652d 100644 --- a/libavformat/sdp.c +++ b/libavformat/sdp.c @@ -18,6 +18,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include #include "libavutil/avstring.h" #include "libavutil/base64.h" #include "avformat.h" @@ -72,10 +73,19 @@ static int sdp_get_address(char *dest_addr, int size, int *ttl, const char *url) { int port; const char *p; + char proto[32]; - url_split(NULL, 0, NULL, 0, dest_addr, size, &port, NULL, 0, url); + url_split(proto, sizeof(proto), NULL, 0, dest_addr, size, &port, NULL, 0, url); *ttl = 0; + + if (strcmp(proto, "rtp")) { + /* The url isn't for the actual rtp sessions, + * don't parse out anything else than the destination. + */ + return 0; + } + p = strchr(url, '?'); if (p) { char buff[64];