mirror of
https://git.libssh.org/projects/libssh.git
synced 2025-08-08 19:02:06 +03:00
channels: Check return values of buffer functions.
Found by Coverity.
This commit is contained in:
@@ -654,6 +654,7 @@ SSH_PACKET_CALLBACK(channel_rcv_request) {
|
||||
ssh_string request_s;
|
||||
char *request;
|
||||
uint32_t status;
|
||||
int rc;
|
||||
(void)user;
|
||||
(void)type;
|
||||
|
||||
@@ -816,8 +817,14 @@ SSH_PACKET_CALLBACK(channel_rcv_request) {
|
||||
if(strcmp(request,"keepalive@openssh.com")==0){
|
||||
SAFE_FREE(request);
|
||||
ssh_log(session, SSH_LOG_PROTOCOL,"Responding to Openssh's keepalive");
|
||||
buffer_add_u8(session->out_buffer, SSH2_MSG_CHANNEL_FAILURE);
|
||||
buffer_add_u32(session->out_buffer, htonl(channel->remote_channel));
|
||||
rc = buffer_add_u8(session->out_buffer, SSH2_MSG_CHANNEL_FAILURE);
|
||||
if (rc < 0) {
|
||||
return SSH_PACKET_USED;
|
||||
}
|
||||
rc = buffer_add_u32(session->out_buffer, htonl(channel->remote_channel));
|
||||
if (rc < 0) {
|
||||
return SSH_PACKET_USED;
|
||||
}
|
||||
packet_send(session);
|
||||
leave_function();
|
||||
return SSH_PACKET_USED;
|
||||
|
Reference in New Issue
Block a user