diff options
| author | Geremy Condra <gcondra@google.com> | 2013-06-13 23:30:49 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2013-06-13 23:30:49 +0000 |
| commit | e08d54b92e32244a44283a84d7fae9ca37ff51b5 (patch) | |
| tree | 0b50eaaa8307e8f62ed0ea67a37325830a5d8334 /core/java/android | |
| parent | 256a5f8cda213969d9ae577a13427b4ae371ea61 (diff) | |
| parent | 3277620a69b6b9f27126f0b2651ea4293731cd09 (diff) | |
Merge "Add NetworkManagement methods for netd uid binds"
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/os/INetworkManagementService.aidl | 39 |
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); |
