diff options
author | Werner Koch <[email protected]> | 2024-04-09 09:00:35 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2024-04-09 09:01:56 +0000 |
commit | 52c4b0908043993e266b7d0e3fbf567076f8262d (patch) | |
tree | 0f1a1a8e423b55234884f878d04f86ce2208be0c /g10/mainproc.c | |
parent | kbx: Support kyber in the blob parser. (diff) | |
download | gnupg-52c4b0908043993e266b7d0e3fbf567076f8262d.tar.gz gnupg-52c4b0908043993e266b7d0e3fbf567076f8262d.zip |
gpg: Some support to allow Kyber decryption.
* g10/call-agent.c (agent_pkdecrypt): Support dual keygrips and switch
to KEM mode.
* g10/ecdh.c (pk_ecdh_decrypt): Add an extra length check.
* g10/keyid.c (do_hash_public_key): Fix Kyber fingerprint computation.
* g10/mainproc.c (release_list): Free all 4 data elements.
(proc_pubkey_enc): Copy all 4 data elements.
* g10/misc.c (openpgp_pk_test_algo2): Map Kyber to KEM.
* g10/parse-packet.c (parse_pubkeyenc): Fix Kyber parser.
* g10/pubkey-enc.c (get_session_key): Allow Kyber.
(get_it): Support Kyber.
--
GnuPG-bug-id: 6815
Diffstat (limited to 'g10/mainproc.c')
-rw-r--r-- | g10/mainproc.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/g10/mainproc.c b/g10/mainproc.c index d2e00514f..6f3254e88 100644 --- a/g10/mainproc.c +++ b/g10/mainproc.c @@ -143,6 +143,8 @@ release_list( CTX c ) mpi_release (c->pkenc_list->data[0]); mpi_release (c->pkenc_list->data[1]); + mpi_release (c->pkenc_list->data[2]); + mpi_release (c->pkenc_list->data[3]); xfree (c->pkenc_list); c->pkenc_list = tmp; } @@ -527,11 +529,13 @@ proc_pubkey_enc (CTX c, PACKET *pkt) x->keyid[1] = enc->keyid[1]; x->pubkey_algo = enc->pubkey_algo; x->result = -1; - x->data[0] = x->data[1] = NULL; + x->data[0] = x->data[1] = x->data[2] = x->data[3] = NULL; if (enc->data[0]) { x->data[0] = mpi_copy (enc->data[0]); x->data[1] = mpi_copy (enc->data[1]); + x->data[2] = mpi_copy (enc->data[2]); + x->data[3] = mpi_copy (enc->data[3]); } x->next = c->pkenc_list; c->pkenc_list = x; |