diff --git a/pgp.h b/pgp.h index 54a02406b8e29c0aa845664e676561c7154bbf10..374db53e3fb3ac453cdd6b6313c559749f4f529a 100644 --- a/pgp.h +++ b/pgp.h @@ -44,6 +44,9 @@ #define pgp_armor nettle_pgp_armor struct nettle_buffer; +struct rsa_public_key; +struct rsa_private_key; +struct sha1_ctx; int pgp_put_uint32(struct nettle_buffer *buffer, uint32_t i); @@ -52,7 +55,7 @@ int pgp_put_uint16(struct nettle_buffer *buffer, unsigned i); int -pgp_put_mpi(struct nettle_buffer *buffer, mpz_t x); +pgp_put_mpi(struct nettle_buffer *buffer, const mpz_t x); int pgp_put_string(struct nettle_buffer *buffer, @@ -85,6 +88,17 @@ pgp_put_sub_packet(struct nettle_buffer *buffer, void pgp_sub_packet_end(struct nettle_buffer *buffer, unsigned start); +int +pgp_put_public_rsa_key(struct nettle_buffer *, + const struct rsa_public_key *key, + time_t timestamp); + +int +pgp_put_rsa_sha1_signature(struct nettle_buffer *buffer, + const struct rsa_private_key *key, + const uint8_t *keyid, + unsigned type, + struct sha1_ctx *hash); int pgp_put_userid(struct nettle_buffer *buffer, @@ -185,4 +199,10 @@ enum pgp_signature_type PGP_SIGN_TIMESTAMP = 0x40, }; +enum pgp_subpacket_tag + { + /* FIXME: XXX just to it by the compiler */ + PGP_SUBPACKET_ISSUER = 0, + }; + #endif /* NETTLE_PGP_H_INCLUDED */