Files
ctrld/internal/router/dnsmasq/conf.go
2023-08-09 23:54:23 +07:00

31 lines
547 B
Go

package dnsmasq
import (
"bufio"
"bytes"
"errors"
"io"
"os"
"strings"
)
func InterfaceNameFromConfig(filename string) (string, error) {
buf, err := os.ReadFile(filename)
if err != nil {
return "", err
}
return interfaceNameFromReader(bytes.NewReader(buf))
}
func interfaceNameFromReader(r io.Reader) (string, error) {
scanner := bufio.NewScanner(r)
for scanner.Scan() {
line := scanner.Text()
after, found := strings.CutPrefix(line, "interface=")
if found {
return after, nil
}
}
return "", errors.New("not found")
}