1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-07-01 11:32:48 -05:00

Server prep: parse a lot of new channel requests.

ssh2connection.c now knows how to unmarshal the message formats for
all the channel requests we'll need to handle when we're the server
and a client sends them. Each one is translated into a call to a new
method in the Channel vtable, which is implemented by a trivial
'always fail' routine in every channel type we know about so far.
This commit is contained in:
Simon Tatham
2018-10-20 21:48:49 +01:00
parent 445030b3ea
commit 9fe719f47d
13 changed files with 345 additions and 0 deletions

View File

@ -127,6 +127,23 @@ int chan_no_exit_signal(Channel *ch, ptrlen s, int c, ptrlen m)
{ return FALSE; }
int chan_no_exit_signal_numeric(Channel *ch, int s, int c, ptrlen m)
{ return FALSE; }
int chan_no_run_shell(Channel *chan) { return FALSE; }
int chan_no_run_command(Channel *chan, ptrlen command) { return FALSE; }
int chan_no_run_subsystem(Channel *chan, ptrlen subsys) { return FALSE; }
int chan_no_enable_x11_forwarding(
Channel *chan, int oneshot, ptrlen authproto, ptrlen authdata,
unsigned screen_number) { return FALSE; }
int chan_no_enable_agent_forwarding(Channel *chan) { return FALSE; }
int chan_no_allocate_pty(
Channel *chan, ptrlen termtype, unsigned width, unsigned height,
unsigned pixwidth, unsigned pixheight, struct ssh_ttymodes modes)
{ return FALSE; }
int chan_no_set_env(Channel *chan, ptrlen var, ptrlen value) { return FALSE; }
int chan_no_send_break(Channel *chan, unsigned length) { return FALSE; }
int chan_no_send_signal(Channel *chan, ptrlen signame) { return FALSE; }
int chan_no_change_window_size(
Channel *chan, unsigned width, unsigned height,
unsigned pixwidth, unsigned pixheight) { return FALSE; }
void chan_no_request_response(Channel *chan, int success) {}
/*