⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ssh.h

📁 大名鼎鼎的远程登录软件putty的Symbian版源码
💻 H
📖 第 1 页 / 共 2 页
字号:
extern const struct ssh_signkey ssh_dss;extern const struct ssh_signkey ssh_rsa;extern const struct ssh_mac ssh_md5;extern const struct ssh_mac ssh_sha1;extern const struct ssh_mac ssh_sha1_buggy;/* * PuTTY version number formatted as an SSH version string.  */extern char sshver[];/* * Gross hack: pscp will try to start SFTP but fall back to scp1 if * that fails. This variable is the means by which scp.c can reach * into the SSH code and find out which one it got. */extern int ssh_fallback_cmd(void *handle);#ifndef MSCRYPTOAPIvoid SHATransform(word32 * digest, word32 * data);#endifint random_byte(void);void random_add_noise(void *noise, int length);void random_add_heavynoise(void *noise, int length);void logevent(void *, const char *);/* Allocate and register a new channel for port forwarding */void *new_sock_channel(void *handle, Socket s);void ssh_send_port_open(void *channel, char *hostname, int port, char *org);/* Exports from portfwd.c */extern const char *pfd_newconnect(Socket * s, char *hostname, int port,				  void *c, const Config *cfg);/* desthost == NULL indicates dynamic (SOCKS) port forwarding */extern const char *pfd_addforward(char *desthost, int destport, char *srcaddr,				  int port, void *backhandle,				  const Config *cfg);extern void pfd_close(Socket s);extern int pfd_send(Socket s, char *data, int len);extern void pfd_confirm(Socket s);extern void pfd_unthrottle(Socket s);extern void pfd_override_throttle(Socket s, int enable);/* Exports from x11fwd.c */extern const char *x11_init(Socket *, char *, void *, void *, const char *,			    int, const Config *);extern void x11_close(Socket);extern int x11_send(Socket, char *, int);extern void *x11_invent_auth(char *, int, char *, int, int);extern void x11_free_auth(void *);extern void x11_unthrottle(Socket s);extern void x11_override_throttle(Socket s, int enable);extern int x11_get_screen_number(char *display);void x11_get_real_auth(void *authv, char *display);char *x11_display(const char *display);/* Platform-dependent X11 functions */extern void platform_get_x11_auth(char *display, int *proto,                                  unsigned char *data, int *datalen);extern const char platform_x11_best_transport[];/* best X11 hostname for this platform if none specified */SockAddr platform_get_x11_unix_address(int displaynum, char **canonicalname);/* make up a SockAddr naming the address for displaynum */char *platform_get_x_display(void);/* allocated local X display string, if any */Bignum copybn(Bignum b);Bignum bn_power_2(int n);void bn_restore_invariant(Bignum b);Bignum bignum_from_long(unsigned long n);void freebn(Bignum b);Bignum modpow(Bignum base, Bignum exp, Bignum mod);Bignum modmul(Bignum a, Bignum b, Bignum mod);void decbn(Bignum n);extern const Bignum Zero, One;Bignum bignum_from_bytes(const unsigned char *data, int nbytes);int ssh1_read_bignum(const unsigned char *data, int len, Bignum * result);int bignum_bitcount(Bignum bn);int ssh1_bignum_length(Bignum bn);int ssh2_bignum_length(Bignum bn);int bignum_byte(Bignum bn, int i);int bignum_bit(Bignum bn, int i);void bignum_set_bit(Bignum bn, int i, int value);int ssh1_write_bignum(void *data, Bignum bn);Bignum biggcd(Bignum a, Bignum b);unsigned short bignum_mod_short(Bignum number, unsigned short modulus);Bignum bignum_add_long(Bignum number, unsigned long addend);Bignum bigmul(Bignum a, Bignum b);Bignum bigmuladd(Bignum a, Bignum b, Bignum addend);Bignum bigdiv(Bignum a, Bignum b);Bignum bigmod(Bignum a, Bignum b);Bignum modinv(Bignum number, Bignum modulus);Bignum bignum_bitmask(Bignum number);Bignum bignum_rshift(Bignum number, int shift);int bignum_cmp(Bignum a, Bignum b);char *bignum_decimal(Bignum x);#ifdef DEBUGvoid diagbn(char *prefix, Bignum md);#endifvoid *dh_setup_group1(void);void *dh_setup_group(Bignum pval, Bignum gval);void dh_cleanup(void *);Bignum dh_create_e(void *, int nbits);Bignum dh_find_K(void *, Bignum f);int loadrsakey(const Filename *filename, struct RSAKey *key,	       char *passphrase, const char **errorstr);int rsakey_encrypted(const Filename *filename, char **comment);int rsakey_pubblob(const Filename *filename, void **blob, int *bloblen,		   const char **errorstr);int saversakey(const Filename *filename, struct RSAKey *key, char *passphrase);extern int base64_decode_atom(char *atom, unsigned char *out);extern int base64_lines(int datalen);extern void base64_encode_atom(unsigned char *data, int n, char *out);extern void base64_encode(FILE *fp, unsigned char *data, int datalen, int cpl);/* ssh2_load_userkey can return this as an error */extern const struct ssh2_userkey ssh2_wrong_passphrase;#define SSH2_WRONG_PASSPHRASE ((struct ssh2_userkey*)&ssh2_wrong_passphrase)int ssh2_userkey_encrypted(const Filename *filename, char **comment);struct ssh2_userkey *ssh2_load_userkey(const Filename *filename,				       char *passphrase, const char **errorstr);char *ssh2_userkey_loadpub(const Filename *filename, char **algorithm,			   int *pub_blob_len, const char **errorstr);int ssh2_save_userkey(const Filename *filename, struct ssh2_userkey *key,		      char *passphrase);const struct ssh_signkey *find_pubkey_alg(const char *name);enum {    SSH_KEYTYPE_UNOPENABLE,    SSH_KEYTYPE_UNKNOWN,    SSH_KEYTYPE_SSH1, SSH_KEYTYPE_SSH2,    SSH_KEYTYPE_OPENSSH, SSH_KEYTYPE_SSHCOM};int key_type(const Filename *filename);char *key_type_to_str(int type);int import_possible(int type);int import_target_type(int type);int import_encrypted(const Filename *filename, int type, char **comment);int import_ssh1(const Filename *filename, int type,		struct RSAKey *key, char *passphrase);struct ssh2_userkey *import_ssh2(const Filename *filename, int type,				 char *passphrase);int export_ssh1(const Filename *filename, int type,		struct RSAKey *key, char *passphrase);int export_ssh2(const Filename *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,			   int len);void des_encrypt_xdmauth(unsigned char *key, unsigned char *blk, int len);void des_decrypt_xdmauth(unsigned char *key, unsigned char *blk, int len);/* * For progress updates in the key generation utility. */#define PROGFN_INITIALISE 1#define PROGFN_LIN_PHASE 2#define PROGFN_EXP_PHASE 3#define PROGFN_PHASE_EXTENT 4#define PROGFN_READY 5#define PROGFN_PROGRESS 6typedef void (*progfn_t) (void *param, int action, int phase, int progress);int rsa_generate(struct RSAKey *key, int bits, progfn_t pfn,		 void *pfnparam);int dsa_generate(struct dss_key *key, int bits, progfn_t pfn,		 void *pfnparam);Bignum primegen(int bits, int modulus, int residue, Bignum factor,		int phase, progfn_t pfn, void *pfnparam);/* * zlib compression. */void *zlib_compress_init(void);void zlib_compress_cleanup(void *);void *zlib_decompress_init(void);void zlib_decompress_cleanup(void *);int zlib_compress_block(void *, unsigned char *block, int len,			unsigned char **outblock, int *outlen);int zlib_decompress_block(void *, unsigned char *block, int len,			  unsigned char **outblock, int *outlen);/* * SSH1 agent messages. */#define SSH1_AGENTC_REQUEST_RSA_IDENTITIES    1#define SSH1_AGENT_RSA_IDENTITIES_ANSWER      2#define SSH1_AGENTC_RSA_CHALLENGE             3#define SSH1_AGENT_RSA_RESPONSE               4#define SSH1_AGENTC_ADD_RSA_IDENTITY          7#define SSH1_AGENTC_REMOVE_RSA_IDENTITY       8#define SSH1_AGENTC_REMOVE_ALL_RSA_IDENTITIES 9	/* openssh private? *//* * Messages common to SSH1 and OpenSSH's SSH2. */#define SSH_AGENT_FAILURE                    5#define SSH_AGENT_SUCCESS                    6/* * OpenSSH's SSH2 agent messages. */#define SSH2_AGENTC_REQUEST_IDENTITIES          11#define SSH2_AGENT_IDENTITIES_ANSWER            12#define SSH2_AGENTC_SIGN_REQUEST                13#define SSH2_AGENT_SIGN_RESPONSE                14#define SSH2_AGENTC_ADD_IDENTITY                17#define SSH2_AGENTC_REMOVE_IDENTITY             18#define SSH2_AGENTC_REMOVE_ALL_IDENTITIES       19/* * Need this to warn about support for the original SSH2 keyfile * format. */void old_keyfile_warning(void);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -