From 5c0f472d82b797317c79b31e4501a6d54b40ee34 Mon Sep 17 00:00:00 2001 From: Jinsuk Kim Date: Tue, 21 Oct 2014 07:14:46 +0900 Subject: [PATCH] CEC: Add missing protections for some HdmiControlService API - DO NOT MERGE A few methods are found to be missing protection with system permission. Add enforceAccessPermission() like other methods. Bug: 17408780 Change-Id: I58a336b5cc9df2d195bdfe7b928898dde5ff169f (cherry picked from commit b22d9ee0a364b10d488dd6a2e8ba69d5ca7f6258) --- .../java/com/android/server/hdmi/HdmiControlService.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/services/core/java/com/android/server/hdmi/HdmiControlService.java b/services/core/java/com/android/server/hdmi/HdmiControlService.java index 60d152005e5cc..2cf48657ebb43 100644 --- a/services/core/java/com/android/server/hdmi/HdmiControlService.java +++ b/services/core/java/com/android/server/hdmi/HdmiControlService.java @@ -1025,6 +1025,7 @@ public final class HdmiControlService extends SystemService { @Override public HdmiDeviceInfo getActiveSource() { + enforceAccessPermission(); HdmiCecLocalDeviceTv tv = tv(); if (tv == null) { Slog.w(TAG, "Local tv device not available"); @@ -1344,11 +1345,13 @@ public final class HdmiControlService extends SystemService { @Override public void setHdmiRecordListener(IHdmiRecordListener listener) { + enforceAccessPermission(); HdmiControlService.this.setHdmiRecordListener(listener); } @Override public void startOneTouchRecord(final int recorderAddress, final byte[] recordSource) { + enforceAccessPermission(); runOnServiceThread(new Runnable() { @Override public void run() { @@ -1363,6 +1366,7 @@ public final class HdmiControlService extends SystemService { @Override public void stopOneTouchRecord(final int recorderAddress) { + enforceAccessPermission(); runOnServiceThread(new Runnable() { @Override public void run() { @@ -1378,6 +1382,7 @@ public final class HdmiControlService extends SystemService { @Override public void startTimerRecording(final int recorderAddress, final int sourceType, final byte[] recordSource) { + enforceAccessPermission(); runOnServiceThread(new Runnable() { @Override public void run() { @@ -1393,6 +1398,7 @@ public final class HdmiControlService extends SystemService { @Override public void clearTimerRecording(final int recorderAddress, final int sourceType, final byte[] recordSource) { + enforceAccessPermission(); runOnServiceThread(new Runnable() { @Override public void run() {