patch 9.0.1481: decrypting with libsodium may fail if the library changes
Problem: Decrypting with libsodium may fail if the library changes.
Solution: Add parameters used to the encrypted file header. (Christian
Brabandt, closes #12279)
diff --git a/src/blowfish.c b/src/blowfish.c
index 88d4bce..6a33914 100644
--- a/src/blowfish.c
+++ b/src/blowfish.c
@@ -641,11 +641,8 @@
int
crypt_blowfish_init(
cryptstate_T *state,
- char_u* key,
- char_u* salt,
- int salt_len,
- char_u* seed,
- int seed_len)
+ char_u *key,
+ crypt_arg_T *arg)
{
bf_state_T *bfs = ALLOC_CLEAR_ONE(bf_state_T);
@@ -660,8 +657,8 @@
if (blowfish_self_test() == FAIL)
return FAIL;
- bf_key_init(bfs, key, salt, salt_len);
- bf_cfb_init(bfs, seed, seed_len);
+ bf_key_init(bfs, key, arg->cat_salt, arg->cat_salt_len);
+ bf_cfb_init(bfs, arg->cat_seed, arg->cat_seed_len);
return OK;
}