aboutsummaryrefslogtreecommitdiff
path: root/net/wireguard-kmod
diff options
context:
space:
mode:
authorBernhard Froehlich <decke@FreeBSD.org>2022-06-11 10:52:01 +0000
committerBernhard Froehlich <decke@FreeBSD.org>2022-06-11 10:58:13 +0000
commitb44715d91b98beefed44294caf090243e3ee1214 (patch)
tree11bd6e589af02c077262068e3afa044708093c95 /net/wireguard-kmod
parentb50942243b522f1d5120a7c366d7bbaedf5e7067 (diff)
downloadports-b44715d91b98beefed44294caf090243e3ee1214.tar.gz
ports-b44715d91b98beefed44294caf090243e3ee1214.zip
net/wireguard-kmod: Update to 0.0.20220610
== Changes == * if_wg: wg_queue_len: remove locking * if_wg: wg_queue_delist_staged: use more standard STAILQ_CONCAT * if_wg: wgc_get/set: use M_WAITOK with malloc() * if_wg: wg_clone_create: Use M_WAITOK with malloc * wg_cookie: ratelimit_init: use callout_init_mtx * if_wg: wg_mbuf_reset: don't free send tags * if_wg: wg_module_init: clean up more if the self tests fail Numerous cleanups. * if_wg: avoid scheduling excessive tasks for encryption/decryption A nice performance improvement - John reports double on iperf3 TCP throughput. * crypto: return an error code from mbuf crypt routines Preparation for the OCF work John's been working on. * if_wg: account for input function returning a boolean * if_wg: account for added argument to sbcreatecontrol These allow building on recent FreeBSD 14 main. * if_wg: do not use continue statement on \!VIMAGE * build: only include compat.h for if_wg.c and fix build with an obj directory Minimum required version is FreeBSD 12.3.
Diffstat (limited to 'net/wireguard-kmod')
-rw-r--r--net/wireguard-kmod/Makefile3
-rw-r--r--net/wireguard-kmod/distinfo6
-rw-r--r--net/wireguard-kmod/files/patch-Makefile23
-rw-r--r--net/wireguard-kmod/files/patch-if_wg.c84
4 files changed, 27 insertions, 89 deletions
diff --git a/net/wireguard-kmod/Makefile b/net/wireguard-kmod/Makefile
index cb3105bb649d..4e44828fe968 100644
--- a/net/wireguard-kmod/Makefile
+++ b/net/wireguard-kmod/Makefile
@@ -1,6 +1,5 @@
PORTNAME= wireguard-kmod
-PORTVERSION= 0.0.20211105
-PORTREVISION= 1
+PORTVERSION= 0.0.20220610
CATEGORIES= net net-vpn
MASTER_SITES= https://git.zx2c4.com/wireguard-freebsd/snapshot/
DISTNAME= wireguard-freebsd-${PORTVERSION}
diff --git a/net/wireguard-kmod/distinfo b/net/wireguard-kmod/distinfo
index 58a8d3b741e5..a1bbe2c7fe76 100644
--- a/net/wireguard-kmod/distinfo
+++ b/net/wireguard-kmod/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1636441226
-SHA256 (wireguard-freebsd-0.0.20211105.tar.xz) = 454f2cf15329ccf40da15f8df61f8d70bb6d382efdfe4a5899ca16474f91903f
-SIZE (wireguard-freebsd-0.0.20211105.tar.xz) = 45944
+TIMESTAMP = 1654889136
+SHA256 (wireguard-freebsd-0.0.20220610.tar.xz) = 518779c383e8087a60a7ec7b0969158a48b2f19a34a13b62683c982960295f17
+SIZE (wireguard-freebsd-0.0.20220610.tar.xz) = 46064
diff --git a/net/wireguard-kmod/files/patch-Makefile b/net/wireguard-kmod/files/patch-Makefile
new file mode 100644
index 000000000000..7fcb0b959840
--- /dev/null
+++ b/net/wireguard-kmod/files/patch-Makefile
@@ -0,0 +1,23 @@
+From ccf37db6e6b983bafcd7a6a7abd7e066026b388f Mon Sep 17 00:00:00 2001
+From: "Jason A. Donenfeld" <Jason@zx2c4.com>
+Date: Fri, 10 Jun 2022 22:28:48 +0200
+Subject: build: include compat.h for all files
+
+54b2075 ("build: only include compat.h for if_wg.c and fix build with an
+obj directory") scoped compat.h to if_wg.c, which broke building on
+12.3.
+
+Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
+---
+ src/Makefile | 2 +-
+
+--- Makefile
++++ Makefile
+@@ -6,6 +6,6 @@ SRCS= opt_inet.h opt_inet6.h device_if.h bus_if.h ifdi_if.h
+
+ SRCS+= if_wg.c wg_noise.c wg_cookie.c crypto.c
+
+-CFLAGS.if_wg.c+= -include ${.CURDIR}/compat.h
++CFLAGS+= -include ${.CURDIR}/compat.h
+
+ .include <bsd.kmod.mk>
diff --git a/net/wireguard-kmod/files/patch-if_wg.c b/net/wireguard-kmod/files/patch-if_wg.c
deleted file mode 100644
index 6ba4437fc116..000000000000
--- a/net/wireguard-kmod/files/patch-if_wg.c
+++ /dev/null
@@ -1,84 +0,0 @@
---- if_wg.c.orig 2021-11-05 14:40:17 UTC
-+++ if_wg.c
-@@ -377,7 +377,11 @@ static struct wg_packet *wg_queue_dequeue_parallel(str
- static int wg_queue_both(struct wg_queue *, struct wg_queue *, struct wg_packet *);
- static struct wg_packet *wg_queue_dequeue_serial(struct wg_queue *);
- static struct wg_packet *wg_queue_dequeue_parallel(struct wg_queue *);
-+#if __FreeBSD_version >= 1400057
-+static bool wg_input(struct mbuf *, int, struct inpcb *, const struct sockaddr *, void *);
-+#else
- static void wg_input(struct mbuf *, int, struct inpcb *, const struct sockaddr *, void *);
-+#endif
- static void wg_peer_send_staged(struct wg_peer *);
- static int wg_clone_create(struct if_clone *, int, caddr_t);
- static void wg_qflush(struct ifnet *);
-@@ -1946,9 +1950,15 @@ wg_queue_dequeue_parallel(struct wg_queue *parallel)
- return (pkt);
- }
-
-+#if __FreeBSD_version >= 1400057
-+static bool
-+wg_input(struct mbuf *m, int offset, struct inpcb *inpcb,
-+ const struct sockaddr *sa, void *_sc)
-+#else
- static void
- wg_input(struct mbuf *m, int offset, struct inpcb *inpcb,
- const struct sockaddr *sa, void *_sc)
-+#endif
- {
- const struct sockaddr_in *sin;
- const struct sockaddr_in6 *sin6;
-@@ -1965,7 +1975,11 @@ wg_input(struct mbuf *m, int offset, struct inpcb *inp
- m = m_unshare(m, M_NOWAIT);
- if (!m) {
- if_inc_counter(sc->sc_ifp, IFCOUNTER_IQDROPS, 1);
-+#if __FreeBSD_version >= 1400057
-+ return true;
-+#else
- return;
-+#endif
- }
-
- /* Caller provided us with `sa`, no need for this header. */
-@@ -1974,13 +1988,21 @@ wg_input(struct mbuf *m, int offset, struct inpcb *inp
- /* Pullup enough to read packet type */
- if ((m = m_pullup(m, sizeof(uint32_t))) == NULL) {
- if_inc_counter(sc->sc_ifp, IFCOUNTER_IQDROPS, 1);
-+#if __FreeBSD_version >= 1400057
-+ return true;
-+#else
- return;
-+#endif
- }
-
- if ((pkt = wg_packet_alloc(m)) == NULL) {
- if_inc_counter(sc->sc_ifp, IFCOUNTER_IQDROPS, 1);
- m_freem(m);
-+#if __FreeBSD_version >= 1400057
-+ return true;
-+#else
- return;
-+#endif
- }
-
- /* Save send/recv address and port for later. */
-@@ -2027,11 +2049,19 @@ wg_input(struct mbuf *m, int offset, struct inpcb *inp
- } else {
- goto error;
- }
-+#if __FreeBSD_version >= 1400057
-+ return true;
-+#else
- return;
-+#endif
- error:
- if_inc_counter(sc->sc_ifp, IFCOUNTER_IERRORS, 1);
- wg_packet_free(pkt);
-+#if __FreeBSD_version >= 1400057
-+ return true;
-+#else
- return;
-+#endif
- }
-
- static void