Snap for 10118161 from 23976e002584bf67d90cd1298c6cde31d7e76068 to aml-frc-release

Change-Id: Ie49be19cce5c0a3f4486526fbd031cadf373386f
diff --git a/generate_java_binder.cpp b/generate_java_binder.cpp
index 04add06..67bfcfa 100644
--- a/generate_java_binder.cpp
+++ b/generate_java_binder.cpp
@@ -472,30 +472,19 @@
 // Visitor for the permission declared in the @EnforcePermission annotation.
 class PermissionVisitor {
  public:
-  PermissionVisitor(CodeWriter* code, const AidlMethod& method) : code_(code), method_(method) {
-    use_attribution_source_ = std::any_of(
-        method_.GetArguments().begin(), method_.GetArguments().end(), [](const auto& arg) {
-          return arg->GetType().GetName() == "android.content.AttributionSource";
-        });
-  }
+  PermissionVisitor(CodeWriter* code, const AidlMethod& method) : code_(code), method_(method) {}
 
   ~PermissionVisitor() {
     code_->Dedent();
     *code_ << "}\n";
   }
 
-  string Credentials() const {
-    if (use_attribution_source_) {
-      return "source";
-    }
-    return "getCallingPid(), getCallingUid()";
-  }
+  string Credentials() const { return "getCallingPid(), getCallingUid()"; }
 
   void Prologue() {
     *code_ << "/** Helper method to enforce permissions for " << method_.GetName() << " */\n";
-    *code_ << "protected void " << method_.GetName() << "_enforcePermission("
-           << (use_attribution_source_ ? "android.content.AttributionSource source" : "")
-           << ") throws SecurityException {\n";
+    *code_ << "protected void " << method_.GetName() << "_enforcePermission() "
+           << "throws SecurityException {\n";
     code_->Indent();
   }
 
@@ -537,7 +526,6 @@
  private:
   CodeWriter* code_;
   const AidlMethod& method_;
-  bool use_attribution_source_;
 };
 
 static void GeneratePermissionMethod(const AidlInterface& iface, const AidlMethod& method,
diff --git a/tests/golden_output/aidl-test-interface-permission-java-source/gen/android/aidl/tests/permission/platform/IProtected.java b/tests/golden_output/aidl-test-interface-permission-java-source/gen/android/aidl/tests/permission/platform/IProtected.java
index 954527f..aca8d07 100644
--- a/tests/golden_output/aidl-test-interface-permission-java-source/gen/android/aidl/tests/permission/platform/IProtected.java
+++ b/tests/golden_output/aidl-test-interface-permission-java-source/gen/android/aidl/tests/permission/platform/IProtected.java
@@ -139,8 +139,8 @@
     static final int TRANSACTION_ProtectedWithSourceAttribution = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0);
     static final String[] PERMISSIONS_ProtectedWithSourceAttribution = {android.Manifest.permission.INTERNET, android.Manifest.permission.VIBRATE};
     /** Helper method to enforce permissions for ProtectedWithSourceAttribution */
-    protected void ProtectedWithSourceAttribution_enforcePermission(android.content.AttributionSource source) throws SecurityException {
-      mEnforcer.enforcePermissionAllOf(PERMISSIONS_ProtectedWithSourceAttribution, source);
+    protected void ProtectedWithSourceAttribution_enforcePermission() throws SecurityException {
+      mEnforcer.enforcePermissionAllOf(PERMISSIONS_ProtectedWithSourceAttribution, getCallingPid(), getCallingUid());
     }
     /** @hide */
     public int getMaxTransactionId()
diff --git a/tests/golden_output/aidl-test-interface-platform-java-source/gen/android/aidl/tests/permission/platform/IProtected.java b/tests/golden_output/aidl-test-interface-platform-java-source/gen/android/aidl/tests/permission/platform/IProtected.java
deleted file mode 100644
index 7b6d96f..0000000
--- a/tests/golden_output/aidl-test-interface-platform-java-source/gen/android/aidl/tests/permission/platform/IProtected.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * This file is auto-generated.  DO NOT MODIFY.
- */
-package android.aidl.tests.permission.platform;
-public interface IProtected extends android.os.IInterface
-{
-  /** Default implementation for IProtected. */
-  public static class Default implements android.aidl.tests.permission.platform.IProtected
-  {
-    @Override public void ProtectedWithSourceAttribution(android.content.AttributionSource source) throws android.os.RemoteException
-    {
-    }
-    @Override
-    public android.os.IBinder asBinder() {
-      return null;
-    }
-  }
-  /** Local-side IPC implementation stub class. */
-  public static abstract class Stub extends android.os.Binder implements android.aidl.tests.permission.platform.IProtected
-  {
-    /** Construct the stub at attach it to the interface. */
-    public Stub()
-    {
-      this.attachInterface(this, DESCRIPTOR);
-    }
-    /**
-     * Cast an IBinder object into an android.aidl.tests.permission.platform.IProtected interface,
-     * generating a proxy if needed.
-     */
-    public static android.aidl.tests.permission.platform.IProtected asInterface(android.os.IBinder obj)
-    {
-      if ((obj==null)) {
-        return null;
-      }
-      android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR);
-      if (((iin!=null)&&(iin instanceof android.aidl.tests.permission.platform.IProtected))) {
-        return ((android.aidl.tests.permission.platform.IProtected)iin);
-      }
-      return new android.aidl.tests.permission.platform.IProtected.Stub.Proxy(obj);
-    }
-    @Override public android.os.IBinder asBinder()
-    {
-      return this;
-    }
-    @Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException
-    {
-      java.lang.String descriptor = DESCRIPTOR;
-      if (code >= android.os.IBinder.FIRST_CALL_TRANSACTION && code <= android.os.IBinder.LAST_CALL_TRANSACTION) {
-        data.enforceInterface(descriptor);
-      }
-      switch (code)
-      {
-        case INTERFACE_TRANSACTION:
-        {
-          reply.writeString(descriptor);
-          return true;
-        }
-      }
-      switch (code)
-      {
-        case TRANSACTION_ProtectedWithSourceAttribution:
-        {
-          android.content.AttributionSource _arg0;
-          _arg0 = data.readTypedObject(android.content.AttributionSource.CREATOR);
-          data.enforceNoDataAvail();
-          if (((this.permissionCheckerWrapper(android.Manifest.permission.INTERNET, this.getCallingPid(), _arg0)&&this.permissionCheckerWrapper(android.Manifest.permission.VIBRATE, this.getCallingPid(), _arg0))!=true)) {
-            throw new SecurityException("Access denied, requires: allOf = {android.Manifest.permission.INTERNET, android.Manifest.permission.VIBRATE}");
-          }
-          this.ProtectedWithSourceAttribution(_arg0);
-          reply.writeNoException();
-          break;
-        }
-        default:
-        {
-          return super.onTransact(code, data, reply, flags);
-        }
-      }
-      return true;
-    }
-    private static class Proxy implements android.aidl.tests.permission.platform.IProtected
-    {
-      private android.os.IBinder mRemote;
-      Proxy(android.os.IBinder remote)
-      {
-        mRemote = remote;
-      }
-      @Override public android.os.IBinder asBinder()
-      {
-        return mRemote;
-      }
-      public java.lang.String getInterfaceDescriptor()
-      {
-        return DESCRIPTOR;
-      }
-      @Override public void ProtectedWithSourceAttribution(android.content.AttributionSource source) throws android.os.RemoteException
-      {
-        android.os.Parcel _data = android.os.Parcel.obtain();
-        android.os.Parcel _reply = android.os.Parcel.obtain();
-        try {
-          _data.writeInterfaceToken(DESCRIPTOR);
-          _data.writeTypedObject(source, 0);
-          boolean _status = mRemote.transact(Stub.TRANSACTION_ProtectedWithSourceAttribution, _data, _reply, 0);
-          _reply.readException();
-        }
-        finally {
-          _reply.recycle();
-          _data.recycle();
-        }
-      }
-    }
-    private boolean permissionCheckerWrapper(
-        String permission, int pid, android.content.AttributionSource attributionSource) {
-      android.content.Context ctx =
-          android.app.ActivityThread.currentActivityThread().getSystemContext();
-      return (android.content.PermissionChecker.checkPermissionForDataDelivery(
-              ctx, permission, pid, attributionSource, "" /*message*/) ==
-          android.content.PermissionChecker.PERMISSION_GRANTED);
-    }
-    static final int TRANSACTION_ProtectedWithSourceAttribution = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0);
-  }
-  public static final java.lang.String DESCRIPTOR = "android$aidl$tests$permission$platform$IProtected".replace('$', '.');
-  @android.annotation.EnforcePermission(allOf = {android.Manifest.permission.INTERNET, android.Manifest.permission.VIBRATE})
-  public void ProtectedWithSourceAttribution(android.content.AttributionSource source) throws android.os.RemoteException;
-}
diff --git a/tests/golden_output/aidl-test-interface-platform-java-source/gen/android/aidl/tests/permission/platform/IProtected.java.d b/tests/golden_output/aidl-test-interface-platform-java-source/gen/android/aidl/tests/permission/platform/IProtected.java.d
deleted file mode 100644
index 51e500e..0000000
--- a/tests/golden_output/aidl-test-interface-platform-java-source/gen/android/aidl/tests/permission/platform/IProtected.java.d
+++ /dev/null
@@ -1,3 +0,0 @@
-out/soong/.intermediates/system/tools/aidl/aidl-test-interface-platform-java-source/gen/android/aidl/tests/permission/platform/IProtected.java : \
-  system/tools/aidl/tests/android/aidl/tests/permission/platform/IProtected.aidl \
-  frameworks/base/core/java/android/content/AttributionSource.aidl