Bugzilla – Attachment 3240 Details for
Bug 2071
sshd closes stderr but not stdout when child process exits
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Copy close-deferral logic for efd from rfd
bz2071.diff (text/plain), 828 bytes, created by
Damien Miller
on 2019-02-08 14:15:27 AEDT
(
hide
)
Description:
Copy close-deferral logic for efd from rfd
Filename:
MIME Type:
Creator:
Damien Miller
Created:
2019-02-08 14:15:27 AEDT
Size:
828 bytes
patch
obsolete
>diff --git a/channels.c b/channels.c >index 19da16eb..657381b8 100644 >--- a/channels.c >+++ b/channels.c >@@ -2100,16 +2100,18 @@ channel_handle_efd_read(struct ssh *ssh, Channel *c, > fd_set *readset, fd_set *writeset) > { > char buf[CHAN_RBUF]; >- int r; > ssize_t len; >+ int r, force; > >- if (!c->detach_close && !FD_ISSET(c->efd, readset)) >+ force = c->isatty && c->detach_close && c->istate != CHAN_INPUT_CLOSED; >+ >+ if (c->efd == -1 || (!force && !FD_ISSET(c->efd, readset))) > return 1; > > len = read(c->efd, buf, sizeof(buf)); > debug2("channel %d: read %zd from efd %d", c->self, len, c->efd); > if (len < 0 && (errno == EINTR || ((errno == EAGAIN || >- errno == EWOULDBLOCK) && !c->detach_close))) >+ errno == EWOULDBLOCK) && !force))) > return 1; > if (len <= 0) { > debug2("channel %d: closing read-efd %d",
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
dtucker
:
ok+
Actions:
View
|
Diff
Attachments on
bug 2071
:
2220
| 3240