Add support for calculating SKS style key hashes
[onak.git] / keystructs.h
index 24799eb5101ffdcb9dbf4de7d84c6f753dad4caf..c77e346e419e6ce139b54fa5993ad936ac15aecb 100644 (file)
@@ -4,8 +4,6 @@
  * Jonathan McDowell <noodles@earth.li>
  *
  * Copyright 2002 Project Purple
- *
- * $Id: keystructs.h,v 1.7 2003/06/08 21:11:01 noodles Exp $
  */
 
 #ifndef __KEYSTRUCTS_H__
@@ -67,15 +65,17 @@ struct openpgp_signedpacket_list {
 /**
  *     struct openpgp_publickey - An OpenPGP public key complete with sigs.
  *     @publickey: The OpenPGP packet for the public key.
- *     @revocation: The OpenPGP packet for the revocation [optional]
+ *     @revoked: True if the key is revoked.
+ *     @sigs: Any signatures directly on the publickey packet.
  *     @uids: The list of UIDs with signatures for this key.
  *     @subkeys: The list of subkeys with signatures for this key.
  *     @next: The next public key.
  */
 struct openpgp_publickey {
        struct openpgp_packet                   *publickey;
-       struct openpgp_packet_list              *revocations;
-       struct openpgp_packet_list              *last_revocation;
+       bool                                     revoked;
+       struct openpgp_packet_list              *sigs;
+       struct openpgp_packet_list              *last_sig;
        struct openpgp_signedpacket_list        *uids;
        struct openpgp_signedpacket_list        *last_uid;
        struct openpgp_signedpacket_list        *subkeys;
@@ -104,4 +104,12 @@ struct stats_key {
        bool revoked;
 };
 
+/**
+ *     struct skshash - holds an SKS key hash (md5 over sorted packet list)
+ *     @hash: The 128 bit MD5 hash of the sorted packet list from the key
+ */
+struct skshash {
+       uint8_t hash[16];
+};
+
 #endif /* __KEYSTRUCTS_H__ */