wireguard implementation in progress with zero coordination or communication with wireguard project? can we help?

Jason A. Donenfeld Jason at zx2c4.com
Tue Feb 18 18:09:15 UTC 2020


Hey K,

On Tue, Feb 18, 2020 at 4:33 PM K. Macy <kmacy at freebsd.org> wrote:
> I appreciate your enthusiasm, but I can’t count the number of nascent kernel projects that have come up in discussion over the years and ultimately come to nothing.

Do you mean that the FreeBSD one might not work out, or you're
skeptical that the OpenBSD one will? Either way, I'm pretty determined
to bring them both -- FreeBSD (with you) and the OpenBSD one -- across
the finish line as best as we can.

> I started by getting the OpenBSD bits to build on FreeBSD. However, the implementation in Open is not really a very good semantic match for FreeBSD. So I often have to check what the Linux one is doing as well and sometimes the NetBSD one. Ultimately, apart from struct definitions, very little code will be shared between the platforms.

Yea, that's what I initially had thought, but then for the OpenBSD
stuff we were actually able to take a lot from the Linux
implementation in the end, especially with regards to timer semantic
and key exchange flow. If it winds up helping, we can do the same
where it's useful for FreeBSD and in the end we'll relicense what we
need to to {1,2,3,28}-clause BSD, since I imagine FreeBSD doesn't want
GPL stuff.

> I don’t see a whole lot of benefit to coordination until I can configure a Wireguard interface and there is at least the possibility of passing packets.

I think there will be quite some benefit for coordinating early on and
talking through some design challenges. We've now worked through this
exercise several times on a few platforms an might be able to help out
quite a bit. Are you on IRC? If so, poke me on Freenode -- I'm zx2c4
-- where we have a channel of people who have implemented this before
and are eager and excited to help out.

Looking forward,
Jason


More information about the freebsd-net mailing list