aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/tunnel/addressconfig.go
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2021-08-10 00:15:44 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2021-08-10 02:30:33 +0200
commit688876ff6361126b042b027e7f283f22f02e1a7e (patch)
tree8f3b7bdbe2812d2ad6da65570554d51260802787 /tunnel/addressconfig.go
parentembeddable-dll-service: csharp: update for wgnt (diff)
downloadwireguard-windows-688876ff6361126b042b027e7f283f22f02e1a7e.tar.xz
wireguard-windows-688876ff6361126b042b027e7f283f22f02e1a7e.zip
tunnel: provide better logging for when iphlpapi fails
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'tunnel/addressconfig.go')
-rw-r--r--tunnel/addressconfig.go12
1 files changed, 9 insertions, 3 deletions
diff --git a/tunnel/addressconfig.go b/tunnel/addressconfig.go
index fba7d770..74ad75b3 100644
--- a/tunnel/addressconfig.go
+++ b/tunnel/addressconfig.go
@@ -7,6 +7,7 @@ package tunnel
import (
"bytes"
+ "fmt"
"log"
"net"
"sort"
@@ -105,7 +106,7 @@ func configureInterface(family winipcfg.AddressFamily, conf *conf.Config, luid w
err = luid.SetIPAddressesForFamily(family, addresses)
}
if err != nil {
- return err
+ return fmt.Errorf("unable to set ips %v: %w", addresses, err)
}
deduplicatedRoutes := make([]*winipcfg.RouteData, 0, len(routes))
@@ -137,6 +138,7 @@ func configureInterface(family winipcfg.AddressFamily, conf *conf.Config, luid w
if !conf.Interface.TableOff {
err = luid.SetRoutesForFamily(family, deduplicatedRoutes)
if err != nil {
+ return fmt.Errorf("unable to set routes %v: %w", deduplicatedRoutes, err)
return err
}
}
@@ -166,10 +168,14 @@ func configureInterface(family winipcfg.AddressFamily, conf *conf.Config, luid w
}
err = ipif.Set()
if err != nil {
- return err
+ return fmt.Errorf("unable to set metric and MTU: %w", err)
}
- return luid.SetDNS(family, conf.Interface.DNS, conf.Interface.DNSSearch)
+ err = luid.SetDNS(family, conf.Interface.DNS, conf.Interface.DNSSearch)
+ if err != nil {
+ return fmt.Errorf("unable to set DNS %v %v: %w", conf.Interface.DNS, conf.Interface.DNSSearch, err)
+ }
+ return nil
}
func enableFirewall(conf *conf.Config, luid winipcfg.LUID) error {