chore: allow set security descriptor of namedpipe by environment variable LISTEN_NAMEDPIPE_SDDL

This commit is contained in:
wwqgtxx 2024-09-27 18:31:50 +08:00
parent cd2d1c6bb0
commit 2afa2798b1

View File

@ -2,6 +2,7 @@ package inbound
import (
"net"
"os"
"github.com/metacubex/wireguard-go/ipc/namedpipe"
"golang.org/x/sys/windows"
@ -14,7 +15,11 @@ const SupportNamedPipe = true
const windowsSDDL = "D:PAI(A;OICI;GWGR;;;BU)(A;OICI;GWGR;;;SY)"
func ListenNamedPipe(path string) (net.Listener, error) {
securityDescriptor, err := windows.SecurityDescriptorFromString(windowsSDDL)
sddl := os.Getenv("LISTEN_NAMEDPIPE_SDDL")
if sddl == "" {
sddl = windowsSDDL
}
securityDescriptor, err := windows.SecurityDescriptorFromString(sddl)
if err != nil {
return nil, err
}