From 7cd327a79580cb3f11bed867ea3dafb72c62069d Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Mon, 14 Sep 2009 18:34:53 +0200 Subject: [PATCH] Fix a possible stack overflow in agent code. --- libssh/agent.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/libssh/agent.c b/libssh/agent.c index d4b4a1b3..057f1b35 100644 --- a/libssh/agent.c +++ b/libssh/agent.c @@ -210,10 +210,7 @@ static int agent_talk(struct ssh_session *session, /* send length and then the request packet */ if (atomicio(session->agent->sock, payload, 4, 0) == 4) { - buffer_get_data(request, payload, len); - ssh_log(session, SSH_LOG_PACKET, - "agent_talk - sending request, payload[0] = %u", payload[0]); - if (atomicio(session->agent->sock, payload, len, 0) + if (atomicio(session->agent->sock, buffer_get_rest(request), len, 0) != len) { ssh_log(session, SSH_LOG_PACKET, "atomicio sending request failed: %s", strerror(errno));