summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorEric Laurent <elaurent@google.com>2016-01-12 02:00:44 +0000
committerandroid-build-merger <android-build-merger@google.com>2016-01-12 02:00:44 +0000
commit5b7c20dd1ee9eff7f96676cec68d4b74e33440e7 (patch)
treeb959b111a470db5e9d42e1e4b59a428ddd4843eb /media
parentf4dfde92ea86c333fa04a2dc54e85791208b1ca4 (diff)
parent3a9d4f4a83341e4c083aa50a651fe5d765ef70ad (diff)
downloadframeworks_av-5b7c20dd1ee9eff7f96676cec68d4b74e33440e7.zip
frameworks_av-5b7c20dd1ee9eff7f96676cec68d4b74e33440e7.tar.gz
frameworks_av-5b7c20dd1ee9eff7f96676cec68d4b74e33440e7.tar.bz2
fix possible overflow in effect wrappers. am: 9e29523b95 am: baebc739b0
am: 3a9d4f4a83 * commit '3a9d4f4a83341e4c083aa50a651fe5d765ef70ad': fix possible overflow in effect wrappers.
Diffstat (limited to 'media')
-rw-r--r--media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp5
-rw-r--r--media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp5
2 files changed, 8 insertions, 2 deletions
diff --git a/media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp b/media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp
index aa41252..ea72e69 100644
--- a/media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp
+++ b/media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp
@@ -3026,7 +3026,10 @@ int Effect_command(effect_handle_t self,
//ALOGV("\tEffect_command cmdCode Case: EFFECT_CMD_GET_PARAM start");
effect_param_t *p = (effect_param_t *)pCmdData;
-
+ if (SIZE_MAX - sizeof(effect_param_t) < (size_t)p->psize) {
+ android_errorWriteLog(0x534e4554, "26347509");
+ return -EINVAL;
+ }
if (pCmdData == NULL || cmdSize < sizeof(effect_param_t) ||
cmdSize < (sizeof(effect_param_t) + p->psize) ||
pReplyData == NULL || replySize == NULL ||
diff --git a/media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp b/media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp
index a48a4e3..4dc8b45 100644
--- a/media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp
+++ b/media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp
@@ -1956,7 +1956,10 @@ int Reverb_command(effect_handle_t self,
//ALOGV("\tReverb_command cmdCode Case: "
// "EFFECT_CMD_GET_PARAM start");
effect_param_t *p = (effect_param_t *)pCmdData;
-
+ if (SIZE_MAX - sizeof(effect_param_t) < (size_t)p->psize) {
+ android_errorWriteLog(0x534e4554, "26347509");
+ return -EINVAL;
+ }
if (pCmdData == NULL || cmdSize < sizeof(effect_param_t) ||
cmdSize < (sizeof(effect_param_t) + p->psize) ||
pReplyData == NULL || replySize == NULL ||