Lines Matching full:ssh

50 #include "ssh-gss.h"
58 static int input_kex_dh_gex_request(int, u_int32_t, struct ssh *);
59 static int input_kex_dh_gex_init(int, u_int32_t, struct ssh *);
62 kexgex_server(struct ssh *ssh) in kexgex_server() argument
64 ssh_dispatch_set(ssh, SSH2_MSG_KEX_DH_GEX_REQUEST, in kexgex_server()
71 input_kex_dh_gex_request(int type, u_int32_t seq, struct ssh *ssh) in input_kex_dh_gex_request() argument
73 struct kex *kex = ssh->kex; in input_kex_dh_gex_request()
79 ssh_dispatch_set(ssh, SSH2_MSG_KEX_DH_GEX_REQUEST, &kex_protocol_error); in input_kex_dh_gex_request()
81 if ((r = sshpkt_get_u32(ssh, &min)) != 0 || in input_kex_dh_gex_request()
82 (r = sshpkt_get_u32(ssh, &nbits)) != 0 || in input_kex_dh_gex_request()
83 (r = sshpkt_get_u32(ssh, &max)) != 0 || in input_kex_dh_gex_request()
84 (r = sshpkt_get_end(ssh)) != 0) in input_kex_dh_gex_request()
103 (void)sshpkt_disconnect(ssh, "no matching DH grp found"); in input_kex_dh_gex_request()
109 if ((r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_GROUP)) != 0 || in input_kex_dh_gex_request()
110 (r = sshpkt_put_bignum2(ssh, dh_p)) != 0 || in input_kex_dh_gex_request()
111 (r = sshpkt_put_bignum2(ssh, dh_g)) != 0 || in input_kex_dh_gex_request()
112 (r = sshpkt_send(ssh)) != 0) in input_kex_dh_gex_request()
120 ssh_dispatch_set(ssh, SSH2_MSG_KEX_DH_GEX_INIT, &input_kex_dh_gex_init); in input_kex_dh_gex_request()
127 input_kex_dh_gex_init(int type, u_int32_t seq, struct ssh *ssh) in input_kex_dh_gex_init() argument
129 struct kex *kex = ssh->kex; in input_kex_dh_gex_init()
141 ssh_dispatch_set(ssh, SSH2_MSG_KEX_DH_GEX_INIT, &kex_protocol_error); in input_kex_dh_gex_init()
143 if ((r = kex_load_hostkey(ssh, &server_host_private, in input_kex_dh_gex_init()
148 if ((r = sshpkt_get_bignum2(ssh, &dh_client_pub)) != 0 || in input_kex_dh_gex_init()
149 (r = sshpkt_get_end(ssh)) != 0) in input_kex_dh_gex_init()
184 if ((r = kex->sign(ssh, server_host_private, server_host_public, in input_kex_dh_gex_init()
189 if ((r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_REPLY)) != 0 || in input_kex_dh_gex_init()
190 (r = sshpkt_put_stringb(ssh, server_host_key_blob)) != 0 || in input_kex_dh_gex_init()
191 (r = sshpkt_put_bignum2(ssh, pub_key)) != 0 || /* f */ in input_kex_dh_gex_init()
192 (r = sshpkt_put_string(ssh, signature, slen)) != 0 || in input_kex_dh_gex_init()
193 (r = sshpkt_send(ssh)) != 0) in input_kex_dh_gex_init()
196 if ((r = kex_derive_keys(ssh, hash, hashlen, shared_secret)) != 0 || in input_kex_dh_gex_init()
197 (r = kex_send_newkeys(ssh)) != 0) in input_kex_dh_gex_init()