From 76140a77c9c47c41f244d90d4250d77b9504f7d4 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Thu, 5 Mar 2009 09:21:57 +0000 Subject: networking/libiproute/*: code shrink by optimizing numeric conversions and other misc stuff function old new delta print_tunnel 660 656 -4 format_host 5 - -5 get_unsigned 70 54 -16 get_u32 70 54 -16 do_iplink 1173 1151 -22 get_prefix 417 393 -24 print_rule 800 771 -29 print_addrinfo 1374 1342 -32 print_route 1745 1709 -36 iprule_modify 905 866 -39 iproute_modify 1105 1048 -57 get_integer 70 - -70 parse_args 1684 1440 -244 ------------------------------------------------------------------------------ (add/remove: 0/2 grow/shrink: 0/11 up/down: 0/-594) Total: -594 bytes text data bss dec hex filename 817378 476 7892 825746 c9992 busybox_old 816784 476 7892 825152 c9740 busybox_unstripped --- networking/libiproute/utils.h | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) (limited to 'networking/libiproute/utils.h') diff --git a/networking/libiproute/utils.h b/networking/libiproute/utils.h index c1dbc6e..3603c75 100644 --- a/networking/libiproute/utils.h +++ b/networking/libiproute/utils.h @@ -64,19 +64,17 @@ extern int get_addr_1(inet_prefix *dst, char *arg, int family); extern int get_addr(inet_prefix *dst, char *arg, int family); extern int get_prefix(inet_prefix *dst, char *arg, int family); -extern int get_integer(int *val, char *arg, int base); -extern int get_unsigned(unsigned *val, char *arg, int base); -#define get_byte get_u8 -#define get_ushort get_u16 -#define get_short get_s16 -extern int get_u32(uint32_t *val, char *arg, int base); -extern int get_u16(uint16_t *val, char *arg, int base); -extern int get_s16(int16_t *val, char *arg, int base); -extern int get_u8(uint8_t *val, char *arg, int base); -extern int get_s8(int8_t *val, char *arg, int base); +extern unsigned get_unsigned(char *arg, const char *errmsg); +extern uint32_t get_u32(char *arg, const char *errmsg); +extern uint16_t get_u16(char *arg, const char *errmsg); +extern const char *rt_addr_n2a(int af, void *addr, char *buf, int buflen); +#ifdef RESOLVE_HOSTNAMES extern const char *format_host(int af, int len, void *addr, char *buf, int buflen); -extern const char *rt_addr_n2a(int af, int len, void *addr, char *buf, int buflen); +#else +#define format_host(af, len, addr, buf, buflen) \ + rt_addr_n2a(af, addr, buf, buflen) +#endif void invarg(const char *, const char *) NORETURN; void duparg(const char *, const char *) NORETURN; -- cgit v1.1