X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=ssh.h;h=76954a4c64709ffe2ca54707ff0fa8138259f6e8;hb=118fc8c81e6a850adbcc8dda409d9c10875eae7d;hp=7857f15294ed10e364769682c6d50d3bec503c7f;hpb=d2377735994b87f99f994ad0ef04b85845bb854d;p=PuTTY.git diff --git a/ssh.h b/ssh.h index 7857f152..76954a4c 100644 --- a/ssh.h +++ b/ssh.h @@ -297,10 +297,30 @@ char *ssh2_userkey_loadpub(char *filename, char **algorithm, int ssh2_save_userkey(char *filename, struct ssh2_userkey *key, char *passphrase); -int keyfile_version(char *filename); +enum { + SSH_KEYTYPE_UNOPENABLE, + SSH_KEYTYPE_UNKNOWN, + SSH_KEYTYPE_SSH1, SSH_KEYTYPE_SSH2, + SSH_KEYTYPE_OPENSSH, SSH_KEYTYPE_SSHCOM +}; +int key_type(char *filename); +char *key_type_to_str(int type); + +int import_possible(int type); +int import_target_type(int type); +int import_encrypted(char *filename, int type, char **comment); +int import_ssh1(char *filename, int type, struct RSAKey *key,char *passphrase); +struct ssh2_userkey *import_ssh2(char *filename, int type, char *passphrase); +int export_ssh1(char *filename, int type, struct RSAKey *key,char *passphrase); +int export_ssh2(char *filename, int type, + struct ssh2_userkey *key, char *passphrase); void des3_decrypt_pubkey(unsigned char *key, unsigned char *blk, int len); void des3_encrypt_pubkey(unsigned char *key, unsigned char *blk, int len); +void des3_decrypt_pubkey_ossh(unsigned char *key, unsigned char *iv, + unsigned char *blk, int len); +void des3_encrypt_pubkey_ossh(unsigned char *key, unsigned char *iv, + unsigned char *blk, int len); void aes256_encrypt_pubkey(unsigned char *key, unsigned char *blk, int len); void aes256_decrypt_pubkey(unsigned char *key, unsigned char *blk,