rtspconnection: make sure not to dereference NULL username or password
authorPatrick Radizi <patrick.radizi@axis.com>
Thu, 18 Feb 2010 12:42:53 +0000 (12:42 +0000)
committerTim-Philipp Müller <tim.muller@collabora.co.uk>
Thu, 18 Feb 2010 18:00:38 +0000 (18:00 +0000)
Fixes #610268.

gst-libs/gst/rtsp/gstrtspconnection.c

index 813eefd..e501fe6 100644 (file)
@@ -946,6 +946,9 @@ add_auth_header (GstRTSPConnection * conn, GstRTSPMessage * message)
       gchar *user_pass64;
       gchar *auth_string;
 
+      if (conn->username == NULL || conn->passwd == NULL)
+        break;
+
       user_pass = g_strdup_printf ("%s:%s", conn->username, conn->passwd);
       user_pass64 = g_base64_encode ((guchar *) user_pass, strlen (user_pass));
       auth_string = g_strdup_printf ("Basic %s", user_pass64);
@@ -967,7 +970,8 @@ add_auth_header (GstRTSPConnection * conn, GstRTSPMessage * message)
       const gchar *method;
 
       /* we need to have some params set */
-      if (conn->auth_params == NULL)
+      if (conn->auth_params == NULL || conn->username == NULL ||
+          conn->passwd == NULL)
         break;
 
       /* we need the realm and nonce */