diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2009-03-05 12:21:57 +0300 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2009-03-05 12:21:57 +0300 |
commit | 76140a77c9c47c41f244d90d4250d77b9504f7d4 (patch) | |
tree | 67c43b25beb904f111e8a96548bee1592f5010e2 /networking/tc.c | |
parent | 021de3f0297af87bfc098bd364dffb332d6ace20 (diff) |
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/tc.c')
-rw-r--r-- | networking/tc.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/networking/tc.c b/networking/tc.c index 6e31074f4..03f57f637 100644 --- a/networking/tc.c +++ b/networking/tc.c @@ -508,15 +508,13 @@ int tc_main(int argc UNUSED_PARAM, char **argv) if ((slash = strchr(handle, '/')) != NULL) *slash = '\0'; */ - if (get_u32(&msg.tcm_handle, *argv, 0)) - invarg(*argv, "handle"); - /* if (slash) {if (get_u32(__u32 &mask, slash+1,0)) inv mask;addattr32(n, MAX_MSG, TCA_FW_MASK, mask); */ + msg.tcm_handle = get_u32(*argv, "handle"); + /* if (slash) {if (get_u32(__u32 &mask, slash+1, NULL)) inv mask; addattr32(n, MAX_MSG, TCA_FW_MASK, mask); */ } else if (arg == ARG_classid && obj == OBJ_class && cmd == CMD_change){ } else if (arg == ARG_pref || arg == ARG_prio) { /* filter::list */ if (filter_prio) duparg(*argv, "priority"); - if (get_u32(&filter_prio, *argv, 0)) - invarg(*argv, "priority"); + filter_prio = get_u32(*argv, "priority"); } else if (arg == ARG_proto) { /* filter::list */ __u16 tmp; if (filter_proto) |