[FFmpeg-cvslog] avformat/rtsp: Check number of streams in sdp_parse_line()
Michael Niedermayer
git at videolan.org
Fri May 10 22:02:23 EEST 2019
ffmpeg | branch: release/3.2 | Michael Niedermayer <michael at niedermayer.cc> | Fri Jan 25 21:30:04 2019 +0100| [d116540d06aeebdc495ef43c14d58f95ec6556a9] | committer: Michael Niedermayer
avformat/rtsp: Check number of streams in sdp_parse_line()
Fixes: OOM
Found-by: Michael Hanselmann <public at hansmi.ch>
Reviewed-by: Michael Hanselmann <public at hansmi.ch>
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
(cherry picked from commit 497c9b0cce559d43607bbbd679fe42f1d7e9040e)
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d116540d06aeebdc495ef43c14d58f95ec6556a9
---
libavformat/rtsp.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
index a3f1e40983..8c8381c055 100644
--- a/libavformat/rtsp.c
+++ b/libavformat/rtsp.c
@@ -446,7 +446,10 @@ static void sdp_parse_line(AVFormatContext *s, SDPParseState *s1,
} else if (!strcmp(st_type, "text")) {
codec_type = AVMEDIA_TYPE_SUBTITLE;
}
- if (codec_type == AVMEDIA_TYPE_UNKNOWN || !(rt->media_type_mask & (1 << codec_type))) {
+ if (codec_type == AVMEDIA_TYPE_UNKNOWN ||
+ !(rt->media_type_mask & (1 << codec_type)) ||
+ rt->nb_rtsp_streams >= s->max_streams
+ ) {
s1->skip_media = 1;
return;
}
More information about the ffmpeg-cvslog
mailing list