Displaying 7 results from an estimated 7 matches for "channel_pre_open".
2004 Jul 13
1
channel->input buffer bug and patch
...ttached here is a patch, it
should work against CVS or portable.
diff -u openssh-3.8.1p1/channels.c openssh-3.8.1p1-bugfix/channels.c
--- openssh-3.8.1p1/channels.c 2004-01-20 19:02:09.000000000 -0500
+++ openssh-3.8.1p1-bugfix/channels.c 2004-07-13 09:37:20.000000000 -0400
@@ -702,6 +702,8 @@
channel_pre_open(Channel *c, fd_set * readset, fd_set * writeset)
{
u_int limit = compat20 ? c->remote_window : packet_get_maxsize();
+ if (limit > 0x10000)
+ limit = 0x10000;
if (c->istate == CHAN_INPUT_OPEN &&
limit > 0 &&
Common subdi...
2007 Jul 26
1
Channel Handling Patch
...ket_send2_wrapped
11017 39654 8.1867 29.4668 channel_output_poll
8070 47724 5.9968 35.4635 buffer_append_space
7914 55638 5.8809 41.3444 channel_handler
5970 61608 4.4363 45.7807 arc4random
5346 66954 3.9726 49.7533 channel_pre_open
5159 72113 3.8336 53.5869 packet_read_poll_seqnr
4253 76366 3.1604 56.7473 channel_post_open
3864 80230 2.8713 59.6186 cipher_crypt
3849 84079 2.8602 62.4788 buffer_len
3541 87620 2.6313 65.1101 channel_prepare_sel...
2010 Jul 22
1
remote vs local window discrepancy
...akes this safe, but I am not
seeing it. During problem determination I have observed the value of the
remote window does occasionally wrap. When the remote window counter does
wrap it goes undetected because Channel.remote_window is an unsigned value.
Another item I find confusing is the test in channel_pre_open to decide if
the channel's read file descriptor should be turned on in the read fileset.
That test includes a check of a variable called limit which is set to
Channel.remote_window when compat20 is true. Can somebody explain why this
is remote_window instead of local_window? The check is &quo...
2020 Oct 14
2
Connection hang, can't stop SSH
Using OpenSSH_8.3p1 I had an open (working) connection to some other
box; after a bit of inactivity, some device in the middle seems to have
forgotten about the TCP connection (NAT) and broke it.
I've got an EscapeChar defined, though; so first I tried to send a BREAK
and, when that didn't help (TCP already gone, packets get lost!), I
tried (just out of curiosity) a Rekey.
Now I can see
2013 Jul 29
1
user input in clientloop.c
Hi folks,
Could you tell me which function in clientloop.c is responsible for reading user keyboard input?
What I found are client_make_packets_from_stdin_data() and client_process_input(), but they not for 'compat20' mode. My app runs in 'compat20'.
Thanks,
Bob
2004 Jul 14
1
New dynamic window patch (with limits)
...2004-07-13 09:46:58.000000000 -0400
@@ -255,6 +255,7 @@
c->local_window_max = window;
c->local_consumed = 0;
c->local_maxpacket = maxpack;
+ c->dynamic_window = 0;
c->remote_id = -1;
c->remote_name = xstrdup(remote_name);
c->remote_window = 0;
@@ -702,6 +703,10 @@
channel_pre_open(Channel *c, fd_set * readset, fd_set * writeset)
{
u_int limit = compat20 ? c->remote_window : packet_get_maxsize();
+ if (!c->input.unlimited && limit > 0x10000)
+ limit = 0x10000;
+ else if (c->input.unlimited && limit > MAXBUFSZ)
+ limit = MAXBUFSZ;
if (c...
2010 Jan 14
1
ssh(1) multiplexing rewrite
...te_id,
c->istate, buffer_len(&c->input),
c->ostate, buffer_len(&c->output),
- c->rfd, c->wfd, c->ctl_fd);
+ c->rfd, c->wfd, c->ctl_chan);
buffer_append(&buffer, buf, strlen(buf));
continue;
default:
@@ -834,9 +839,6 @@ channel_pre_open(Channel *c, fd_set *rea
FD_SET(c->efd, readset);
}
/* XXX: What about efd? races? */
- if (compat20 && c->ctl_fd != -1 &&
- c->istate == CHAN_INPUT_OPEN && c->ostate == CHAN_OUTPUT_OPEN)
- FD_SET(c->ctl_fd, readset);
}
/* ARGSUSED */
@@ -981,6...