From 208d38b876aef637eaaea5d3e382aec4a6f890bc Mon Sep 17 00:00:00 2001 From: rsf Date: Fri, 11 Apr 2003 02:35:01 +0000 Subject: [PATCH] Access-controlled RTSP sessions can now be played, if the user uses the "-user" and "-passwd" options. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@9905 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpdemux/demux_rtp.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/libmpdemux/demux_rtp.cpp b/libmpdemux/demux_rtp.cpp index 3aeb9334d6..e83bf2414e 100644 --- a/libmpdemux/demux_rtp.cpp +++ b/libmpdemux/demux_rtp.cpp @@ -94,6 +94,8 @@ typedef struct RTPState { struct timeval firstSyncTime; }; +extern "C" char* network_username; +extern "C" char* network_password; int rtspStreamOverTCP = 0; extern "C" void demux_open_rtp(demuxer_t* demuxer) { @@ -124,7 +126,15 @@ extern "C" void demux_open_rtp(demuxer_t* demuxer) { break; } - sdpDescription = rtspClient->describeURL(url); + // If we were given a user name (and optional password), then use them: + if (network_username != NULL) { + char const* password + = network_password == NULL ? "" : network_password; + sdpDescription + = rtspClient->describeWithPassword(url, network_username, password); + } else { + sdpDescription = rtspClient->describeURL(url); + } if (sdpDescription == NULL) { fprintf(stderr, "Failed to get a SDP description from URL \"%s\": %s\n", url, env->getResultMsg()); @@ -306,6 +316,7 @@ Boolean insertRTPData(demuxer_t* demuxer, demux_stream_t* ds, dp->len = dataLen; dp->pts = 0; bufferQueue->savePendingBuffer(dp); + return True; } static void teardownRTSPSession(RTPState* rtpState); // forward