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;
|
ssh_string request_s;
|
||||||
char *request;
|
char *request;
|
||||||
uint32_t status;
|
uint32_t status;
|
||||||
|
int rc;
|
||||||
(void)user;
|
(void)user;
|
||||||
(void)type;
|
(void)type;
|
||||||
|
|
||||||
@@ -816,8 +817,14 @@ SSH_PACKET_CALLBACK(channel_rcv_request) {
|
|||||||
if(strcmp(request,"keepalive@openssh.com")==0){
|
if(strcmp(request,"keepalive@openssh.com")==0){
|
||||||
SAFE_FREE(request);
|
SAFE_FREE(request);
|
||||||
ssh_log(session, SSH_LOG_PROTOCOL,"Responding to Openssh's keepalive");
|
ssh_log(session, SSH_LOG_PROTOCOL,"Responding to Openssh's keepalive");
|
||||||
buffer_add_u8(session->out_buffer, SSH2_MSG_CHANNEL_FAILURE);
|
rc = buffer_add_u8(session->out_buffer, SSH2_MSG_CHANNEL_FAILURE);
|
||||||
buffer_add_u32(session->out_buffer, htonl(channel->remote_channel));
|
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);
|
packet_send(session);
|
||||||
leave_function();
|
leave_function();
|
||||||
return SSH_PACKET_USED;
|
return SSH_PACKET_USED;
|
||||||
|
Reference in New Issue
Block a user