From 3dc50222b19c534948fe48b3f2d080ef67410e15 Mon Sep 17 00:00:00 2001 From: evilsocket Date: Sun, 11 Feb 2018 01:10:42 +0100 Subject: [PATCH] balls --- firewall/firewall_windows.go | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/firewall/firewall_windows.go b/firewall/firewall_windows.go index 7c440257..5d1af987 100644 --- a/firewall/firewall_windows.go +++ b/firewall/firewall_windows.go @@ -35,6 +35,14 @@ func (f WindowsFirewall) IsForwardingEnabled() bool { } } +func (f WindowsFirewall) isSuccess(output string) { + if trimmed := core.Trim(output); trimmed == "" || strings.Contains(trimmed, "OK") == true { + return true + } else { + return false + } +} + func (f WindowsFirewall) EnableForwarding(enabled bool) error { v := "enabled" if enabled == false { @@ -45,7 +53,7 @@ func (f WindowsFirewall) EnableForwarding(enabled bool) error { return err } - if strings.Contains(out, "OK") == false { + if f.isSuccess(out) == false { return fmt.Errorf("Unexpected netsh output: %s", out) } @@ -87,7 +95,7 @@ func (f *WindowsFirewall) AllowPort(port int, address string, proto string, allo return err } - if core.Trim(out) != "OK." { + if f.isSuccess(out) == false { return fmt.Errorf("Unexpected netsh output: %s", out) } @@ -113,7 +121,7 @@ func (f *WindowsFirewall) EnableRedirection(r *Redirection, enabled bool) error return err } - if core.Trim(out) != "" && strings.Contains(out, "OK") == false { + if f.isSuccess(out) == false { return fmt.Errorf("Unexpected netsh output: %s", out) } return nil