aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Bachmann <mabahltm@gmail.com>2016-12-19 11:10:35 +0100
committerAndreas Schneider <asn@cryptomilk.org>2017-04-11 09:55:46 +0200
commit439d3039e3f359e00dd35c2356cde647bd68f486 (patch)
treeb51d2b590d0ee8b53f50983511209416826270cd
parent61cbf160a0ef5617c243c33da4e0ea99c494cde2 (diff)
downloadlibssh-439d3039e3f359e00dd35c2356cde647bd68f486.tar.gz
libssh-439d3039e3f359e00dd35c2356cde647bd68f486.tar.xz
libssh-439d3039e3f359e00dd35c2356cde647bd68f486.zip
messages: Utilize the message queue for SSH_REQUEST_GLOBAL.
Signed-off-by: Max Bachmann <mabahltm@gmail.com> Reviewed-by: Andreas Schneider <asn@cryptomilk.org> (cherry picked from commit 3ec8babfaf2c2b565f837621d0af094a92252241)
-rw-r--r--src/messages.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/messages.c b/src/messages.c
index d906e696..8f579da8 100644
--- a/src/messages.c
+++ b/src/messages.c
@@ -1355,7 +1355,8 @@ SSH_PACKET_CALLBACK(ssh_packet_global_request){
msg->global_request.bind_port);
session->common.callbacks->global_request_function(session, msg, session->common.callbacks->userdata);
} else {
- ssh_message_reply_default(msg);
+ ssh_message_queue(session, msg);
+ return rc;
}
} else if (strcmp(request, "cancel-tcpip-forward") == 0) {
r = ssh_buffer_unpack(packet, "sd",
@@ -1374,7 +1375,8 @@ SSH_PACKET_CALLBACK(ssh_packet_global_request){
if(ssh_callbacks_exists(session->common.callbacks, global_request_function)) {
session->common.callbacks->global_request_function(session, msg, session->common.callbacks->userdata);
} else {
- ssh_message_reply_default(msg);
+ ssh_message_queue(session, msg);
+ return rc;
}
} else {
SSH_LOG(SSH_LOG_PROTOCOL, "UNKNOWN SSH_MSG_GLOBAL_REQUEST %s %d", request, want_reply);