version 1.30.2.2, 2002/10/11 14:51:52 |
version 1.30.2.3, 2003/04/03 22:35:17 |
|
|
}; |
}; |
|
|
enum kex_exchange { |
enum kex_exchange { |
DH_GRP1_SHA1, |
KEX_DH_GRP1_SHA1, |
DH_GEX_SHA1 |
KEX_DH_GEX_SHA1, |
|
KEX_MAX |
}; |
}; |
|
|
#define KEX_INIT_SENT 0x0001 |
#define KEX_INIT_SENT 0x0001 |
|
|
int (*verify_host_key)(Key *); |
int (*verify_host_key)(Key *); |
Key *(*load_host_key)(int); |
Key *(*load_host_key)(int); |
int (*host_key_index)(Key *); |
int (*host_key_index)(Key *); |
|
void (*kex[KEX_MAX])(Kex *); |
}; |
}; |
|
|
Kex *kex_setup(char *[PROPOSAL_MAX]); |
Kex *kex_setup(char *[PROPOSAL_MAX]); |
|
|
void kex_input_kexinit(int, u_int32_t, void *); |
void kex_input_kexinit(int, u_int32_t, void *); |
void kex_derive_keys(Kex *, u_char *, BIGNUM *); |
void kex_derive_keys(Kex *, u_char *, BIGNUM *); |
|
|
void kexdh(Kex *); |
|
void kexgex(Kex *); |
|
|
|
Newkeys *kex_get_newkeys(int); |
Newkeys *kex_get_newkeys(int); |
|
|
|
void kexdh_client(Kex *); |
|
void kexdh_server(Kex *); |
|
void kexgex_client(Kex *); |
|
void kexgex_server(Kex *); |
|
|
|
u_char * |
|
kex_dh_hash(char *, char *, char *, int, char *, int, u_char *, int, |
|
BIGNUM *, BIGNUM *, BIGNUM *); |
|
u_char * |
|
kexgex_hash(char *, char *, char *, int, char *, int, u_char *, int, |
|
int, int, int, BIGNUM *, BIGNUM *, BIGNUM *, BIGNUM *, BIGNUM *); |
|
|
#if defined(DEBUG_KEX) || defined(DEBUG_KEXDH) |
#if defined(DEBUG_KEX) || defined(DEBUG_KEXDH) |
void dump_digest(char *, u_char *, int); |
void dump_digest(char *, u_char *, int); |