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);
|
void releaseNetworkRequest(in NetworkRequest networkRequest);
|
||||||
|
|
||||||
int getRestoreDefaultNetworkDelay(int networkType);
|
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();
|
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