summaryrefslogtreecommitdiff
path: root/net/wireguard-tools
diff options
context:
space:
mode:
Diffstat (limited to 'net/wireguard-tools')
-rw-r--r--net/wireguard-tools/Makefile5
-rw-r--r--net/wireguard-tools/distinfo6
-rw-r--r--net/wireguard-tools/files/patch-wg-quick_freebsd.bash43
3 files changed, 48 insertions, 6 deletions
diff --git a/net/wireguard-tools/Makefile b/net/wireguard-tools/Makefile
index cd97a43099f5..a9a0f4d02aad 100644
--- a/net/wireguard-tools/Makefile
+++ b/net/wireguard-tools/Makefile
@@ -1,10 +1,9 @@
PORTNAME= wireguard-tools
-PORTVERSION= 1.0.20210914
-PORTREVISION= 3
+PORTVERSION= 1.0.20250521
CATEGORIES= net net-vpn
MASTER_SITES= https://git.zx2c4.com/wireguard-tools/snapshot/
-MAINTAINER= decke@FreeBSD.org
+MAINTAINER= ports@FreeBSD.org
COMMENT= Fast, modern and secure VPN Tunnel
WWW= https://git.zx2c4.com/wireguard-tools/about/
diff --git a/net/wireguard-tools/distinfo b/net/wireguard-tools/distinfo
index cb170b21e029..fdfd7ad28e1b 100644
--- a/net/wireguard-tools/distinfo
+++ b/net/wireguard-tools/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1631602777
-SHA256 (wireguard-tools-1.0.20210914.tar.xz) = 97ff31489217bb265b7ae850d3d0f335ab07d2652ba1feec88b734bc96bd05ac
-SIZE (wireguard-tools-1.0.20210914.tar.xz) = 99744
+TIMESTAMP = 1765109364
+SHA256 (wireguard-tools-1.0.20250521.tar.xz) = b6f2628b85b1b23cc06517ec9c74f82d52c4cdbd020f3dd2f00c972a1782950e
+SIZE (wireguard-tools-1.0.20250521.tar.xz) = 100340
diff --git a/net/wireguard-tools/files/patch-wg-quick_freebsd.bash b/net/wireguard-tools/files/patch-wg-quick_freebsd.bash
new file mode 100644
index 000000000000..83254d7abac3
--- /dev/null
+++ b/net/wireguard-tools/files/patch-wg-quick_freebsd.bash
@@ -0,0 +1,43 @@
+--- wg-quick/freebsd.bash.orig 2021-09-13 22:43:31 UTC
++++ wg-quick/freebsd.bash
+@@ -27,6 +27,7 @@ SAVE_CONFIG=0
+ CONFIG_FILE=""
+ PROGRAM="${0##*/}"
+ ARGS=( "$@" )
++FREEBSD_MAJOR_VERSION=$(freebsd-version | cut -d. -f1)
+
+ cmd() {
+ echo "[#] $*" >&3
+@@ -283,20 +284,28 @@ monitor_daemon() {
+ echo "[+] Backgrounding route monitor" >&2
+ (make_temp
+ trap 'del_routes; clean_temp; exit 0' INT TERM EXIT
++ local event grep_for pid
++ if [[ "$FREEBSD_MAJOR_VERSION" -lt 14 ]]; then
++ grep_for="RTM_"
++ elif [[ $AUTO_ROUTE4 -eq 1 || $AUTO_ROUTE6 -eq 1 ]]; then
++ grep_for="iface" # needs refinement
++ else
++ grep_for="(add/repl|delete) iface iface#[0-9]{1,4} $INTERFACE "
++ fi
+ exec >/dev/null 2>&1
+- exec 19< <(exec route -n monitor)
+- local event pid=$!
++ exec 19< <(exec sh -c "route -n monitor | grep -E --line-buffered '$grep_for'")
++ monitor_ppid=$!
+ # TODO: this should also check to see if the endpoint actually changes
+ # in response to incoming packets, and then call set_endpoint_direct_route
+ # then too. That function should be able to gracefully cleanup if the
+ # endpoints change.
+ while read -u 19 -r event; do
+- [[ $event == RTM_* ]] || continue
+ ifconfig "$INTERFACE" >/dev/null 2>&1 || break
+ [[ $AUTO_ROUTE4 -eq 1 || $AUTO_ROUTE6 -eq 1 ]] && set_endpoint_direct_route
+ # TODO: set the mtu as well, but only if up
+ done
+- kill $pid) & disown
++ pkill -P "$monitor_ppid" route || true
++ ) & disown
+ }
+
+ HAVE_SET_DNS=0