diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2009-03-05 09:21:57 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2009-03-05 09:21:57 +0000 |
commit | 76140a77c9c47c41f244d90d4250d77b9504f7d4 (patch) | |
tree | 67c43b25beb904f111e8a96548bee1592f5010e2 /networking/libiproute/iprule.c | |
parent | 021de3f0297af87bfc098bd364dffb332d6ace20 (diff) | |
download | busybox-76140a77c9c47c41f244d90d4250d77b9504f7d4.tar.gz |
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
Diffstat (limited to 'networking/libiproute/iprule.c')
-rw-r--r-- | networking/libiproute/iprule.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/networking/libiproute/iprule.c b/networking/libiproute/iprule.c index ca2254667..6c90c6d21 100644 --- a/networking/libiproute/iprule.c +++ b/networking/libiproute/iprule.c @@ -78,7 +78,6 @@ static int print_rule(const struct sockaddr_nl *who UNUSED_PARAM, if (tb[RTA_SRC]) { if (r->rtm_src_len != host_len) { printf("%s/%u", rt_addr_n2a(r->rtm_family, - RTA_PAYLOAD(tb[RTA_SRC]), RTA_DATA(tb[RTA_SRC]), abuf, sizeof(abuf)), r->rtm_src_len @@ -99,7 +98,6 @@ static int print_rule(const struct sockaddr_nl *who UNUSED_PARAM, if (tb[RTA_DST]) { if (r->rtm_dst_len != host_len) { printf("to %s/%u ", rt_addr_n2a(r->rtm_family, - RTA_PAYLOAD(tb[RTA_DST]), RTA_DATA(tb[RTA_DST]), abuf, sizeof(abuf)), r->rtm_dst_len @@ -238,8 +236,7 @@ static int iprule_modify(int cmd, char **argv) key == ARG_priority) { uint32_t pref; NEXT_ARG(); - if (get_u32(&pref, *argv, 0)) - invarg(*argv, "preference"); + pref = get_u32(*argv, "preference"); addattr32(&req.n, sizeof(req), RTA_PRIORITY, pref); } else if (key == ARG_tos) { uint32_t tos; @@ -250,8 +247,7 @@ static int iprule_modify(int cmd, char **argv) } else if (key == ARG_fwmark) { uint32_t fwmark; NEXT_ARG(); - if (get_u32(&fwmark, *argv, 0)) - invarg(*argv, "fwmark"); + fwmark = get_u32(*argv, "fwmark"); addattr32(&req.n, sizeof(req), RTA_PROTOINFO, fwmark); } else if (key == ARG_realms) { uint32_t realm; |