Bugzilla – Attachment 3501 Details for
Bug 3304
SSH client MUX to multiple hosts causes select: Bad file descriptor
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
OpenSSH source files
openssh-source-files.txt (text/plain), 1.17 KB, created by
E B
on 2021-04-24 11:23:13 AEST
(
hide
)
Description:
OpenSSH source files
Filename:
MIME Type:
Creator:
E B
Created:
2021-04-24 11:23:13 AEST
Size:
1.17 KB
patch
obsolete
>The close() happens in channels.c (line 431): > >int >channel_close_fd(struct ssh *ssh, int *fdp) >{ > struct ssh_channels *sc = ssh->chanctxt; > int ret = 0, fd = *fdp; > > if (fd != -1) { > debug3("DEBUG MARKER, close(%d)", fd); > ret = close(fd); > *fdp = -1; > if (fd == sc->channel_max_fd) > channel_find_maxfd(sc); > } > return ret; >} > > > > >The select() is in the clientloop.c file (line 559): > >/* > * Waits until the client can do something (some data becomes available on > * one of the file descriptors). > */ >static void >client_wait_until_can_do_something(struct ssh *ssh, > fd_set **readsetp, fd_set **writesetp, > int *maxfdp, u_int *nallocp, int rekeying) >{ >... >... > debug3("DEBUG MARKER: before BUG"); > ret = select((*maxfdp)+1, *readsetp, *writesetp, NULL, tvp); > debug3("DEBUG MARKER: after BUG"); > if (ret == -1) { > /* > * We have to clear the select masks, because we return. > * We have to return, because the mainloop checks for the flags > * set by the signal handlers. > */
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 Raw
Actions:
View
Attachments on
bug 3304
:
3499
|
3500
| 3501 |
3502
|
3515
|
3516
|
3517
|
3518