Skip to content

Commit 54cb455

Browse files
committed
Fix staticcheck linter warnings
By moving darwin specific codes to darwin file.
1 parent 8bd3b9e commit 54cb455

File tree

2 files changed

+36
-39
lines changed

2 files changed

+36
-39
lines changed

nameservers_darwin.go

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import (
77
"bytes"
88
"context"
99
"fmt"
10+
"io"
1011
"net"
1112
"os/exec"
1213
"regexp"
@@ -244,3 +245,38 @@ func getAllDHCPNameservers() []string {
244245

245246
return allNameservers
246247
}
248+
249+
func patchNetIfaceName(iface *net.Interface) (bool, error) {
250+
b, err := exec.Command("networksetup", "-listnetworkserviceorder").Output()
251+
if err != nil {
252+
return false, err
253+
}
254+
255+
patched := false
256+
if name := networkServiceName(iface.Name, bytes.NewReader(b)); name != "" {
257+
patched = true
258+
iface.Name = name
259+
}
260+
return patched, nil
261+
}
262+
263+
func networkServiceName(ifaceName string, r io.Reader) string {
264+
scanner := bufio.NewScanner(r)
265+
prevLine := ""
266+
for scanner.Scan() {
267+
line := scanner.Text()
268+
if strings.Contains(line, "*") {
269+
// Network services is disabled.
270+
continue
271+
}
272+
if !strings.Contains(line, "Device: "+ifaceName) {
273+
prevLine = line
274+
continue
275+
}
276+
parts := strings.SplitN(prevLine, " ", 2)
277+
if len(parts) == 2 {
278+
return strings.TrimSpace(parts[1])
279+
}
280+
}
281+
return ""
282+
}

staticdns.go

Lines changed: 0 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,8 @@
11
package ctrld
22

33
import (
4-
"bufio"
5-
"bytes"
6-
"io"
74
"net"
85
"os"
9-
"os/exec"
106
"path/filepath"
117
"runtime"
128
"strings"
@@ -81,38 +77,3 @@ func SavedStaticNameservers(iface *net.Interface) ([]string, string) {
8177
}
8278
return ns, file
8379
}
84-
85-
func patchNetIfaceName(iface *net.Interface) (bool, error) {
86-
b, err := exec.Command("networksetup", "-listnetworkserviceorder").Output()
87-
if err != nil {
88-
return false, err
89-
}
90-
91-
patched := false
92-
if name := networkServiceName(iface.Name, bytes.NewReader(b)); name != "" {
93-
patched = true
94-
iface.Name = name
95-
}
96-
return patched, nil
97-
}
98-
99-
func networkServiceName(ifaceName string, r io.Reader) string {
100-
scanner := bufio.NewScanner(r)
101-
prevLine := ""
102-
for scanner.Scan() {
103-
line := scanner.Text()
104-
if strings.Contains(line, "*") {
105-
// Network services is disabled.
106-
continue
107-
}
108-
if !strings.Contains(line, "Device: "+ifaceName) {
109-
prevLine = line
110-
continue
111-
}
112-
parts := strings.SplitN(prevLine, " ", 2)
113-
if len(parts) == 2 {
114-
return strings.TrimSpace(parts[1])
115-
}
116-
}
117-
return ""
118-
}

0 commit comments

Comments
 (0)