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

Commit 12aaf7e2 authored by Chalard Jean's avatar Chalard Jean
Browse files

Give Telephony the permissions to access the network stack.

Test: manual
Change-Id: I28308f421aa955fe110b50452b115a0178b24745
parent 58038da9
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -33,7 +33,9 @@ public final class PermissionUtil {
    public static void checkNetworkStackCallingPermission() {
        // TODO: check that the calling PID is the system server.
        final int caller = getCallingUid();
        if (caller != Process.SYSTEM_UID && UserHandle.getAppId(caller) != Process.BLUETOOTH_UID) {
        if (caller != Process.SYSTEM_UID
                && UserHandle.getAppId(caller) != Process.BLUETOOTH_UID
                && UserHandle.getAppId(caller) != Process.PHONE_UID) {
            throw new SecurityException("Invalid caller: " + caller);
        }
    }
+2 −1
Original line number Diff line number Diff line
@@ -289,7 +289,8 @@ public class NetworkStackClient {
    private void requestConnector(@NonNull NetworkStackCallback request) {
        // TODO: PID check.
        final int caller = Binder.getCallingUid();
        if (caller != Process.SYSTEM_UID && !UserHandle.isSameApp(caller, Process.BLUETOOTH_UID)) {
        if (caller != Process.SYSTEM_UID && !UserHandle.isSameApp(caller, Process.BLUETOOTH_UID)
                && !UserHandle.isSameApp(caller, Process.PHONE_UID)) {
            // Don't even attempt to obtain the connector and give a nice error message
            throw new SecurityException(
                    "Only the system server should try to bind to the network stack.");