Displaying 6 results from an estimated 6 matches for "stdin_buff".
Did you mean:
stdin_buffer
2002 Feb 04
1
forkoff()
...0) { /* This is the parent. */
/* The parent just exits. */
exit(0);
}
c = channel_lookup(session_ident);
if (c == NULL)
error("couldn't lookup session channel");
/* The child continues serving connections. */
/* fake EOF on stdin */
if (compat20) {
buffer_append(&stdin_buffer, "\004", 1);
} else if (!stdin_eof) {
/*
* Sending SSH_CMSG_EOF alone does not always appear
* to be enough. So we try to send an EOF character
* first.
*/
packet_start(SSH_CMSG_STDIN_DATA);
packet_put_string("\004", 1);
packet_send();
/* Close stdin. *...
2000 May 15
0
OpenSSH (1.2.3) sshd hanging when using rsync over ssh (retry)
...nssh/sshd.c:970
#7 0x804aae1 in _start ()
The code around frame #1 was
361 {
362 int len;
363
364 /* Write buffered data to program stdin. */
365 if (fdin != -1 && FD_ISSET(fdin, writeset)) {
366 len = write(fdin, buffer_ptr(&stdin_buffer),
367 buffer_len(&stdin_buffer));
368 if (len <= 0) {
369 #ifdef USE_PIPES
370 close(fdin);
and stdin_buffer contains
$2 = {buf = 0x80b1000 "?\004\212D\204?c?", alloc = 45056, offset = 0,
end = 8192}...
2002 Feb 01
1
FEATURE: -f -f - fork after successful open of fwd port/display/agent
...s is the parent. */
+ /* The parent just exits. */
+ exit(0);
+ }
+
+ c = channel_lookup(session_ident);
+ if (c == NULL)
+ error("couldn't lookup session channel");
+
+ /* The child continues serving connections. */
+ /* fake EOF on stdin */
+ if (compat20) {
+ buffer_append(&stdin_buffer, "\004", 1);
+ } else if (!stdin_eof) {
+ /*
+ * Sending SSH_CMSG_EOF alone does not always appear
+ * to be enough. So we try to send an EOF character
+ * first.
+ */
+ packet_start(SSH_CMSG_STDIN_DATA);
+ packet_put_string("\004", 1);
+ packet_send();
+ /* Clos...
2002 Jan 11
1
X11 forwarding, -f, error handling
I'd like a feature whereby ssh puts itself in the background after the
first successful X11 (or other port) forwarding.
The reason for this is simple: error handling.
If the application fails to open the X display and exits, then the
client can still exit with the application's exit code. But if the
application opens the X display successfully, then it can just display
any errors by
2001 Oct 31
2
suggested fix for the sigchld race
..._done: reading");
+}
+
static void
sigchld_handler(int sig)
{
@@ -99,6 +138,7 @@
debug("Received SIGCHLD.");
child_terminated = 1;
signal(SIGCHLD, sigchld_handler);
+ notify_parent();
errno = save_errno;
}
@@ -242,6 +282,7 @@
if (fdin != -1 && buffer_len(&stdin_buffer) > 0)
FD_SET(fdin, *writesetp);
}
+ notify_prepare(*readsetp);
/*
* If we have buffered packet data going to the client, mark that
@@ -278,6 +319,8 @@
error("select: %.100s", strerror(errno));
} else if (ret == 0 && client_alive_scheduled)
client_alive_c...
2002 Feb 05
0
New forkoff() and chan_wont_read/write() API
...+ /*
+ * Sending SSH_CMSG_EOF alone does not always appear
+ * to be enough. So we try to send an EOF character
+ * first.
+ */
+ packet_start(SSH_CMSG_STDIN_DATA);
+ packet_put_string("\004", 1);
+ packet_send();
+ /* Close stdin. */
+ stdin_eof = 1;
+ if (buffer_len(&stdin_buffer) == 0) {
+ packet_start(SSH_CMSG_EOF);
+ packet_send();
+ }
+ }
+
+ if (!compat20)
+ return;
+
+ c = channel_lookup(session_ident);
+ if (c == NULL)
+ error("couldn't lookup session channel");
+
+ if (detach) {
+ chan_wont_read(c);
+ chan_wont_write(c);
+ channel_close_fds...