aboutsummaryrefslogtreecommitdiff
path: root/main.go
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2017-05-02 14:58:48 +0200
committerDimitri Sokolyuk <demon@dim13.org>2017-05-02 14:58:48 +0200
commit744428339e166ec0c485e43f18dbdb788984c3c9 (patch)
tree0732e761971f4cf3e697bb4bd4980aea889223b5 /main.go
parent3e4b44253d7a97008b340e2ea3005b8f55298136 (diff)
cleanup
Diffstat (limited to 'main.go')
-rw-r--r--main.go16
1 files changed, 10 insertions, 6 deletions
diff --git a/main.go b/main.go
index 5134a6a..b29a41a 100644
--- a/main.go
+++ b/main.go
@@ -71,7 +71,9 @@ func Generate(pubFile, encFile, comment string, nopass bool) error {
if nopass {
encKey.KDFRounds = 0
}
- Kdf(encKey, ask.Confirmed)
+ if err := Kdf(encKey, ask.Confirmed); err != nil {
+ return err
+ }
encRaw, err := key.Marshal(encKey)
if err != nil {
@@ -110,7 +112,9 @@ func OpenEnc(fname string) (*key.Enc, error) {
if err := key.Unmarshal(block.Bytes, encKey); err != nil {
return nil, err
}
- Kdf(encKey, ask.Password)
+ if err := Kdf(encKey, ask.Password); err != nil {
+ return nil, err
+ }
if err := encKey.Check(); err != nil {
return nil, err
}
@@ -197,17 +201,17 @@ func Verify(msgFile, pubFile string) error {
return nil
}
-func Kdf(enc *key.Enc, ask func() (string, error)) (*key.Enc, error) {
+func Kdf(enc *key.Enc, ask func() (string, error)) error {
if enc.KDFRounds == 0 {
- return enc, nil
+ return nil
}
pass, err := ask()
if err != nil {
- return nil, err
+ return err
}
xor := bhash.Pbkdf([]byte(pass), enc.Salt[:], int(enc.KDFRounds), len(enc.Key))
for i := range xor {
enc.Key[i] ^= xor[i]
}
- return enc, nil
+ return nil
}