From 8e4b7a591c6a31b960d6e9e769c8efe15751df97 Mon Sep 17 00:00:00 2001 From: Nikias Bassen Date: Thu, 9 Feb 2017 23:06:13 +0100 Subject: xplist: Fix OOB heap buffer read with empty data nodes Credit to OSS-Fuzz --- src/xplist.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/xplist.c b/src/xplist.c index f5ddddd..0e9b007 100644 --- a/src/xplist.c +++ b/src/xplist.c @@ -1103,8 +1103,10 @@ static void node_from_xml(parse_ctx ctx, plist_t *plist, uint32_t depth) goto err_out; } size_t size = tp->length; - data->buff = base64decode(str_content, &size); - data->length = size; + if (size > 0) { + data->buff = base64decode(str_content, &size); + data->length = size; + } if (requires_free) { free(str_content); -- cgit v1.1-32-gdbae