X-Git-Url: http://the.earth.li/gitweb/?a=blobdiff_plain;f=merge.h;h=bbefcc3e3bf3f0deb27ef7433d2c045af18cfd1f;hb=a047e3e158d560af079bec920460711d8222317c;hp=208c39bd0477cd8ae312c755c4f7571191bf0a4c;hpb=8e58a1769ce5e492dd68904dfc81b6e077fc2a3a;p=onak.git diff --git a/merge.h b/merge.h index 208c39b..bbefcc3 100644 --- a/merge.h +++ b/merge.h @@ -37,4 +37,29 @@ int merge_keys(struct openpgp_publickey *a, struct openpgp_publickey *b); */ int update_keys(struct openpgp_publickey **keys); +/** + * get_signed_packet - Gets a signed packet from a list. + * @packet_list: The list of packets to look in. + * @packet: The packet to look for. + * + * Walks through the signedpacket_list looking for the supplied packet and + * returns it if found. Otherwise returns NULL. + */ +struct openpgp_signedpacket_list *find_signed_packet( + struct openpgp_signedpacket_list *packet_list, + struct openpgp_packet *packet); + +/** + * merge_packet_sigs - Takes 2 signed packets and merges their sigs. + * @old: The old signed packet. + * @new: The new signed packet. + * + * Takes 2 signed packet list structures and the sigs of the packets on + * the head of these structures. These packets must both be the same and + * the fully merged structure is returned in old and the minimal + * difference to get from old to new in new. + */ +int merge_packet_sigs(struct openpgp_signedpacket_list *old, + struct openpgp_signedpacket_list *new); + #endif