*/
#include "includes.h"
-RCSID("$OpenBSD: kexgex.c,v 1.20 2002/02/28 15:46:33 markus Exp $");
+RCSID("$OpenBSD: kexgex.c,v 1.22 2002/03/24 17:27:03 stevesk Exp $");
#include <openssl/bn.h>
#include "dh.h"
#include "ssh2.h"
#include "compat.h"
-#include "monitor.h"
#include "monitor_wrap.h"
-/* Imports */
-extern int use_privsep;
-extern int mm_recvfd;
-
static u_char *
kexgex_hash(
char *client_version_string,
{
BIGNUM *shared_secret = NULL, *dh_client_pub = NULL;
Key *server_host_key;
- DH *dh = dh;
+ DH *dh;
u_char *kbuf, *hash, *signature = NULL, *server_host_key_blob = NULL;
u_int sbloblen, klen, kout, slen;
int min = -1, max = -1, nbits = -1, type;
min, nbits, max);
/* Contact privileged parent */
- if (use_privsep)
- dh = mm_choose_dh(mm_recvfd, min, nbits, max);
- else
- dh = choose_dh(min, nbits, max);
+ dh = PRIVSEP(choose_dh(min, nbits, max));
if (dh == NULL)
packet_disconnect("Protocol error: no matching DH grp found");
/* sign H */
/* XXX hashlen depends on KEX */
- if (use_privsep)
- mm_key_sign(mm_recvfd, kex->host_key_index(server_host_key),
- &signature, &slen, hash, 20);
- else
- key_sign(server_host_key, &signature, &slen, hash, 20);
+ PRIVSEP(key_sign(server_host_key, &signature, &slen, hash, 20));
/* destroy_sensitive_data(); */