upstream commit
move dispatch to struct ssh; ok djm@
diff --git a/clientloop.c b/clientloop.c
index 3b9700a..672d069 100644
--- a/clientloop.c
+++ b/clientloop.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: clientloop.c,v 1.263 2015/01/19 19:52:16 markus Exp $ */
+/* $OpenBSD: clientloop.c,v 1.264 2015/01/19 20:07:45 markus Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -536,13 +536,13 @@
}
}
-static void
+static int
client_global_request_reply(int type, u_int32_t seq, void *ctxt)
{
struct global_confirm *gc;
if ((gc = TAILQ_FIRST(&global_confirms)) == NULL)
- return;
+ return 0;
if (gc->cb != NULL)
gc->cb(type, seq, gc->ctx);
if (--gc->ref_count <= 0) {
@@ -552,6 +552,7 @@
}
packet_set_alive_timeouts(0);
+ return 0;
}
static void
@@ -1739,7 +1740,7 @@
/*********/
-static void
+static int
client_input_stdout_data(int type, u_int32_t seq, void *ctxt)
{
u_int data_len;
@@ -1748,8 +1749,9 @@
buffer_append(&stdout_buffer, data, data_len);
explicit_bzero(data, data_len);
free(data);
+ return 0;
}
-static void
+static int
client_input_stderr_data(int type, u_int32_t seq, void *ctxt)
{
u_int data_len;
@@ -1758,8 +1760,9 @@
buffer_append(&stderr_buffer, data, data_len);
explicit_bzero(data, data_len);
free(data);
+ return 0;
}
-static void
+static int
client_input_exit_status(int type, u_int32_t seq, void *ctxt)
{
exit_status = packet_get_int();
@@ -1774,8 +1777,9 @@
packet_write_wait();
/* Flag that we want to exit. */
quit_pending = 1;
+ return 0;
}
-static void
+static int
client_input_agent_open(int type, u_int32_t seq, void *ctxt)
{
Channel *c = NULL;
@@ -1818,6 +1822,7 @@
packet_put_int(c->self);
}
packet_send();
+ return 0;
}
static Channel *
@@ -1978,7 +1983,7 @@
}
/* XXXX move to generic input handler */
-static void
+static int
client_input_channel_open(int type, u_int32_t seq, void *ctxt)
{
Channel *c = NULL;
@@ -2029,8 +2034,9 @@
packet_send();
}
free(ctype);
+ return 0;
}
-static void
+static int
client_input_channel_req(int type, u_int32_t seq, void *ctxt)
{
Channel *c = NULL;
@@ -2075,8 +2081,9 @@
packet_send();
}
free(rtype);
+ return 0;
}
-static void
+static int
client_input_global_request(int type, u_int32_t seq, void *ctxt)
{
char *rtype;
@@ -2094,6 +2101,7 @@
packet_write_wait();
}
free(rtype);
+ return 0;
}
void