Cool.  Here goes a few more fixes when I was trying libssh with
[email protected], an ssh-based forum using v1.

* banner/identification: ssh_send_banner (client.c).  libssh reports
crc error after sending the session key.  The actual problem is that
libssh uses "...\r\n" in its identification, while some sever doesn't
parse the identification correctly and stops at "\r".  Since the ssh
specification (http://www.snailbook.com/docs/protocol-1.5.txt) says it
should be "...\n", the patch removes "\r".

* hang (packet1.c:337).  libssh hangs after authentication.  I guess
it's because libssh doesn't run into the correct state, i.e., from
SSH_SESSION_STATE_AUTHENTICATING to SSH_SESSION_STATE_AUTHENTICATED.
Not sure if the fix is at the right place.

* close: ssh_connection_callback (client.c:645).  When in error state
(e.g., the remote server closes the connection), libssh/samplessh
doesn't close automatically.  Not sure if this fix is necessary.

* samplessh hangs (sample.c), for example, when channel_poll returns -1 (error).

Thanks.

- xi

On Tue, Apr 20, 2010 at 7:32 AM, Andreas Schneider <[email protected]> wrote:
> On Tuesday 20 April 2010 13:05:45 you wrote:
>> Hi,
>
> Hi Xi,
>
>> Attached is a patch that addresses the following problems.
>>
>> * two memory leaks: enc_session (kex.c:781), session->packet_callbacks
>> (session.c:209);
>>
>> * openssl configuration problem: use OPENSSL_FOUND instead of
>> CRYPTO_FOUND, which doesn't exist in my cmake 2.8.
>>
>> * compile warnings: avoid using the name "signal" (channels.c);
>>
>> * link error when WITH_SERVER=0 (packet.c:59);
>>
>> * minor compile error (torture_options.c).
>
> thank you very much for your patch. I've split it up in smaller patches and
> pushed it to the repository.
>
>
> Cheers,
>
>        -- andreas
>
>
>

Attachment: b.patch
Description: Binary data

Reply via email to