diff options
author | Mikael Magnusson <mikma@users.sourceforge.net> | 2023-03-07 20:18:07 +0100 |
---|---|---|
committer | Mikael Magnusson <mikma@users.sourceforge.net> | 2023-04-28 23:14:49 +0200 |
commit | c284fa0232fbc8d1bbf68497294723d45cb074b1 (patch) | |
tree | cb114b47e6c2832471f759e9f1a1cf5bdb2a84c2 /tunnel | |
parent | ab15bb6270548301749b5e26593721efb5e6df6f (diff) |
WIP add ConfigDetail and PeerDetail
Diffstat (limited to 'tunnel')
3 files changed, 13 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 384ea74a..f76452b8 100644 --- a/tunnel/src/main/java/com/wireguard/android/backend/GoBackend.java +++ b/tunnel/src/main/java/com/wireguard/android/backend/GoBackend.java @@ -637,6 +637,9 @@ public final class GoBackend implements Backend { final InetEndpoint ep = peer.getEndpoint().orElse(null); if (ep == null) continue; + // FIXME + tunnel.onEndpointChange(peer.getPublicKey(), ep); + Log.i(TAG, "onEndpointChange " + peer.getPublicKey() + ", " + ep); if (ep.getResolved(resolver, true).orElse(null) == null) { if (i < DNS_RESOLUTION_RETRIES - 1) { Log.w(TAG, "DNS host \"" + ep.getHost() + "\" failed to resolve; trying again"); diff --git a/tunnel/src/main/java/com/wireguard/android/backend/Tunnel.java b/tunnel/src/main/java/com/wireguard/android/backend/Tunnel.java index 6c0f54e3..1dfadbce 100644 --- a/tunnel/src/main/java/com/wireguard/android/backend/Tunnel.java +++ b/tunnel/src/main/java/com/wireguard/android/backend/Tunnel.java @@ -5,6 +5,10 @@ package com.wireguard.android.backend; +import androidx.annotation.Nullable; + +import com.wireguard.config.InetEndpoint; +import com.wireguard.crypto.Key; import com.wireguard.util.NonNullForAll; import java.util.regex.Pattern; @@ -61,4 +65,6 @@ public interface Tunnel { * @param newDhcp The new DHCP info of the tunnel. */ void onDhcpChange(Dhcp newDhcp); + + void onEndpointChange(@Nullable Key publicKey, @Nullable InetEndpoint newEndpoint); } diff --git a/tunnel/src/main/java/com/wireguard/config/InetEndpoint.java b/tunnel/src/main/java/com/wireguard/config/InetEndpoint.java index 9d087cd6..86f5f9a8 100644 --- a/tunnel/src/main/java/com/wireguard/config/InetEndpoint.java +++ b/tunnel/src/main/java/com/wireguard/config/InetEndpoint.java @@ -81,6 +81,10 @@ public final class InetEndpoint { return port; } + public Optional<InetEndpoint> getResolved() { + return Optional.ofNullable(resolved); + } + /** * Generate an {@code InetEndpoint} instance with the same port and the host resolved using DNS * to a numeric address. If the host is already numeric, the existing instance may be returned. |