in providers/linux/util.go [53:77]
func findValue(filename, separator, key string) (string, error) {
content, err := os.ReadFile(filename)
if err != nil {
return "", err
}
var line []byte
sc := bufio.NewScanner(bytes.NewReader(content))
for sc.Scan() {
if bytes.HasPrefix(sc.Bytes(), []byte(key)) {
line = sc.Bytes()
break
}
}
if len(line) == 0 {
return "", fmt.Errorf("%v not found", key)
}
parts := bytes.SplitN(line, []byte(separator), 2)
if len(parts) != 2 {
return "", fmt.Errorf("unexpected line format for '%v'", string(line))
}
return string(bytes.TrimSpace(parts[1])), nil
}