aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/manager
diff options
context:
space:
mode:
Diffstat (limited to 'manager')
-rw-r--r--manager/interfacecleanup.go2
-rw-r--r--manager/ipc_server.go4
-rw-r--r--manager/service.go2
3 files changed, 4 insertions, 4 deletions
diff --git a/manager/interfacecleanup.go b/manager/interfacecleanup.go
index 7b13b10c..f5d9ef48 100644
--- a/manager/interfacecleanup.go
+++ b/manager/interfacecleanup.go
@@ -17,7 +17,7 @@ import (
"golang.zx2c4.com/wireguard/windows/services"
)
-func cleanupStaleAdapters() {
+func cleanupStaleWintunInterfaces() {
defer printPanic()
m, err := mgr.Connect()
diff --git a/manager/ipc_server.go b/manager/ipc_server.go
index ed60d6b6..3bb92066 100644
--- a/manager/ipc_server.go
+++ b/manager/ipc_server.go
@@ -107,7 +107,7 @@ func (s *ManagerService) Start(tunnelName string, unused *uintptr) error {
}
}
}()
- go cleanupStaleAdapters()
+ time.AfterFunc(time.Second*10, cleanupStaleWintunInterfaces)
// After that process is started -- it's somewhat asynchronous -- we install the new one.
c, err := conf.LoadFromName(tunnelName)
@@ -122,7 +122,7 @@ func (s *ManagerService) Start(tunnelName string, unused *uintptr) error {
}
func (s *ManagerService) Stop(tunnelName string, _ *uintptr) error {
- go cleanupStaleAdapters()
+ time.AfterFunc(time.Second*10, cleanupStaleWintunInterfaces)
err := UninstallTunnel(tunnelName)
if err == windows.ERROR_SERVICE_DOES_NOT_EXIST {
diff --git a/manager/service.go b/manager/service.go
index 43dd5d4c..47ba51bc 100644
--- a/manager/service.go
+++ b/manager/service.go
@@ -247,7 +247,7 @@ func (service *managerService) Execute(args []string, r <-chan svc.ChangeRequest
}()
}
- go cleanupStaleAdapters()
+ time.AfterFunc(time.Second*10, cleanupStaleWintunInterfaces)
go checkForUpdates()
var sessionsPointer *windows.WTS_SESSION_INFO