Merge pull request #29 from ejohnstown/client-rekey

Fix bug where client initiated rekeying failed
pull/31/head
dgarske 2017-06-12 12:14:12 -07:00 committed by GitHub
commit a35ed26e2c
1 changed files with 4 additions and 2 deletions

View File

@ -1347,12 +1347,14 @@ static int DoKexInit(WOLFSSH* ssh, uint8_t* buf, uint32_t len, uint32_t* idx)
*idx = begin;
ssh->clientState = CLIENT_KEXINIT_DONE;
if (ssh->keyingState == KEYING_UNKEYED) {
if (ssh->keyingState == KEYING_UNKEYED ||
ssh->keyingState == KEYING_KEYED) {
WLOG(WS_LOG_DEBUG, "KeyingState now KEXINIT_RECV");
ssh->keyingState = KEYING_KEXINIT_RECV;
ret = SendKexInit(ssh);
}
else if (KEYING_KEXINIT_SENT) {
else if (ssh->keyingState == KEYING_KEXINIT_SENT) {
WLOG(WS_LOG_DEBUG, "KeyingState now KEXINIT_DONE");
ssh->keyingState = KEYING_KEXINIT_DONE;
}