Go to file
2019-03-28 16:05:43 +01:00
.idea initial commit 2019-03-26 13:44:38 +01:00
cmd/wg-quick Added initial binary wg-quick equivalent 2019-03-28 16:05:43 +01:00
.gitignore initial commit 2019-03-26 13:44:38 +01:00
.gitlab-ci.yml Added initial binary wg-quick equivalent 2019-03-28 16:05:43 +01:00
.pre-commit-config.yaml initial commit 2019-03-26 13:44:38 +01:00
config_test.go gofmt + various feature implementations 2019-03-28 12:38:22 +01:00
config.go Added support for route protocol and address label 2019-03-28 14:39:45 +01:00
go.mod update 2019-03-27 17:26:09 +01:00
go.sum update 2019-03-27 17:26:09 +01:00
LICENSE Initial commit 2019-03-26 13:28:22 +01:00
README.md gofmt + various feature implementations 2019-03-28 12:38:22 +01:00
wg.go Added support for route protocol and address label 2019-03-28 14:39:45 +01:00

wg-quick-go

Build Status GoDoc Go Report Card

wg-quick like library in go for embedding

Roadmap

  • full wg-quick feature parity
    • PreUp
    • PostUp
    • PreDown
    • PostDown
    • DNS
    • MTU
    • Save --> Use MarshallText interface to save config
  • Sync
  • Up
  • Down
  • MarshallText
  • UnmarshallText
  • Minimal test
  • Integration tests ((TODO; have some virtual machines/kvm and wreck havoc :) ))

Caveats

  • Endpoints DNS MarshallText is unsupported
  • Pre/Post Up/Down doesn't support escaped %i, that is all %i are expanded to interface name.
  • SaveConfig in config is only a placeholder (( since there's no reading/writing from files )). Use Unmarshall/Marshall Text to save/load config (( you're responsible for IO)).