X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=pageant.h;h=6e29f40c181a0fc8e8186d25f1acb8aa29a6ec8c;hb=b73c1c1deb9e0c6080ce27d70191a7242886bea3;hp=c1bc854ebe2e315693271d797f2357bc3363782f;hpb=2069de8c8f9b54fcdc9af71fefc55ada725ebc49;p=PuTTY.git diff --git a/pageant.h b/pageant.h index c1bc854e..6e29f40c 100644 --- a/pageant.h +++ b/pageant.h @@ -120,3 +120,24 @@ enum { int pageant_add_keyfile(Filename *filename, const char *passphrase, char **retstr); void pageant_forget_passphrases(void); + +struct pageant_pubkey { + /* Everything needed to identify a public key found by + * pageant_enum_keys and pass it back to the agent or other code + * later */ + void *blob; + int bloblen; + char *comment; + int ssh_version; +}; +struct pageant_pubkey *pageant_pubkey_copy(struct pageant_pubkey *key); +void pageant_pubkey_free(struct pageant_pubkey *key); + +typedef void (*pageant_key_enum_fn_t)(void *ctx, + const char *fingerprint, + const char *comment, + struct pageant_pubkey *key); +int pageant_enum_keys(pageant_key_enum_fn_t callback, void *callback_ctx, + char **retstr); +int pageant_delete_key(struct pageant_pubkey *key, char **retstr); +int pageant_delete_all_keys(char **retstr);