mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-03 22:56:33 +02:00
gpg: Simplify the pubkey_enc_list object
* g10/packet.h (struct pubkey_enc_list): Replace most by a PKT_pubkey_enc member. * g10/free-packet.c (free_pubkey_enc): Factor most stuff out to ... (release_pubkey_enc_parts): new. (copy_pubkey_enc_parts): New. * g10/mainproc.c (release_list): Adjust for above change. (proc_pubkey_enc): Ditto. (print_pkenc_list): Ditto. (proc_encrypted): Ditto.
This commit is contained in:
parent
1e25157266
commit
1eaf1e236e
4 changed files with 88 additions and 62 deletions
|
@ -52,18 +52,50 @@ free_symkey_enc( PKT_symkey_enc *enc )
|
|||
xfree(enc);
|
||||
}
|
||||
|
||||
/* This is the core of free_pubkey_enc but does only release the
|
||||
* allocated members of ENC. */
|
||||
void
|
||||
free_pubkey_enc( PKT_pubkey_enc *enc )
|
||||
release_pubkey_enc_parts (PKT_pubkey_enc *enc)
|
||||
{
|
||||
int n, i;
|
||||
n = pubkey_get_nenc( enc->pubkey_algo );
|
||||
if( !n )
|
||||
mpi_release(enc->data[0]);
|
||||
for(i=0; i < n; i++ )
|
||||
mpi_release( enc->data[i] );
|
||||
xfree(enc);
|
||||
int n, i;
|
||||
n = pubkey_get_nenc( enc->pubkey_algo );
|
||||
if (!n)
|
||||
mpi_release (enc->data[0]);
|
||||
for (i=0; i < n; i++ )
|
||||
mpi_release (enc->data[i]);
|
||||
}
|
||||
|
||||
void
|
||||
free_pubkey_enc (PKT_pubkey_enc *enc)
|
||||
{
|
||||
release_pubkey_enc_parts (enc);
|
||||
xfree (enc);
|
||||
}
|
||||
|
||||
|
||||
/* Copy everything from SRC to DST. This assumes that DST has been
|
||||
* malloced or statically allocated. */
|
||||
void
|
||||
copy_pubkey_enc_parts (PKT_pubkey_enc *dst, PKT_pubkey_enc *src)
|
||||
{
|
||||
int n, i;
|
||||
|
||||
dst->keyid[0] = src->keyid[0];
|
||||
dst->keyid[1] = src->keyid[1];
|
||||
dst->version = src->version;
|
||||
dst->pubkey_algo = src->pubkey_algo;
|
||||
dst->seskey_algo = src->seskey_algo;
|
||||
dst->throw_keyid = src->throw_keyid;
|
||||
|
||||
if (!(n = pubkey_get_nenc (dst->pubkey_algo)))
|
||||
n = 1; /* All data is in the first item as an opaque MPI. */
|
||||
for (i=0; i < n; i++)
|
||||
dst->data[i] = my_mpi_copy (src->data[i]);
|
||||
for (; i < PUBKEY_MAX_NENC; i++)
|
||||
dst->data[i] = NULL;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
free_seckey_enc( PKT_signature *sig )
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue