OSDN Git Service

Check the URL used for the SDP destination.
authorMartin Storsjö <martin@martin.st>
Thu, 7 Jan 2010 08:11:56 +0000 (08:11 +0000)
committerLuca Abeni <lucabe72@email.it>
Thu, 7 Jan 2010 08:11:56 +0000 (08:11 +0000)
Patch by Martin Storsjo (martin AT martin DOT st)

Originally committed as revision 21056 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/sdp.c

index 2d42572..c3ba365 100644 (file)
@@ -18,6 +18,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#include <string.h>
 #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];