Using PermissionUtils for common net permissions am: 54e3aebb95 am: 1f749592d8
Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/net/ethernet/+/1934761 Change-Id: Ic494f9796634f857962c85139383d99046c97f65
This commit is contained in:
@@ -61,18 +61,6 @@ public class EthernetServiceImpl extends IEthernetManager.Stub {
|
|||||||
mTracker = tracker;
|
mTracker = tracker;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void enforceAccessPermission() {
|
|
||||||
mContext.enforceCallingOrSelfPermission(
|
|
||||||
android.Manifest.permission.ACCESS_NETWORK_STATE,
|
|
||||||
"EthernetService");
|
|
||||||
}
|
|
||||||
|
|
||||||
private void enforceUseRestrictedNetworksPermission() {
|
|
||||||
mContext.enforceCallingOrSelfPermission(
|
|
||||||
android.Manifest.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS,
|
|
||||||
"ConnectivityService");
|
|
||||||
}
|
|
||||||
|
|
||||||
private void enforceAutomotiveDevice(final @NonNull String methodName) {
|
private void enforceAutomotiveDevice(final @NonNull String methodName) {
|
||||||
PermissionUtils.enforceSystemFeature(mContext, PackageManager.FEATURE_AUTOMOTIVE,
|
PermissionUtils.enforceSystemFeature(mContext, PackageManager.FEATURE_AUTOMOTIVE,
|
||||||
methodName + " is only available on automotive devices.");
|
methodName + " is only available on automotive devices.");
|
||||||
@@ -85,9 +73,8 @@ public class EthernetServiceImpl extends IEthernetManager.Stub {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private boolean checkUseRestrictedNetworksPermission() {
|
private boolean checkUseRestrictedNetworksPermission() {
|
||||||
return mContext.checkCallingOrSelfPermission(
|
return PermissionUtils.checkAnyPermissionOf(mContext,
|
||||||
android.Manifest.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS)
|
android.Manifest.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS);
|
||||||
== PackageManager.PERMISSION_GRANTED;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void start() {
|
public void start() {
|
||||||
@@ -104,8 +91,7 @@ public class EthernetServiceImpl extends IEthernetManager.Stub {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String[] getAvailableInterfaces() throws RemoteException {
|
public String[] getAvailableInterfaces() throws RemoteException {
|
||||||
enforceAccessPermission();
|
PermissionUtils.enforceAccessNetworkStatePermission(mContext, TAG);
|
||||||
|
|
||||||
return mTracker.getInterfaces(checkUseRestrictedNetworksPermission());
|
return mTracker.getInterfaces(checkUseRestrictedNetworksPermission());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -115,10 +101,9 @@ public class EthernetServiceImpl extends IEthernetManager.Stub {
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public IpConfiguration getConfiguration(String iface) {
|
public IpConfiguration getConfiguration(String iface) {
|
||||||
enforceAccessPermission();
|
PermissionUtils.enforceAccessNetworkStatePermission(mContext, TAG);
|
||||||
|
|
||||||
if (mTracker.isRestrictedInterface(iface)) {
|
if (mTracker.isRestrictedInterface(iface)) {
|
||||||
enforceUseRestrictedNetworksPermission();
|
PermissionUtils.enforceRestrictedNetworkPermission(mContext, TAG);
|
||||||
}
|
}
|
||||||
|
|
||||||
return new IpConfiguration(mTracker.getIpConfiguration(iface));
|
return new IpConfiguration(mTracker.getIpConfiguration(iface));
|
||||||
@@ -132,9 +117,8 @@ public class EthernetServiceImpl extends IEthernetManager.Stub {
|
|||||||
logIfEthernetNotStarted();
|
logIfEthernetNotStarted();
|
||||||
|
|
||||||
PermissionUtils.enforceNetworkStackPermission(mContext);
|
PermissionUtils.enforceNetworkStackPermission(mContext);
|
||||||
|
|
||||||
if (mTracker.isRestrictedInterface(iface)) {
|
if (mTracker.isRestrictedInterface(iface)) {
|
||||||
enforceUseRestrictedNetworksPermission();
|
PermissionUtils.enforceRestrictedNetworkPermission(mContext, TAG);
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: this does not check proxy settings, gateways, etc.
|
// TODO: this does not check proxy settings, gateways, etc.
|
||||||
@@ -147,10 +131,9 @@ public class EthernetServiceImpl extends IEthernetManager.Stub {
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public boolean isAvailable(String iface) {
|
public boolean isAvailable(String iface) {
|
||||||
enforceAccessPermission();
|
PermissionUtils.enforceAccessNetworkStatePermission(mContext, TAG);
|
||||||
|
|
||||||
if (mTracker.isRestrictedInterface(iface)) {
|
if (mTracker.isRestrictedInterface(iface)) {
|
||||||
enforceUseRestrictedNetworksPermission();
|
PermissionUtils.enforceRestrictedNetworkPermission(mContext, TAG);
|
||||||
}
|
}
|
||||||
|
|
||||||
return mTracker.isTrackingInterface(iface);
|
return mTracker.isTrackingInterface(iface);
|
||||||
@@ -164,7 +147,7 @@ public class EthernetServiceImpl extends IEthernetManager.Stub {
|
|||||||
if (listener == null) {
|
if (listener == null) {
|
||||||
throw new IllegalArgumentException("listener must not be null");
|
throw new IllegalArgumentException("listener must not be null");
|
||||||
}
|
}
|
||||||
enforceAccessPermission();
|
PermissionUtils.enforceAccessNetworkStatePermission(mContext, TAG);
|
||||||
mTracker.addListener(listener, checkUseRestrictedNetworksPermission());
|
mTracker.addListener(listener, checkUseRestrictedNetworksPermission());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -176,7 +159,7 @@ public class EthernetServiceImpl extends IEthernetManager.Stub {
|
|||||||
if (listener == null) {
|
if (listener == null) {
|
||||||
throw new IllegalArgumentException("listener must not be null");
|
throw new IllegalArgumentException("listener must not be null");
|
||||||
}
|
}
|
||||||
enforceAccessPermission();
|
PermissionUtils.enforceAccessNetworkStatePermission(mContext, TAG);
|
||||||
mTracker.removeListener(listener);
|
mTracker.removeListener(listener);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user