diff options
author | Denys Vlasenko | 2015-03-12 17:48:34 +0100 |
---|---|---|
committer | Denys Vlasenko | 2015-03-12 17:48:34 +0100 |
commit | 8dff01d06a7ebd7330e3a1dd1ba47b3c74ee7dfb (patch) | |
tree | 41c9dfbd45676c9e8737a7d8aa4361bbdfb40868 /networking | |
parent | 936c8809caea5705e26e5d7e06ea3895c28fffd8 (diff) | |
download | busybox-8dff01d06a7ebd7330e3a1dd1ba47b3c74ee7dfb.zip busybox-8dff01d06a7ebd7330e3a1dd1ba47b3c74ee7dfb.tar.gz |
libbb: introduce and use is_prefixed_with()
function old new delta
is_prefixed_with - 18 +18
complete_username 78 77 -1
man_main 737 735 -2
fsck_device 429 427 -2
unpack_ar_archive 80 76 -4
strip_unsafe_prefix 105 101 -4
singlemount 1054 1050 -4
rtc_adjtime_is_utc 90 86 -4
resolve_mount_spec 88 84 -4
parse_one_line 1029 1025 -4
parse_conf 1460 1456 -4
may_wakeup 83 79 -4
loadkmap_main 219 215 -4
get_irqs_from_stat 103 99 -4
get_header_cpio 913 909 -4
findfs_main 79 75 -4
fbsplash_main 1230 1226 -4
load_crontab 776 771 -5
expand_vars_to_list 1151 1146 -5
date_main 881 876 -5
skip_dev_pfx 30 24 -6
make_device 2199 2193 -6
complete_cmd_dir_file 773 767 -6
run_applet_and_exit 715 708 -7
uudecode_main 321 313 -8
pwdx_main 197 189 -8
execute 568 560 -8
i2cdetect_main 1186 1176 -10
procps_scan 1242 1230 -12
procps_read_smaps 1017 1005 -12
process_module 746 734 -12
patch_main 1903 1891 -12
nfsmount 3572 3560 -12
stack_machine 126 112 -14
process_timer_stats 449 435 -14
match_fstype 111 97 -14
do_ipaddr 1344 1330 -14
open_list_and_close 359 343 -16
get_header_tar 1795 1779 -16
prepend_new_eth_table 340 323 -17
fsck_main 1811 1794 -17
find_iface_state 56 38 -18
dnsd_main 1321 1303 -18
base_device 179 158 -21
find_keyword 104 82 -22
handle_incoming_and_exit 2785 2762 -23
parse_and_put_prompt 774 746 -28
modinfo 347 317 -30
find_action 204 171 -33
update_passwd 1470 1436 -34
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/49 up/down: 18/-540) Total: -522 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'networking')
-rw-r--r-- | networking/dnsd.c | 2 | ||||
-rw-r--r-- | networking/httpd.c | 8 | ||||
-rw-r--r-- | networking/ifupdown.c | 10 | ||||
-rw-r--r-- | networking/inetd.c | 2 | ||||
-rw-r--r-- | networking/libiproute/ipaddress.c | 2 | ||||
-rw-r--r-- | networking/nameif.c | 8 | ||||
-rw-r--r-- | networking/netstat.c | 4 |
7 files changed, 18 insertions, 18 deletions
diff --git a/networking/dnsd.c b/networking/dnsd.c index fe98400..923ad6b 100644 --- a/networking/dnsd.c +++ b/networking/dnsd.c @@ -194,7 +194,7 @@ static char *table_lookup(struct dns_entry *d, if ((len != 1 || d->name[1] != '*') /* we assume (do not check) that query_string * ends in ".in-addr.arpa" */ - && strncmp(d->rip, query_string, strlen(d->rip)) == 0 + && is_prefixed_with(query_string, d->rip) ) { #if DEBUG fprintf(stderr, "Found name:%s\n", d->name); diff --git a/networking/httpd.c b/networking/httpd.c index 9cf0804..7a9065f 100644 --- a/networking/httpd.c +++ b/networking/httpd.c @@ -697,7 +697,7 @@ static void parse_conf(const char *path, int flag) goto config_error; } *host_port++ = '\0'; - if (strncmp(host_port, "http://", 7) == 0) + if (is_prefixed_with(host_port, "http://")) host_port += 7; if (*host_port == '\0') { goto config_error; @@ -1894,7 +1894,7 @@ static Htaccess_Proxy *find_proxy_entry(const char *url) { Htaccess_Proxy *p; for (p = proxy; p; p = p->next) { - if (strncmp(url, p->url_from, strlen(p->url_from)) == 0) + if (is_prefixed_with(url, p->url_from)) return p; } return NULL; @@ -2183,7 +2183,7 @@ static void handle_incoming_and_exit(const len_and_sockaddr *fromAddr) if (STRNCASECMP(iobuf, "Range:") == 0) { /* We know only bytes=NNN-[MMM] */ char *s = skip_whitespace(iobuf + sizeof("Range:")-1); - if (strncmp(s, "bytes=", 6) == 0) { + if (is_prefixed_with(s, "bytes=") == 0) { s += sizeof("bytes=")-1; range_start = BB_STRTOOFF(s, &s, 10); if (s[0] != '-' || range_start < 0) { @@ -2269,7 +2269,7 @@ static void handle_incoming_and_exit(const len_and_sockaddr *fromAddr) tptr = urlcopy + 1; /* skip first '/' */ #if ENABLE_FEATURE_HTTPD_CGI - if (strncmp(tptr, "cgi-bin/", 8) == 0) { + if (is_prefixed_with(tptr, "cgi-bin/")) { if (tptr[8] == '\0') { /* protect listing "cgi-bin/" */ send_headers_and_exit(HTTP_FORBIDDEN); diff --git a/networking/ifupdown.c b/networking/ifupdown.c index c35d97a..daabeec 100644 --- a/networking/ifupdown.c +++ b/networking/ifupdown.c @@ -289,7 +289,7 @@ static char *parse(const char *command, struct interface_defn_t *ifd) /* "hwaddress <class> <address>": * unlike ifconfig, ip doesnt want <class> * (usually "ether" keyword). Skip it. */ - if (strncmp(command, "hwaddress", 9) == 0) { + if (is_prefixed_with(command, "hwaddress")) { varvalue = skip_whitespace(skip_non_whitespace(varvalue)); } # endif @@ -298,7 +298,7 @@ static char *parse(const char *command, struct interface_defn_t *ifd) # if ENABLE_FEATURE_IFUPDOWN_IP /* Sigh... Add a special case for 'ip' to convert from * dotted quad to bit count style netmasks. */ - if (strncmp(command, "bnmask", 6) == 0) { + if (is_prefixed_with(command, "bnmask")) { unsigned res; varvalue = get_var("netmask", 7, ifd); if (varvalue) { @@ -1159,12 +1159,12 @@ static char *run_mapping(char *physical, struct mapping_defn_t *map) static llist_t *find_iface_state(llist_t *state_list, const char *iface) { - unsigned iface_len = strlen(iface); llist_t *search = state_list; while (search) { - if ((strncmp(search->data, iface, iface_len) == 0) - && (search->data[iface_len] == '=') + char *after_iface = is_prefixed_with(search->data, iface); + if (after_iface + && *after_iface == '=' ) { return search; } diff --git a/networking/inetd.c b/networking/inetd.c index 8148925..dce5a08 100644 --- a/networking/inetd.c +++ b/networking/inetd.c @@ -727,7 +727,7 @@ static NOINLINE servtab_t *parse_one_line(void) goto parse_err; #endif } - if (strncmp(arg, "rpc/", 4) == 0) { + if (is_prefixed_with(arg, "rpc/")) { #if ENABLE_FEATURE_INETD_RPC unsigned n; arg += 4; diff --git a/networking/libiproute/ipaddress.c b/networking/libiproute/ipaddress.c index aa4779a..4072d06 100644 --- a/networking/libiproute/ipaddress.c +++ b/networking/libiproute/ipaddress.c @@ -701,7 +701,7 @@ static int ipaddr_modify(int cmd, char **argv) /* There was no "dev IFACE", but we need that */ bb_error_msg_and_die("need \"dev IFACE\""); } - if (l && strncmp(d, l, strlen(d)) != 0) { + if (l && !is_prefixed_with(l, d)) { bb_error_msg_and_die("\"dev\" (%s) must match \"label\" (%s)", d, l); } diff --git a/networking/nameif.c b/networking/nameif.c index 9a8846d..9b18a6d 100644 --- a/networking/nameif.c +++ b/networking/nameif.c @@ -161,19 +161,19 @@ static void nameif_parse_selector(ethtable_t *ch, char *selector) if (*next) *next++ = '\0'; /* Check for selectors, mac= is assumed */ - if (strncmp(selector, "bus=", 4) == 0) { + if (is_prefixed_with(selector, "bus=")) { ch->bus_info = xstrdup(selector + 4); found_selector++; - } else if (strncmp(selector, "driver=", 7) == 0) { + } else if (is_prefixed_with(selector, "driver=")) { ch->driver = xstrdup(selector + 7); found_selector++; - } else if (strncmp(selector, "phyaddr=", 8) == 0) { + } else if (is_prefixed_with(selector, "phyaddr=")) { ch->phy_address = xatoi_positive(selector + 8); found_selector++; } else { #endif lmac = xmalloc(ETH_ALEN); - ch->mac = ether_aton_r(selector + (strncmp(selector, "mac=", 4) != 0 ? 0 : 4), lmac); + ch->mac = ether_aton_r(selector + (is_prefixed_with(selector, "mac=") ? 4 : 0), lmac); if (ch->mac == NULL) bb_error_msg_and_die("can't parse %s", selector); #if ENABLE_FEATURE_NAMEIF_EXTENDED diff --git a/networking/netstat.c b/networking/netstat.c index f80b845..02f4cc7 100644 --- a/networking/netstat.c +++ b/networking/netstat.c @@ -228,12 +228,12 @@ static long extract_socket_inode(const char *lname) { long inode = -1; - if (strncmp(lname, "socket:[", sizeof("socket:[")-1) == 0) { + if (is_prefixed_with(lname, "socket:[")) { /* "socket:[12345]", extract the "12345" as inode */ inode = bb_strtoul(lname + sizeof("socket:[")-1, (char**)&lname, 0); if (*lname != ']') inode = -1; - } else if (strncmp(lname, "[0000]:", sizeof("[0000]:")-1) == 0) { + } else if (is_prefixed_with(lname, "[0000]:")) { /* "[0000]:12345", extract the "12345" as inode */ inode = bb_strtoul(lname + sizeof("[0000]:")-1, NULL, 0); if (errno) /* not NUL terminated? */ |