Loading services/java/com/android/server/DeviceStorageMonitorService.java +2 −2 Original line number Diff line number Diff line Loading @@ -56,7 +56,7 @@ import android.util.Slog; * settings parameter with a default value of 2MB), the free memory is * logged to the event log. */ class DeviceStorageMonitorService extends Binder { public class DeviceStorageMonitorService extends Binder { private static final String TAG = "DeviceStorageMonitorService"; private static final boolean DEBUG = false; private static final boolean localLOGV = DEBUG ? Config.LOGD : Config.LOGV; Loading Loading @@ -99,7 +99,7 @@ class DeviceStorageMonitorService extends Binder { /** * This string is used for ServiceManager access to this class. */ static final String SERVICE = "devicestoragemonitor"; public static final String SERVICE = "devicestoragemonitor"; /** * Handler that checks the amount of disk space on the device and sends a Loading services/java/com/android/server/MountService.java +5 −3 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package com.android.server; import com.android.internal.app.IMediaContainerService; import com.android.server.am.ActivityManagerService; import com.android.server.pm.PackageManagerService; import android.Manifest; import android.content.BroadcastReceiver; Loading Loading @@ -86,6 +87,9 @@ class MountService extends IMountService.Stub implements INativeDaemonConnectorC private static final String VOLD_TAG = "VoldConnector"; /** Maximum number of ASEC containers allowed to be mounted. */ private static final int MAX_CONTAINERS = 250; /* * Internal vold volume state constants */ Loading Loading @@ -483,7 +487,6 @@ class MountService extends IMountService.Stub implements INativeDaemonConnectorC } } }; private final class MountServiceBinderListener implements IBinder.DeathRecipient { final IMountServiceListener mListener; Loading Loading @@ -1087,8 +1090,7 @@ class MountService extends IMountService.Stub implements INativeDaemonConnectorC * amount of containers we'd ever expect to have. This keeps an * "asec list" from blocking a thread repeatedly. */ mConnector = new NativeDaemonConnector(this, "vold", PackageManagerService.MAX_CONTAINERS * 2, VOLD_TAG); mConnector = new NativeDaemonConnector(this, "vold", MAX_CONTAINERS * 2, VOLD_TAG); mReady = false; Thread thread = new Thread(mConnector, VOLD_TAG); thread.start(); Loading services/java/com/android/server/SystemServer.java +1 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package com.android.server; import com.android.server.am.ActivityManagerService; import com.android.server.pm.PackageManagerService; import com.android.server.usb.UsbService; import com.android.server.wm.WindowManagerService; import com.android.internal.app.ShutdownThread; Loading services/java/com/android/server/pm/BasePermission.java 0 → 100644 +59 −0 Original line number Diff line number Diff line /* * Copyright (C) 2006 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server.pm; import android.content.pm.PackageParser; import android.content.pm.PermissionInfo; final class BasePermission { final static int TYPE_NORMAL = 0; final static int TYPE_BUILTIN = 1; final static int TYPE_DYNAMIC = 2; final String name; String sourcePackage; PackageSettingBase packageSetting; final int type; int protectionLevel; PackageParser.Permission perm; PermissionInfo pendingInfo; int uid; int[] gids; BasePermission(String _name, String _sourcePackage, int _type) { name = _name; sourcePackage = _sourcePackage; type = _type; // Default to most conservative protection level. protectionLevel = PermissionInfo.PROTECTION_SIGNATURE; } public String toString() { return "BasePermission{" + Integer.toHexString(System.identityHashCode(this)) + " " + name + "}"; } } services/java/com/android/server/pm/GrantedPermissions.java 0 → 100644 +50 −0 Original line number Diff line number Diff line /* * Copyright (C) 2011 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server.pm; import android.content.pm.ApplicationInfo; import java.util.HashSet; class GrantedPermissions { int pkgFlags; HashSet<String> grantedPermissions = new HashSet<String>(); int[] gids; GrantedPermissions(int pkgFlags) { setFlags(pkgFlags); } @SuppressWarnings("unchecked") GrantedPermissions(GrantedPermissions base) { pkgFlags = base.pkgFlags; grantedPermissions = (HashSet<String>) base.grantedPermissions.clone(); if (base.gids != null) { gids = base.gids.clone(); } } void setFlags(int pkgFlags) { this.pkgFlags = pkgFlags & (ApplicationInfo.FLAG_SYSTEM | ApplicationInfo.FLAG_FORWARD_LOCK | ApplicationInfo.FLAG_EXTERNAL_STORAGE); } } Loading
services/java/com/android/server/DeviceStorageMonitorService.java +2 −2 Original line number Diff line number Diff line Loading @@ -56,7 +56,7 @@ import android.util.Slog; * settings parameter with a default value of 2MB), the free memory is * logged to the event log. */ class DeviceStorageMonitorService extends Binder { public class DeviceStorageMonitorService extends Binder { private static final String TAG = "DeviceStorageMonitorService"; private static final boolean DEBUG = false; private static final boolean localLOGV = DEBUG ? Config.LOGD : Config.LOGV; Loading Loading @@ -99,7 +99,7 @@ class DeviceStorageMonitorService extends Binder { /** * This string is used for ServiceManager access to this class. */ static final String SERVICE = "devicestoragemonitor"; public static final String SERVICE = "devicestoragemonitor"; /** * Handler that checks the amount of disk space on the device and sends a Loading
services/java/com/android/server/MountService.java +5 −3 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package com.android.server; import com.android.internal.app.IMediaContainerService; import com.android.server.am.ActivityManagerService; import com.android.server.pm.PackageManagerService; import android.Manifest; import android.content.BroadcastReceiver; Loading Loading @@ -86,6 +87,9 @@ class MountService extends IMountService.Stub implements INativeDaemonConnectorC private static final String VOLD_TAG = "VoldConnector"; /** Maximum number of ASEC containers allowed to be mounted. */ private static final int MAX_CONTAINERS = 250; /* * Internal vold volume state constants */ Loading Loading @@ -483,7 +487,6 @@ class MountService extends IMountService.Stub implements INativeDaemonConnectorC } } }; private final class MountServiceBinderListener implements IBinder.DeathRecipient { final IMountServiceListener mListener; Loading Loading @@ -1087,8 +1090,7 @@ class MountService extends IMountService.Stub implements INativeDaemonConnectorC * amount of containers we'd ever expect to have. This keeps an * "asec list" from blocking a thread repeatedly. */ mConnector = new NativeDaemonConnector(this, "vold", PackageManagerService.MAX_CONTAINERS * 2, VOLD_TAG); mConnector = new NativeDaemonConnector(this, "vold", MAX_CONTAINERS * 2, VOLD_TAG); mReady = false; Thread thread = new Thread(mConnector, VOLD_TAG); thread.start(); Loading
services/java/com/android/server/SystemServer.java +1 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package com.android.server; import com.android.server.am.ActivityManagerService; import com.android.server.pm.PackageManagerService; import com.android.server.usb.UsbService; import com.android.server.wm.WindowManagerService; import com.android.internal.app.ShutdownThread; Loading
services/java/com/android/server/pm/BasePermission.java 0 → 100644 +59 −0 Original line number Diff line number Diff line /* * Copyright (C) 2006 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server.pm; import android.content.pm.PackageParser; import android.content.pm.PermissionInfo; final class BasePermission { final static int TYPE_NORMAL = 0; final static int TYPE_BUILTIN = 1; final static int TYPE_DYNAMIC = 2; final String name; String sourcePackage; PackageSettingBase packageSetting; final int type; int protectionLevel; PackageParser.Permission perm; PermissionInfo pendingInfo; int uid; int[] gids; BasePermission(String _name, String _sourcePackage, int _type) { name = _name; sourcePackage = _sourcePackage; type = _type; // Default to most conservative protection level. protectionLevel = PermissionInfo.PROTECTION_SIGNATURE; } public String toString() { return "BasePermission{" + Integer.toHexString(System.identityHashCode(this)) + " " + name + "}"; } }
services/java/com/android/server/pm/GrantedPermissions.java 0 → 100644 +50 −0 Original line number Diff line number Diff line /* * Copyright (C) 2011 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server.pm; import android.content.pm.ApplicationInfo; import java.util.HashSet; class GrantedPermissions { int pkgFlags; HashSet<String> grantedPermissions = new HashSet<String>(); int[] gids; GrantedPermissions(int pkgFlags) { setFlags(pkgFlags); } @SuppressWarnings("unchecked") GrantedPermissions(GrantedPermissions base) { pkgFlags = base.pkgFlags; grantedPermissions = (HashSet<String>) base.grantedPermissions.clone(); if (base.gids != null) { gids = base.gids.clone(); } } void setFlags(int pkgFlags) { this.pkgFlags = pkgFlags & (ApplicationInfo.FLAG_SYSTEM | ApplicationInfo.FLAG_FORWARD_LOCK | ApplicationInfo.FLAG_EXTERNAL_STORAGE); } }