(keyFile string)
| 322 | } |
| 323 | |
| 324 | func 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 | } |
no test coverage detected