summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartijn Coenen <maco@google.com>2016-05-23 09:13:57 +0200
committerThe Android Automerger <android-build@google.com>2016-05-27 11:31:38 -0700
commit9ea802b5456a36f1115549b645b65c791eff3c2c (patch)
tree70963c25df81816968adfbf8b893f8067e030e7d
parent8d04aeed70e2b58b1e039875f7f3ef3594e0620f (diff)
downloadandroid_packages_apps_Nfc-9ea802b5456a36f1115549b645b65c791eff3c2c.tar.gz
android_packages_apps_Nfc-9ea802b5456a36f1115549b645b65c791eff3c2c.tar.bz2
android_packages_apps_Nfc-9ea802b5456a36f1115549b645b65c791eff3c2c.zip
Verify setForegroundDispatch caller is in foreground.
Bug: 28300969 Change-Id: Icadfe70cd06f921badd266e7a4efbae15a8c206a
-rwxr-xr-xsrc/com/android/nfc/NfcService.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/com/android/nfc/NfcService.java b/src/com/android/nfc/NfcService.java
index b822afe2..d62ec03b 100755
--- a/src/com/android/nfc/NfcService.java
+++ b/src/com/android/nfc/NfcService.java
@@ -805,7 +805,10 @@ public class NfcService implements DeviceHostListener {
public void setForegroundDispatch(PendingIntent intent,
IntentFilter[] filters, TechListParcel techListsParcel) {
NfcPermissions.enforceUserPermissions(mContext);
-
+ if (!mForegroundUtils.isInForeground(Binder.getCallingUid())) {
+ Log.e(TAG, "setForegroundDispatch: Caller not in foreground.");
+ return;
+ }
// Short-cut the disable path
if (intent == null && filters == null && techListsParcel == null) {
mNfcDispatcher.setForegroundDispatch(null, null, null);
@@ -935,6 +938,10 @@ public class NfcService implements DeviceHostListener {
@Override
public void setReaderMode(IBinder binder, IAppCallback callback, int flags, Bundle extras)
throws RemoteException {
+ if (!mForegroundUtils.isInForeground(Binder.getCallingUid())) {
+ Log.e(TAG, "setReaderMode: Caller not in foreground.");
+ return;
+ }
synchronized (NfcService.this) {
if (!isNfcEnabled()) {
Log.e(TAG, "setReaderMode() called while NFC is not enabled.");