Loading core/java/android/net/IConnectivityManager.aidl +0 −6 Original line number Original line Diff line number Diff line Loading @@ -93,12 +93,6 @@ interface IConnectivityManager String[] getTetheredIfaces(); String[] getTetheredIfaces(); /** * Return list of interface pairs that are actively tethered. Even indexes are * remote interface, and odd indexes are corresponding local interfaces. */ String[] getTetheredIfacePairs(); String[] getTetheringErroredIfaces(); String[] getTetheringErroredIfaces(); String[] getTetherableUsbRegexs(); String[] getTetherableUsbRegexs(); Loading core/java/android/os/INetworkManagementService.aidl +2 −4 Original line number Original line Diff line number Diff line Loading @@ -260,11 +260,9 @@ interface INetworkManagementService NetworkStats getNetworkStatsUidDetail(int uid); NetworkStats getNetworkStatsUidDetail(int uid); /** /** * Return summary of network statistics for the requested pairs of * Return summary of network statistics all tethering interfaces. * tethering interfaces. Even indexes are remote interface, and odd * indexes are corresponding local interfaces. */ */ NetworkStats getNetworkStatsTethering(in String[] ifacePairs); NetworkStats getNetworkStatsTethering(); /** /** * Set quota for an interface. * Set quota for an interface. Loading packages/DocumentsUI/res/layout/fragment_directory.xml +0 −8 Original line number Original line Diff line number Diff line Loading @@ -40,12 +40,4 @@ android:listSelector="@android:color/transparent" android:listSelector="@android:color/transparent" android:visibility="gone" /> android:visibility="gone" /> <Button android:id="@+id/more" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="bottom" android:text="@string/more" android:visibility="gone" /> </FrameLayout> </FrameLayout> services/java/com/android/server/ConnectivityService.java +1 −9 Original line number Original line Diff line number Diff line Loading @@ -58,8 +58,8 @@ import android.net.INetworkPolicyManager; import android.net.INetworkStatsService; import android.net.INetworkStatsService; import android.net.LinkAddress; import android.net.LinkAddress; import android.net.LinkProperties; import android.net.LinkProperties; import android.net.LinkQualityInfo; import android.net.LinkProperties.CompareResult; import android.net.LinkProperties.CompareResult; import android.net.LinkQualityInfo; import android.net.MobileDataStateTracker; import android.net.MobileDataStateTracker; import android.net.NetworkConfig; import android.net.NetworkConfig; import android.net.NetworkInfo; import android.net.NetworkInfo; Loading Loading @@ -89,7 +89,6 @@ import android.os.ParcelFileDescriptor; import android.os.PowerManager; import android.os.PowerManager; import android.os.Process; import android.os.Process; import android.os.RemoteException; import android.os.RemoteException; import android.os.ResultReceiver; import android.os.ServiceManager; import android.os.ServiceManager; import android.os.SystemClock; import android.os.SystemClock; import android.os.SystemProperties; import android.os.SystemProperties; Loading @@ -114,7 +113,6 @@ import com.android.internal.telephony.Phone; import com.android.internal.telephony.PhoneConstants; import com.android.internal.telephony.PhoneConstants; import com.android.internal.util.IndentingPrintWriter; import com.android.internal.util.IndentingPrintWriter; import com.android.internal.util.XmlUtils; import com.android.internal.util.XmlUtils; import com.android.net.IProxyService; import com.android.server.am.BatteryStatsService; import com.android.server.am.BatteryStatsService; import com.android.server.connectivity.DataConnectionStats; import com.android.server.connectivity.DataConnectionStats; import com.android.server.connectivity.Nat464Xlat; import com.android.server.connectivity.Nat464Xlat; Loading Loading @@ -3209,12 +3207,6 @@ public class ConnectivityService extends IConnectivityManager.Stub { return mTethering.getTetheredIfaces(); return mTethering.getTetheredIfaces(); } } @Override public String[] getTetheredIfacePairs() { enforceTetherAccessPermission(); return mTethering.getTetheredIfacePairs(); } public String[] getTetheringErroredIfaces() { public String[] getTetheringErroredIfaces() { enforceTetherAccessPermission(); enforceTetherAccessPermission(); return mTethering.getErroredIfaces(); return mTethering.getErroredIfaces(); Loading services/java/com/android/server/NetworkManagementService.java +34 −45 Original line number Original line Diff line number Diff line Loading @@ -24,15 +24,15 @@ import static android.net.NetworkStats.TAG_NONE; import static android.net.NetworkStats.UID_ALL; import static android.net.NetworkStats.UID_ALL; import static android.net.TrafficStats.UID_TETHERING; import static android.net.TrafficStats.UID_TETHERING; import static com.android.server.NetworkManagementService.NetdResponseCode.ClatdStatusResult; import static com.android.server.NetworkManagementService.NetdResponseCode.ClatdStatusResult; import static com.android.server.NetworkManagementService.NetdResponseCode.GetMarkResult; import static com.android.server.NetworkManagementService.NetdResponseCode.InterfaceGetCfgResult; import static com.android.server.NetworkManagementService.NetdResponseCode.InterfaceGetCfgResult; import static com.android.server.NetworkManagementService.NetdResponseCode.InterfaceListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.InterfaceListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.IpFwdStatusResult; import static com.android.server.NetworkManagementService.NetdResponseCode.IpFwdStatusResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetherDnsFwdTgtListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetherDnsFwdTgtListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetherInterfaceListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetherInterfaceListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetherStatusResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetherStatusResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetheringStatsResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetheringStatsListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TtyListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TtyListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.GetMarkResult; import static com.android.server.NetworkManagementSocketTagger.PROP_QTAGUID_ENABLED; import static com.android.server.NetworkManagementSocketTagger.PROP_QTAGUID_ENABLED; import android.content.Context; import android.content.Context; Loading Loading @@ -118,6 +118,7 @@ public class NetworkManagementService extends INetworkManagementService.Stub public static final int TetherInterfaceListResult = 111; public static final int TetherInterfaceListResult = 111; public static final int TetherDnsFwdTgtListResult = 112; public static final int TetherDnsFwdTgtListResult = 112; public static final int TtyListResult = 113; public static final int TtyListResult = 113; public static final int TetheringStatsListResult = 114; public static final int TetherStatusResult = 210; public static final int TetherStatusResult = 210; public static final int IpFwdStatusResult = 211; public static final int IpFwdStatusResult = 211; Loading Loading @@ -523,7 +524,8 @@ public class NetworkManagementService extends INetworkManagementService.Stub throw new IllegalStateException(msg); throw new IllegalStateException(msg); } } int flags, scope; int flags; int scope; try { try { flags = Integer.parseInt(cooked[5]); flags = Integer.parseInt(cooked[5]); scope = Integer.parseInt(cooked[6]); scope = Integer.parseInt(cooked[6]); Loading Loading @@ -1373,43 +1375,24 @@ public class NetworkManagementService extends INetworkManagementService.Stub } } @Override @Override public NetworkStats getNetworkStatsTethering(String[] ifacePairs) { public NetworkStats getNetworkStatsTethering() { mContext.enforceCallingOrSelfPermission(CONNECTIVITY_INTERNAL, TAG); mContext.enforceCallingOrSelfPermission(CONNECTIVITY_INTERNAL, TAG); if (ifacePairs.length % 2 != 0) { throw new IllegalArgumentException( "unexpected ifacePairs; length=" + ifacePairs.length); } final NetworkStats stats = new NetworkStats(SystemClock.elapsedRealtime(), 1); final NetworkStats stats = new NetworkStats(SystemClock.elapsedRealtime(), 1); for (int i = 0; i < ifacePairs.length; i += 2) { final String ifaceIn = ifacePairs[i]; final String ifaceOut = ifacePairs[i + 1]; if (ifaceIn != null && ifaceOut != null) { stats.combineValues(getNetworkStatsTethering(ifaceIn, ifaceOut)); } } return stats; } private NetworkStats.Entry getNetworkStatsTethering(String ifaceIn, String ifaceOut) { final NativeDaemonEvent event; try { try { event = mConnector.execute("bandwidth", "gettetherstats", ifaceIn, ifaceOut); final NativeDaemonEvent[] events = mConnector.executeForList( } catch (NativeDaemonConnectorException e) { "bandwidth", "gettetherstats"); throw e.rethrowAsParcelableException(); for (NativeDaemonEvent event : events) { } if (event.getCode() != TetheringStatsListResult) continue; event.checkCode(TetheringStatsResult); // 221 ifaceIn ifaceOut rx_bytes rx_packets tx_bytes tx_packets // 114 ifaceIn ifaceOut rx_bytes rx_packets tx_bytes tx_packets final StringTokenizer tok = new StringTokenizer(event.getMessage()); final StringTokenizer tok = new StringTokenizer(event.getMessage()); tok.nextToken(); tok.nextToken(); try { try { final String ifaceIn = tok.nextToken(); final String ifaceOut = tok.nextToken(); final NetworkStats.Entry entry = new NetworkStats.Entry(); final NetworkStats.Entry entry = new NetworkStats.Entry(); entry.iface = ifaceIn; entry.iface = ifaceOut; entry.uid = UID_TETHERING; entry.uid = UID_TETHERING; entry.set = SET_DEFAULT; entry.set = SET_DEFAULT; entry.tag = TAG_NONE; entry.tag = TAG_NONE; Loading @@ -1417,12 +1400,18 @@ public class NetworkManagementService extends INetworkManagementService.Stub entry.rxPackets = Long.parseLong(tok.nextToken()); entry.rxPackets = Long.parseLong(tok.nextToken()); entry.txBytes = Long.parseLong(tok.nextToken()); entry.txBytes = Long.parseLong(tok.nextToken()); entry.txPackets = Long.parseLong(tok.nextToken()); entry.txPackets = Long.parseLong(tok.nextToken()); return entry; stats.combineValues(entry); } catch (NoSuchElementException e) { throw new IllegalStateException("problem parsing tethering stats: " + event); } catch (NumberFormatException e) { } catch (NumberFormatException e) { throw new IllegalStateException( throw new IllegalStateException("problem parsing tethering stats: " + event); "problem parsing tethering stats for " + ifaceIn + " " + ifaceOut + ": " + e); } } } } } catch (NativeDaemonConnectorException e) { throw e.rethrowAsParcelableException(); } return stats; } @Override @Override public void setDefaultInterfaceForDns(String iface) { public void setDefaultInterfaceForDns(String iface) { Loading Loading
core/java/android/net/IConnectivityManager.aidl +0 −6 Original line number Original line Diff line number Diff line Loading @@ -93,12 +93,6 @@ interface IConnectivityManager String[] getTetheredIfaces(); String[] getTetheredIfaces(); /** * Return list of interface pairs that are actively tethered. Even indexes are * remote interface, and odd indexes are corresponding local interfaces. */ String[] getTetheredIfacePairs(); String[] getTetheringErroredIfaces(); String[] getTetheringErroredIfaces(); String[] getTetherableUsbRegexs(); String[] getTetherableUsbRegexs(); Loading
core/java/android/os/INetworkManagementService.aidl +2 −4 Original line number Original line Diff line number Diff line Loading @@ -260,11 +260,9 @@ interface INetworkManagementService NetworkStats getNetworkStatsUidDetail(int uid); NetworkStats getNetworkStatsUidDetail(int uid); /** /** * Return summary of network statistics for the requested pairs of * Return summary of network statistics all tethering interfaces. * tethering interfaces. Even indexes are remote interface, and odd * indexes are corresponding local interfaces. */ */ NetworkStats getNetworkStatsTethering(in String[] ifacePairs); NetworkStats getNetworkStatsTethering(); /** /** * Set quota for an interface. * Set quota for an interface. Loading
packages/DocumentsUI/res/layout/fragment_directory.xml +0 −8 Original line number Original line Diff line number Diff line Loading @@ -40,12 +40,4 @@ android:listSelector="@android:color/transparent" android:listSelector="@android:color/transparent" android:visibility="gone" /> android:visibility="gone" /> <Button android:id="@+id/more" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="bottom" android:text="@string/more" android:visibility="gone" /> </FrameLayout> </FrameLayout>
services/java/com/android/server/ConnectivityService.java +1 −9 Original line number Original line Diff line number Diff line Loading @@ -58,8 +58,8 @@ import android.net.INetworkPolicyManager; import android.net.INetworkStatsService; import android.net.INetworkStatsService; import android.net.LinkAddress; import android.net.LinkAddress; import android.net.LinkProperties; import android.net.LinkProperties; import android.net.LinkQualityInfo; import android.net.LinkProperties.CompareResult; import android.net.LinkProperties.CompareResult; import android.net.LinkQualityInfo; import android.net.MobileDataStateTracker; import android.net.MobileDataStateTracker; import android.net.NetworkConfig; import android.net.NetworkConfig; import android.net.NetworkInfo; import android.net.NetworkInfo; Loading Loading @@ -89,7 +89,6 @@ import android.os.ParcelFileDescriptor; import android.os.PowerManager; import android.os.PowerManager; import android.os.Process; import android.os.Process; import android.os.RemoteException; import android.os.RemoteException; import android.os.ResultReceiver; import android.os.ServiceManager; import android.os.ServiceManager; import android.os.SystemClock; import android.os.SystemClock; import android.os.SystemProperties; import android.os.SystemProperties; Loading @@ -114,7 +113,6 @@ import com.android.internal.telephony.Phone; import com.android.internal.telephony.PhoneConstants; import com.android.internal.telephony.PhoneConstants; import com.android.internal.util.IndentingPrintWriter; import com.android.internal.util.IndentingPrintWriter; import com.android.internal.util.XmlUtils; import com.android.internal.util.XmlUtils; import com.android.net.IProxyService; import com.android.server.am.BatteryStatsService; import com.android.server.am.BatteryStatsService; import com.android.server.connectivity.DataConnectionStats; import com.android.server.connectivity.DataConnectionStats; import com.android.server.connectivity.Nat464Xlat; import com.android.server.connectivity.Nat464Xlat; Loading Loading @@ -3209,12 +3207,6 @@ public class ConnectivityService extends IConnectivityManager.Stub { return mTethering.getTetheredIfaces(); return mTethering.getTetheredIfaces(); } } @Override public String[] getTetheredIfacePairs() { enforceTetherAccessPermission(); return mTethering.getTetheredIfacePairs(); } public String[] getTetheringErroredIfaces() { public String[] getTetheringErroredIfaces() { enforceTetherAccessPermission(); enforceTetherAccessPermission(); return mTethering.getErroredIfaces(); return mTethering.getErroredIfaces(); Loading
services/java/com/android/server/NetworkManagementService.java +34 −45 Original line number Original line Diff line number Diff line Loading @@ -24,15 +24,15 @@ import static android.net.NetworkStats.TAG_NONE; import static android.net.NetworkStats.UID_ALL; import static android.net.NetworkStats.UID_ALL; import static android.net.TrafficStats.UID_TETHERING; import static android.net.TrafficStats.UID_TETHERING; import static com.android.server.NetworkManagementService.NetdResponseCode.ClatdStatusResult; import static com.android.server.NetworkManagementService.NetdResponseCode.ClatdStatusResult; import static com.android.server.NetworkManagementService.NetdResponseCode.GetMarkResult; import static com.android.server.NetworkManagementService.NetdResponseCode.InterfaceGetCfgResult; import static com.android.server.NetworkManagementService.NetdResponseCode.InterfaceGetCfgResult; import static com.android.server.NetworkManagementService.NetdResponseCode.InterfaceListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.InterfaceListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.IpFwdStatusResult; import static com.android.server.NetworkManagementService.NetdResponseCode.IpFwdStatusResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetherDnsFwdTgtListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetherDnsFwdTgtListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetherInterfaceListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetherInterfaceListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetherStatusResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetherStatusResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetheringStatsResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TetheringStatsListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TtyListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.TtyListResult; import static com.android.server.NetworkManagementService.NetdResponseCode.GetMarkResult; import static com.android.server.NetworkManagementSocketTagger.PROP_QTAGUID_ENABLED; import static com.android.server.NetworkManagementSocketTagger.PROP_QTAGUID_ENABLED; import android.content.Context; import android.content.Context; Loading Loading @@ -118,6 +118,7 @@ public class NetworkManagementService extends INetworkManagementService.Stub public static final int TetherInterfaceListResult = 111; public static final int TetherInterfaceListResult = 111; public static final int TetherDnsFwdTgtListResult = 112; public static final int TetherDnsFwdTgtListResult = 112; public static final int TtyListResult = 113; public static final int TtyListResult = 113; public static final int TetheringStatsListResult = 114; public static final int TetherStatusResult = 210; public static final int TetherStatusResult = 210; public static final int IpFwdStatusResult = 211; public static final int IpFwdStatusResult = 211; Loading Loading @@ -523,7 +524,8 @@ public class NetworkManagementService extends INetworkManagementService.Stub throw new IllegalStateException(msg); throw new IllegalStateException(msg); } } int flags, scope; int flags; int scope; try { try { flags = Integer.parseInt(cooked[5]); flags = Integer.parseInt(cooked[5]); scope = Integer.parseInt(cooked[6]); scope = Integer.parseInt(cooked[6]); Loading Loading @@ -1373,43 +1375,24 @@ public class NetworkManagementService extends INetworkManagementService.Stub } } @Override @Override public NetworkStats getNetworkStatsTethering(String[] ifacePairs) { public NetworkStats getNetworkStatsTethering() { mContext.enforceCallingOrSelfPermission(CONNECTIVITY_INTERNAL, TAG); mContext.enforceCallingOrSelfPermission(CONNECTIVITY_INTERNAL, TAG); if (ifacePairs.length % 2 != 0) { throw new IllegalArgumentException( "unexpected ifacePairs; length=" + ifacePairs.length); } final NetworkStats stats = new NetworkStats(SystemClock.elapsedRealtime(), 1); final NetworkStats stats = new NetworkStats(SystemClock.elapsedRealtime(), 1); for (int i = 0; i < ifacePairs.length; i += 2) { final String ifaceIn = ifacePairs[i]; final String ifaceOut = ifacePairs[i + 1]; if (ifaceIn != null && ifaceOut != null) { stats.combineValues(getNetworkStatsTethering(ifaceIn, ifaceOut)); } } return stats; } private NetworkStats.Entry getNetworkStatsTethering(String ifaceIn, String ifaceOut) { final NativeDaemonEvent event; try { try { event = mConnector.execute("bandwidth", "gettetherstats", ifaceIn, ifaceOut); final NativeDaemonEvent[] events = mConnector.executeForList( } catch (NativeDaemonConnectorException e) { "bandwidth", "gettetherstats"); throw e.rethrowAsParcelableException(); for (NativeDaemonEvent event : events) { } if (event.getCode() != TetheringStatsListResult) continue; event.checkCode(TetheringStatsResult); // 221 ifaceIn ifaceOut rx_bytes rx_packets tx_bytes tx_packets // 114 ifaceIn ifaceOut rx_bytes rx_packets tx_bytes tx_packets final StringTokenizer tok = new StringTokenizer(event.getMessage()); final StringTokenizer tok = new StringTokenizer(event.getMessage()); tok.nextToken(); tok.nextToken(); try { try { final String ifaceIn = tok.nextToken(); final String ifaceOut = tok.nextToken(); final NetworkStats.Entry entry = new NetworkStats.Entry(); final NetworkStats.Entry entry = new NetworkStats.Entry(); entry.iface = ifaceIn; entry.iface = ifaceOut; entry.uid = UID_TETHERING; entry.uid = UID_TETHERING; entry.set = SET_DEFAULT; entry.set = SET_DEFAULT; entry.tag = TAG_NONE; entry.tag = TAG_NONE; Loading @@ -1417,12 +1400,18 @@ public class NetworkManagementService extends INetworkManagementService.Stub entry.rxPackets = Long.parseLong(tok.nextToken()); entry.rxPackets = Long.parseLong(tok.nextToken()); entry.txBytes = Long.parseLong(tok.nextToken()); entry.txBytes = Long.parseLong(tok.nextToken()); entry.txPackets = Long.parseLong(tok.nextToken()); entry.txPackets = Long.parseLong(tok.nextToken()); return entry; stats.combineValues(entry); } catch (NoSuchElementException e) { throw new IllegalStateException("problem parsing tethering stats: " + event); } catch (NumberFormatException e) { } catch (NumberFormatException e) { throw new IllegalStateException( throw new IllegalStateException("problem parsing tethering stats: " + event); "problem parsing tethering stats for " + ifaceIn + " " + ifaceOut + ": " + e); } } } } } catch (NativeDaemonConnectorException e) { throw e.rethrowAsParcelableException(); } return stats; } @Override @Override public void setDefaultInterfaceForDns(String iface) { public void setDefaultInterfaceForDns(String iface) { Loading