diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2019-04-29 13:30:28 +0200 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2019-04-29 13:44:04 +0200 |
commit | fe1f44fc37c6442617d02010077292d9537e5b3b (patch) | |
tree | 86c554d239919013446eb101309f6488535766a3 /service/service_tunnel.go | |
parent | updater: use /qb instead of /quiet (diff) | |
download | wireguard-windows-fe1f44fc37c6442617d02010077292d9537e5b3b.tar.xz wireguard-windows-fe1f44fc37c6442617d02010077292d9537e5b3b.zip |
service: improve state transitions
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'service/service_tunnel.go')
-rw-r--r-- | service/service_tunnel.go | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/service/service_tunnel.go b/service/service_tunnel.go index dd681a33..12977d26 100644 --- a/service/service_tunnel.go +++ b/service/service_tunnel.go @@ -82,6 +82,12 @@ func (service *tunnelService) Execute(args []string, r <-chan svc.ChangeRequest, logger.Info.Println("Starting wireguard-go version", device.WireGuardGoVersion) logger.Debug.Println("Debug log enabled") + uapiConf, err := conf.ToUAPI() + if err != nil { + serviceError = ErrorDNSLookup + return + } + wintun, err := tun.CreateTUN(conf.Name) if err != nil { serviceError = ErrorCreateWintun @@ -115,11 +121,6 @@ func (service *tunnelService) Execute(args []string, r <-chan svc.ChangeRequest, }() logger.Info.Println("UAPI listener started") - uapiConf, err := conf.ToUAPI() - if err != nil { - serviceError = ErrorDNSLookup - return - } ipcErr := dev.IpcSetOperation(bufio.NewReader(strings.NewReader(uapiConf))) if ipcErr != nil { err = ipcErr |