Loading services/core/java/com/android/server/net/NetPluginDelegate.java→services/core/java/com/android/server/NetPluginDelegate.java +20 −4 Original line number Diff line number Diff line Loading @@ -27,17 +27,18 @@ *IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ package com.android.server.net; package com.android.server; import dalvik.system.PathClassLoader; import java.lang.reflect.Constructor; import android.util.Slog; import android.net.Network; import android.net.NetworkStats; import android.util.Log; class NetPluginDelegate { public class NetPluginDelegate { private static final String TAG = "ConnectivityExtension"; private static final boolean LOGV = false; Loading @@ -45,8 +46,9 @@ class NetPluginDelegate { private static Class tetherExtensionClass = null; private static Object tetherExtensionObj = null; static void getTetherStats(NetworkStats uidStats, NetworkStats devStats, public static void getTetherStats(NetworkStats uidStats, NetworkStats devStats, NetworkStats xtStats) { if (LOGV) Slog.v(TAG, "getTetherStats() E"); loadTetherExtJar(); try { tetherExtensionClass.getMethod("getTetherStats", NetworkStats.class, Loading @@ -56,9 +58,11 @@ class NetPluginDelegate { e.printStackTrace(); Log.w(TAG, "error in invoke method"); } if (LOGV) Slog.v(TAG, "getTetherStats() X"); } static void setQuota(String iface, long quota) { public static void setQuota(String iface, long quota) { if (LOGV) Slog.v(TAG, "setQuota(" + iface + ", " + quota + ") E"); loadTetherExtJar(); try { tetherExtensionClass.getMethod("setQuota", String.class, long.class).invoke( Loading @@ -66,8 +70,20 @@ class NetPluginDelegate { } catch (Exception ex) { Log.w(TAG, "Error calling setQuota Method on extension jar"); } if (LOGV) Slog.v(TAG, "setQuota(" + iface + ", " + quota + ") X"); } public static void setUpstream(Network net) { if (LOGV) Slog.v(TAG, "setUpstream(" + net + ") E"); loadTetherExtJar(); try { tetherExtensionClass.getMethod("setUpstream", Network.class).invoke( tetherExtensionObj, net); } catch (Exception ex) { Log.w(TAG, "Error calling setUpstream Method on extension jar"); } if (LOGV) Slog.v(TAG, "setUpstream(" + net + ") E"); } private static void loadTetherExtJar() { Loading services/core/java/com/android/server/connectivity/Tethering.java +3 −1 Original line number Diff line number Diff line Loading @@ -55,6 +55,7 @@ import com.android.internal.util.IState; import com.android.internal.util.State; import com.android.internal.util.StateMachine; import com.android.server.IoThread; import com.android.server.NetPluginDelegate; import com.android.server.net.BaseNetworkObserver; import java.io.FileDescriptor; Loading Loading @@ -1561,6 +1562,8 @@ public class Tethering extends BaseNetworkObserver { sendMessageDelayed(CMD_RETRY_UPSTREAM, UPSTREAM_SETTLE_TIME_MS); } } else { Network network = getConnectivityManager().getNetworkForType(upType); NetPluginDelegate.setUpstream(network); LinkProperties linkProperties = getConnectivityManager().getLinkProperties(upType); if (linkProperties != null) { Loading Loading @@ -1595,7 +1598,6 @@ public class Tethering extends BaseNetworkObserver { } } try { Network network = getConnectivityManager().getNetworkForType(upType); if (network == null) { Log.e(TAG, "No Network for upstream type " + upType + "!"); } Loading services/core/java/com/android/server/net/NetworkPolicyManagerService.java +1 −0 Original line number Diff line number Diff line Loading @@ -159,6 +159,7 @@ import com.android.internal.util.IndentingPrintWriter; import com.android.server.DeviceIdleController; import com.android.server.EventLogTags; import com.android.server.LocalServices; import com.android.server.NetPluginDelegate; import com.google.android.collect.Lists; import org.xmlpull.v1.XmlPullParser; Loading services/core/java/com/android/server/net/NetworkStatsService.java +1 −0 Original line number Diff line number Diff line Loading @@ -123,6 +123,7 @@ import com.android.internal.util.FileRotator; import com.android.internal.util.IndentingPrintWriter; import com.android.server.EventLogTags; import com.android.server.LocalServices; import com.android.server.NetPluginDelegate; import com.android.server.connectivity.Tethering; import java.io.File; Loading Loading
services/core/java/com/android/server/net/NetPluginDelegate.java→services/core/java/com/android/server/NetPluginDelegate.java +20 −4 Original line number Diff line number Diff line Loading @@ -27,17 +27,18 @@ *IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ package com.android.server.net; package com.android.server; import dalvik.system.PathClassLoader; import java.lang.reflect.Constructor; import android.util.Slog; import android.net.Network; import android.net.NetworkStats; import android.util.Log; class NetPluginDelegate { public class NetPluginDelegate { private static final String TAG = "ConnectivityExtension"; private static final boolean LOGV = false; Loading @@ -45,8 +46,9 @@ class NetPluginDelegate { private static Class tetherExtensionClass = null; private static Object tetherExtensionObj = null; static void getTetherStats(NetworkStats uidStats, NetworkStats devStats, public static void getTetherStats(NetworkStats uidStats, NetworkStats devStats, NetworkStats xtStats) { if (LOGV) Slog.v(TAG, "getTetherStats() E"); loadTetherExtJar(); try { tetherExtensionClass.getMethod("getTetherStats", NetworkStats.class, Loading @@ -56,9 +58,11 @@ class NetPluginDelegate { e.printStackTrace(); Log.w(TAG, "error in invoke method"); } if (LOGV) Slog.v(TAG, "getTetherStats() X"); } static void setQuota(String iface, long quota) { public static void setQuota(String iface, long quota) { if (LOGV) Slog.v(TAG, "setQuota(" + iface + ", " + quota + ") E"); loadTetherExtJar(); try { tetherExtensionClass.getMethod("setQuota", String.class, long.class).invoke( Loading @@ -66,8 +70,20 @@ class NetPluginDelegate { } catch (Exception ex) { Log.w(TAG, "Error calling setQuota Method on extension jar"); } if (LOGV) Slog.v(TAG, "setQuota(" + iface + ", " + quota + ") X"); } public static void setUpstream(Network net) { if (LOGV) Slog.v(TAG, "setUpstream(" + net + ") E"); loadTetherExtJar(); try { tetherExtensionClass.getMethod("setUpstream", Network.class).invoke( tetherExtensionObj, net); } catch (Exception ex) { Log.w(TAG, "Error calling setUpstream Method on extension jar"); } if (LOGV) Slog.v(TAG, "setUpstream(" + net + ") E"); } private static void loadTetherExtJar() { Loading
services/core/java/com/android/server/connectivity/Tethering.java +3 −1 Original line number Diff line number Diff line Loading @@ -55,6 +55,7 @@ import com.android.internal.util.IState; import com.android.internal.util.State; import com.android.internal.util.StateMachine; import com.android.server.IoThread; import com.android.server.NetPluginDelegate; import com.android.server.net.BaseNetworkObserver; import java.io.FileDescriptor; Loading Loading @@ -1561,6 +1562,8 @@ public class Tethering extends BaseNetworkObserver { sendMessageDelayed(CMD_RETRY_UPSTREAM, UPSTREAM_SETTLE_TIME_MS); } } else { Network network = getConnectivityManager().getNetworkForType(upType); NetPluginDelegate.setUpstream(network); LinkProperties linkProperties = getConnectivityManager().getLinkProperties(upType); if (linkProperties != null) { Loading Loading @@ -1595,7 +1598,6 @@ public class Tethering extends BaseNetworkObserver { } } try { Network network = getConnectivityManager().getNetworkForType(upType); if (network == null) { Log.e(TAG, "No Network for upstream type " + upType + "!"); } Loading
services/core/java/com/android/server/net/NetworkPolicyManagerService.java +1 −0 Original line number Diff line number Diff line Loading @@ -159,6 +159,7 @@ import com.android.internal.util.IndentingPrintWriter; import com.android.server.DeviceIdleController; import com.android.server.EventLogTags; import com.android.server.LocalServices; import com.android.server.NetPluginDelegate; import com.google.android.collect.Lists; import org.xmlpull.v1.XmlPullParser; Loading
services/core/java/com/android/server/net/NetworkStatsService.java +1 −0 Original line number Diff line number Diff line Loading @@ -123,6 +123,7 @@ import com.android.internal.util.FileRotator; import com.android.internal.util.IndentingPrintWriter; import com.android.server.EventLogTags; import com.android.server.LocalServices; import com.android.server.NetPluginDelegate; import com.android.server.connectivity.Tethering; import java.io.File; Loading