version 1.20, 2015/01/26 06:10:03 |
version 1.21, 2015/04/13 02:04:08 |
|
|
kex->min = DH_GRP_MIN; |
kex->min = DH_GRP_MIN; |
kex->max = DH_GRP_MAX; |
kex->max = DH_GRP_MAX; |
kex->nbits = nbits; |
kex->nbits = nbits; |
if (ssh->compat & SSH_OLD_DHGEX) { |
/* New GEX request */ |
/* Old GEX request */ |
if ((r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_REQUEST)) != 0 || |
if ((r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_REQUEST_OLD)) |
(r = sshpkt_put_u32(ssh, kex->min)) != 0 || |
!= 0 || |
(r = sshpkt_put_u32(ssh, kex->nbits)) != 0 || |
(r = sshpkt_put_u32(ssh, kex->nbits)) != 0 || |
(r = sshpkt_put_u32(ssh, kex->max)) != 0 || |
(r = sshpkt_send(ssh)) != 0) |
(r = sshpkt_send(ssh)) != 0) |
goto out; |
goto out; |
debug("SSH2_MSG_KEX_DH_GEX_REQUEST_OLD(%u) sent", kex->nbits); |
debug("SSH2_MSG_KEX_DH_GEX_REQUEST(%u<%u<%u) sent", |
} else { |
kex->min, kex->nbits, kex->max); |
/* New GEX request */ |
|
if ((r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_REQUEST)) != 0 || |
|
(r = sshpkt_put_u32(ssh, kex->min)) != 0 || |
|
(r = sshpkt_put_u32(ssh, kex->nbits)) != 0 || |
|
(r = sshpkt_put_u32(ssh, kex->max)) != 0 || |
|
(r = sshpkt_send(ssh)) != 0) |
|
goto out; |
|
debug("SSH2_MSG_KEX_DH_GEX_REQUEST(%u<%u<%u) sent", |
|
kex->min, kex->nbits, kex->max); |
|
} |
|
#ifdef DEBUG_KEXDH |
#ifdef DEBUG_KEXDH |
fprintf(stderr, "\nmin = %d, nbits = %d, max = %d\n", |
fprintf(stderr, "\nmin = %d, nbits = %d, max = %d\n", |
kex->min, kex->nbits, kex->max); |
kex->min, kex->nbits, kex->max); |