On Tue, Sep 1, 2020 at 8:45 PM Jan Ekström <jee...@gmail.com> wrote: > > This enables people to override the sanity check without compiling > a new binary. > --- > libavformat/dashdec.c | 13 ++++++++++--- > 1 file changed, 10 insertions(+), 3 deletions(-) > > diff --git a/libavformat/dashdec.c b/libavformat/dashdec.c > index c5a5ff607b..bea9616f4a 100644 > --- a/libavformat/dashdec.c > +++ b/libavformat/dashdec.c > @@ -160,6 +160,7 @@ typedef struct DASHContext { > int is_init_section_common_video; > int is_init_section_common_audio; > > + uint64_t maximum_manifest_size; > } DASHContext; > > static int ishttp(char *url) > @@ -1256,14 +1257,17 @@ static int parse_manifest(AVFormatContext *s, const > char *url, AVIOContext *in) > } > > filesize = avio_size(in); > - if (filesize > MAX_MANIFEST_SIZE) { > - av_log(s, AV_LOG_ERROR, "Manifest too large: %"PRId64"\n", filesize); > + if (c->maximum_manifest_size && filesize > c->maximum_manifest_size) { > + av_log(s, AV_LOG_ERROR, > + "Manifest size too large: %"PRId64" (this sanity check can be > " > + "adjusted by using the option 'maximum_manifest_size')\n", > + filesize); > return AVERROR_INVALIDDATA; > } > > av_bprint_init(&buf, (filesize > 0) ? filesize + 1 : > DEFAULT_MANIFEST_SIZE, AV_BPRINT_SIZE_UNLIMITED); > > - if ((ret = avio_read_to_bprint(in, &buf, MAX_MANIFEST_SIZE)) < 0 || > + if ((ret = avio_read_to_bprint(in, &buf, c->maximum_manifest_size)) < 0 > ||
Yes, I noticed this just after I hit enter to send the first version of this patch out :) If zero, utilize file size. If filesize is zero, utilize MAX_MANIFEST_SIZE, I guess :) Jan _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".