diff options
author | Eric Laurent <elaurent@google.com> | 2016-01-12 01:56:51 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2016-01-12 01:56:51 +0000 |
commit | baebc739b0fe7257b26bfe105b67409559171c82 (patch) | |
tree | e7204d25f9b5e74ddcd76bdf72e29bf412530371 /media | |
parent | 208bc477d92dbd2e5b4d1c0b2d000fa4c231e9d3 (diff) | |
parent | 9e29523b9537983b4c4b205ff868d0b3bca0383b (diff) | |
download | frameworks_av-baebc739b0fe7257b26bfe105b67409559171c82.zip frameworks_av-baebc739b0fe7257b26bfe105b67409559171c82.tar.gz frameworks_av-baebc739b0fe7257b26bfe105b67409559171c82.tar.bz2 |
fix possible overflow in effect wrappers.
am: 9e29523b95
* commit '9e29523b9537983b4c4b205ff868d0b3bca0383b':
fix possible overflow in effect wrappers.
Diffstat (limited to 'media')
-rw-r--r-- | media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp | 5 | ||||
-rw-r--r-- | media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp | 5 |
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 b6aea6c..89d973a 100644 --- a/media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp +++ b/media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp @@ -2809,7 +2809,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 c98d62b..a796d2f 100644 --- a/media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp +++ b/media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp @@ -1953,7 +1953,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 || |