Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Feb 2020 19:09:01 +0100
From:      "Jason A. Donenfeld" <Jason@zx2c4.com>
To:        "K. Macy" <kmacy@freebsd.org>
Cc:        "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>
Subject:   Re: wireguard implementation in progress with zero coordination or communication with wireguard project? can we help?
Message-ID:  <CAHmME9qOztVkPt5AoJ=%2BWKsL02QohFc8LDxEwfq=qegDw9N6Ng@mail.gmail.com>
In-Reply-To: <CAHM0Q_PrnnzHhpPwOQ44g0XvRA1-%2BEgQzNMWeJht0NNtJDQUVg@mail.gmail.com>
References:  <CAHmME9rjGNo4_Mca_Az6-iWtKdkaKQeybf25z6VCxBfk3eb3fg@mail.gmail.com> <CAHM0Q_PrnnzHhpPwOQ44g0XvRA1-%2BEgQzNMWeJht0NNtJDQUVg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

Hey K,

On Tue, Feb 18, 2020 at 4:33 PM K. Macy <kmacy@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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAHmME9qOztVkPt5AoJ=%2BWKsL02QohFc8LDxEwfq=qegDw9N6Ng>