Lines Matching defs:kex
49 * stubs for privsep calls in the server side implementation of kex.
119 ssh->kex->server = is_server;
122 ssh->kex->kex[KEX_DH_GRP1_SHA1] = kex_gen_server;
123 ssh->kex->kex[KEX_DH_GRP14_SHA1] = kex_gen_server;
124 ssh->kex->kex[KEX_DH_GRP14_SHA256] = kex_gen_server;
125 ssh->kex->kex[KEX_DH_GRP16_SHA512] = kex_gen_server;
126 ssh->kex->kex[KEX_DH_GRP18_SHA512] = kex_gen_server;
127 ssh->kex->kex[KEX_DH_GEX_SHA1] = kexgex_server;
128 ssh->kex->kex[KEX_DH_GEX_SHA256] = kexgex_server;
129 ssh->kex->kex[KEX_ECDH_SHA2] = kex_gen_server;
131 ssh->kex->kex[KEX_C25519_SHA256] = kex_gen_server;
132 ssh->kex->kex[KEX_KEM_SNTRUP761X25519_SHA512] = kex_gen_server;
133 ssh->kex->kex[KEX_KEM_MLKEM768X25519_SHA256] = kex_gen_server;
134 ssh->kex->load_host_public_key=&_ssh_host_public_key;
135 ssh->kex->load_host_private_key=&_ssh_host_private_key;
136 ssh->kex->sign=&_ssh_host_key_sign;
139 ssh->kex->kex[KEX_DH_GRP1_SHA1] = kex_gen_client;
140 ssh->kex->kex[KEX_DH_GRP14_SHA1] = kex_gen_client;
141 ssh->kex->kex[KEX_DH_GRP14_SHA256] = kex_gen_client;
142 ssh->kex->kex[KEX_DH_GRP16_SHA512] = kex_gen_client;
143 ssh->kex->kex[KEX_DH_GRP18_SHA512] = kex_gen_client;
144 ssh->kex->kex[KEX_DH_GEX_SHA1] = kexgex_client;
145 ssh->kex->kex[KEX_DH_GEX_SHA256] = kexgex_client;
146 ssh->kex->kex[KEX_ECDH_SHA2] = kex_gen_client;
148 ssh->kex->kex[KEX_C25519_SHA256] = kex_gen_client;
149 ssh->kex->kex[KEX_KEM_SNTRUP761X25519_SHA512] = kex_gen_client;
150 ssh->kex->kex[KEX_KEM_MLKEM768X25519_SHA256] = kex_gen_client;
151 ssh->kex->verify_host_key =&_ssh_verify_host_key;
171 if (ssh->kex && ssh->kex->server)
203 if (ssh->kex->server) {
234 if (cb == NULL || ssh->kex == NULL)
237 ssh->kex->verify_host_key = cb;
260 if (sshbuf_len(ssh->kex->client_version) == 0 ||
261 sshbuf_len(ssh->kex->server_version) == 0)
372 if (ssh->kex->server || ++n > SSH_MAX_PRE_BANNER_LINES) {
441 struct kex *kex = ssh->kex;
450 if (kex->server) {
451 if (sshbuf_len(ssh->kex->server_version) == 0)
452 r = _ssh_send_banner(ssh, ssh->kex->server_version);
454 sshbuf_len(ssh->kex->server_version) != 0 &&
455 sshbuf_len(ssh->kex->client_version) == 0)
456 r = _ssh_read_banner(ssh, ssh->kex->client_version);
458 if (sshbuf_len(ssh->kex->server_version) == 0)
459 r = _ssh_read_banner(ssh, ssh->kex->server_version);
461 sshbuf_len(ssh->kex->server_version) != 0 &&
462 sshbuf_len(ssh->kex->client_version) == 0)
463 r = _ssh_send_banner(ssh, ssh->kex->client_version);
467 /* start initial kex as soon as we have exchanged the banners */
468 if (sshbuf_len(ssh->kex->server_version) != 0 &&
469 sshbuf_len(ssh->kex->client_version) != 0) {
531 /* XXX we de-serialize ssh->kex->my, modify it, and change it */
532 if ((r = kex_buf2prop(ssh->kex->my, NULL, &proposal)) != 0)
565 debug2_f("orig/%d %s", ssh->kex->server, orig);
566 debug2_f("replace/%d %s", ssh->kex->server, replace);
570 r = kex_prop2buf(ssh->kex->my, proposal);