Allow VPNs to add/remove link addresses dynamically.
Bug: 15409819 Change-Id: If91fc6891d7ce04060362c6cde8c57462394c4e8
This commit is contained in:
@@ -163,4 +163,7 @@ interface IConnectivityManager
|
||||
void releaseNetworkRequest(in NetworkRequest networkRequest);
|
||||
|
||||
int getRestoreDefaultNetworkDelay(int networkType);
|
||||
|
||||
boolean addVpnAddress(String address, int prefixLength);
|
||||
boolean removeVpnAddress(String address, int prefixLength);
|
||||
}
|
||||
|
||||
@@ -5351,4 +5351,22 @@ public class ConnectivityService extends IConnectivityManager.Stub {
|
||||
}
|
||||
return new NetworkCapabilities();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean addVpnAddress(String address, int prefixLength) {
|
||||
throwIfLockdownEnabled();
|
||||
int user = UserHandle.getUserId(Binder.getCallingUid());
|
||||
synchronized (mVpns) {
|
||||
return mVpns.get(user).addAddress(address, prefixLength);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean removeVpnAddress(String address, int prefixLength) {
|
||||
throwIfLockdownEnabled();
|
||||
int user = UserHandle.getUserId(Binder.getCallingUid());
|
||||
synchronized (mVpns) {
|
||||
return mVpns.get(user).removeAddress(address, prefixLength);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user