[vlc-commits] Real RTSP: discard unsupported legacy username and password syntax

Rémi Denis-Courmont git at videolan.org
Sun Mar 22 18:59:16 CET 2015


vlc | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Sun Mar 22 19:58:21 2015 +0200| [2e3dee03644cafd3533495a53e1f6e0c1adf839c] | committer: Rémi Denis-Courmont

Real RTSP: discard unsupported legacy username and password syntax

This is better than leaking them to the DNS resolver. This also avoids
confusing error messages if live555 is missing or failing.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=2e3dee03644cafd3533495a53e1f6e0c1adf839c
---

 modules/access/rtsp/access.c |   11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/modules/access/rtsp/access.c b/modules/access/rtsp/access.c
index 3a05be8..2a52a1b 100644
--- a/modules/access/rtsp/access.c
+++ b/modules/access/rtsp/access.c
@@ -156,6 +156,13 @@ static int Open( vlc_object_t *p_this )
             return VLC_EGENERIC;
     }
 
+    /* Discard legacy username/password syntax - not supported */
+    const char *psz_location = strchr( p_access->psz_location, '@' );
+    if( psz_location != NULL )
+        psz_location++;
+    else
+        psz_location = p_access->psz_location;
+
     p_access->pf_read = NULL;
     p_access->pf_block = BlockRead;
     p_access->pf_seek = Seek;
@@ -180,10 +187,10 @@ static int Open( vlc_object_t *p_this )
     p_sys->p_rtsp->pf_read_line = RtspReadLine;
     p_sys->p_rtsp->pf_write = RtspWrite;
 
-    i_result = rtsp_connect( p_sys->p_rtsp, p_access->psz_location, 0 );
+    i_result = rtsp_connect( p_sys->p_rtsp, psz_location, 0 );
     if( i_result )
     {
-        msg_Dbg( p_access, "could not connect to: %s", p_access->psz_location );
+        msg_Dbg( p_access, "could not connect to: %s", psz_location );
         free( p_sys->p_rtsp );
         p_sys->p_rtsp = NULL;
         goto error;



More information about the vlc-commits mailing list