aboutsummaryrefslogtreecommitdiffstats
path: root/g10/packet.h
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2024-09-03 16:20:51 +0000
committerWerner Koch <[email protected]>2024-09-06 14:09:49 +0000
commit1eaf1e236e6056a2b96d7fea7eeb7a5eadee7742 (patch)
treefe6e45b263974dcd4b7c2d433428d734092d036b /g10/packet.h
parentgpg: remove workaround for Libgcrypt < 1.8.6 (diff)
downloadgnupg-1eaf1e236e6056a2b96d7fea7eeb7a5eadee7742.tar.gz
gnupg-1eaf1e236e6056a2b96d7fea7eeb7a5eadee7742.zip
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.
Diffstat (limited to 'g10/packet.h')
-rw-r--r--g10/packet.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/g10/packet.h b/g10/packet.h
index 6c3e1b80d..80238fcea 100644
--- a/g10/packet.h
+++ b/g10/packet.h
@@ -159,11 +159,8 @@ typedef struct {
struct pubkey_enc_list
{
struct pubkey_enc_list *next;
- u32 keyid[2];
- int pubkey_algo;
- int seskey_algo;
int result;
- gcry_mpi_t data[PUBKEY_MAX_NENC];
+ PKT_pubkey_enc d;
};
@@ -895,19 +892,28 @@ void free_notation (struct notation *notation);
/*-- free-packet.c --*/
void free_symkey_enc( PKT_symkey_enc *enc );
+
+void release_pubkey_enc_parts (PKT_pubkey_enc *enc);
void free_pubkey_enc( PKT_pubkey_enc *enc );
+void copy_pubkey_enc_parts (PKT_pubkey_enc *dst, PKT_pubkey_enc *src);
+
void free_seckey_enc( PKT_signature *enc );
+
void release_public_key_parts( PKT_public_key *pk );
void free_public_key( PKT_public_key *key );
+
void free_attributes(PKT_user_id *uid);
void free_user_id( PKT_user_id *uid );
void free_comment( PKT_comment *rem );
void free_packet (PACKET *pkt, parse_packet_ctx_t parsectx);
prefitem_t *copy_prefs (const prefitem_t *prefs);
+
PKT_public_key *copy_public_key_basics (PKT_public_key *d, PKT_public_key *s);
PKT_public_key *copy_public_key( PKT_public_key *d, PKT_public_key *s );
+
PKT_signature *copy_signature( PKT_signature *d, PKT_signature *s );
PKT_user_id *scopy_user_id (PKT_user_id *sd );
+
int cmp_public_keys( PKT_public_key *a, PKT_public_key *b );
int cmp_signatures( PKT_signature *a, PKT_signature *b );
int cmp_user_ids( PKT_user_id *a, PKT_user_id *b );