aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2020-06-07 20:10:51 -0600
committerJason A. Donenfeld <Jason@zx2c4.com>2020-06-07 20:10:51 -0600
commit44e2dccb29e0acc17a0cc44033b7b296976c79e5 (patch)
treee882ed92932277d599740eb7c2b4a3b47612734c
parentmod: bump (diff)
downloadwireguard-windows-44e2dccb29e0acc17a0cc44033b7b296976c79e5.tar.xz
wireguard-windows-44e2dccb29e0acc17a0cc44033b7b296976c79e5.zip
tunnel: unset dns search if none is specified
This doesn't get automatically cleared in the same way that nameservers do. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
-rw-r--r--tunnel/addressconfig.go16
1 files changed, 9 insertions, 7 deletions
diff --git a/tunnel/addressconfig.go b/tunnel/addressconfig.go
index 462e1052..4be2c36a 100644
--- a/tunnel/addressconfig.go
+++ b/tunnel/addressconfig.go
@@ -159,14 +159,16 @@ func configureInterface(family winipcfg.AddressFamily, conf *conf.Config, tun *t
return err
}
+ dnsSearch := ""
if len(conf.Interface.DNSSearch) > 0 {
- err = luid.SetDNSDomain(conf.Interface.DNSSearch[0])
- if err != nil {
- return nil
- }
- if len(conf.Interface.DNSSearch) > 1 {
- log.Printf("Warning: %d DNS search domains were specified, but only one is supported, so the first one (%s) was used.", len(conf.Interface.DNSSearch), conf.Interface.DNSSearch[0])
- }
+ dnsSearch = conf.Interface.DNSSearch[0]
+ }
+ err = luid.SetDNSDomain(dnsSearch)
+ if err != nil {
+ return nil
+ }
+ if len(conf.Interface.DNSSearch) > 1 {
+ log.Printf("Warning: %d DNS search domains were specified, but only one is supported, so the first one (%s) was used.", len(conf.Interface.DNSSearch), dnsSearch)
}
err = luid.SetDNSForFamily(family, conf.Interface.DNS)
if err != nil {