diff options
Diffstat (limited to 'manager/ipc_pipe.go')
-rw-r--r-- | manager/ipc_pipe.go | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/manager/ipc_pipe.go b/manager/ipc_pipe.go deleted file mode 100644 index e1723fbd..00000000 --- a/manager/ipc_pipe.go +++ /dev/null @@ -1,71 +0,0 @@ -/* SPDX-License-Identifier: MIT - * - * Copyright (C) 2019-2021 WireGuard LLC. All Rights Reserved. - */ - -package manager - -import ( - "os" - "strconv" - - "golang.org/x/sys/windows" -) - -func makeInheritableAndGetStr(f *os.File) (str string, err error) { - sc, err := f.SyscallConn() - if err != nil { - return - } - err2 := sc.Control(func(fd uintptr) { - err = windows.SetHandleInformation(windows.Handle(fd), windows.HANDLE_FLAG_INHERIT, windows.HANDLE_FLAG_INHERIT) - str = strconv.FormatUint(uint64(fd), 10) - }) - if err2 != nil { - err = err2 - } - return -} - -func inheritableEvents() (ourEvents *os.File, theirEvents *os.File, theirEventStr string, err error) { - theirEvents, ourEvents, err = os.Pipe() - if err != nil { - return - } - theirEventStr, err = makeInheritableAndGetStr(theirEvents) - if err != nil { - theirEvents.Close() - ourEvents.Close() - return - } - return -} - -func inheritableSocketpairEmulation() (ourReader *os.File, theirReader *os.File, theirReaderStr string, ourWriter *os.File, theirWriter *os.File, theirWriterStr string, err error) { - ourReader, theirWriter, err = os.Pipe() - if err != nil { - return - } - theirWriterStr, err = makeInheritableAndGetStr(theirWriter) - if err != nil { - ourReader.Close() - theirWriter.Close() - return - } - - theirReader, ourWriter, err = os.Pipe() - if err != nil { - ourReader.Close() - theirWriter.Close() - return - } - theirReaderStr, err = makeInheritableAndGetStr(theirReader) - if err != nil { - ourReader.Close() - theirWriter.Close() - theirReader.Close() - ourWriter.Close() - return - } - return -} |