Mercurial > dropbear
comparison session.h @ 1683:41bf8f216644
merge rsa-sha256
author | Matt Johnston <matt@ucc.asn.au> |
---|---|
date | Tue, 26 May 2020 00:24:02 +0800 |
parents | e0871128e61f 435cfb9ec96e |
children | d1b279aa5ed1 |
comparison
equal
deleted
inserted
replaced
1673:e0871128e61f | 1683:41bf8f216644 |
---|---|
100 | 100 |
101 struct key_context_directional recv; | 101 struct key_context_directional recv; |
102 struct key_context_directional trans; | 102 struct key_context_directional trans; |
103 | 103 |
104 const struct dropbear_kex *algo_kex; | 104 const struct dropbear_kex *algo_kex; |
105 int algo_hostkey; | 105 enum signkey_type algo_hostkey; /* server key type */ |
106 enum signature_type algo_signature; /* server signature type */ | |
106 | 107 |
107 int allow_compress; /* whether compression has started (useful in | 108 int allow_compress; /* whether compression has started (useful in |
108 [email protected] delayed compression case) */ | 109 [email protected] delayed compression case) */ |
109 }; | 110 }; |
110 | 111 |
192 buffer* transkexinit; /* the kexinit packet we send should be kept so we | 193 buffer* transkexinit; /* the kexinit packet we send should be kept so we |
193 can add it to the hash when generating keys */ | 194 can add it to the hash when generating keys */ |
194 | 195 |
195 /* Enables/disables compression */ | 196 /* Enables/disables compression */ |
196 algo_type *compress_algos; | 197 algo_type *compress_algos; |
198 | |
199 /* Other side allows SSH_MSG_EXT_INFO. Currently only set for server */ | |
200 int allow_ext_info; | |
197 | 201 |
198 /* a list of queued replies that should be sent after a KEX has | 202 /* a list of queued replies that should be sent after a KEX has |
199 concluded (ie, while dataallowed was unset)*/ | 203 concluded (ie, while dataallowed was unset)*/ |
200 struct packetlist *reply_queue_head, *reply_queue_tail; | 204 struct packetlist *reply_queue_head, *reply_queue_tail; |
201 | 205 |
257 #if DROPBEAR_VFORK | 261 #if DROPBEAR_VFORK |
258 pid_t server_pid; | 262 pid_t server_pid; |
259 #endif | 263 #endif |
260 | 264 |
261 #if DROPBEAR_PLUGIN | 265 #if DROPBEAR_PLUGIN |
262 /* The shared library handle */ | 266 /* The shared library handle */ |
263 void *plugin_handle; | 267 void *plugin_handle; |
264 | 268 |
265 /* The instance created by the plugin_new function */ | 269 /* The instance created by the plugin_new function */ |
266 struct PluginInstance *plugin_instance; | 270 struct PluginInstance *plugin_instance; |
267 #endif | 271 #endif |
268 | |
269 }; | 272 }; |
270 | 273 |
271 typedef enum { | 274 typedef enum { |
272 KEX_NOTHING, | 275 KEX_NOTHING, |
273 KEXINIT_RCVD, | 276 KEXINIT_RCVD, |
292 struct kex_curve25519_param *curve25519_param; | 295 struct kex_curve25519_param *curve25519_param; |
293 const struct dropbear_kex *param_kex_algo; /* KEX algorithm corresponding to current dh_e and dh_x */ | 296 const struct dropbear_kex *param_kex_algo; /* KEX algorithm corresponding to current dh_e and dh_x */ |
294 | 297 |
295 cli_kex_state kex_state; /* Used for progressing KEX */ | 298 cli_kex_state kex_state; /* Used for progressing KEX */ |
296 cli_state state; /* Used to progress auth/channelsession etc */ | 299 cli_state state; /* Used to progress auth/channelsession etc */ |
297 unsigned donefirstkex : 1; /* Set when we set sentnewkeys, never reset */ | |
298 | 300 |
299 int tty_raw_mode; /* Whether we're in raw mode (and have to clean up) */ | 301 int tty_raw_mode; /* Whether we're in raw mode (and have to clean up) */ |
300 struct termios saved_tio; | 302 struct termios saved_tio; |
301 int stdincopy; | 303 int stdincopy; |
302 int stdinflags; | 304 int stdinflags; |
320 info request from the server for | 322 info request from the server for |
321 interactive auth.*/ | 323 interactive auth.*/ |
322 #endif | 324 #endif |
323 sign_key *lastprivkey; | 325 sign_key *lastprivkey; |
324 | 326 |
327 buffer *server_sig_algs; | |
328 | |
325 int retval; /* What the command exit status was - we emulate it */ | 329 int retval; /* What the command exit status was - we emulate it */ |
326 #if 0 | 330 #if 0 |
327 TODO | 331 TODO |
328 struct AgentkeyList *agentkeys; /* Keys to use for public-key auth */ | 332 struct AgentkeyList *agentkeys; /* Keys to use for public-key auth */ |
329 #endif | 333 #endif |