Skip to content

Commit

Permalink
scp.c: fix that scp_send may transmit not initialised memory
Browse files Browse the repository at this point in the history
Fixes ticket 244. Thanks Torsten.
  • Loading branch information
mback2k committed Mar 23, 2015
1 parent 7ca44fb commit b99204f
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions src/scp.c
Expand Up @@ -801,12 +801,18 @@ scp_send(LIBSSH2_SESSION * session, const char *path, int mode,

cmd_len = strlen((char *)session->scpSend_command);

memset(&session->scpSend_command[cmd_len], 0,
session->scpSend_command_len - cmd_len);

(void)shell_quotearg(path,
&session->scpSend_command[cmd_len],
session->scpSend_command_len - cmd_len);

session->scpSend_command[session->scpSend_command_len - 1] = '\0';

session->scpSend_command_len =
strlen((char *)session->scpSend_command);

_libssh2_debug(session, LIBSSH2_TRACE_SCP,
"Opening channel for SCP send");
/* Allocate a channel */
Expand Down

0 comments on commit b99204f

Please sign in to comment.