diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2008-03-12 23:13:50 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2008-03-12 23:13:50 +0000 |
commit | 4cf1d08fc2e50f9abda999d468c5e972ff4995c2 (patch) | |
tree | 58dd8efdd7d0f0990d30d8b5f5f53cf2ee35d444 /ipsvd | |
parent | 4e6d5117b839cef41cd3919966f95bf25d24d8d9 (diff) | |
download | busybox-w32-4cf1d08fc2e50f9abda999d468c5e972ff4995c2.tar.gz busybox-w32-4cf1d08fc2e50f9abda999d468c5e972ff4995c2.tar.bz2 busybox-w32-4cf1d08fc2e50f9abda999d468c5e972ff4995c2.zip |
nc: remove a bit of bloat
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
Diffstat (limited to 'ipsvd')
-rw-r--r-- | ipsvd/tcpudp.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/ipsvd/tcpudp.c b/ipsvd/tcpudp.c index cb57e598a..8b4ae88f4 100644 --- a/ipsvd/tcpudp.c +++ b/ipsvd/tcpudp.c | |||
@@ -339,16 +339,17 @@ int tcpudpsvd_main(int argc, char **argv) | |||
339 | * 1) we have to do it before fork() | 339 | * 1) we have to do it before fork() |
340 | * 2) order is important - is it right now? */ | 340 | * 2) order is important - is it right now? */ |
341 | 341 | ||
342 | /* Make plain write/send work for this socket by supplying default | 342 | /* Open new non-connected UDP socket for further clients... */ |
343 | sock = xsocket(lsa->u.sa.sa_family, SOCK_DGRAM, 0); | ||
344 | setsockopt_reuseaddr(sock); | ||
345 | /* Make plain write/send work for old socket by supplying default | ||
343 | * destination address. This also restricts incoming packets | 346 | * destination address. This also restricts incoming packets |
344 | * to ones coming from this remote IP. */ | 347 | * to ones coming from this remote IP. */ |
345 | xconnect(0, &remote.u.sa, sa_len); | 348 | xconnect(0, &remote.u.sa, sa_len); |
346 | /* hole? at this point we have no wildcard udp socket... | 349 | /* hole? at this point we have no wildcard udp socket... |
347 | * can this cause clients to get "port unreachable" icmp? | 350 | * can this cause clients to get "port unreachable" icmp? |
348 | * Yup, time window is very small, but it exists (is it?) */ | 351 | * Yup, time window is very small, but it exists (is it?) */ |
349 | /* Open new non-connected UDP socket for further clients */ | 352 | /* ..."open new socket", continued */ |
350 | sock = xsocket(lsa->u.sa.sa_family, tcp ? SOCK_STREAM : SOCK_DGRAM, 0); | ||
351 | setsockopt_reuseaddr(sock); | ||
352 | xbind(sock, &lsa->u.sa, sa_len); | 353 | xbind(sock, &lsa->u.sa, sa_len); |
353 | socket_want_pktinfo(sock); | 354 | socket_want_pktinfo(sock); |
354 | 355 | ||
@@ -377,7 +378,6 @@ int tcpudpsvd_main(int argc, char **argv) | |||
377 | goto again; | 378 | goto again; |
378 | } | 379 | } |
379 | 380 | ||
380 | |||
381 | if (pid != 0) { | 381 | if (pid != 0) { |
382 | /* parent */ | 382 | /* parent */ |
383 | cnum++; | 383 | cnum++; |
@@ -467,7 +467,7 @@ int tcpudpsvd_main(int argc, char **argv) | |||
467 | 467 | ||
468 | argv += 2; | 468 | argv += 2; |
469 | #ifdef SSLSVD | 469 | #ifdef SSLSVD |
470 | strcpy(id, utoa(pid); | 470 | strcpy(id, utoa(pid)); |
471 | ssl_io(0, argv); | 471 | ssl_io(0, argv); |
472 | #else | 472 | #else |
473 | BB_EXECVP(argv[0], argv); | 473 | BB_EXECVP(argv[0], argv); |