summaryrefslogtreecommitdiff
path: root/networking/inetd.c
AgeCommit message (Collapse)Author
2008-07-22inetd: do not trash errno in signal handlers;Denis Vlasenko
in CHLD handler, stop looping through services when pid is found function old new delta reread_config_file 1072 1092 +20 retry_network_setup 55 69 +14 reap_child 132 130 -2
2008-07-17- very minor shrinkage (-9b)Bernhard Reutner-Fischer
2008-07-05*: rename ATTRIBUTE_XXX to just XXX.Denis Vlasenko
2008-07-01revert last two commits. vfork cannot be used in subroutine,Denis Vlasenko
it trashes stack on return
2008-07-01*: introduce and use xfork()Denis Vlasenko
function old new delta xfork - 20 +20 msh_main 1377 1380 +3 mod_process 455 446 -9 forkexit_or_rexec 30 17 -13 expand_variables 1434 1421 -13 open_transformer 91 76 -15 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/4 up/down: 23/-50) Total: -27 bytes
2008-05-19- use EXIT_{SUCCESS,FAILURE}. No object-code changesBernhard Reutner-Fischer
2008-05-15more of -Wall fixes from Cristian Ionescu-Idbohrn.Denis Vlasenko
Some are fixing real bugs. function old new delta syslogd_main 938 958 +20 get_signum 136 143 +7 obj_load 777 782 +5 recv_from_to 210 214 +4 get_next_block 1795 1799 +4 display_topmem_process_list 1117 1121 +4 logread_main 484 487 +3 buffer_fill_and_print 73 76 +3 kill_main 687 689 +2 ll_remember_index 240 241 +1 do_stats 452 453 +1 if_readconf 166 165 -1 display_process_list 1192 1191 -1 run_applet_and_exit 507 505 -2 print_signames 33 31 -2 parse_one_line 1092 1090 -2 find_out_spec 57 55 -2 add_ksymoops_symbols 421 419 -2 ash_main 1407 1402 -5 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 11/8 up/down: 54/-17) Total: 37 bytes
2008-03-29inetd: small shrink for NOMMU caseDenis Vlasenko
function old new delta cat_args - 8 +8 echo_stream 64 63 -1 discard_stream 64 63 -1 static.args 32 12 -20 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/3 up/down: 8/-22) Total: -14 bytes
2008-03-24*: whitespace fixes, no code changesDenis Vlasenko
2008-03-20inetd: use change_identity().Denis Vlasenko
libbb: shrink our internal initgroups(). httpd: remove stray 'else' and 'index_page = "index.html"' function old new delta httpd_main 750 743 -7 inetd_main 2033 2011 -22 bb_internal_initgroups 251 228 -23 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-52) Total: -52 bytes
2008-03-17*: fix fallout from -Wunused-parameterDenis Vlasenko
function old new delta bbunpack 358 366 +8 passwd_main 1070 1072 +2 handle_incoming_and_exit 2651 2653 +2 getpty 88 86 -2 script_main 975 972 -3 inetd_main 2036 2033 -3 dname_enc 377 373 -4 make_new_session 474 462 -12 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/5 up/down: 12/-24) Total: -12 bytes text data bss dec hex filename 797429 658 7428 805515 c4a8b busybox_old 797417 658 7428 805503 c4a7f busybox_unstripped
2008-03-17*: add -Wunused-parameter; fix resulting breakageDenis Vlasenko
function old new delta procps_scan 1265 1298 +33 aliascmd 278 283 +5 parse_file_cmd 116 120 +4 dname_enc 373 377 +4 setcmd 90 93 +3 execcmd 57 60 +3 count_lines 72 74 +2 process_command_subs 340 339 -1 test_main 409 407 -2 mknod_main 179 177 -2 handle_incoming_and_exit 2653 2651 -2 argstr 1312 1310 -2 shiftcmd 131 128 -3 exitcmd 46 43 -3 dotcmd 297 294 -3 breakcmd 86 83 -3 evalpipe 353 349 -4 evalcommand 1180 1176 -4 evalcmd 109 105 -4 send_tree 374 369 -5 mkfifo_main 82 77 -5 evalsubshell 152 147 -5 typecmd 75 69 -6 letcmd 61 55 -6 add_cmd 1190 1183 -7 main 891 883 -8 ash_main 1415 1407 -8 parse_stream 1377 1367 -10 alloc_procps_scan 55 - -55 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 7/21 up/down: 54/-148) Total: -94 bytes text data bss dec hex filename 797195 658 7428 805281 c49a1 busybox_old 797101 658 7428 805187 c4943 busybox_unstripped
2008-03-17tcpsvd,udpsvd: make them NOMMU-capableDenis Vlasenko
inetd: make udp nowait work function old new delta inetd_main 1797 2036 +239 tcpudpsvd_main 1839 1973 +134 xsetenv_plain - 39 +39 xsetenv_proto 23 40 +17 bump_nofile 169 170 +1 sig_term_handler 72 69 -3 sig_child_handler 239 233 -6 connection_status 37 31 -6 parse_one_line 1102 1092 -10 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 4/4 up/down: 430/-25) Total: 405 bytes text data bss dec hex filename 798437 661 7428 806526 c4e7e busybox_old 798734 661 7428 806823 c4fa7 busybox_unstripped
2008-03-17libbb: introduce and use sigprocmask_allsigs and sigaction_set.Denis Vlasenko
libbb: rename sig_pause to wait_for_any_sig.
2008-03-12libbb: introduse and use signal_[no_]SA_RESTART_empty_mask and sigaction_setDenis Vlasenko
signal_SA_RESTART_empty_mask - 65 +65 signal_no_SA_RESTART_empty_mask - 54 +54 dd_main 1325 1369 +44 sigaction_set - 19 +19 dname_enc 373 377 +4 UNSPEC_print 64 66 +2 setsignal 296 294 -2 bb_signals_recursive 95 92 -3 bb_askpass 367 361 -6 inetd_main 1810 1797 -13 rx_main 912 883 -29 sigdelset 32 - -32 __sigdelset 32 - -32 __GI_sigdelset 32 - -32 sighup_handler 84 37 -47 arping_main 1844 1797 -47 fsck_main 1869 1807 -62 run_list 1917 1844 -73 vlock_main 492 409 -83 progressmeter 883 798 -85 handle_incoming_and_exit 2737 2651 -86 ------------------------------------------------------------------------------ (add/remove: 3/3 grow/shrink: 3/12 up/down: 188/-632) Total: -444 bytes
2008-03-12nc: remove a bit of bloatDenis Vlasenko
inetd: more NOMMU fixes rx: shrink devfsd: minor shrink vlock: shrink tcpudp: narrow down window where we have no wildcard socket parse_one_line 1015 1102 +87 init_ring - 53 +53 xzalloc_lsa - 48 +48 read_byte 51 50 -1 rearm_alarm 28 25 -3 nc_main 1028 1000 -28 initring 53 - -53 vlock_main 583 496 -87 reread_config_file 1089 991 -98 rx_main 1046 912 -134 ------------------------------------------------------------------------------ (add/remove: 2/1 grow/shrink: 1/6 up/down: 188/-404) Total: -216 bytes text data bss dec hex filename 800120 661 7428 808209 c5511 busybox_old 799796 661 7428 807885 c53cd busybox_unstripped
2008-03-12inetd: make it NOMMU-capable and IPv6-friendly. Lots of renamesDenis Vlasenko
of variable/function names Total: -2474 bytes text data bss dec hex filename 802215 661 7452 810328 c5d58 busybox_old 800120 661 7428 808209 c5511 busybox_unstripped
2008-02-24less,klogd,syslogd,nc,tcpudp: exit on signal by killing itself, not exit(1)Denis Vlasenko
*: minor shrink
2008-01-28*: tidy up usage of char **environDenis Vlasenko
2008-01-02libbb: introduce and use safe_waitpid (loops in EINTR)Denis Vlasenko
*: use more approproate (shorter) versions of wait() function old new delta safe_waitpid - 48 +48 wait_any_nohang - 17 +17 send_tree 365 369 +4 processorstop 432 435 +3 text_yank 110 108 -2 make_human_readable_str 202 200 -2 crond_main 1368 1366 -2 handle_sigchld 49 43 -6 reapchild 166 159 -7 custom 260 250 -10 checkscript 191 177 -14 wait_nohang 17 - -17 wait_pid 43 - -43 ------------------------------------------------------------------------------ (add/remove: 2/2 grow/shrink: 2/7 up/down: 72/-103) Total: -31 bytes
2007-12-26save a bit of code with *strchrnul = '\0' trickDenis Vlasenko
function old new delta nextline 59 55 -4 include_conf 902 898 -4 read_config 414 406 -8 fsck_main 1880 1869 -11
2007-11-18ip: stop propagating argc; optimize ip_parse_common_argsDenis Vlasenko
function old new delta find_pair 167 187 +20 static.families - 17 +17 die_must_be_on_off - 11 +11 ... on_off 33 22 -11 do_ipaddr 103 90 -13 do_iptunnel 1001 986 -15 iproute_list_or_flush 1237 1217 -20 static.ip_common_commands 43 22 -21 do_iproute 2217 2193 -24 parse_args 1444 1414 -30 ip_do 47 16 -31 do_iprule 994 963 -31 ip_main 153 113 -40 ipaddr_modify 1357 1305 -52 ipaddr_list_or_flush 2543 2490 -53 ip_parse_common_args 294 159 -135 ------------------------------------------------------------------------------ (add/remove: 4/1 grow/shrink: 4/24 up/down: 85/-563) Total: -478 bytes text data bss dec hex filename 775561 966 9236 785763 bfd63 busybox_old 775073 962 9236 785271 bfb77 busybox_unstripped
2007-11-12inetd: revert bogus fix for bug 1562; shrink inetd a bitDenis Vlasenko
function old new delta dupconfig 159 146 -13 getconfigent 1123 1073 -50
2007-11-06telnet: use poll, it's shorterDenis Vlasenko
*: style fixes
2007-10-30inetd: fix bug 1562 "inetd does not set argv[0] properly" (fix by IlyaPanfilov)Denis Vlasenko
inetd: code shrink while at it function old new delta static.SOCK_xxx - 6 +6 getconfigent 1222 1123 -99 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/1 up/down: 6/-99) Total: -93 bytes text data bss dec hex filename 776099 974 9420 786493 c003d busybox_old 776020 974 9420 786414 bffee busybox_unstripped
2007-10-11vi: don't wait 50 ms before reading ESC sequencesDenis Vlasenko
inetd,syslogd: use safe_read instead of open-coded EINTR handling syslogd: bail out if you see null read from Unix socket (should never happen, but if it does, spinning forever and eating 100% CPU is not a good idea)
2007-10-11add -fvisibility=hidden to CC flags, mark XXX_main functionsDenis Vlasenko
EXTERNALLY_VISIBLE. 5% size reduction of libbusybox.so
2007-10-01'simple' error message functions by Loic Grenie <loic.grenie@gmail.com>.Denis Vlasenko
263 bytes saved.
2007-09-26inetd: move struct fields around -> save .25 k of codeDenis Vlasenko
function old new delta freeconfig 75 76 +1 register_rpc 200 196 -4 dupconfig 165 159 -6 reapchild 173 166 -7 retry 93 82 -11 goaway 112 101 -11 getconfigent 1241 1222 -19 setup 645 592 -53 inetd_main 2160 2107 -53 config 1602 1518 -84 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/9 up/down: 1/-248) Total: -247 bytes text data bss dec hex filename 773951 1038 10332 785321 bfba9 busybox_old 773703 1038 10332 785073 bfab1 busybox_unstripped
2007-09-24inetd: make some fields smaller, move data out of data/bss sectionsDenis Vlasenko
function old new delta inetd_main 2125 2160 +35 setup 640 645 +5 initring 48 53 +5 reapchild 169 173 +4 retry 92 93 +1 goaway 113 112 -1 inetd_setproctitle 175 173 -2 chargen_dg 229 227 -2 uid 4 - -4 ....................... Argv 4 - -4 rlim_ofile_cur 8 - -8 config 1610 1602 -8 rlim_ofile 16 - -16 getconfigent 1271 1241 -30 builtins 176 132 -44 ring 128 - -128 allsock 128 - -128 ------------------------------------------------------------------------------ (add/remove: 0/18 grow/shrink: 5/6 up/down: 50/-423) Total: -373 bytes text data bss dec hex filename 774144 1051 10708 785903 bfdef busybox_old 774108 1039 10380 785527 bfc77 busybox_unstripped $ size inetd.o inetd_orig.o text data bss dec hex filename 9027 0 0 9027 2343 inetd.o 9064 12 324 9400 24b8 inetd_orig.o
2007-08-18don't pass argc in getopt32, it's superfluousDenis Vlasenko
(add/remove: 0/0 grow/shrink: 12/131 up/down: 91/-727) Total: -636 bytes text data bss dec hex filename 773469 1058 11092 785619 bfcd3 busybox_old 772644 1058 11092 784794 bf99a busybox_unstripped
2007-08-18introduce and use xdup2(int, int)Denis Vlasenko
stop checking whether setsockopt_reuseaddr(int fd) was successful (it always is) remove second parameter (sockllen) from xmalloc_sockaddr2xxxxx functions sockaddr2str 142 156 +14 collect_blk 467 474 +7 xdup2 28 33 +5 singlemount 4456 4454 -2 print_host 214 212 -2 nslookup_main 139 137 -2 ftpgetput_main 414 412 -2 udhcpd_main 1258 1255 -3 udhcpc_main 2405 2402 -3 traceroute_main 4125 4122 -3 nc_main 1072 1069 -3 buffer_fill_and_print 76 73 -3 xmalloc_sockaddr2hostonly_noport 18 14 -4 xmalloc_sockaddr2host_noport 18 14 -4 xmalloc_sockaddr2host 15 11 -4 xmalloc_sockaddr2dotted_noport 18 14 -4 xmalloc_sockaddr2dotted 18 14 -4 wget_main 2618 2614 -4 ping_main 393 389 -4 ip_port_str 120 115 -5 dhcprelay_main 1146 1141 -5 dnsd_main 1531 1525 -6 passwd_main 1110 1102 -8 udhcp_kernel_packet 206 197 -9 udhcp_listen_socket 154 144 -10 getty_main 2576 2566 -10 setup 655 640 -15 xmove_fd 51 34 -17 dolisten 759 742 -17 tcpudpsvd_main 1866 1836 -30 startservice 339 299 -40
2007-05-26usage.c: remove reference to busybox.hDenis Vlasenko
*: s/include "busybox.h"/include "libbb.h"
2007-05-17several *.c files:Denis Vlasenko
move 'extern environ' up to the location of #includes
2007-04-04- sed -e "s/char[[:space:]]*\*[[:space:]]*argv\[\]/char **argv/g"Bernhard Reutner-Fischer
2007-03-27make pidfile writing configurable.Denis Vlasenko
[ui]toa_to_buf: change API. No users yet.
2007-03-26move everything to new NOMMU helpers, except udhcpDenis Vlasenko
2007-03-24inetd,ed,msh: data/bss reduction (in mss, more than 9k of it)Denis Vlasenko
2007-03-24NOMMU re-exec trick shuld not depend on existence of "don't daemonize"Denis Vlasenko
option for every affected applet (and dnsd, for example, don't have one). Thus rework re-exec support to not require it. Code got smaller too.
2007-03-24inetd: indent labels uniformlyDenis Vlasenko
2007-02-03suppress warnings about easch <applet>_main() havingDenis Vlasenko
no preceding prototype
2007-01-29preparatory patch for -Wwrite-strings #2Denis Vlasenko
2007-01-22exterminate u_intXXX.Denis Vlasenko
fix ping6 buglet (memset is too short), minor sync between ping and ping6
2007-01-19openvt,getty,vfork_daemon_rexec,mount: tighten up fd cleanup codeDenis Vlasenko
(will close all fd's > 2 on daemonization now) getty: fix "getty -" support, and also do not try to chown/chmod "-" telnetd: fix "lost ctty" bug Yet another attempt on saner function names: bb_sanitize_server_stdio(0/1) -> bb_sanitize_stdio() + bb_daemonize();
2007-01-14httpd: use fd#1 in inetd modeDenis Vlasenko
inetd: micro style fix
2007-01-14inetd: preparatory patch, no code changesDenis Vlasenko
2007-01-14Rename bb_sanitize_stdio -> bb_sanitize_server_stdioDenis Vlasenko
(name is still bad - it doesn't hint that function may do daemonization trick for you if asked to). Small fixes to fakeidentd.
2007-01-14inetd: open log after daemonizationDenis Vlasenko
2007-01-14By popular request reinstate fakeidentd's standalone mode.Denis Vlasenko
Since this is also needed for other applets like telnetd, introduce generic driver for such things. It even supports inetd-wait ('linger') mode, when inetd hands out listen socket to child and waits to it to die, instead of handing out accepted socket and continuing listening itself (nowait mode). Code growth ~200 bytes. NB: our inetd doesn't support wait mode yet (or mabe it is buggy).
2007-01-11fakeinetd: attempted ipv6-ization (and it's done)Denis Vlasenko
but entire applet can be orders of magnitude smaller if written as an inetd service. So did that (#ifdef'ed out entire old version). inetd version is less than 10% of old one! function old new delta packed_usage 22083 22105 +22 nobodystr 4 - -4 bind_ip_address 4 - -4 ident_substr 20 - -20 chmatch 22 - -22 movefd 25 - -25 skipchars 49 - -49 handlexitsigs 51 - -51 replyError 70 - -70 .rodata 158120 158024 -96 deleteConn 102 - -102 G 524 388 -136 conns 560 - -560 fakeidentd_main 1457 143 -1314 ------------------------------------------------------------------------------ (add/remove: 0/10 grow/shrink: 1/3 up/down: 22/-2453) Total: -2431 bytes