diff options
author | Mikael Magnusson <mikma@users.sourceforge.net> | 2023-03-11 23:10:42 +0100 |
---|---|---|
committer | Mikael Magnusson <mikma@users.sourceforge.net> | 2023-09-27 23:59:41 +0200 |
commit | 7576cc4e13f5edceec9632d69fda0118769dcdd4 (patch) | |
tree | 9e77a84c4d092986d4148caa44951611be2e945d /tunnel | |
parent | 3b5055dfc0977ae71348d792cb2f62df92005fd5 (diff) |
WIP: Add TrafficStats
Diffstat (limited to 'tunnel')
-rw-r--r-- | tunnel/src/main/java/com/wireguard/android/backend/GoBackend.java | 3 | ||||
-rw-r--r-- | tunnel/src/main/java/com/wireguard/util/Resolver.java | 4 |
2 files changed, 7 insertions, 0 deletions
diff --git a/tunnel/src/main/java/com/wireguard/android/backend/GoBackend.java b/tunnel/src/main/java/com/wireguard/android/backend/GoBackend.java index 6e8d565c..f2fa8342 100644 --- a/tunnel/src/main/java/com/wireguard/android/backend/GoBackend.java +++ b/tunnel/src/main/java/com/wireguard/android/backend/GoBackend.java @@ -15,6 +15,7 @@ import android.net.Network; import android.net.NetworkCapabilities; import android.net.NetworkRequest; import android.net.ProxyInfo; +import android.net.TrafficStats; import android.net.Uri; import android.os.Build; import android.os.ParcelFileDescriptor; @@ -99,6 +100,7 @@ import androidx.collection.ArraySet; public final class GoBackend implements Backend { private static final int DNS_RESOLUTION_RETRIES = 10; private static final String TAG = "WireGuard/GoBackend"; + private static final int STATS_TAG = 2; @Nullable private static AlwaysOnCallback alwaysOnCallback; private static GhettoCompletableFuture<VpnService> vpnService = new GhettoCompletableFuture<>(); private final Context context; @@ -305,6 +307,7 @@ public final class GoBackend implements Backend { StringBuffer buf = new StringBuffer(); try { URL url = new URL(pacFileUrl.toString()); + TrafficStats.setThreadStatsTag(STATS_TAG); urlConnection = (HttpURLConnection) network.openConnection(url); InputStream in = urlConnection.getInputStream(); diff --git a/tunnel/src/main/java/com/wireguard/util/Resolver.java b/tunnel/src/main/java/com/wireguard/util/Resolver.java index 62b11286..24f5ab88 100644 --- a/tunnel/src/main/java/com/wireguard/util/Resolver.java +++ b/tunnel/src/main/java/com/wireguard/util/Resolver.java @@ -17,6 +17,7 @@ import java.net.UnknownHostException; import android.net.IpPrefix; import android.net.LinkProperties; import android.net.Network; +import android.net.TrafficStats; import android.util.Log; import androidx.annotation.Nullable; @@ -24,6 +25,7 @@ import androidx.annotation.Nullable; @NonNullForAll public class Resolver { private static final String TAG = "WireGuard/Resolver"; + private static final int STATS_TAG = 3; // FIXME @Nullable private final Network network; @Nullable private final LinkProperties linkProps; @Nullable private IpPrefix nat64Prefix; @@ -82,6 +84,7 @@ public class Resolver { } public InetAddress resolve(String host) throws UnknownHostException { + TrafficStats.setThreadStatsTag(STATS_TAG); final InetAddress[] candidates = network != null ? network.getAllByName(host) : InetAddress.getAllByName(host); InetAddress address = candidates[0]; for (final InetAddress candidate : candidates) { @@ -89,6 +92,7 @@ public class Resolver { try { sock = new DatagramSocket(); + TrafficStats.tagDatagramSocket(sock); if (network != null) { network.bindSocket(sock); } |