libiproute: use itoa() where appropriate
No binary (build failed)
—
(log yok)
| @@ -137,12 +137,11 @@ static NOINLINE int print_linkinfo(const struct nlmsghdr *n) | |
| { | |
| unsigned m_flag = 0; | |
| if (tb[IFLA_LINK]) { | |
| - | SPRINT_BUF(b1); |
| int iflink = *(int*)RTA_DATA(tb[IFLA_LINK]); | |
| if (iflink == 0) | |
| printf("@NONE: "); | |
| else { | |
| - | printf("@%s: ", ll_idx_n2a(iflink, b1)); |
| + | printf("@%s: ", ll_index_to_name(iflink)); |
| m_flag = ll_index_to_flags(iflink); | |
| m_flag = !(m_flag & IFF_UP); | |
| } | |
| @@ -158,8 +157,7 @@ static NOINLINE int print_linkinfo(const struct nlmsghdr *n) | |
| printf("qdisc %s ", (char*)RTA_DATA(tb[IFLA_QDISC])); | |
| #ifdef IFLA_MASTER | |
| if (tb[IFLA_MASTER]) { | |
| - | SPRINT_BUF(b1); |
| - | printf("master %s ", ll_idx_n2a(*(int*)RTA_DATA(tb[IFLA_MASTER]), b1)); |
| + | printf("master %s ", ll_index_to_name(*(int*)RTA_DATA(tb[IFLA_MASTER]))); |
| } | |
| #endif | |
| /* IFLA_OPERSTATE was added to kernel with the same commit as IFF_DORMANT */ | |
| @@ -218,7 +216,6 @@ static int FAST_FUNC print_addrinfo(const struct sockaddr_nl *who UNUSED_PARAM, | |
| int len = n->nlmsg_len; | |
| struct rtattr * rta_tb[IFA_MAX+1]; | |
| char abuf[256]; | |
| - | SPRINT_BUF(b1); |
| if (n->nlmsg_type != RTM_NEWADDR && n->nlmsg_type != RTM_DELADDR) | |
| return 0; | |
| @@ -250,7 +247,7 @@ static int FAST_FUNC print_addrinfo(const struct sockaddr_nl *who UNUSED_PARAM, | |
| if (rta_tb[IFA_LABEL]) | |
| label = RTA_DATA(rta_tb[IFA_LABEL]); | |
| else | |
| - | label = ll_idx_n2a(ifa->ifa_index, b1); |
| + | label = ll_index_to_name(ifa->ifa_index); |
| if (fnmatch(G_filter.label, label, 0) != 0) | |
| return 0; | |
| } | |
| @@ -325,7 +322,7 @@ static int FAST_FUNC print_addrinfo(const struct sockaddr_nl *who UNUSED_PARAM, | |
| abuf, sizeof(abuf)) | |
| ); | |
| } | |
| - | printf("scope %s ", rtnl_rtscope_n2a(ifa->ifa_scope, b1)); |
| + | printf("scope %s ", rtnl_rtscope_n2a(ifa->ifa_scope)); |
| if (ifa->ifa_flags & IFA_F_SECONDARY) { | |
| ifa->ifa_flags &= ~IFA_F_SECONDARY; | |
| printf("secondary "); | |
| @@ -556,12 +553,11 @@ int FAST_FUNC ipaddr_list_or_flush(char **argv, int flush) | |
| continue; | |
| } | |
| if (G_filter.label) { | |
| - | SPRINT_BUF(b1); |
| const char *label; | |
| if (tb[IFA_LABEL]) | |
| label = RTA_DATA(tb[IFA_LABEL]); | |
| else | |
| - | label = ll_idx_n2a(ifa->ifa_index, b1); |
| + | label = ll_index_to_name(ifa->ifa_index); |
| if (fnmatch(G_filter.label, label, 0) != 0) | |
| continue; | |
| } | |
| @@ -87,7 +87,6 @@ static int FAST_FUNC print_route(const struct sockaddr_nl *who UNUSED_PARAM, | |
| inet_prefix dst; | |
| inet_prefix src; | |
| int host_len = -1; | |
| - | SPRINT_BUF(b1); |
| if (n->nlmsg_type != RTM_NEWROUTE && n->nlmsg_type != RTM_DELROUTE) { | |
| fprintf(stderr, "Not a route: %08x %08x %08x\n", | |
| @@ -236,7 +235,7 @@ static int FAST_FUNC print_route(const struct sockaddr_nl *who UNUSED_PARAM, | |
| printf("Deleted "); | |
| } | |
| if (r->rtm_type != RTN_UNICAST /* && !G_filter.type - always 0 */) { | |
| - | printf("%s ", rtnl_rtntype_n2a(r->rtm_type, b1)); |
| + | printf("%s ", rtnl_rtntype_n2a(r->rtm_type)); |
| } | |
| if (tb[RTA_DST]) { | |
| @@ -45,7 +45,6 @@ static int FAST_FUNC print_rule(const struct sockaddr_nl *who UNUSED_PARAM, | |
| int host_len = -1; | |
| struct rtattr * tb[RTA_MAX+1]; | |
| char abuf[256]; | |
| - | SPRINT_BUF(b1); |
| if (n->nlmsg_type != RTM_NEWRULE) | |
| return 0; | |
| @@ -110,7 +109,7 @@ static int FAST_FUNC print_rule(const struct sockaddr_nl *who UNUSED_PARAM, | |
| } | |
| if (r->rtm_tos) { | |
| - | printf("tos %s ", rtnl_dsfield_n2a(r->rtm_tos, b1)); |
| + | printf("tos %s ", rtnl_dsfield_n2a(r->rtm_tos)); |
| } | |
| if (tb[RTA_PROTOINFO]) { | |
| printf("fwmark %#x ", *(uint32_t*)RTA_DATA(tb[RTA_PROTOINFO])); | |
| @@ -121,7 +120,7 @@ static int FAST_FUNC print_rule(const struct sockaddr_nl *who UNUSED_PARAM, | |
| } | |
| if (r->rtm_table) | |
| - | printf("lookup %s ", rtnl_rttable_n2a(r->rtm_table, b1)); |
| + | printf("lookup %s ", rtnl_rttable_n2a(r->rtm_table)); |
| if (tb[RTA_FLOW]) { | |
| uint32_t to = *(uint32_t*)RTA_DATA(tb[RTA_FLOW]); | |
| @@ -129,10 +128,10 @@ static int FAST_FUNC print_rule(const struct sockaddr_nl *who UNUSED_PARAM, | |
| to &= 0xFFFF; | |
| if (from) { | |
| printf("realms %s/", | |
| - | rtnl_rtrealm_n2a(from, b1)); |
| + | rtnl_rtrealm_n2a(from)); |
| } | |
| printf("%s ", | |
| - | rtnl_rtrealm_n2a(to, b1)); |
| + | rtnl_rtrealm_n2a(to)); |
| } | |
| if (r->rtm_type == RTN_NAT) { | |
| @@ -145,7 +144,7 @@ static int FAST_FUNC print_rule(const struct sockaddr_nl *who UNUSED_PARAM, | |
| } else | |
| printf("masquerade"); | |
| } else if (r->rtm_type != RTN_UNICAST) | |
| - | fputs(rtnl_rtntype_n2a(r->rtm_type, b1), stdout); |
| + | fputs(rtnl_rtntype_n2a(r->rtm_type), stdout); |
| bb_putchar('\n'); | |
| /*fflush_all();*/ | |
| @@ -432,13 +432,12 @@ static void print_tunnel(struct ip_tunnel_parm *p) | |
| else | |
| printf(" ttl inherit "); | |
| if (p->iph.tos) { | |
| - | SPRINT_BUF(b1); |
| printf(" tos"); | |
| if (p->iph.tos & 1) | |
| printf(" inherit"); | |
| if (p->iph.tos & ~1) | |
| printf("%c%s ", p->iph.tos & 1 ? '/' : ' ', | |
| - | rtnl_dsfield_n2a(p->iph.tos & ~1, b1)); |
| + | rtnl_dsfield_n2a(p->iph.tos & ~1)); |
| } | |
| if (!(p->iph.frag_off & htons(IP_DF))) | |
| printf(" nopmtudisc"); | |
| @@ -99,7 +99,6 @@ const char FAST_FUNC *ll_idx_n2a(int idx, char *buf) | |
| return buf; | |
| } | |
| - | |
| const char FAST_FUNC *ll_index_to_name(int idx) | |
| { | |
| static char nbuf[16]; | |
| @@ -88,21 +88,20 @@ static void rtnl_rtprot_initialize(void) | |
| rtnl_tab_initialize("/etc/iproute2/rt_protos", rtnl_rtprot_tab->tab); | |
| } | |
| - | const char* FAST_FUNC rtnl_rtprot_n2a(int id, char *buf) |
| + | #if 0 /* UNUSED */ |
| + | const char* FAST_FUNC rtnl_rtprot_n2a(int id) |
| { | |
| if (id < 0 || id >= 256) { | |
| - | sprintf(buf, "%d", id); |
| - | return buf; |
| + | return itoa(id); |
| } | |
| rtnl_rtprot_initialize(); | |
| if (rtnl_rtprot_tab->tab[id]) | |
| return rtnl_rtprot_tab->tab[id]; | |
| - | /* buf is SPRINT_BSIZE big */ |
| - | sprintf(buf, "%d", id); |
| - | return buf; |
| + | return itoa(id); |
| } | |
| + | #endif |
| int FAST_FUNC rtnl_rtprot_a2n(uint32_t *id, char *arg) | |
| { | |
| @@ -126,20 +125,17 @@ static void rtnl_rtscope_initialize(void) | |
| rtnl_tab_initialize("/etc/iproute2/rt_scopes", rtnl_rtscope_tab->tab); | |
| } | |
| - | const char* FAST_FUNC rtnl_rtscope_n2a(int id, char *buf) |
| + | const char* FAST_FUNC rtnl_rtscope_n2a(int id) |
| { | |
| if (id < 0 || id >= 256) { | |
| - | sprintf(buf, "%d", id); |
| - | return buf; |
| + | return itoa(id); |
| } | |
| rtnl_rtscope_initialize(); | |
| if (rtnl_rtscope_tab->tab[id]) | |
| return rtnl_rtscope_tab->tab[id]; | |
| - | /* buf is SPRINT_BSIZE big */ |
| - | sprintf(buf, "%d", id); |
| - | return buf; |
| + | return itoa(id); |
| } | |
| int FAST_FUNC rtnl_rtscope_a2n(uint32_t *id, char *arg) | |
| @@ -166,20 +162,17 @@ int FAST_FUNC rtnl_rtrealm_a2n(uint32_t *id, char *arg) | |
| } | |
| #if ENABLE_FEATURE_IP_RULE | |
| - | const char* FAST_FUNC rtnl_rtrealm_n2a(int id, char *buf) |
| + | const char* FAST_FUNC rtnl_rtrealm_n2a(int id) |
| { | |
| if (id < 0 || id >= 256) { | |
| - | sprintf(buf, "%d", id); |
| - | return buf; |
| + | return itoa(id); |
| } | |
| rtnl_rtrealm_initialize(); | |
| if (rtnl_rtrealm_tab->tab[id]) | |
| return rtnl_rtrealm_tab->tab[id]; | |
| - | /* buf is SPRINT_BSIZE big */ |
| - | sprintf(buf, "%d", id); |
| - | return buf; |
| + | return itoa(id); |
| } | |
| #endif | |
| @@ -194,20 +187,17 @@ static void rtnl_rtdsfield_initialize(void) | |
| rtnl_tab_initialize("/etc/iproute2/rt_dsfield", rtnl_rtdsfield_tab->tab); | |
| } | |
| - | const char* FAST_FUNC rtnl_dsfield_n2a(int id, char *buf) |
| + | const char* FAST_FUNC rtnl_dsfield_n2a(int id) |
| { | |
| if (id < 0 || id >= 256) { | |
| - | sprintf(buf, "%d", id); |
| - | return buf; |
| + | return itoa(id); |
| } | |
| rtnl_rtdsfield_initialize(); | |
| if (rtnl_rtdsfield_tab->tab[id]) | |
| return rtnl_rtdsfield_tab->tab[id]; | |
| - | /* buf is SPRINT_BSIZE big */ |
| - | sprintf(buf, "0x%02x", id); |
| - | return buf; |
| + | return itoa(id); |
| } | |
| int FAST_FUNC rtnl_dsfield_a2n(uint32_t *id, char *arg) | |
| @@ -231,20 +221,17 @@ static void rtnl_rttable_initialize(void) | |
| rtnl_tab_initialize("/etc/iproute2/rt_tables", rtnl_rttable_tab->tab); | |
| } | |
| - | const char* FAST_FUNC rtnl_rttable_n2a(int id, char *buf) |
| + | const char* FAST_FUNC rtnl_rttable_n2a(int id) |
| { | |
| if (id < 0 || id >= 256) { | |
| - | sprintf(buf, "%d", id); |
| - | return buf; |
| + | return itoa(id); |
| } | |
| rtnl_rttable_initialize(); | |
| if (rtnl_rttable_tab->tab[id]) | |
| return rtnl_rttable_tab->tab[id]; | |
| - | /* buf is SPRINT_BSIZE big */ |
| - | sprintf(buf, "%d", id); |
| - | return buf; |
| + | return itoa(id); |
| } | |
| int FAST_FUNC rtnl_rttable_a2n(uint32_t *id, char *arg) | |
| @@ -4,12 +4,11 @@ | |
| PUSH_AND_SET_FUNCTION_VISIBILITY_TO_HIDDEN | |
| - | /* buf is SPRINT_BSIZE big */ |
| - | extern const char* rtnl_rtprot_n2a(int id, char *buf) FAST_FUNC; |
| - | extern const char* rtnl_rtscope_n2a(int id, char *buf) FAST_FUNC; |
| - | extern const char* rtnl_rtrealm_n2a(int id, char *buf) FAST_FUNC; |
| - | extern const char* rtnl_dsfield_n2a(int id, char *buf) FAST_FUNC; |
| - | extern const char* rtnl_rttable_n2a(int id, char *buf) FAST_FUNC; |
| + | extern const char* rtnl_rtprot_n2a(int id) FAST_FUNC; |
| + | extern const char* rtnl_rtscope_n2a(int id) FAST_FUNC; |
| + | extern const char* rtnl_rtrealm_n2a(int id) FAST_FUNC; |
| + | extern const char* rtnl_dsfield_n2a(int id) FAST_FUNC; |
| + | extern const char* rtnl_rttable_n2a(int id) FAST_FUNC; |
| extern int rtnl_rtprot_a2n(uint32_t *id, char *arg) FAST_FUNC; | |
| extern int rtnl_rtscope_a2n(uint32_t *id, char *arg) FAST_FUNC; | |
| extern int rtnl_rtrealm_a2n(uint32_t *id, char *arg) FAST_FUNC; | |
| @@ -12,7 +12,7 @@ | |
| #include "rt_names.h" | |
| #include "utils.h" | |
| - | const char* FAST_FUNC rtnl_rtntype_n2a(int id, char *buf) |
| + | const char* FAST_FUNC rtnl_rtntype_n2a(int id) |
| { | |
| switch (id) { | |
| case RTN_UNSPEC: | |
| @@ -40,9 +40,7 @@ const char* FAST_FUNC rtnl_rtntype_n2a(int id, char *buf) | |
| case RTN_XRESOLVE: | |
| return "xresolve"; | |
| default: | |
| - | /* buf is SPRINT_BSIZE big */ |
| - | sprintf(buf, "%d", id); |
| - | return buf; |
| + | return itoa(id); |
| } | |
| } | |
| @@ -4,7 +4,7 @@ | |
| PUSH_AND_SET_FUNCTION_VISIBILITY_TO_HIDDEN | |
| - | const char *rtnl_rtntype_n2a(int id, char *buf) FAST_FUNC; |
| + | const char *rtnl_rtntype_n2a(int id) FAST_FUNC; |
| int rtnl_rtntype_a2n(int *id, char *arg) FAST_FUNC; | |
| int get_rt_realms(uint32_t *realms, char *arg) FAST_FUNC; | |