Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8811695b authored by Ricardo Garcia's avatar Ricardo Garcia Committed by Android (Google) Code Review
Browse files

Merge "Fix security vulnerability: Equalizer command might allow negative indexes"

parents 65840aac 0872b65c
Loading
Loading
Loading
Loading
+15 −3
Original line number Diff line number Diff line
@@ -2349,8 +2349,12 @@ int Equalizer_getParameter(EffectContext *pContext,

    case EQ_PARAM_BAND_LEVEL:
        param2 = *pParamTemp;
        if (param2 >= FIVEBAND_NUMBANDS) {
        if (param2 < 0 || param2 >= FIVEBAND_NUMBANDS) {
            status = -EINVAL;
            if (param2 < 0) {
                android_errorWriteLog(0x534e4554, "32438598");
                ALOGW("\tERROR Equalizer_getParameter() EQ_PARAM_BAND_LEVEL band %d", param2);
            }
            break;
        }
        *(int16_t *)pValue = (int16_t)EqualizerGetBandLevel(pContext, param2);
@@ -2360,8 +2364,12 @@ int Equalizer_getParameter(EffectContext *pContext,

    case EQ_PARAM_CENTER_FREQ:
        param2 = *pParamTemp;
        if (param2 >= FIVEBAND_NUMBANDS) {
        if (param2 < 0 || param2 >= FIVEBAND_NUMBANDS) {
            status = -EINVAL;
            if (param2 < 0) {
                android_errorWriteLog(0x534e4554, "32436341");
                ALOGW("\tERROR Equalizer_getParameter() EQ_PARAM_CENTER_FREQ band %d", param2);
            }
            break;
        }
        *(int32_t *)pValue = EqualizerGetCentreFrequency(pContext, param2);
@@ -2371,8 +2379,12 @@ int Equalizer_getParameter(EffectContext *pContext,

    case EQ_PARAM_BAND_FREQ_RANGE:
        param2 = *pParamTemp;
        if (param2 >= FIVEBAND_NUMBANDS) {
        if (param2 < 0 || param2 >= FIVEBAND_NUMBANDS) {
            status = -EINVAL;
            if (param2 < 0) {
                android_errorWriteLog(0x534e4554, "32247948");
                ALOGW("\tERROR Equalizer_getParameter() EQ_PARAM_BAND_FREQ_RANGE band %d", param2);
            }
            break;
        }
        EqualizerGetBandFreqRange(pContext, param2, (uint32_t *)pValue, ((uint32_t *)pValue + 1));