From 0131d4369a81a51bf7bb328cc81a3bb082ed1a94 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Mon, 22 Jan 2018 15:50:24 +0100 Subject: 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 --- g10/gpgcompose.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'g10/gpgcompose.c') 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; -- cgit