session_id2 = kex->session_id; session_id2_len = kex->session_id_len;
ssh_kex2(char *host, struct sockaddr *hostaddr){	Kex *kex;	xxx_host = host;	xxx_hostaddr = hostaddr;	if (options.ciphers == (char *)-1) {		log("No valid ciphers for protocol version 2 given, using defaults.");		options.ciphers = NULL;	}	if (options.ciphers != NULL) {		myproposal[PROPOSAL_ENC_ALGS_CTOS] =		myproposal[PROPOSAL_ENC_ALGS_STOC] = options.ciphers;	}	myproposal[PROPOSAL_ENC_ALGS_CTOS] =	    compat_cipher_proposal(myproposal[PROPOSAL_ENC_ALGS_CTOS]);	myproposal[PROPOSAL_ENC_ALGS_STOC] =	    compat_cipher_proposal(myproposal[PROPOSAL_ENC_ALGS_STOC]);	if (options.compression) {		myproposal[PROPOSAL_COMP_ALGS_CTOS] =		myproposal[PROPOSAL_COMP_ALGS_STOC] = "zlib";	} else {		myproposal[PROPOSAL_COMP_ALGS_CTOS] =		myproposal[PROPOSAL_COMP_ALGS_STOC] = "none";	}	if (options.macs != NULL) {		myproposal[PROPOSAL_MAC_ALGS_CTOS] =		myproposal[PROPOSAL_MAC_ALGS_STOC] = options.macs;	}	kex = kex_start(myproposal);	kex->client_version_string=client_version_string;	kex->server_version_string=server_version_string;	kex->check_host_key=&check_host_key_callback;	/* start key exchange */	dispatch_run(DISPATCH_BLOCK, &kex->newkeys, kex);#ifdef DEBUG_KEXDH	/* send 1st encrypted/maced/compressed message */	packet_start(SSH2_MSG_IGNORE);	packet_put_cstring("markus");	packet_send();	packet_write_wait();#endif	debug("done: ssh_kex2.");}