Print errors from config load issues.

Currently we /dev/null stdout, if it is a tty.
The checkConfigPerms function, as well as the error print were incorrectly
writing to stdout and therefore weren't visible to most users.
This commit is contained in:
Reto Brunner 2019-07-28 15:02:09 +02:00 committed by Drew DeVault
parent c81b3eb1cb
commit b812257ba9
2 changed files with 4 additions and 4 deletions

View file

@ -135,7 +135,7 @@ func main() {
conf, err := config.LoadConfigFromFile(nil, ShareDir) conf, err := config.LoadConfigFromFile(nil, ShareDir)
if err != nil { if err != nil {
fmt.Printf("Failed to load config: %v\n", err) fmt.Fprintf(os.Stderr, "Failed to load config: %v\n", err)
os.Exit(1) os.Exit(1)
} }

View file

@ -465,9 +465,9 @@ func checkConfigPerms(filename string) error {
goPerms := perms >> 3 goPerms := perms >> 3
// group or others have read access // group or others have read access
if goPerms&0x44 != 0 { if goPerms&0x44 != 0 {
fmt.Printf("The file %v has too open permissions.\n", filename) fmt.Fprintf(os.Stderr, "The file %v has too open permissions.\n", filename)
fmt.Println("This is a security issue (it contains passwords).") fmt.Fprintln(os.Stderr, "This is a security issue (it contains passwords).")
fmt.Printf("To fix it, run `chmod 600 %v`\n", filename) fmt.Fprintf(os.Stderr, "To fix it, run `chmod 600 %v`\n", filename)
return errors.New("account.conf permissions too lax") return errors.New("account.conf permissions too lax")
} }
return nil return nil