summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans MÃ¥nsson <hansm@axis.com>2013-09-30 21:46:10 +0200
committerWim Taymans <wim.taymans@collabora.co.uk>2013-10-04 07:27:12 +0200
commit6bb58eec8a9b3caa7cb88ab7c2a16032bf2cf396 (patch)
tree6893e3d9a64e066c05fcf48d94eeda26d7ebe126
parenta6cf3c8aac41db0cb670ae5277ec5f8c5d510206 (diff)
rtspconnection: Connect to proxy if specified
Reference: https://bugzilla.gnome.org/show_bug.cgi?id=708880
-rw-r--r--gst-libs/gst/rtsp/gstrtspconnection.c18
1 files changed, 14 insertions, 4 deletions
diff --git a/gst-libs/gst/rtsp/gstrtspconnection.c b/gst-libs/gst/rtsp/gstrtspconnection.c
index 3a76d1bdf..6946c946c 100644
--- a/gst-libs/gst/rtsp/gstrtspconnection.c
+++ b/gst-libs/gst/rtsp/gstrtspconnection.c
@@ -517,8 +517,13 @@ setup_tunneling (GstRTSPConnection * conn, GTimeVal * timeout, gchar * uri)
url->abspath, url->query ? "?" : "", url->query ? url->query : "");
/* connect to the host/port */
- connection = g_socket_client_connect_to_uri (conn->client,
- uri, 0, conn->cancellable, &error);
+ if (conn->proxy_host) {
+ connection = g_socket_client_connect_to_host (conn->client,
+ conn->proxy_host, conn->proxy_port, conn->cancellable, &error);
+ } else {
+ connection = g_socket_client_connect_to_uri (conn->client,
+ uri, 0, conn->cancellable, &error);
+ }
if (connection == NULL)
goto connect_failed;
@@ -652,8 +657,13 @@ gst_rtsp_connection_connect (GstRTSPConnection * conn, GTimeVal * timeout)
uri = gst_rtsp_url_get_request_uri (url);
}
- connection = g_socket_client_connect_to_uri (conn->client,
- uri, url_port, conn->cancellable, &error);
+ if (conn->proxy_host) {
+ connection = g_socket_client_connect_to_host (conn->client,
+ conn->proxy_host, conn->proxy_port, conn->cancellable, &error);
+ } else {
+ connection = g_socket_client_connect_to_uri (conn->client,
+ uri, url_port, conn->cancellable, &error);
+ }
if (connection == NULL)
goto connect_failed;