Subject: Key regeneration failure (serverside demand)

Key regeneration failure (serverside demand)

From: Mikael Johansson <>
Date: Thu, 12 Aug 2010 16:26:17 +0200

Hello members

I've implemented an scp client using libCurl and libSSH2 and have encountered a problem.

After 1 GB of uploaded data, the server tries to reexchange keys. My application ignores it and continues sending data. The server closes the connection.
I think the problem lies in the libSSH2 not taking care of the key exchange.
Tests with the libSSH2's sample program scp_write_nonblock.c shows the same

Is there a way to configure libSSH2 to perform this reexchanging of keys automatically?

I am using
libCurl 7.21.1
libSSH2 1.2.7-20100812 (in nonblocking mode)
openSSL 1.0.0a

The client runs on Windows XP, 32bit, the server runs CentOS 5.

The server's /var/log/secure shows:
Disconnecting: Protocol error: expected packet type 21, got 94
where type 21 is SSH2_MSG_NEWKEYS and type 94 is SSH2_MSG_CHANNEL_DATA.


Received on 2010-08-12