6a696e03e7
* migrate to golang.zx2c4.com/wireguard/wgctrl This commit introduces the usage of wgctrl. It avoids the usage of exec calls of the wg command and parsing the output of `wg show`. Signed-off-by: leonnicolas <leonloechner@gmx.de> * vendor wgctrl Signed-off-by: leonnicolas <leonloechner@gmx.de> * apply suggestions from code review Remove wireguard.Enpoint struct and use net.UDPAddr for the resolved endpoint and addr string (dnsanme:port) if a DN was supplied. Signed-off-by: leonnicolas <leonloechner@gmx.de> * pkg/*: use wireguard.Enpoint This commit introduces the wireguard.Enpoint struct. It encapsulates a DN name with port and a net.UPDAddr. The fields are private and only accessible over exported Methods to avoid accidental modification. Also iptables.GetProtocol is improved to avoid ipv4 rules being applied by `ip6tables`. Signed-off-by: leonnicolas <leonloechner@gmx.de> * pkg/wireguard/conf_test.go: add tests for Endpoint Signed-off-by: leonnicolas <leonloechner@gmx.de> * cmd/kg/main.go: validate port range Signed-off-by: leonnicolas <leonloechner@gmx.de> * add suggestions from review Signed-off-by: leonnicolas <leonloechner@gmx.de> * pkg/mesh/mesh.go: use Equal func Implement an Equal func for Enpoint and use it instead of comparing strings. Signed-off-by: leonnicolas <leonloechner@gmx.de> * cmd/kgctl/main.go: check port range Signed-off-by: leonnicolas <leonloechner@gmx.de> * vendor Signed-off-by: leonnicolas <leonloechner@gmx.de> |
||
---|---|---|
.. | ||
CHANGELOG.md | ||
conn.go | ||
doc.go | ||
family_linux.go | ||
family_others.go | ||
family.go | ||
fuzz.go | ||
LICENSE.md | ||
message.go | ||
README.md |
genetlink
Package genetlink
implements generic netlink interactions and data types.
MIT Licensed.
For more information about how netlink and generic netlink work, check out my blog series on Linux, Netlink, and Go.
If you have any questions or you'd like some guidance, please join us on
Gophers Slack in the #networking
channel!
Stability
See the CHANGELOG file for a description of changes between releases.
This package has reached v1.0.0 and any future breaking API changes will prompt the release of a new major version. Features and bug fixes will continue to occur in the v1.x.x series.
The general policy of this package is to only support the latest, stable version of Go. Compatibility shims may be added for prior versions of Go on an as-needed basis. If you would like to raise a concern, please file an issue.
If you depend on this package in your applications, please use Go modules.