On Tue, 3 Aug 2021 13:02:15 -0500
"Matt P." <hybrid120@gmail.com> wrote:
> Hi Stuart!
>
> Your advice lead me to discover, the issue happens only with the
> "PersistantKeepalive = 25" option I had enabled on each wg-quick
> peer. Looks like you could recreate it by making a few no-address
> peers with this option enabled.
Hi Matt,
This insight was very helpful. It looks like mbufs are not freed if
we're sending to a peer with no endpoint. Specifically, "wg_send" is
expected to free the mbuf if there is an error sending. This (untested)
patch should fix it.
Cheers,
Matt
diff --git if_wg.c if_wg.c
index 18333eda4cb..5f4319558ab 100644
--- if_wg.c
+++ if_wg.c
@@ -810,6 +810,7 @@ wg_send(struct wg_softc *sc, struct wg_endpoint *e, struct mbuf *m)
IPPROTO_IPV6);
No comments:
Post a Comment