summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/os/INetworkManagementService.aidl39
1 files changed, 39 insertions, 0 deletions
diff --git a/core/java/android/os/INetworkManagementService.aidl b/core/java/android/os/INetworkManagementService.aidl
index 45524c82c9e2..3088585674e1 100644
--- a/core/java/android/os/INetworkManagementService.aidl
+++ b/core/java/android/os/INetworkManagementService.aidl
@@ -344,6 +344,30 @@ interface INetworkManagementService
void setFirewallUidRule(int uid, boolean allow);
/**
+ * Set all packets from users [uid_start,uid_end] to go through interface iface
+ * iface must already be set for marked forwarding by {@link setMarkedForwarding}
+ */
+ void setUidRangeRoute(String iface, int uid_start, int uid_end);
+
+ /**
+ * Clears the special routing rules for users [uid_start,uid_end]
+ */
+ void clearUidRangeRoute(String iface, int uid_start, int uid_end);
+
+ /**
+ * Setup an interface for routing packets marked by {@link setUidRangeRoute}
+ *
+ * This sets up a dedicated routing table for packets marked for {@code iface} and adds
+ * source-NAT rules so that the marked packets have the correct source address.
+ */
+ void setMarkedForwarding(String iface);
+
+ /**
+ * Removes marked forwarding for an interface
+ */
+ void clearMarkedForwarding(String iface);
+
+ /**
* Set a process (pid) to use the name servers associated with the specified interface.
*/
void setDnsInterfaceForPid(String iface, int pid);
@@ -354,6 +378,21 @@ interface INetworkManagementService
void clearDnsInterfaceForPid(int pid);
/**
+ * Set a range of user ids to use the name servers associated with the specified interface.
+ */
+ void setDnsInterfaceForUidRange(String iface, int uid_start, int uid_end);
+
+ /**
+ * Clear a user range from being associated with an interface.
+ */
+ void clearDnsInterfaceForUidRange(int uid_start, int uid_end);
+
+ /**
+ * Clear the mappings from pid to Dns interface and from uid range to Dns interface.
+ */
+ void clearDnsInterfaceMaps();
+
+ /**
* Start the clatd (464xlat) service
*/
void startClatd(String interfaceName);