diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2015-03-12 17:48:34 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2015-03-12 17:48:34 +0100 |
commit | 8dff01d06a7ebd7330e3a1dd1ba47b3c74ee7dfb (patch) | |
tree | 41c9dfbd45676c9e8737a7d8aa4361bbdfb40868 /util-linux | |
parent | 936c8809caea5705e26e5d7e06ea3895c28fffd8 (diff) | |
download | 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 'util-linux')
-rw-r--r-- | util-linux/acpid.c | 2 | ||||
-rw-r--r-- | util-linux/fdisk.c | 6 | ||||
-rw-r--r-- | util-linux/fdisk_osf.c | 2 | ||||
-rw-r--r-- | util-linux/fdisk_sgi.c | 2 | ||||
-rw-r--r-- | util-linux/findfs.c | 2 | ||||
-rw-r--r-- | util-linux/mdev.c | 2 | ||||
-rw-r--r-- | util-linux/mount.c | 10 | ||||
-rw-r--r-- | util-linux/rtcwake.c | 2 | ||||
-rw-r--r-- | util-linux/volume_id/get_devname.c | 4 |
9 files changed, 16 insertions, 16 deletions
diff --git a/util-linux/acpid.c b/util-linux/acpid.c index fc8151f6a..0f2cb6bdc 100644 --- a/util-linux/acpid.c +++ b/util-linux/acpid.c @@ -151,7 +151,7 @@ static const char *find_action(struct input_event *ev, const char *buf) } if (buf) { - if (strncmp(buf, evt_tab[i].desc, strlen(buf)) == 0) { + if (is_prefixed_with(evt_tab[i].desc, buf)) { action = evt_tab[i].desc; break; } diff --git a/util-linux/fdisk.c b/util-linux/fdisk.c index 39eb27b47..7fe70fb72 100644 --- a/util-linux/fdisk.c +++ b/util-linux/fdisk.c @@ -2781,14 +2781,14 @@ is_ide_cdrom_or_tape(const char *device) the process hangs on the attempt to read a music CD. So try to be careful. This only works since 2.1.73. */ - if (strncmp("/dev/hd", device, 7)) + if (!is_prefixed_with(device, "/dev/hd")) return 0; snprintf(buf, sizeof(buf), "/proc/ide/%s/media", device+5); procf = fopen_for_read(buf); if (procf != NULL && fgets(buf, sizeof(buf), procf)) - is_ide = (!strncmp(buf, "cdrom", 5) || - !strncmp(buf, "tape", 4)); + is_ide = (is_prefixed_with(buf, "cdrom") || + is_prefixed_with(buf, "tape")); else /* Now when this proc file does not exist, skip the device when it is read-only. */ diff --git a/util-linux/fdisk_osf.c b/util-linux/fdisk_osf.c index ff16389bd..af04cfcc8 100644 --- a/util-linux/fdisk_osf.c +++ b/util-linux/fdisk_osf.c @@ -854,7 +854,7 @@ xbsd_initlabel(struct partition *p) d->d_magic = BSD_DISKMAGIC; - if (strncmp(disk_device, "/dev/sd", 7) == 0) + if (is_prefixed_with(disk_device, "/dev/sd")) d->d_type = BSD_DTYPE_SCSI; else d->d_type = BSD_DTYPE_ST506; diff --git a/util-linux/fdisk_sgi.c b/util-linux/fdisk_sgi.c index 785fc661b..23ebc56ef 100644 --- a/util-linux/fdisk_sgi.c +++ b/util-linux/fdisk_sgi.c @@ -440,7 +440,7 @@ sgi_write_table(void) (unsigned int*)sgilabel, sizeof(*sgilabel)) == 0); write_sector(0, sgilabel); - if (!strncmp((char*)sgilabel->directory[0].vol_file_name, "sgilabel", 8)) { + if (is_prefixed_with((char*)sgilabel->directory[0].vol_file_name, "sgilabel")) { /* * keep this habit of first writing the "sgilabel". * I never tested whether it works without (AN 981002). diff --git a/util-linux/findfs.c b/util-linux/findfs.c index 49e8979ac..07734f359 100644 --- a/util-linux/findfs.c +++ b/util-linux/findfs.c @@ -27,7 +27,7 @@ int findfs_main(int argc UNUSED_PARAM, char **argv) if (!dev) bb_show_usage(); - if (strncmp(dev, "/dev/", 5) == 0) { + if (is_prefixed_with(dev, "/dev/")) { /* Just pass any /dev/xxx name right through. * This might aid in some scripts being able * to call this unconditionally */ diff --git a/util-linux/mdev.c b/util-linux/mdev.c index b2d56575f..ccc00d365 100644 --- a/util-linux/mdev.c +++ b/util-linux/mdev.c @@ -610,7 +610,7 @@ static void make_device(char *device_name, char *path, int operation) * We use strstr("/block/") to forestall future surprises. */ type = S_IFCHR; - if (strstr(path, "/block/") || (G.subsystem && strncmp(G.subsystem, "block", 5) == 0)) + if (strstr(path, "/block/") || (G.subsystem && is_prefixed_with(G.subsystem, "block"))) type = S_IFBLK; #if ENABLE_FEATURE_MDEV_CONF diff --git a/util-linux/mount.c b/util-linux/mount.c index fbc89c862..cb40c802d 100644 --- a/util-linux/mount.c +++ b/util-linux/mount.c @@ -641,7 +641,7 @@ static llist_t *get_block_backed_filesystems(void) if (!f) continue; while ((buf = xmalloc_fgetline(f)) != NULL) { - if (strncmp(buf, "nodev", 5) == 0 && isspace(buf[5])) + if (is_prefixed_with(buf, "nodev") && isspace(buf[5])) goto next; fs = skip_whitespace(buf); if (*fs == '#' || *fs == '*' || !*fs) @@ -1364,9 +1364,9 @@ static NOINLINE int nfsmount(struct mntent *mp, unsigned long vfsflags, char *fi strcspn(opteq, " \t\n\r,")); continue; case 18: // "proto" - if (!strncmp(opteq, "tcp", 3)) + if (is_prefixed_with(opteq, "tcp")) tcp = 1; - else if (!strncmp(opteq, "udp", 3)) + else if (is_prefixed_with(opteq, "udp")) tcp = 0; else bb_error_msg("warning: unrecognized proto= option"); @@ -1459,7 +1459,7 @@ static NOINLINE int nfsmount(struct mntent *mp, unsigned long vfsflags, char *fi "rdirplus\0" "acl\0"; int val = 1; - if (!strncmp(opt, "no", 2)) { + if (is_prefixed_with(opt, "no")) { val = 0; opt += 2; } @@ -1979,7 +1979,7 @@ static int singlemount(struct mntent *mp, int ignore_busy) } // Might this be an NFS filesystem? - if ((!mp->mnt_type || strncmp(mp->mnt_type, "nfs", 3) == 0) + if ((!mp->mnt_type || is_prefixed_with(mp->mnt_type, "nfs")) && strchr(mp->mnt_fsname, ':') != NULL ) { if (!mp->mnt_type) diff --git a/util-linux/rtcwake.c b/util-linux/rtcwake.c index 53d9384db..8aee0cfcb 100644 --- a/util-linux/rtcwake.c +++ b/util-linux/rtcwake.c @@ -66,7 +66,7 @@ static NOINLINE bool may_wakeup(const char *rtcname) return false; /* wakeup events could be disabled or not supported */ - return strncmp(buf, "enabled\n", 8) == 0; + return is_prefixed_with(buf, "enabled\n") != NULL; } static NOINLINE void setup_alarm(int fd, time_t *wakeup, time_t rtc_time) diff --git a/util-linux/volume_id/get_devname.c b/util-linux/volume_id/get_devname.c index 0c6bdfddf..53bdbdf09 100644 --- a/util-linux/volume_id/get_devname.c +++ b/util-linux/volume_id/get_devname.c @@ -302,9 +302,9 @@ int resolve_mount_spec(char **fsname) { char *tmp = *fsname; - if (strncmp(*fsname, "UUID=", 5) == 0) + if (is_prefixed_with(*fsname, "UUID=")) tmp = get_devname_from_uuid(*fsname + 5); - else if (strncmp(*fsname, "LABEL=", 6) == 0) + else if (is_prefixed_with(*fsname, "LABEL=") == 0) tmp = get_devname_from_label(*fsname + 6); if (tmp == *fsname) |