Loading core/java/android/net/ConnectivityManager.java +17 −0 Original line number Diff line number Diff line Loading @@ -684,6 +684,23 @@ public class ConnectivityManager { } } /** * Returns the {@link Network} object currently serving a given type, or * null if the given type is not connected. * * <p>This method requires the caller to hold the permission * {@link android.Manifest.permission#ACCESS_NETWORK_STATE}. * * @hide */ public Network getNetworkForType(int networkType) { try { return mService.getNetworkForType(networkType); } catch (RemoteException e) { return null; } } /** * Returns an array of all {@link Network} currently tracked by the * framework. Loading core/java/android/net/IConnectivityManager.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -48,6 +48,7 @@ interface IConnectivityManager NetworkInfo getNetworkInfo(int networkType); NetworkInfo getNetworkInfoForNetwork(in Network network); NetworkInfo[] getAllNetworkInfo(); Network getNetworkForType(int networkType); Network[] getAllNetworks(); NetworkInfo getProvisioningOrActiveNetworkInfo(); Loading core/java/android/os/INetworkManagementService.aidl +3 −2 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package android.os; import android.net.InterfaceConfiguration; import android.net.INetworkManagementEventObserver; import android.net.Network; import android.net.NetworkStats; import android.net.RouteInfo; import android.net.UidRange; Loading Loading @@ -164,10 +165,10 @@ interface INetworkManagementService /** * Sets the list of DNS forwarders (in order of priority) */ void setDnsForwarders(in String[] dns); void setDnsForwarders(in Network network, in String[] dns); /** * Returns the list of DNS fowarders (in order of priority) * Returns the list of DNS forwarders (in order of priority) */ String[] getDnsForwarders(); Loading services/core/java/com/android/server/ConnectivityService.java +12 −1 Original line number Diff line number Diff line Loading @@ -966,6 +966,17 @@ public class ConnectivityService extends IConnectivityManager.Stub { return result.toArray(new NetworkInfo[result.size()]); } @Override public Network getNetworkForType(int networkType) { enforceAccessPermission(); final int uid = Binder.getCallingUid(); if (isNetworkBlocked(networkType, uid)) { return null; } NetworkAgentInfo nai = mLegacyTypeTracker.getNetworkForType(networkType); return (nai == null) ? null : nai.network; } @Override public Network[] getAllNetworks() { enforceAccessPermission(); Loading Loading @@ -1724,7 +1735,7 @@ public class ConnectivityService extends IConnectivityManager.Stub { pw.println(); synchronized (this) { pw.println("NetworkTranstionWakeLock is currently " + pw.println("NetworkTransitionWakeLock is currently " + (mNetTransitionWakeLock.isHeld() ? "" : "not ") + "held."); pw.println("It was last requested for "+mNetTransitionWakeLockCausedBy); } Loading services/core/java/com/android/server/NetworkManagementService.java +5 −2 Original line number Diff line number Diff line Loading @@ -44,6 +44,7 @@ import android.net.INetworkManagementEventObserver; import android.net.InterfaceConfiguration; import android.net.IpPrefix; import android.net.LinkAddress; import android.net.Network; import android.net.NetworkStats; import android.net.NetworkUtils; import android.net.RouteInfo; Loading Loading @@ -1200,10 +1201,12 @@ public class NetworkManagementService extends INetworkManagementService.Stub } @Override public void setDnsForwarders(String[] dns) { public void setDnsForwarders(Network network, String[] dns) { mContext.enforceCallingOrSelfPermission(CONNECTIVITY_INTERNAL, TAG); final Command cmd = new Command("tether", "dns", "set"); int netId = (network != null) ? network.netId : ConnectivityManager.NETID_UNSET; final Command cmd = new Command("tether", "dns", "set", netId); for (String s : dns) { cmd.appendArg(NetworkUtils.numericToInetAddress(s).getHostAddress()); } Loading Loading
core/java/android/net/ConnectivityManager.java +17 −0 Original line number Diff line number Diff line Loading @@ -684,6 +684,23 @@ public class ConnectivityManager { } } /** * Returns the {@link Network} object currently serving a given type, or * null if the given type is not connected. * * <p>This method requires the caller to hold the permission * {@link android.Manifest.permission#ACCESS_NETWORK_STATE}. * * @hide */ public Network getNetworkForType(int networkType) { try { return mService.getNetworkForType(networkType); } catch (RemoteException e) { return null; } } /** * Returns an array of all {@link Network} currently tracked by the * framework. Loading
core/java/android/net/IConnectivityManager.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -48,6 +48,7 @@ interface IConnectivityManager NetworkInfo getNetworkInfo(int networkType); NetworkInfo getNetworkInfoForNetwork(in Network network); NetworkInfo[] getAllNetworkInfo(); Network getNetworkForType(int networkType); Network[] getAllNetworks(); NetworkInfo getProvisioningOrActiveNetworkInfo(); Loading
core/java/android/os/INetworkManagementService.aidl +3 −2 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package android.os; import android.net.InterfaceConfiguration; import android.net.INetworkManagementEventObserver; import android.net.Network; import android.net.NetworkStats; import android.net.RouteInfo; import android.net.UidRange; Loading Loading @@ -164,10 +165,10 @@ interface INetworkManagementService /** * Sets the list of DNS forwarders (in order of priority) */ void setDnsForwarders(in String[] dns); void setDnsForwarders(in Network network, in String[] dns); /** * Returns the list of DNS fowarders (in order of priority) * Returns the list of DNS forwarders (in order of priority) */ String[] getDnsForwarders(); Loading
services/core/java/com/android/server/ConnectivityService.java +12 −1 Original line number Diff line number Diff line Loading @@ -966,6 +966,17 @@ public class ConnectivityService extends IConnectivityManager.Stub { return result.toArray(new NetworkInfo[result.size()]); } @Override public Network getNetworkForType(int networkType) { enforceAccessPermission(); final int uid = Binder.getCallingUid(); if (isNetworkBlocked(networkType, uid)) { return null; } NetworkAgentInfo nai = mLegacyTypeTracker.getNetworkForType(networkType); return (nai == null) ? null : nai.network; } @Override public Network[] getAllNetworks() { enforceAccessPermission(); Loading Loading @@ -1724,7 +1735,7 @@ public class ConnectivityService extends IConnectivityManager.Stub { pw.println(); synchronized (this) { pw.println("NetworkTranstionWakeLock is currently " + pw.println("NetworkTransitionWakeLock is currently " + (mNetTransitionWakeLock.isHeld() ? "" : "not ") + "held."); pw.println("It was last requested for "+mNetTransitionWakeLockCausedBy); } Loading
services/core/java/com/android/server/NetworkManagementService.java +5 −2 Original line number Diff line number Diff line Loading @@ -44,6 +44,7 @@ import android.net.INetworkManagementEventObserver; import android.net.InterfaceConfiguration; import android.net.IpPrefix; import android.net.LinkAddress; import android.net.Network; import android.net.NetworkStats; import android.net.NetworkUtils; import android.net.RouteInfo; Loading Loading @@ -1200,10 +1201,12 @@ public class NetworkManagementService extends INetworkManagementService.Stub } @Override public void setDnsForwarders(String[] dns) { public void setDnsForwarders(Network network, String[] dns) { mContext.enforceCallingOrSelfPermission(CONNECTIVITY_INTERNAL, TAG); final Command cmd = new Command("tether", "dns", "set"); int netId = (network != null) ? network.netId : ConnectivityManager.NETID_UNSET; final Command cmd = new Command("tether", "dns", "set", netId); for (String s : dns) { cmd.appendArg(NetworkUtils.numericToInetAddress(s).getHostAddress()); } Loading