diff options
Diffstat (limited to 'kex.h')
-rw-r--r-- | kex.h | 22 |
1 files changed, 12 insertions, 10 deletions
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: kex.h,v 1.37 2005/07/25 11:59:39 markus Exp $ */ | 1 | /* $OpenBSD: kex.h,v 1.38 2005/11/04 05:15:59 djm Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. | 4 | * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. |
@@ -31,9 +31,9 @@ | |||
31 | #include "cipher.h" | 31 | #include "cipher.h" |
32 | #include "key.h" | 32 | #include "key.h" |
33 | 33 | ||
34 | #define KEX_DH1 "diffie-hellman-group1-sha1" | 34 | #define KEX_DH1 "diffie-hellman-group1-sha1" |
35 | #define KEX_DH14 "diffie-hellman-group14-sha1" | 35 | #define KEX_DH14 "diffie-hellman-group14-sha1" |
36 | #define KEX_DHGEX "diffie-hellman-group-exchange-sha1" | 36 | #define KEX_DHGEX_SHA1 "diffie-hellman-group-exchange-sha1" |
37 | 37 | ||
38 | #define COMP_NONE 0 | 38 | #define COMP_NONE 0 |
39 | #define COMP_ZLIB 1 | 39 | #define COMP_ZLIB 1 |
@@ -115,6 +115,7 @@ struct Kex { | |||
115 | Buffer peer; | 115 | Buffer peer; |
116 | int done; | 116 | int done; |
117 | int flags; | 117 | int flags; |
118 | const EVP_MD *evp_md; | ||
118 | #ifdef GSSAPI | 119 | #ifdef GSSAPI |
119 | int gss_deleg_creds; | 120 | int gss_deleg_creds; |
120 | #endif | 121 | #endif |
@@ -131,7 +132,7 @@ void kex_finish(Kex *); | |||
131 | 132 | ||
132 | void kex_send_kexinit(Kex *); | 133 | void kex_send_kexinit(Kex *); |
133 | void kex_input_kexinit(int, u_int32_t, void *); | 134 | void kex_input_kexinit(int, u_int32_t, void *); |
134 | void kex_derive_keys(Kex *, u_char *, BIGNUM *); | 135 | void kex_derive_keys(Kex *, u_char *, u_int, BIGNUM *); |
135 | 136 | ||
136 | Newkeys *kex_get_newkeys(int); | 137 | Newkeys *kex_get_newkeys(int); |
137 | 138 | ||
@@ -145,12 +146,13 @@ void kexgss_client(Kex *); | |||
145 | void kexgss_server(Kex *); | 146 | void kexgss_server(Kex *); |
146 | #endif | 147 | #endif |
147 | 148 | ||
148 | u_char * | 149 | void |
149 | kex_dh_hash(char *, char *, char *, int, char *, int, u_char *, int, | 150 | kex_dh_hash(char *, char *, char *, int, char *, int, u_char *, int, |
150 | BIGNUM *, BIGNUM *, BIGNUM *); | 151 | BIGNUM *, BIGNUM *, BIGNUM *, u_char **, u_int *); |
151 | u_char * | 152 | void |
152 | kexgex_hash(char *, char *, char *, int, char *, int, u_char *, int, | 153 | kexgex_hash(const EVP_MD *, char *, char *, char *, int, char *, |
153 | int, int, int, BIGNUM *, BIGNUM *, BIGNUM *, BIGNUM *, BIGNUM *); | 154 | int, u_char *, int, int, int, int, BIGNUM *, BIGNUM *, BIGNUM *, |
155 | BIGNUM *, BIGNUM *, u_char **, u_int *); | ||
154 | 156 | ||
155 | void | 157 | void |
156 | derive_ssh1_session_id(BIGNUM *, BIGNUM *, u_int8_t[8], u_int8_t[16]); | 158 | derive_ssh1_session_id(BIGNUM *, BIGNUM *, u_int8_t[8], u_int8_t[16]); |