diff options
author | rtogni <rtogni@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2007-03-25 19:00:39 +0000 |
---|---|---|
committer | rtogni <rtogni@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2007-03-25 19:00:39 +0000 |
commit | dcc70f58498fa0be8f455c8ffa73126d45bcd532 (patch) | |
tree | f94f542c9d6ad071835c9ae49429eb1304ad278c /stream/librtsp | |
parent | 7a370b589fb50a7e2a03416237d2f647891fbfe9 (diff) | |
download | mpv-dcc70f58498fa0be8f455c8ffa73126d45bcd532.tar.bz2 mpv-dcc70f58498fa0be8f455c8ffa73126d45bcd532.tar.xz |
Check buffer size in header dump functions
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22821 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'stream/librtsp')
-rw-r--r-- | stream/librtsp/rtsp_session.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/stream/librtsp/rtsp_session.c b/stream/librtsp/rtsp_session.c index cdc8d3d381..a3559212b2 100644 --- a/stream/librtsp/rtsp_session.c +++ b/stream/librtsp/rtsp_session.c @@ -148,7 +148,17 @@ rtsp_session_t *rtsp_session_start(int fd, char **mrl, char *path, char *host, mp_msg(MSGT_OPEN, MSGL_V, "smil-over-realrtsp playlist, switching to raw rdt mode\n"); } else { rtsp_session->real_session->header_len = - rmff_dump_header (h, (char *) rtsp_session->real_session->header, 1024); + rmff_dump_header (h, (char *) rtsp_session->real_session->header, HEADER_SIZE); + + if (rtsp_session->real_session->header_len < 0) { + mp_msg (MSGT_OPEN, MSGL_ERR,"rtsp_session: error while dumping RMFF headers, session can not be established.\n"); + free_real_rtsp_session(rtsp_session->real_session); + rtsp_close(rtsp_session->s); + free (server); + free (mrl_line); + free(rtsp_session); + return NULL; + } rtsp_session->real_session->recv = xbuffer_copyin (rtsp_session->real_session->recv, 0, |