diff options
author | Trumeet <17158086+Trumeet@users.noreply.github.com> | 2021-01-16 16:15:06 -0800 |
---|---|---|
committer | Trumeet <17158086+Trumeet@users.noreply.github.com> | 2021-01-16 16:15:06 -0800 |
commit | b11d8042bce05cd88724f23d454ee3fa3a70d301 (patch) | |
tree | d8532008dfe40d8faeb43681a2597e4138b55cc7 | |
parent | 8c71583e0633714c01def657228af9b0d47c68df (diff) | |
download | dn42peering-b11d8042bce05cd88724f23d454ee3fa3a70d301.tar dn42peering-b11d8042bce05cd88724f23d454ee3fa3a70d301.tar.gz dn42peering-b11d8042bce05cd88724f23d454ee3fa3a70d301.tar.bz2 dn42peering-b11d8042bce05cd88724f23d454ee3fa3a70d301.zip |
fix(central/agent): fix WireGuard no-endpoint peeringv1.4
-rw-r--r-- | agent/src/main/java/moe/yuuta/dn42peering/agent/grpc/AgentServiceImpl.java | 4 | ||||
-rw-r--r-- | central/src/main/java/moe/yuuta/dn42peering/manage/ManageHandler.java | 9 |
2 files changed, 11 insertions, 2 deletions
diff --git a/agent/src/main/java/moe/yuuta/dn42peering/agent/grpc/AgentServiceImpl.java b/agent/src/main/java/moe/yuuta/dn42peering/agent/grpc/AgentServiceImpl.java index d9312c1..75b8184 100644 --- a/agent/src/main/java/moe/yuuta/dn42peering/agent/grpc/AgentServiceImpl.java +++ b/agent/src/main/java/moe/yuuta/dn42peering/agent/grpc/AgentServiceImpl.java @@ -72,7 +72,7 @@ class AgentServiceImpl extends VertxAgentGrpc.AgentVertxImplBase { request.getNode().getIpv6NonLL(), (int)request.getId(), request.getListenPort(), - request.getEndpoint().isEmpty() ? "" : request.getEndpoint(), + request.getEndpoint().isEmpty() ? null : request.getEndpoint(), request.getPeerPubKey(), request.getSelfPrivKey(), request.getSelfPresharedSecret(), @@ -93,7 +93,7 @@ class AgentServiceImpl extends VertxAgentGrpc.AgentVertxImplBase { request.getNode().getIpv6NonLL(), (int)request.getId(), request.getListenPort(), - request.getEndpoint().isEmpty() ? "" : request.getEndpoint(), + request.getEndpoint().isEmpty() ? null : request.getEndpoint(), request.getPeerPubKey(), request.getSelfPrivKey(), request.getSelfPresharedSecret(), diff --git a/central/src/main/java/moe/yuuta/dn42peering/manage/ManageHandler.java b/central/src/main/java/moe/yuuta/dn42peering/manage/ManageHandler.java index 0c5b6b1..74f3943 100644 --- a/central/src/main/java/moe/yuuta/dn42peering/manage/ManageHandler.java +++ b/central/src/main/java/moe/yuuta/dn42peering/manage/ManageHandler.java @@ -941,6 +941,15 @@ public class ManageHandler implements ISubRouter { return Future.failedFuture(e); } } + // wg-quick will also not clear EndPoint setting if we just reload it. + if(canReload && // Only check if no other factors prevent us from reloading. + inPeer.getType() == Peer.VPNType.WIREGUARD && + existingPeer.getType() == Peer.VPNType.WIREGUARD) { + if(inPeer.getWgEndpoint() == null && + existingPeer.getWgEndpoint() != null) { + canReload = false; + } + } Future<Void> future; if (canReload) { future = Future.<Node>future(f -> nodeService.getNode(inPeer.getNode(), f)) |