MCPcopy
hub / github.com/perkeep/perkeep / readKeyFile

Function readKeyFile

pkg/blobserver/encrypt/encrypt.go:324–345  ·  view source on GitHub ↗
(keyFile string)

Source from the content-addressed store, hash-verified

322}
323
324func readKeyFile(keyFile string) (string, error) {
325 if err := checkKeyFilePermissions(keyFile); err != nil {
326 return "", fmt.Errorf("error checking key file permissions: %w", err)
327 }
328 f, err := os.Open(keyFile)
329 if err != nil {
330 return "", fmt.Errorf("error opening key file: %w", err)
331 }
332 defer f.Close()
333
334 keyScanner := bufio.NewScanner(f)
335 if !keyScanner.Scan() {
336 return "", errors.New("empty key file")
337 }
338 keyData := keyScanner.Text()
339
340 if keyScanner.Scan() {
341 return "", errors.New("key file contained multiple lines")
342 }
343
344 return keyData, keyScanner.Err()
345}

Callers 1

newFromConfigFunction · 0.85

Calls 5

checkKeyFilePermissionsFunction · 0.70
OpenMethod · 0.65
CloseMethod · 0.65
TextMethod · 0.65
ErrMethod · 0.45

Tested by

no test coverage detected