Mercurial > dropbear
comparison cli-kex.c @ 1742:6e71440b1e47 fuzz
Add fuzzer-client_nomaths, fix client fuzzer
author | Matt Johnston <matt@ucc.asn.au> |
---|---|
date | Sun, 18 Oct 2020 15:08:54 +0800 |
parents | 8f93f37c01de |
children | 62ae35ff833e |
comparison
equal
deleted
inserted
replaced
1741:d1b279aa5ed1 | 1742:6e71440b1e47 |
---|---|
44 | 44 |
45 void send_msg_kexdh_init() { | 45 void send_msg_kexdh_init() { |
46 TRACE(("send_msg_kexdh_init()")) | 46 TRACE(("send_msg_kexdh_init()")) |
47 | 47 |
48 CHECKCLEARTOWRITE(); | 48 CHECKCLEARTOWRITE(); |
49 | |
50 #if DROPBEAR_FUZZ | |
51 if (fuzz.fuzzing && fuzz.skip_kexmaths) { | |
52 return; | |
53 } | |
54 #endif | |
55 | |
49 buf_putbyte(ses.writepayload, SSH_MSG_KEXDH_INIT); | 56 buf_putbyte(ses.writepayload, SSH_MSG_KEXDH_INIT); |
50 switch (ses.newkeys->algo_kex->mode) { | 57 switch (ses.newkeys->algo_kex->mode) { |
51 #if DROPBEAR_NORMAL_DH | 58 #if DROPBEAR_NORMAL_DH |
52 case DROPBEAR_KEX_NORMAL_DH: | 59 case DROPBEAR_KEX_NORMAL_DH: |
53 if (ses.newkeys->algo_kex != cli_ses.param_kex_algo | 60 if (ses.newkeys->algo_kex != cli_ses.param_kex_algo |
96 sign_key *hostkey = NULL; | 103 sign_key *hostkey = NULL; |
97 unsigned int keytype, keybloblen; | 104 unsigned int keytype, keybloblen; |
98 unsigned char* keyblob = NULL; | 105 unsigned char* keyblob = NULL; |
99 | 106 |
100 TRACE(("enter recv_msg_kexdh_reply")) | 107 TRACE(("enter recv_msg_kexdh_reply")) |
108 | |
109 #if DROPBEAR_FUZZ | |
110 if (fuzz.fuzzing && fuzz.skip_kexmaths) { | |
111 return; | |
112 } | |
113 #endif | |
101 | 114 |
102 if (cli_ses.kex_state != KEXDH_INIT_SENT) { | 115 if (cli_ses.kex_state != KEXDH_INIT_SENT) { |
103 dropbear_exit("Received out-of-order kexdhreply"); | 116 dropbear_exit("Received out-of-order kexdhreply"); |
104 } | 117 } |
105 keytype = ses.newkeys->algo_hostkey; | 118 keytype = ses.newkeys->algo_hostkey; |