From 7395784ba72742b6daa62d35db4028e09f3fdf06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Storsj=C3=B6?= Date: Thu, 13 Oct 2016 15:24:54 +0300 Subject: [PATCH] rtmpproto: Check the return from ff_amf_read_string MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit If this failed, we used to continue with an uninitialized filename buffer. CC: libav-stable@libav.org Signed-off-by: Martin Storsjö --- libavformat/rtmpproto.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libavformat/rtmpproto.c b/libavformat/rtmpproto.c index e7e2479f04..64024259e2 100644 --- a/libavformat/rtmpproto.c +++ b/libavformat/rtmpproto.c @@ -1918,6 +1918,13 @@ static int send_invoke_response(URLContext *s, RTMPPacket *pkt) !strcmp(command, "publish")) { ret = ff_amf_read_string(&gbc, filename, sizeof(filename), &stringlen); + if (ret) { + if (ret == AVERROR(EINVAL)) + av_log(s, AV_LOG_ERROR, "Unable to parse stream name - name too long?\n"); + else + av_log(s, AV_LOG_ERROR, "Unable to parse stream name\n"); + return ret; + } // check with url if (s->filename) { pchar = strrchr(s->filename, '/');