From c410f7050cf6c00ef2739a35711d21b66790960a Mon Sep 17 00:00:00 2001 From: dyhkwong <50692134+dyhkwong@users.noreply.github.com> Date: Wed, 9 Apr 2025 13:05:26 +0800 Subject: [PATCH] Add firewall rule for Profile ALL on Windows system stack --- stack_system.go | 6 ++---- stack_system_windows.go | 1 + 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/stack_system.go b/stack_system.go index e48b8b6..5a301d5 100644 --- a/stack_system.go +++ b/stack_system.go @@ -107,10 +107,7 @@ func (s *System) Start() error { } func (s *System) start() error { - err := fixWindowsFirewall() - if err != nil { - return E.Cause(err, "fix windows firewall for system stack") - } + _ = fixWindowsFirewall() var listener net.ListenConfig if s.bindInterface { listener.Control = control.Append(listener.Control, func(network, address string, conn syscall.RawConn) error { @@ -122,6 +119,7 @@ func (s *System) start() error { }) } var tcpListener net.Listener + var err error if s.inet4Address.IsValid() { for i := 0; i < 3; i++ { tcpListener, err = listener.Listen(s.ctx, "tcp4", net.JoinHostPort(s.inet4ServerAddress.String(), "0")) diff --git a/stack_system_windows.go b/stack_system_windows.go index ffa2a09..f6c66d0 100644 --- a/stack_system_windows.go +++ b/stack_system_windows.go @@ -22,6 +22,7 @@ func fixWindowsFirewall() error { Protocol: winfw.NET_FW_IP_PROTOCOL_TCP, Direction: winfw.NET_FW_RULE_DIR_IN, Action: winfw.NET_FW_ACTION_ALLOW, + Profiles: winfw.NET_FW_PROFILE2_ALL, } _, err = winfw.FirewallRuleAddAdvanced(rule) return err