mirror of
https://github.com/tailscale/tailscale.git
synced 2025-04-16 19:51:41 +00:00
portlist: move code around to avoid unused function warnings.
This commit is contained in:
parent
755fd9253c
commit
9396024bd7
@ -7,12 +7,9 @@
|
|||||||
package portlist
|
package portlist
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
|
||||||
"sort"
|
"sort"
|
||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
exec "tailscale.com/tempfork/osexec"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func parsePort(s string) int {
|
func parsePort(s string) int {
|
||||||
@ -141,23 +138,3 @@ func parsePortsNetstat(output string) List {
|
|||||||
|
|
||||||
return l
|
return l
|
||||||
}
|
}
|
||||||
|
|
||||||
//lint:ignore U1000 function is only used on !linux, but we want the
|
|
||||||
// unit test to run on linux, so we don't build-tag it away.
|
|
||||||
func listPortsNetstat(arg string) (List, error) {
|
|
||||||
exe, err := exec.LookPath("netstat")
|
|
||||||
if err != nil {
|
|
||||||
return nil, fmt.Errorf("netstat: lookup: %v", err)
|
|
||||||
}
|
|
||||||
output, err := exec.Command(exe, arg).Output()
|
|
||||||
if err != nil {
|
|
||||||
xe, ok := err.(*exec.ExitError)
|
|
||||||
stderr := ""
|
|
||||||
if ok {
|
|
||||||
stderr = strings.TrimSpace(string(xe.Stderr))
|
|
||||||
}
|
|
||||||
return nil, fmt.Errorf("netstat: %v (%q)", err, stderr)
|
|
||||||
}
|
|
||||||
|
|
||||||
return parsePortsNetstat(string(output)), nil
|
|
||||||
}
|
|
||||||
|
32
portlist/netstat_exec.go
Normal file
32
portlist/netstat_exec.go
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
// Copyright (c) 2020 Tailscale Inc & AUTHORS All rights reserved.
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
// +build windows freebsd openbsd darwin,amd64
|
||||||
|
|
||||||
|
package portlist
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"strings"
|
||||||
|
|
||||||
|
exec "tailscale.com/tempfork/osexec"
|
||||||
|
)
|
||||||
|
|
||||||
|
func listPortsNetstat(arg string) (List, error) {
|
||||||
|
exe, err := exec.LookPath("netstat")
|
||||||
|
if err != nil {
|
||||||
|
return nil, fmt.Errorf("netstat: lookup: %v", err)
|
||||||
|
}
|
||||||
|
output, err := exec.Command(exe, arg).Output()
|
||||||
|
if err != nil {
|
||||||
|
xe, ok := err.(*exec.ExitError)
|
||||||
|
stderr := ""
|
||||||
|
if ok {
|
||||||
|
stderr = strings.TrimSpace(string(xe.Stderr))
|
||||||
|
}
|
||||||
|
return nil, fmt.Errorf("netstat: %v (%q)", err, stderr)
|
||||||
|
}
|
||||||
|
|
||||||
|
return parsePortsNetstat(string(output)), nil
|
||||||
|
}
|
@ -4,7 +4,9 @@
|
|||||||
|
|
||||||
package portlist
|
package portlist
|
||||||
|
|
||||||
import "time"
|
import (
|
||||||
|
"time"
|
||||||
|
)
|
||||||
|
|
||||||
// Forking on Windows is insanely expensive, so don't do it too often.
|
// Forking on Windows is insanely expensive, so don't do it too often.
|
||||||
const pollInterval = 5 * time.Second
|
const pollInterval = 5 * time.Second
|
||||||
|
Loading…
x
Reference in New Issue
Block a user