summaryrefslogtreecommitdiffstats
path: root/services/audiopolicy
diff options
context:
space:
mode:
authorScott Mertz <scott@cyngn.com>2016-07-06 10:18:52 -0700
committerGerrit Code Review <gerrit@cyanogenmod.org>2016-07-08 12:01:48 -0700
commit940b28bc37f819c62386e393614354f55069e8f6 (patch)
tree84c3164796dbbdbf050ec36c377cd0588ca30d55 /services/audiopolicy
parent1e7c9d2c408b17fa14f897cfe8d1ae06fe944637 (diff)
downloadframeworks_av-940b28bc37f819c62386e393614354f55069e8f6.zip
frameworks_av-940b28bc37f819c62386e393614354f55069e8f6.tar.gz
frameworks_av-940b28bc37f819c62386e393614354f55069e8f6.tar.bz2
Enforce permission for accessing fm tuner
Change-Id: I13f3ba8fc9caaeee21597a2405a8c3629e985502
Diffstat (limited to 'services/audiopolicy')
-rw-r--r--services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp5
-rw-r--r--services/audiopolicy/service/AudioPolicyInterfaceImplLegacy.cpp4
2 files changed, 9 insertions, 0 deletions
diff --git a/services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp b/services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp
index f0be341..b23c35e 100644
--- a/services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp
+++ b/services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp
@@ -316,6 +316,11 @@ status_t AudioPolicyService::getInputForAttr(const audio_attributes_t *attr,
if ((attr->source == AUDIO_SOURCE_HOTWORD) && !captureHotwordAllowed()) {
return BAD_VALUE;
}
+
+ if ((attr->source == AUDIO_SOURCE_FM_TUNER) && !accessFmRadioAllowed()) {
+ return BAD_VALUE;
+ }
+
sp<AudioPolicyEffects>audioPolicyEffects;
status_t status;
AudioPolicyInterface::input_type_t inputType;
diff --git a/services/audiopolicy/service/AudioPolicyInterfaceImplLegacy.cpp b/services/audiopolicy/service/AudioPolicyInterfaceImplLegacy.cpp
index 0aad54d..da7f45d 100644
--- a/services/audiopolicy/service/AudioPolicyInterfaceImplLegacy.cpp
+++ b/services/audiopolicy/service/AudioPolicyInterfaceImplLegacy.cpp
@@ -275,6 +275,10 @@ status_t AudioPolicyService::getInputForAttr(const audio_attributes_t *attr,
return BAD_VALUE;
}
+ if ((inputSource == AUDIO_SOURCE_FM_TUNER) && !accessFmRadioAllowed()) {
+ return BAD_VALUE;
+ }
+
#ifdef HAVE_PRE_KITKAT_AUDIO_POLICY_BLOB
if (inputSource == AUDIO_SOURCE_HOTWORD)
inputSource = AUDIO_SOURCE_VOICE_RECOGNITION;