search for: channel_pre_open

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...