aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/tunnel/winipcfg
diff options
context:
space:
mode:
authorBrad Fitzpatrick <bradfitz@tailscale.com>2020-09-28 08:04:21 -0700
committerJason A. Donenfeld <Jason@zx2c4.com>2020-10-04 10:57:14 +0200
commitdd60d0447f8149ca74297471fb44b92ae83a1d6b (patch)
treef09769fabe2043416b535e093c04c14e776a2a3b /tunnel/winipcfg
parentgo: update to 1.15.2 (diff)
downloadwireguard-windows-dd60d0447f8149ca74297471fb44b92ae83a1d6b.tar.xz
wireguard-windows-dd60d0447f8149ca74297471fb44b92ae83a1d6b.zip
tunnel/winipcfg: set SysProcAttr.HideWindow when running netsh.sh
Prevents cmd.exe window flashes when running binaries in elevated interactive contexts for debugging. Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to '')
-rw-r--r--tunnel/winipcfg/netsh.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/tunnel/winipcfg/netsh.go b/tunnel/winipcfg/netsh.go
index 4714c520..1962266e 100644
--- a/tunnel/winipcfg/netsh.go
+++ b/tunnel/winipcfg/netsh.go
@@ -12,6 +12,7 @@ import (
"os/exec"
"path/filepath"
"strings"
+ "syscall"
"golang.org/x/sys/windows"
)
@@ -25,6 +26,8 @@ func runNetsh(cmds []string) error {
return err
}
cmd := exec.Command(filepath.Join(system32, "netsh.exe")) // I wish we could append (, "-f", "CONIN$") but Go sets up the process context wrong.
+ cmd.SysProcAttr = &syscall.SysProcAttr{HideWindow: true}
+
stdin, err := cmd.StdinPipe()
if err != nil {
return fmt.Errorf("runNetsh stdin pipe - %v", err)