Skip to content

Conversation

pinkisemils
Copy link

These changes add support for macOS. The I/O code for writing tunnel traffic adheres to the platform independent interfaces that already exist and are implemented for Linux, but the uapi code is shared in full between Linux and macOS. There is one slight inefficiency in the tunnel trait that forces a copy that could be eluded with a slight change to the trait. I've tested this implementation a bit and it seems to be on par with the linux implementation, sans the firewall mark.
This implementation does rely on 3 extra dependencies, some of which are there purely for ergonomics (nix) and could be substituted with more calls to libc and in-line struct definitions.

@rot256
Copy link
Member

rot256 commented May 1, 2021

Hi @pinkisemils thanks a lot for contributing to wireguard-rs!

Letting you know that I am reviewing your code at this moment, but will need access to a macos machine to test the patch.

Until then can I get you to Sign off on the commits?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants