summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWei Jia <wjia@google.com>2017-04-10 20:14:58 +0000
committerandroid-build-merger <android-build-merger@google.com>2017-04-10 20:14:58 +0000
commite9606a5e2c3ab634963175679aa72077548fcbdb (patch)
tree0936f45f420420f5570f71f4135849298aac292e
parent92a5d3f33b0aa247164ae8ffee8a889616f11cf1 (diff)
parent7089d93407f45d0c0057fc44a1afda22040f0470 (diff)
downloadsonivox-e9606a5e2c3ab634963175679aa72077548fcbdb.tar.gz
Merge "Sonivox: sanity check headerLength in XMF_ReadNode." into klp-dev am: 1ad130fc93 am: e0d04bcdd9 am: 686f04b363 am: a3588caee4 am: 561b5ef90d am: a849138eff am: c82b91b850
am: 7089d93407 Change-Id: I9d60371b09a18c857b5bb5a940360c52ca29bac0
-rw-r--r--arm-wt-22k/lib_src/eas_xmf.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arm-wt-22k/lib_src/eas_xmf.c b/arm-wt-22k/lib_src/eas_xmf.c
index 05b329e..830b6e5 100644
--- a/arm-wt-22k/lib_src/eas_xmf.c
+++ b/arm-wt-22k/lib_src/eas_xmf.c
@@ -584,6 +584,9 @@ static EAS_RESULT XMF_ReadNode (EAS_HW_DATA_HANDLE hwInstData, S_XMF_DATA *pXMFD
if ((result = EAS_HWFilePos(hwInstData, pXMFData->fileHandle, &offset)) != EAS_SUCCESS)
return result;
+ if (offset - nodeOffset > headerLength)
+ return EAS_FAILURE;
+
/* skip to node contents */
if ((result = EAS_HWFileSeek(hwInstData, pXMFData->fileHandle, nodeOffset + headerLength)) != EAS_SUCCESS)
return result;