configfile: HKDF feature flag should also be set for "-plaintextnames"

This commit is contained in:
Jakob Unterwurzacher 2017-03-07 21:03:05 +01:00
parent 2f953fdb95
commit 9a0808b1ee
2 changed files with 23 additions and 2 deletions

View File

@ -58,6 +58,7 @@ func CreateConfFile(filename string, password string, plaintextNames bool, logN
// Set feature flags // Set feature flags
cf.FeatureFlags = append(cf.FeatureFlags, knownFlags[FlagGCMIV128]) cf.FeatureFlags = append(cf.FeatureFlags, knownFlags[FlagGCMIV128])
cf.FeatureFlags = append(cf.FeatureFlags, knownFlags[FlagHKDF])
if plaintextNames { if plaintextNames {
cf.FeatureFlags = append(cf.FeatureFlags, knownFlags[FlagPlaintextNames]) cf.FeatureFlags = append(cf.FeatureFlags, knownFlags[FlagPlaintextNames])
} else { } else {
@ -65,7 +66,6 @@ func CreateConfFile(filename string, password string, plaintextNames bool, logN
cf.FeatureFlags = append(cf.FeatureFlags, knownFlags[FlagEMENames]) cf.FeatureFlags = append(cf.FeatureFlags, knownFlags[FlagEMENames])
cf.FeatureFlags = append(cf.FeatureFlags, knownFlags[FlagLongNames]) cf.FeatureFlags = append(cf.FeatureFlags, knownFlags[FlagLongNames])
cf.FeatureFlags = append(cf.FeatureFlags, knownFlags[FlagRaw64]) cf.FeatureFlags = append(cf.FeatureFlags, knownFlags[FlagRaw64])
cf.FeatureFlags = append(cf.FeatureFlags, knownFlags[FlagHKDF])
} }
if aessiv { if aessiv {
cf.FeatureFlags = append(cf.FeatureFlags, knownFlags[FlagAESSIV]) cf.FeatureFlags = append(cf.FeatureFlags, knownFlags[FlagAESSIV])

View File

@ -59,7 +59,7 @@ func TestLoadV2StrangeFeature(t *testing.T) {
} }
} }
func TestCreateConfFile(t *testing.T) { func TestCreateConfDefault(t *testing.T) {
err := CreateConfFile("config_test/tmp.conf", "test", false, 10, "test", false) err := CreateConfFile("config_test/tmp.conf", "test", false, 10, "test", false)
if err != nil { if err != nil {
t.Fatal(err) t.Fatal(err)
@ -80,6 +80,27 @@ func TestCreateConfFile(t *testing.T) {
} }
} }
func TestCreateConfPlaintextnames(t *testing.T) {
err := CreateConfFile("config_test/tmp.conf", "test", true, 10, "test", false)
if err != nil {
t.Fatal(err)
}
_, c, err := LoadConfFile("config_test/tmp.conf", "test")
if err != nil {
t.Fatal(err)
}
// Check that all expected feature flags are set
want := []flagIota{
FlagGCMIV128, FlagHKDF,
}
for _, f := range want {
if !c.IsFeatureFlagSet(f) {
t.Errorf("Feature flag %q should be set but is not", knownFlags[f])
}
}
}
// Reverse mode uses AESSIV
func TestCreateConfFileAESSIV(t *testing.T) { func TestCreateConfFileAESSIV(t *testing.T) {
err := CreateConfFile("config_test/tmp.conf", "test", false, 10, "test", true) err := CreateConfFile("config_test/tmp.conf", "test", false, 10, "test", true)
if err != nil { if err != nil {