diff options
| author | Denys Vlasenko <vda.linux@googlemail.com> | 2026-02-21 16:42:05 +0100 |
|---|---|---|
| committer | Denys Vlasenko <vda.linux@googlemail.com> | 2026-02-21 16:54:35 +0100 |
| commit | dc6e92c9903ef1d16f600e0425b3bb7273a0afb9 (patch) | |
| tree | 11b30fa47eb2a421edb1dfb7ba64440d8924454a /scripts/basic | |
| parent | ef892681f967d6f21c08e8cc85691a966fa63bb7 (diff) | |
| download | busybox-w32-dc6e92c9903ef1d16f600e0425b3bb7273a0afb9.tar.gz busybox-w32-dc6e92c9903ef1d16f600e0425b3bb7273a0afb9.tar.bz2 busybox-w32-dc6e92c9903ef1d16f600e0425b3bb7273a0afb9.zip | |
libbb: add generic "fd polling and I/O" loop, use it in telnetd
We do it, badly, in many places. Better to use one robust implementation.
Can be buggy yet.
Initial use is in a rather old, rarely used tech: telnet.
The I/O in telnetd should be fully non-blocking now,
including pty delays handling.
Several bugs in telnetd handling of IACs are fixed.
function old new delta
ioloop_run - 411 +411
net_to_pty__have_data_to_write - 368 +368
pty_to_net__write - 318 +318
net_to_pty__write - 180 +180
pty_to_net__read - 171 +171
net_to_pty__have_buffer_to_read_into - 164 +164
pty_to_net__have_buffer_to_read_into - 90 +90
net_to_pty__read - 87 +87
pty_to_net__have_data_to_write - 59 +59
make_new_session 491 550 +59
conn_close_fds - 52 +52
accept_conn__accept - 49 +49
conn_close_fds_remove_and_free - 27 +27
ioloop_remove_conn - 22 +22
remove_and_free_to_pty - 19 +19
ioloop_insert_conn - 10 +10
accept_conn__can_accept - 6 +6
accept_conn__return_zero - 3 +3
static.ayt_response - 2 +2
handle_sigchld 59 61 +2
free_session 130 - -130
telnetd_main 1797 367 -1430
------------------------------------------------------------------------------
(add/remove: 19/1 grow/shrink: 2/1 up/down: 2099/-1560) Total: 539 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'scripts/basic')
0 files changed, 0 insertions, 0 deletions
