From db7c22c94cb18084b686c39c8670efa8e5981f83 Mon Sep 17 00:00:00 2001 From: Tim Biermann Date: Fri, 27 May 2022 13:52:51 +0200 Subject: [PATCH] libssh2: cleaning up --- ...a92b77e34d089493fe6d3e2c6c8775858b94.patch | 72 ------------------- 1 file changed, 72 deletions(-) delete mode 100644 libssh2/1c6fa92b77e34d089493fe6d3e2c6c8775858b94.patch diff --git a/libssh2/1c6fa92b77e34d089493fe6d3e2c6c8775858b94.patch b/libssh2/1c6fa92b77e34d089493fe6d3e2c6c8775858b94.patch deleted file mode 100644 index 5f1c670c4..000000000 --- a/libssh2/1c6fa92b77e34d089493fe6d3e2c6c8775858b94.patch +++ /dev/null @@ -1,72 +0,0 @@ -From 1c6fa92b77e34d089493fe6d3e2c6c8775858b94 Mon Sep 17 00:00:00 2001 -From: Will Cosgrove -Date: Thu, 29 Aug 2019 15:24:22 -0700 -Subject: [PATCH] fixed type issue, updated SSH_MSG_DISCONNECT - -SSH_MSG_DISCONNECT now also uses _libssh2_get API. ---- - src/packet.c | 40 +++++++++++++++------------------------- - 1 file changed, 15 insertions(+), 25 deletions(-) - -diff --git a/src/packet.c b/src/packet.c -index 8908b2c5ad..97f0cdd4b9 100644 ---- a/src/packet.c -+++ b/src/packet.c -@@ -419,8 +419,8 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data, - size_t datalen, int macstate) - { - int rc = 0; -- char *message = NULL; -- char *language = NULL; -+ unsigned char *message = NULL; -+ unsigned char *language = NULL; - size_t message_len = 0; - size_t language_len = 0; - LIBSSH2_CHANNEL *channelp = NULL; -@@ -472,33 +472,23 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data, - - case SSH_MSG_DISCONNECT: - if(datalen >= 5) { -- size_t reason = _libssh2_ntohu32(data + 1); -+ uint32_t reason = 0; -+ struct string_buf buf; -+ buf.data = (unsigned char *)data; -+ buf.dataptr = buf.data; -+ buf.len = datalen; -+ buf.dataptr++; /* advance past type */ - -- if(datalen >= 9) { -- message_len = _libssh2_ntohu32(data + 5); -+ _libssh2_get_u32(&buf, &reason); -+ _libssh2_get_string(&buf, &message, &message_len); -+ _libssh2_get_string(&buf, &language, &language_len); - -- if(message_len < datalen-13) { -- /* 9 = packet_type(1) + reason(4) + message_len(4) */ -- message = (char *) data + 9; -- -- language_len = -- _libssh2_ntohu32(data + 9 + message_len); -- language = (char *) data + 9 + message_len + 4; -- -- if(language_len > (datalen-13-message_len)) { -- /* bad input, clear info */ -- language = message = NULL; -- language_len = message_len = 0; -- } -- } -- else -- /* bad size, clear it */ -- message_len = 0; -- } - if(session->ssh_msg_disconnect) { -- LIBSSH2_DISCONNECT(session, reason, message, -- message_len, language, language_len); -+ LIBSSH2_DISCONNECT(session, reason, (const char *)message, -+ message_len, (const char *)language, -+ language_len); - } -+ - _libssh2_debug(session, LIBSSH2_TRACE_TRANS, - "Disconnect(%d): %s(%s)", reason, - message, language);