]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
mail-crypt: Do not attempt to cache freed keypair
authorAki Tuomi <aki.tuomi@dovecot.fi>
Mon, 28 Nov 2016 12:52:50 +0000 (14:52 +0200)
committerGitLab <gitlab@git.dovecot.net>
Mon, 28 Nov 2016 16:24:22 +0000 (18:24 +0200)
src/plugins/mail-crypt/mail-crypt-key.c

index efa95a11f61ff6e2c7968c66e6a8a9268651cda7..6931ac2f7fc16d7de5901fc810f5d500839b8b5b 100644 (file)
@@ -1054,10 +1054,11 @@ int mail_crypt_box_generate_keypair(struct mailbox *box,
                                    error_r) < 0) {
                dcrypt_keypair_unref(pair);
                ret = -1;
+       } else {
+               mail_crypt_put_key_cache(&muser->key_cache, *pubid_r, pair->priv,
+                                        pair->pub);
        }
 
-       mail_crypt_put_key_cache(&muser->key_cache, *pubid_r, pair->priv, pair->pub);
-
        dcrypt_key_unref_public(&user_key);
 
        return ret;