Conversation
Signed-off-by: Martin Baillie <martin@baillie.email>
OpenBSD tunnel names are prefixed with `tun`. Controlling the port allows for deterministic configuration of firewall rules (using `pf` in this case). Signed-off-by: Martin Baillie <martin@baillie.email>
danderson
left a comment
There was a problem hiding this comment.
Looks excellent, thank you!
We should add non-linux builds to the CI, at least go build to make sure it still compiles. I'll file a bug for that.
danderson
left a comment
There was a problem hiding this comment.
A couple of suggestions, but I'd say we can merge this soon and continue to iterate from there.
|
My thoughts on reuse: leave the duplication for now. There's a chance we'll switch Linux to using Netlink directly for configuration. At this stage of tailscale's life, I think it's better to keep the OS implementations relatively separate until they've all matured a bit more. Worst case if I'm wrong, it's easy to refactor later. |
|
Leaving for @danderson to review. |
|
Per discussion with @martinbaillie on hello.ipn.dev IRC, I'm going to merge this on the "merge early, merge often" principle. I'll do a followup myself to remove one of the TODOs and fix the logf thing @bradfitz pointed out, but the rest of the todos is up to Martin. I figure that "some openbsd support" is better than "zero openbsd support", and people building for openbsd will understand the WIP nature :) |
This contains early but working support for OpenBSD:

I was also able to connect an IRC client to the IRC party line 🎉
I'd welcome early guidance on how you would the PR to evolve. I littered the code with TODOs as the thoughts came to me. There's also a lot of potential re-use between it and the Linux router.