main: move masterkey warnings into parseMasterKey

This makes sure all callers of parseMasterKey warn the user.
At the moment there is only one, but another one will be added
soon for forcing a password change when only the master key is
known.
This commit is contained in:
Jakob Unterwurzacher 2016-10-16 16:19:12 +02:00
parent 5144470e3d
commit 540f125f18
2 changed files with 6 additions and 6 deletions

View File

@ -49,12 +49,16 @@ func parseMasterKey(masterkey string) []byte {
masterkey = strings.Replace(masterkey, "-", "", -1)
key, err := hex.DecodeString(masterkey)
if err != nil {
tlog.Fatal.Printf("Could not parse master key: %v\n", err)
tlog.Fatal.Printf("Could not parse master key: %v", err)
os.Exit(1)
}
if len(key) != cryptocore.KeyLen {
tlog.Fatal.Printf("Master key has length %d but we require length %d\n", len(key), cryptocore.KeyLen)
tlog.Fatal.Printf("Master key has length %d but we require length %d", len(key), cryptocore.KeyLen)
os.Exit(1)
}
tlog.Info.Printf("Using explicit master key.")
tlog.Info.Printf(tlog.ColorYellow +
"THE MASTER KEY IS VISIBLE VIA \"ps ax\" AND MAY BE STORED IN YOUR SHELL HISTORY!\n" +
"ONLY USE THIS MODE FOR EMERGENCIES." + tlog.ColorReset)
return key
}

View File

@ -53,11 +53,7 @@ func doMount(args *argContainer) int {
var confFile *configfile.ConfFile
if args.masterkey != "" {
// "-masterkey"
tlog.Info.Printf("Using explicit master key.")
masterkey = parseMasterKey(args.masterkey)
tlog.Info.Printf(tlog.ColorYellow +
"THE MASTER KEY IS VISIBLE VIA \"ps ax\" AND MAY BE STORED IN YOUR SHELL HISTORY!\n" +
"ONLY USE THIS MODE FOR EMERGENCIES." + tlog.ColorReset)
} else if args.zerokey {
// "-zerokey"
tlog.Info.Printf("Using all-zero dummy master key.")