networking/interface.c: huke remaining big statics; use malloc for INET[6]_rresolve

return value. Went thru callers and adjusted them - code got smaller too.

function                                             old     new   delta
ip_port_str                                            -     126    +126
INET6_rresolve                                       165     182     +17
static.cache                                          20      24      +4
route_main                                          2092    2091      -1
INET_sprint                                           61      59      -2
INET_nn                                                4       -      -4
INET6_sprint                                          59      53      -6
udp_do_one                                           518     508     -10
tcp_do_one                                           433     423     -10
raw_do_one                                           494     484     -10
traceroute_main                                     4117    4105     -12
INET_rresolve                                        334     321     -13
bb_displayroutes                                     494     456     -38
snprint_ip_port                                      244       -    -244
static.buff                                          264      16    -248
------------------------------------------------------------------------------
(add/remove: 1/2 grow/shrink: 2/10 up/down: 147/-598)        Total: -451 bytes

size busybox_old busybox_unstripped
   text    data     bss     dec     hex filename
 751073    3048   14688  768809   bbb29 busybox_old
 750873    3048   14440  768361   bb969 busybox_unstripped
This commit is contained in:
Denis Vlasenko
2007-06-19 11:12:46 +00:00
parent 1b16bdaebf
commit 6d9ea24611
6 changed files with 111 additions and 135 deletions

View File

@@ -18,9 +18,9 @@ int INET_resolve(const char *name, struct sockaddr_in *s_in, int hostfirst);
* & 0x4000: host instead of net,
* & 0x0fff: don't resolve
*/
int INET_rresolve(char *name, size_t len, struct sockaddr_in *s_in,
int numeric, unsigned int netmask);
int INET6_resolve(const char *name, struct sockaddr_in6 *sin6);
int INET6_rresolve(char *name, size_t len, struct sockaddr_in6 *sin6, int numeric);
/* These return malloced string */
char *INET_rresolve(struct sockaddr_in *s_in, int numeric, uint32_t netmask);
char *INET6_rresolve(struct sockaddr_in6 *sin6, int numeric);