diff options
| author | Werner Koch <[email protected]> | 2018-01-22 14:50:24 +0000 |
|---|---|---|
| committer | Werner Koch <[email protected]> | 2018-01-22 14:50:24 +0000 |
| commit | 0131d4369a81a51bf7bb328cc81a3bb082ed1a94 (patch) | |
| tree | 3d86a4fb3ec39cc7bc1bcfc6a33ad5bef2f99c82 /g10/gpgcompose.c | |
| parent | gpg: Support EAX if for latest Libgcrypt. (diff) | |
| download | gnupg-0131d4369a81a51bf7bb328cc81a3bb082ed1a94.tar.gz gnupg-0131d4369a81a51bf7bb328cc81a3bb082ed1a94.zip | |
gpg: Refactor function encrypt_seskey.
* g10/encrypt.c (encrypt_seskey): Allocate the buffer for the
encrypted key and returns that buffer and its length.
(encrypt_simple): Adjust for above change.
(write_symkey_enc): Ditto.
Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to 'g10/gpgcompose.c')
| -rw-r--r-- | g10/gpgcompose.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/g10/gpgcompose.c b/g10/gpgcompose.c index f87983802..f22c7c202 100644 --- a/g10/gpgcompose.c +++ b/g10/gpgcompose.c @@ -2283,9 +2283,11 @@ sk_esk (const char *option, int argc, char *argv[], void *cookie) DEK *sesdekp = &sesdek; /* Now encrypt the session key (or rather, the algorithm used to - encrypt the SED plus the session key) using ENCKEY. */ - ske->seskeylen = 1 + sesdek.keylen; - encrypt_seskey (&s2kdek, &sesdekp, ske->seskey); + encrypt the SKESK plus the session key) using ENCKEY. */ + err = encrypt_seskey (&s2kdek, &sesdekp, + (void**)&ske->seskey, (size_t *)&ske->seskeylen); + if (err) + log_fatal ("encrypt_seskey failed: %s\n", gpg_strerror (err)); /* Save the session key for later. */ session_key = sesdek; |
