libudfread | branch: master | Petri Hintukainen <[email protected]> | Sun Jun 11 17:36:09 2017 +0300| [1867c47e8e2d55e9a47a86db6e0ade82ee480a6a] | committer: Petri Hintukainen
Fix possible OOB read in _parse_dir() (corrupt input) > http://git.videolan.org/gitweb.cgi/libudfread.git/?a=commit;h=1867c47e8e2d55e9a47a86db6e0ade82ee480a6a --- src/udfread.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/udfread.c b/src/udfread.c index 173cddf..f10b7be 100644 --- a/src/udfread.c +++ b/src/udfread.c @@ -890,7 +890,11 @@ static int _parse_dir(const uint8_t *data, uint32_t length, struct udf_dir *dir) const uint8_t *end = data + length; int tag_id; - while (p < end) { + if (length < 16) { + return 0; + } + + while (p < end - 16) { size_t used; tag_id = decode_descriptor_tag(p); _______________________________________________ libbluray-devel mailing list [email protected] https://mailman.videolan.org/listinfo/libbluray-devel
