New firewall chain for default background restrictions
A new firewall chain is needed to configure background network restrictions for apps. This change only adds the API stubs and traffic controller constants to make the chain work. Policy changes using this chain will follow in the framework code. Test: atest CtsNetTestCases:ConnectivityManagerTest Test: atest ConnectivityServiceTest NO_IFTTT=The Lint rule along with the relevant code in Common.h is being deleted in aosp/2819759 Bug: 304347838 Change-Id: I33e2db6671431f7c576fc931d9f96e684fc1e78a
This commit is contained in:
parent
bc4af4e1d0
commit
2d893b68a9
1 changed files with 59 additions and 3 deletions
|
|
@ -135,6 +135,8 @@ public class ConnectivityManager {
|
|||
"com.android.net.flags.set_data_saver_via_cm";
|
||||
static final String SUPPORT_IS_UID_NETWORKING_BLOCKED =
|
||||
"com.android.net.flags.support_is_uid_networking_blocked";
|
||||
static final String BASIC_BACKGROUND_RESTRICTIONS_ENABLED =
|
||||
"com.android.net.flags.basic_background_restrictions_enabled";
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -907,6 +909,16 @@ public class ConnectivityManager {
|
|||
@SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
|
||||
public static final int BLOCKED_REASON_LOW_POWER_STANDBY = 1 << 5;
|
||||
|
||||
/**
|
||||
* Flag to indicate that an app is subject to default background restrictions that would
|
||||
* result in its network access being blocked.
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
@FlaggedApi(Flags.BASIC_BACKGROUND_RESTRICTIONS_ENABLED)
|
||||
@SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
|
||||
public static final int BLOCKED_REASON_APP_BACKGROUND = 1 << 6;
|
||||
|
||||
/**
|
||||
* Flag to indicate that an app is subject to Data saver restrictions that would
|
||||
* result in its metered network access being blocked.
|
||||
|
|
@ -946,6 +958,7 @@ public class ConnectivityManager {
|
|||
BLOCKED_REASON_RESTRICTED_MODE,
|
||||
BLOCKED_REASON_LOCKDOWN_VPN,
|
||||
BLOCKED_REASON_LOW_POWER_STANDBY,
|
||||
BLOCKED_REASON_APP_BACKGROUND,
|
||||
BLOCKED_METERED_REASON_DATA_SAVER,
|
||||
BLOCKED_METERED_REASON_USER_RESTRICTED,
|
||||
BLOCKED_METERED_REASON_ADMIN_DISABLED,
|
||||
|
|
@ -1003,6 +1016,16 @@ public class ConnectivityManager {
|
|||
@SystemApi(client = MODULE_LIBRARIES)
|
||||
public static final int FIREWALL_CHAIN_LOW_POWER_STANDBY = 5;
|
||||
|
||||
/**
|
||||
* Firewall chain used for always-on default background restrictions.
|
||||
* Allowlist of apps that have access because either they are in the foreground or they are
|
||||
* exempted for specific situations while in the background.
|
||||
* @hide
|
||||
*/
|
||||
@FlaggedApi(Flags.BASIC_BACKGROUND_RESTRICTIONS_ENABLED)
|
||||
@SystemApi(client = MODULE_LIBRARIES)
|
||||
public static final int FIREWALL_CHAIN_BACKGROUND = 6;
|
||||
|
||||
/**
|
||||
* Firewall chain used for OEM-specific application restrictions.
|
||||
*
|
||||
|
|
@ -1062,6 +1085,7 @@ public class ConnectivityManager {
|
|||
FIREWALL_CHAIN_POWERSAVE,
|
||||
FIREWALL_CHAIN_RESTRICTED,
|
||||
FIREWALL_CHAIN_LOW_POWER_STANDBY,
|
||||
FIREWALL_CHAIN_BACKGROUND,
|
||||
FIREWALL_CHAIN_OEM_DENY_1,
|
||||
FIREWALL_CHAIN_OEM_DENY_2,
|
||||
FIREWALL_CHAIN_OEM_DENY_3
|
||||
|
|
|
|||
Loading…
Reference in a new issue