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

Commit a1733735 authored by Jack Yu's avatar Jack Yu Committed by Android (Google) Code Review
Browse files

Merge "Cleaned up the flag support_phone_uid_check_for_multiuser" into main

parents 7ad49489 06047b2a
Loading
Loading
Loading
Loading
+0 −11
Original line number Diff line number Diff line
@@ -218,17 +218,6 @@ flag {
    }
}

# OWNER=rambowang TARGET=24Q4
flag {
    name: "support_phone_uid_check_for_multiuser"
    namespace: "telephony"
    description: "Check phone/system processes from UID with multiuser-aware way"
    bug:"328511085"
    metadata {
        purpose: PURPOSE_BUGFIX
    }
}

# OWNER=joonhunshin TARGET=24Q4
flag {
    name: "use_carrier_config_for_cfnry_time_via_mmi"
+2 −7
Original line number Diff line number Diff line
@@ -32,7 +32,6 @@ import android.content.ServiceConnection;
import android.os.IBinder;
import android.os.UserHandle;

import com.android.internal.telephony.flags.Flags;
import com.android.telephony.Rlog;

/** This class provides wrapper APIs for binding interfaces to mock service. */
@@ -161,12 +160,8 @@ public class MockModem {
        intent.setAction(actionName + phoneId);
        intent.putExtra(PHONE_ID, phoneId);

        if (Flags.supportPhoneUidCheckForMultiuser()) {
        status = mContext.bindServiceAsUser(intent, serviceConnection, Context.BIND_AUTO_CREATE,
                UserHandle.of(ActivityManager.getCurrentUser()));
        } else {
            status = mContext.bindService(intent, serviceConnection, Context.BIND_AUTO_CREATE);
        }
        return status;
    }

+0 −19
Original line number Diff line number Diff line
@@ -52,7 +52,6 @@ import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.os.PersistableBundle;
import android.os.Process;
import android.os.SystemClock;
import android.os.UserHandle;
import android.provider.Settings;
@@ -3039,24 +3038,6 @@ public abstract class SMSDispatcher extends Handler {
        return SubscriptionManager.getSubscriptionId(mPhone.getPhoneId());
    }

    @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553)
    private void checkCallerIsPhoneOrCarrierApp() {
        int uid = Binder.getCallingUid();
        int appId = UserHandle.getAppId(uid);
        if (appId == Process.PHONE_UID || uid == 0) {
            return;
        }
        try {
            PackageManager pm = mContext.getPackageManager();
            ApplicationInfo ai = pm.getApplicationInfo(getCarrierAppPackageName(), 0);
            if (UserHandle.getAppId(ai.uid) != UserHandle.getAppId(Binder.getCallingUid())) {
                throw new SecurityException("Caller is not phone or carrier app!");
            }
        } catch (PackageManager.NameNotFoundException re) {
            throw new SecurityException("Caller is not phone or carrier app!");
        }
    }

    protected boolean isCdmaMo() {
        return mSmsDispatchersController.isCdmaMo();
    }
+3 −10
Original line number Diff line number Diff line
@@ -4557,17 +4557,10 @@ public class SubscriptionManagerService extends ISub.Stub {
     */
    @NonNull
    private String getCallingPackage() {
        if (Flags.supportPhoneUidCheckForMultiuser()) {
        if (UserHandle.isSameApp(Binder.getCallingUid(), Process.PHONE_UID)) {
            // Too many packages running with phone uid. Just return one here.
            return "com.android.phone";
        }
        } else {
            if (Binder.getCallingUid() == Process.PHONE_UID) {
                // Too many packages running with phone uid. Just return one here.
                return "com.android.phone";
            }
        }
        return Arrays.toString(mContext.getPackageManager().getPackagesForUid(
                Binder.getCallingUid()));
    }
+0 −7
Original line number Diff line number Diff line
@@ -41,7 +41,6 @@ import android.os.Process;
import android.os.ServiceManager;
import android.os.UserHandle;
import android.permission.LegacyPermissionManager;
import android.platform.test.flag.junit.SetFlagsRule;
import android.provider.DeviceConfig;
import android.provider.Settings;
import android.telephony.SubscriptionManager;
@@ -52,13 +51,11 @@ import android.test.mock.MockContentResolver;
import androidx.test.filters.SmallTest;

import com.android.internal.telephony.flags.FeatureFlags;
import com.android.internal.telephony.flags.Flags;
import com.android.internal.util.test.FakeSettingsProvider;
import com.android.server.pm.permission.LegacyPermissionManagerService;

import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;

import java.lang.reflect.Field;
@@ -75,9 +72,6 @@ public class TelephonyPermissionsTest {
    private static final String FEATURE = "com.example.feature";
    private static final String MSG = "message";

    @Rule
    public final SetFlagsRule mSetFlagsRule = new SetFlagsRule();

    // Mocked classes
    private Context mMockContext;
    private AppOpsManager mMockAppOps;
@@ -97,7 +91,6 @@ public class TelephonyPermissionsTest {

    @Before
    public void setUp() throws Exception {
        mSetFlagsRule.enableFlags(Flags.FLAG_SUPPORT_PHONE_UID_CHECK_FOR_MULTIUSER);
        mMockContext = mock(Context.class);
        mMockAppOps = mock(AppOpsManager.class);
        mMockSubscriptionManager = mock(SubscriptionManager.class);