X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;ds=sidebyside;f=networking%2Froute.c;h=0146fa02914c05f236696eb655a5b98ffc6ed7fd;hb=defc1ea34074e7882724c460260d307cdf981a70;hp=530c51b1017c42aca2aa5656f2f6e7b820cae2ee;hpb=fb79a2e2cfe33002398f1898c26d8e4f341db006;p=oweals%2Fbusybox.git diff --git a/networking/route.c b/networking/route.c index 530c51b10..0146fa029 100644 --- a/networking/route.c +++ b/networking/route.c @@ -25,7 +25,6 @@ * remove ridiculous amounts of bloat. */ -#include #include #include @@ -73,7 +72,7 @@ #define HOST_FLAG 2 /* We remap '-' to '#' to avoid problems with getopt. */ -static const char tbl_hash_net_host[] = +static const char tbl_hash_net_host[] ALIGN1 = "\007\001#net\0" /* "\010\002#host\0" */ "\007\002#host" /* Since last, we can save a byte. */ @@ -96,7 +95,7 @@ static const char tbl_hash_net_host[] = #define KW_IPVx_DYN 042 #define KW_IPVx_REINSTATE 043 -static const char tbl_ipvx[] = +static const char tbl_ipvx[] ALIGN1 = /* 020 is the "takes an arg" bit */ #if HAVE_NEW_ADDRT "\011\020metric\0" @@ -352,9 +351,10 @@ static void INET6_setroute(int action, char **args) memset(&sa6, 0, sizeof(sa6)); } else { char *cp; - if ((cp = strchr(target, '/'))) { /* Yes... const to non is ok. */ - *cp = 0; - prefix_len = xatoul_range(cp+1, 0, 128); + cp = strchr(target, '/'); /* Yes... const to non is ok. */ + if (cp) { + *cp = '\0'; + prefix_len = xatoul_range(cp + 1, 0, 128); } else { prefix_len = 128; } @@ -438,7 +438,7 @@ static void INET6_setroute(int action, char **args) } #endif -static const unsigned int flagvals[] = { /* Must agree with flagchars[]. */ +static const unsigned flagvals[] = { /* Must agree with flagchars[]. */ RTF_GATEWAY, RTF_HOST, RTF_REINSTATE, @@ -454,7 +454,8 @@ static const unsigned int flagvals[] = { /* Must agree with flagchars[]. */ #define IPV4_MASK (RTF_GATEWAY|RTF_HOST|RTF_REINSTATE|RTF_DYNAMIC|RTF_MODIFIED) #define IPV6_MASK (RTF_GATEWAY|RTF_HOST|RTF_DEFAULT|RTF_ADDRCONF|RTF_CACHE) -static const char flagchars[] = /* Must agree with flagvals[]. */ +/* Must agree with flagvals[]. */ +static const char flagchars[] ALIGN1 = "GHRDM" #if ENABLE_FEATURE_IPV6 "DAC" @@ -475,7 +476,7 @@ static void set_flags(char *flagstr, int flags) } /* also used in netstat */ -void bb_displayroutes(int noresolve, int netstatfmt) +void FAST_FUNC bb_displayroutes(int noresolve, int netstatfmt) { char devname[64], flags[16], *sdest, *sgw; unsigned long d, g, m; @@ -537,7 +538,7 @@ void bb_displayroutes(int noresolve, int netstatfmt) #if ENABLE_FEATURE_IPV6 -static void INET6_displayroutes(int noresolve) +static void INET6_displayroutes(void) { char addr6[128], *naddr6; /* In addr6x, we store both 40-byte ':'-delimited ipv6 addresses. @@ -631,15 +632,16 @@ static void INET6_displayroutes(int noresolve) #define ROUTE_OPT_INET6 0x08 /* Not an actual option. See below. */ /* 1st byte is offset to next entry offset. 2nd byte is return value. */ -static const char tbl_verb[] = /* 2nd byte matches RTACTION_* code */ +/* 2nd byte matches RTACTION_* code */ +static const char tbl_verb[] ALIGN1 = "\006\001add\0" "\006\002del\0" /* "\011\002delete\0" */ - "\010\002delete" /* Since last, we can save a byte. */ + "\010\002delete" /* Since it's last, we can save a byte. */ ; -int route_main(int argc, char **argv); -int route_main(int argc, char **argv) +int route_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; +int route_main(int argc ATTRIBUTE_UNUSED, char **argv) { unsigned opt; int what; @@ -654,7 +656,7 @@ int route_main(int argc, char **argv) } } - opt = getopt32(argc, argv, "A:ne", &family); + opt = getopt32(argv, "A:ne", &family); if ((opt & ROUTE_OPT_A) && strcmp(family, "inet") != 0) { #if ENABLE_FEATURE_IPV6 @@ -672,7 +674,7 @@ int route_main(int argc, char **argv) int noresolve = (opt & ROUTE_OPT_n) ? 0x0fff : 0; #if ENABLE_FEATURE_IPV6 if (opt & ROUTE_OPT_INET6) - INET6_displayroutes(noresolve); + INET6_displayroutes(); else #endif bb_displayroutes(noresolve, opt & ROUTE_OPT_e);