Skip to content

Commit 6231693

Browse files
authored
Merge pull request #28 from devilcove/feature/virt-subnet
bugfixes when adding/deleting peers
2 parents 209bef7 + 8be36fa commit 6231693

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

internal/agent/interface.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import (
77
"log/slog"
88
"net"
99
"slices"
10+
"strconv"
1011
"time"
1112

1213
"github.com/devilcove/boltdb"
@@ -372,8 +373,13 @@ func convertPeerToWG(netPeer plexus.NetworkPeer, peers []plexus.NetworkPeer) (wg
372373
if err != nil {
373374
return wgtypes.PeerConfig{}, err
374375
}
376+
addr, err := net.ResolveUDPAddr("udp", netPeer.Endpoint.String()+":"+strconv.Itoa(netPeer.PublicListenPort))
377+
if err != nil {
378+
return wgtypes.PeerConfig{}, err
379+
}
375380
return wgtypes.PeerConfig{
376381
PublicKey: key,
382+
Endpoint: addr,
377383
PersistentKeepaliveInterval: &keepalive,
378384
ReplaceAllowedIPs: true,
379385
AllowedIPs: getAllowedIPs(netPeer, peers),

wireguard.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -185,9 +185,9 @@ func (wg *wireguard) ReplacePeer(newPeer wgtypes.PeerConfig) {
185185
}
186186

187187
func (wg *wireguard) DeletePeer(key string) {
188-
for _, peer := range wg.Config.Peers {
188+
for i, peer := range wg.Config.Peers {
189189
if peer.PublicKey.String() == key {
190-
peer.Remove = true
190+
wg.Config.Peers[i].Remove = true
191191
break
192192
}
193193
}

0 commit comments

Comments
 (0)