gpg-interface.hon commit gpg: centralize printing signature buffers (ca194d5)
   1#ifndef GPG_INTERFACE_H
   2#define GPG_INTERFACE_H
   3
   4#define GPG_VERIFY_VERBOSE      1
   5
   6struct signature_check {
   7        char *payload;
   8        char *gpg_output;
   9        char *gpg_status;
  10
  11        /*
  12         * possible "result":
  13         * 0 (not checked)
  14         * N (checked but no further result)
  15         * U (untrusted good)
  16         * G (good)
  17         * B (bad)
  18         */
  19        char result;
  20        char *signer;
  21        char *key;
  22};
  23
  24extern void signature_check_clear(struct signature_check *sigc);
  25extern size_t parse_signature(const char *buf, unsigned long size);
  26extern void parse_gpg_output(struct signature_check *);
  27extern int sign_buffer(struct strbuf *buffer, struct strbuf *signature, const char *signing_key);
  28extern int verify_signed_buffer(const char *payload, size_t payload_size, const char *signature, size_t signature_size, struct strbuf *gpg_output, struct strbuf *gpg_status);
  29extern int git_gpg_config(const char *, const char *, void *);
  30extern void set_signing_key(const char *);
  31extern const char *get_signing_key(void);
  32extern int check_signature(const char *payload, size_t plen,
  33        const char *signature, size_t slen, struct signature_check *sigc);
  34void print_signature_buffer(const struct signature_check *sigc, unsigned flags);
  35
  36#endif