Hi, On Sat, Jul 29, 2017 at 10:09:07PM +0200, Magnus Kroken wrote: > Refresh patches, delete patches backported from upstream.
Thanks for the update! You can drop 120-remove_uclibc_rpc_check.patch altogether, since the check has been changed from an error to a warning. > Some BusyBox config symbols have been renamed and/or moved > from being global to applet-specific. I have attempted to retain > the same behavior as previous config defaults would. Out of curiosity, which tool do you use to refresh Config-defaults.in? It seems to reorder items quite a lot. Also, the previous update of busybox refreshed the configuration of all applets in config/, is it unneeded for this release? > Compile and run-time tested on x86/generic and powerpc/mpc85xx. > > Size comparison with default build settings: > 210075 busybox_1.27.1-1_i386_pentium4.ipk > 210107 busybox_1.26.2-7_i386_pentium4.ipk > > package/utils/busybox/Config-defaults.in | 346 > ++++++++++++++------- > package/utils/busybox/Makefile | 6 +- > package/utils/busybox/config/Config.in | 32 +- > .../patches/120-remove_uclibc_rpc_check.patch | 5 +- > .../busybox/patches/200-udhcpc_reduce_msgs.patch | 4 +- > .../patches/201-udhcpc_changed_ifindex.patch | 2 +- > .../patches/203-udhcpc_renew_no_deconfig.patch | 2 +- > .../patches/301-ip-link-fix-netlink-msg-size.patch | 2 +- > .../302-ip-rule-add-suppress-prefixlength.patch | 145 --------- > ...t-touch-file-with-x-when-modified_count-0.patch | 100 ------ > ...uching-a-new-file-with-ZZ-when-no-editing.patch | 53 ---- > 11 files changed, 264 insertions(+), 433 deletions(-) > delete mode 100644 > package/utils/busybox/patches/302-ip-rule-add-suppress-prefixlength.patch > delete mode 100644 > package/utils/busybox/patches/401-vi-don-t-touch-file-with-x-when-modified_count-0.patch > delete mode 100644 > package/utils/busybox/patches/402-vi-avoid-touching-a-new-file-with-ZZ-when-no-editing.patch > > diff --git a/package/utils/busybox/Config-defaults.in > b/package/utils/busybox/Config-defaults.in > index 9438cb26e7..dd497f24cf 100644 > --- a/package/utils/busybox/Config-defaults.in > +++ b/package/utils/busybox/Config-defaults.in > @@ -13,9 +13,6 @@ config BUSYBOX_DEFAULT_INCLUDE_SUSv2 > config BUSYBOX_DEFAULT_USE_PORTABLE_CODE > bool > default n > -config BUSYBOX_DEFAULT_PLATFORM_LINUX > - bool > - default y > config BUSYBOX_DEFAULT_SHOW_USAGE > bool > default y > @@ -82,6 +79,9 @@ config BUSYBOX_DEFAULT_FEATURE_SYSLOG > config BUSYBOX_DEFAULT_FEATURE_HAVE_RPC > bool > default n > +config BUSYBOX_DEFAULT_PLATFORM_LINUX > + bool > + default y > config BUSYBOX_DEFAULT_STATIC > bool > default n > @@ -196,9 +196,6 @@ config BUSYBOX_DEFAULT_FEATURE_FAST_TOP > config BUSYBOX_DEFAULT_FEATURE_ETC_NETWORKS > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_USE_TERMIOS > - bool > - default n > config BUSYBOX_DEFAULT_FEATURE_EDITING > bool > default y > @@ -355,6 +352,9 @@ config BUSYBOX_DEFAULT_XZ > config BUSYBOX_DEFAULT_BZIP2 > bool > default n > +config BUSYBOX_DEFAULT_FEATURE_BZIP2_DECOMPRESS > + bool > + default y > config BUSYBOX_DEFAULT_CPIO > bool > default n > @@ -382,6 +382,9 @@ config BUSYBOX_DEFAULT_GZIP_FAST > config BUSYBOX_DEFAULT_FEATURE_GZIP_LEVELS > bool > default n > +config BUSYBOX_DEFAULT_FEATURE_GZIP_DECOMPRESS > + bool > + default y > config BUSYBOX_DEFAULT_LZOP > bool > default n > @@ -403,6 +406,9 @@ config BUSYBOX_DEFAULT_RPM2CPIO > config BUSYBOX_DEFAULT_TAR > bool > default y > +config BUSYBOX_DEFAULT_FEATURE_TAR_LONG_OPTIONS > + bool > + default n > config BUSYBOX_DEFAULT_FEATURE_TAR_CREATE > bool > default y > @@ -421,9 +427,6 @@ config BUSYBOX_DEFAULT_FEATURE_TAR_OLDSUN_COMPATIBILITY > config BUSYBOX_DEFAULT_FEATURE_TAR_GNU_EXTENSIONS > bool > default y > -config BUSYBOX_DEFAULT_FEATURE_TAR_LONG_OPTIONS > - bool > - default n > config BUSYBOX_DEFAULT_FEATURE_TAR_TO_COMMAND > bool > default n > @@ -439,16 +442,25 @@ config BUSYBOX_DEFAULT_FEATURE_TAR_SELINUX > config BUSYBOX_DEFAULT_UNZIP > bool > default n > -config BUSYBOX_DEFAULT_BASENAME > +config BUSYBOX_DEFAULT_FEATURE_UNZIP_CDF > bool > - default y > -config BUSYBOX_DEFAULT_CAL > + default n > +config BUSYBOX_DEFAULT_FEATURE_UNZIP_BZIP2 > bool > default n > +config BUSYBOX_DEFAULT_FEATURE_UNZIP_LZMA > + bool > + default n > +config BUSYBOX_DEFAULT_FEATURE_UNZIP_XZ > + bool > + default n > +config BUSYBOX_DEFAULT_BASENAME > + bool > + default y > config BUSYBOX_DEFAULT_CAT > bool > default y > -config BUSYBOX_DEFAULT_CATV > +config BUSYBOX_DEFAULT_FEATURE_CATV > bool > default n > config BUSYBOX_DEFAULT_CHGRP > @@ -559,6 +571,9 @@ config BUSYBOX_DEFAULT_EXPR > config BUSYBOX_DEFAULT_EXPR_MATH_SUPPORT_64 > bool > default y > +config BUSYBOX_DEFAULT_FACTOR > + bool > + default n > config BUSYBOX_DEFAULT_FALSE > bool > default y > @@ -589,6 +604,9 @@ config BUSYBOX_DEFAULT_INSTALL > config BUSYBOX_DEFAULT_FEATURE_INSTALL_LONG_OPTIONS > bool > default n > +config BUSYBOX_DEFAULT_LINK > + bool > + default n > config BUSYBOX_DEFAULT_LN > bool > default y > @@ -607,6 +625,9 @@ config BUSYBOX_DEFAULT_FEATURE_LS_FOLLOWLINKS > config BUSYBOX_DEFAULT_FEATURE_LS_RECURSIVE > bool > default y > +config BUSYBOX_DEFAULT_FEATURE_LS_WIDTH > + bool > + default y > config BUSYBOX_DEFAULT_FEATURE_LS_SORTFILES > bool > default y > @@ -652,6 +673,9 @@ config BUSYBOX_DEFAULT_MKFIFO > config BUSYBOX_DEFAULT_MKNOD > bool > default y > +config BUSYBOX_DEFAULT_MKTEMP > + bool > + default y > config BUSYBOX_DEFAULT_MV > bool > default y > @@ -661,12 +685,21 @@ config BUSYBOX_DEFAULT_FEATURE_MV_LONG_OPTIONS > config BUSYBOX_DEFAULT_NICE > bool > default y > +config BUSYBOX_DEFAULT_NL > + bool > + default n > config BUSYBOX_DEFAULT_NOHUP > bool > default n > +config BUSYBOX_DEFAULT_NPROC > + bool > + default n > config BUSYBOX_DEFAULT_OD > bool > default n > +config BUSYBOX_DEFAULT_PASTE > + bool > + default n > config BUSYBOX_DEFAULT_PRINTENV > bool > default n > @@ -697,6 +730,9 @@ config BUSYBOX_DEFAULT_FEATURE_RMDIR_LONG_OPTIONS > config BUSYBOX_DEFAULT_SEQ > bool > default y > +config BUSYBOX_DEFAULT_SHRED > + bool > + default n > config BUSYBOX_DEFAULT_SHUF > bool > default n > @@ -769,6 +805,9 @@ config BUSYBOX_DEFAULT_TEST2 > config BUSYBOX_DEFAULT_FEATURE_TEST_64 > bool > default y > +config BUSYBOX_DEFAULT_TIMEOUT > + bool > + default n > config BUSYBOX_DEFAULT_TOUCH > bool > default y > @@ -829,6 +868,9 @@ config BUSYBOX_DEFAULT_FEATURE_WC_LARGE > config BUSYBOX_DEFAULT_WHO > bool > default n > +config BUSYBOX_DEFAULT_W > + bool > + default n > config BUSYBOX_DEFAULT_USERS > bool > default n > @@ -844,9 +886,6 @@ config BUSYBOX_DEFAULT_FEATURE_VERBOSE > config BUSYBOX_DEFAULT_FEATURE_PRESERVE_HARDLINKS > bool > default y > -config BUSYBOX_DEFAULT_FEATURE_AUTOWIDTH > - bool > - default y > config BUSYBOX_DEFAULT_FEATURE_HUMAN_READABLE > bool > default y > @@ -916,9 +955,6 @@ config BUSYBOX_DEFAULT_SETLOGCONS > config BUSYBOX_DEFAULT_SHOWKEY > bool > default n > -config BUSYBOX_DEFAULT_MKTEMP > - bool > - default y > config BUSYBOX_DEFAULT_PIPE_PROGRESS > bool > default n > @@ -934,10 +970,10 @@ config BUSYBOX_DEFAULT_FEATURE_RUN_PARTS_FANCY > config BUSYBOX_DEFAULT_START_STOP_DAEMON > bool > default y > -config BUSYBOX_DEFAULT_FEATURE_START_STOP_DAEMON_FANCY > +config BUSYBOX_DEFAULT_FEATURE_START_STOP_DAEMON_LONG_OPTIONS > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_START_STOP_DAEMON_LONG_OPTIONS > +config BUSYBOX_DEFAULT_FEATURE_START_STOP_DAEMON_FANCY > bool > default n > config BUSYBOX_DEFAULT_WHICH > @@ -1174,7 +1210,7 @@ config BUSYBOX_DEFAULT_FEATURE_INIT_SCTTY > config BUSYBOX_DEFAULT_FEATURE_INIT_SYSLOG > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_EXTRA_QUIET > +config BUSYBOX_DEFAULT_FEATURE_INIT_QUIET > bool > default n > config BUSYBOX_DEFAULT_FEATURE_INIT_COREDUMPS > @@ -1186,12 +1222,6 @@ config BUSYBOX_DEFAULT_INIT_TERMINAL_TYPE > config BUSYBOX_DEFAULT_FEATURE_INIT_MODIFY_CMDLINE > bool > default n > -config BUSYBOX_DEFAULT_MESG > - bool > - default n > -config BUSYBOX_DEFAULT_FEATURE_MESG_ENABLE_ONLY_GROUP > - bool > - default n > config BUSYBOX_DEFAULT_FEATURE_SHADOWPASSWDS > bool > default y > @@ -1294,6 +1324,9 @@ config BUSYBOX_DEFAULT_FEATURE_SU_SYSLOG > config BUSYBOX_DEFAULT_FEATURE_SU_CHECKS_SHELLS > bool > default n > +config BUSYBOX_DEFAULT_FEATURE_SU_BLANK_PW_NEEDS_SECURE_TTY > + bool > + default n > config BUSYBOX_DEFAULT_SULOGIN > bool > default n > @@ -1330,12 +1363,6 @@ config BUSYBOX_DEFAULT_FEATURE_LSMOD_PRETTY_2_6_OUTPUT > config BUSYBOX_DEFAULT_MODINFO > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE > - bool > - default n > -config BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED > - bool > - default n > config BUSYBOX_DEFAULT_MODPROBE > bool > default n > @@ -1345,10 +1372,13 @@ config BUSYBOX_DEFAULT_FEATURE_MODPROBE_BLACKLIST > config BUSYBOX_DEFAULT_RMMOD > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_2_4_MODULES > +config BUSYBOX_DEFAULT_FEATURE_CMDLINE_MODULE_OPTIONS > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_INSMOD_TRY_MMAP > +config BUSYBOX_DEFAULT_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED > + bool > + default n > +config BUSYBOX_DEFAULT_FEATURE_2_4_MODULES > bool > default n > config BUSYBOX_DEFAULT_FEATURE_INSMOD_VERSION_CHECKING > @@ -1369,6 +1399,9 @@ config BUSYBOX_DEFAULT_FEATURE_INSMOD_LOAD_MAP_FULL > config BUSYBOX_DEFAULT_FEATURE_CHECK_TAINTED_MODULE > bool > default n > +config BUSYBOX_DEFAULT_FEATURE_INSMOD_TRY_MMAP > + bool > + default n > config BUSYBOX_DEFAULT_FEATURE_MODUTILS_ALIAS > bool > default n > @@ -1399,12 +1432,27 @@ config BUSYBOX_DEFAULT_FEATURE_BLKID_TYPE > config BUSYBOX_DEFAULT_BLOCKDEV > bool > default n > +config BUSYBOX_DEFAULT_CAL > + bool > + default n > +config BUSYBOX_DEFAULT_CHRT > + bool > + default n > config BUSYBOX_DEFAULT_DMESG > bool > default y > config BUSYBOX_DEFAULT_FEATURE_DMESG_PRETTY > bool > default y > +config BUSYBOX_DEFAULT_EJECT > + bool > + default n > +config BUSYBOX_DEFAULT_FEATURE_EJECT_SCSI > + bool > + default n > +config BUSYBOX_DEFAULT_FALLOCATE > + bool > + default n > config BUSYBOX_DEFAULT_FATATTR > bool > default n > @@ -1462,6 +1510,9 @@ config BUSYBOX_DEFAULT_FREERAMDISK > config BUSYBOX_DEFAULT_FSCK_MINIX > bool > default n > +config BUSYBOX_DEFAULT_FSFREEZE > + bool > + default n > config BUSYBOX_DEFAULT_FSTRIM > bool > default n > @@ -1480,6 +1531,9 @@ config BUSYBOX_DEFAULT_FEATURE_HEXDUMP_REVERSE > config BUSYBOX_DEFAULT_HD > bool > default n > +config BUSYBOX_DEFAULT_XXD > + bool > + default n > config BUSYBOX_DEFAULT_HWCLOCK > bool > default y > @@ -1489,12 +1543,21 @@ config BUSYBOX_DEFAULT_FEATURE_HWCLOCK_LONG_OPTIONS > config BUSYBOX_DEFAULT_FEATURE_HWCLOCK_ADJTIME_FHS > bool > default n > +config BUSYBOX_DEFAULT_IONICE > + bool > + default n > config BUSYBOX_DEFAULT_IPCRM > bool > default n > config BUSYBOX_DEFAULT_IPCS > bool > default n > +config BUSYBOX_DEFAULT_LAST > + bool > + default n > +config BUSYBOX_DEFAULT_FEATURE_LAST_FANCY > + bool > + default n > config BUSYBOX_DEFAULT_LOSETUP > bool > default n > @@ -1522,6 +1585,12 @@ config BUSYBOX_DEFAULT_FEATURE_MDEV_EXEC > config BUSYBOX_DEFAULT_FEATURE_MDEV_LOAD_FIRMWARE > bool > default n > +config BUSYBOX_DEFAULT_MESG > + bool > + default n > +config BUSYBOX_DEFAULT_FEATURE_MESG_ENABLE_ONLY_GROUP > + bool > + default n > config BUSYBOX_DEFAULT_MKE2FS > bool > default n > @@ -1582,6 +1651,9 @@ config BUSYBOX_DEFAULT_FEATURE_MOUNT_FSTAB > config BUSYBOX_DEFAULT_FEATURE_MOUNT_OTHERTAB > bool > default n > +config BUSYBOX_DEFAULT_MOUNTPOINT > + bool > + default n > config BUSYBOX_DEFAULT_NSENTER > bool > default n > @@ -1600,6 +1672,9 @@ config BUSYBOX_DEFAULT_RDEV > config BUSYBOX_DEFAULT_READPROFILE > bool > default n > +config BUSYBOX_DEFAULT_RENICE > + bool > + default n > config BUSYBOX_DEFAULT_REV > bool > default n > @@ -1621,6 +1696,12 @@ config BUSYBOX_DEFAULT_LINUX32 > config BUSYBOX_DEFAULT_LINUX64 > bool > default n > +config BUSYBOX_DEFAULT_SETPRIV > + bool > + default n > +config BUSYBOX_DEFAULT_SETSID > + bool > + default n > config BUSYBOX_DEFAULT_SWAPON > bool > default n > @@ -1636,6 +1717,12 @@ config BUSYBOX_DEFAULT_SWAPOFF > config BUSYBOX_DEFAULT_SWITCH_ROOT > bool > default y > +config BUSYBOX_DEFAULT_TASKSET > + bool > + default n > +config BUSYBOX_DEFAULT_FEATURE_TASKSET_FANCY > + bool > + default n > config BUSYBOX_DEFAULT_UEVENT > bool > default n > @@ -1648,6 +1735,9 @@ config BUSYBOX_DEFAULT_FEATURE_UMOUNT_ALL > config BUSYBOX_DEFAULT_UNSHARE > bool > default n > +config BUSYBOX_DEFAULT_WALL > + bool > + default n > config BUSYBOX_DEFAULT_FEATURE_MOUNT_LOOP > bool > default y > @@ -1771,9 +1861,6 @@ config BUSYBOX_DEFAULT_FEATURE_CHAT_VAR_ABORT_LEN > config BUSYBOX_DEFAULT_FEATURE_CHAT_CLR_ABORT > bool > default n > -config BUSYBOX_DEFAULT_CHRT > - bool > - default n > config BUSYBOX_DEFAULT_CONSPY > bool > default n > @@ -1816,12 +1903,6 @@ config BUSYBOX_DEFAULT_FEATURE_DEVFS > config BUSYBOX_DEFAULT_DEVMEM > bool > default n > -config BUSYBOX_DEFAULT_EJECT > - bool > - default n > -config BUSYBOX_DEFAULT_FEATURE_EJECT_SCSI > - bool > - default n > config BUSYBOX_DEFAULT_FBSPLASH > bool > default n > @@ -1873,15 +1954,6 @@ config BUSYBOX_DEFAULT_I2CDETECT > config BUSYBOX_DEFAULT_INOTIFYD > bool > default n > -config BUSYBOX_DEFAULT_IONICE > - bool > - default n > -config BUSYBOX_DEFAULT_LAST > - bool > - default n > -config BUSYBOX_DEFAULT_FEATURE_LAST_FANCY > - bool > - default n > config BUSYBOX_DEFAULT_LESS > bool > default y > @@ -1918,6 +1990,9 @@ config BUSYBOX_DEFAULT_FEATURE_LESS_LINENUMS > config BUSYBOX_DEFAULT_LOCK > bool > default y > +config BUSYBOX_DEFAULT_LSSCSI > + bool > + default n > config BUSYBOX_DEFAULT_MAKEDEVS > bool > default n > @@ -1933,9 +2008,6 @@ config BUSYBOX_DEFAULT_MAN > config BUSYBOX_DEFAULT_MICROCOM > bool > default n > -config BUSYBOX_DEFAULT_MOUNTPOINT > - bool > - default n > config BUSYBOX_DEFAULT_MT > bool > default n > @@ -1945,6 +2017,9 @@ config BUSYBOX_DEFAULT_NANDWRITE > config BUSYBOX_DEFAULT_NANDDUMP > bool > default n > +config BUSYBOX_DEFAULT_PARTPROBE > + bool > + default n > config BUSYBOX_DEFAULT_RAIDAUTORUN > bool > default n > @@ -1963,24 +2038,12 @@ config BUSYBOX_DEFAULT_RX > config BUSYBOX_DEFAULT_SETSERIAL > bool > default n > -config BUSYBOX_DEFAULT_SETSID > - bool > - default n > config BUSYBOX_DEFAULT_STRINGS > bool > default y > -config BUSYBOX_DEFAULT_TASKSET > - bool > - default n > -config BUSYBOX_DEFAULT_FEATURE_TASKSET_FANCY > - bool > - default n > config BUSYBOX_DEFAULT_TIME > bool > default y > -config BUSYBOX_DEFAULT_TIMEOUT > - bool > - default n > config BUSYBOX_DEFAULT_TTYSIZE > bool > default n > @@ -2008,9 +2071,6 @@ config BUSYBOX_DEFAULT_UBIRENAME > config BUSYBOX_DEFAULT_VOLNAME > bool > default n > -config BUSYBOX_DEFAULT_WALL > - bool > - default n > config BUSYBOX_DEFAULT_WATCHDOG > bool > default n > @@ -2227,10 +2287,10 @@ config BUSYBOX_DEFAULT_FEATURE_IP_RARE_PROTOCOLS > config BUSYBOX_DEFAULT_IPCALC > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_IPCALC_FANCY > +config BUSYBOX_DEFAULT_FEATURE_IPCALC_LONG_OPTIONS > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_IPCALC_LONG_OPTIONS > +config BUSYBOX_DEFAULT_FEATURE_IPCALC_FANCY > bool > default n > config BUSYBOX_DEFAULT_FAKEIDENTD > @@ -2275,6 +2335,9 @@ config BUSYBOX_DEFAULT_NSLOOKUP > config BUSYBOX_DEFAULT_NSLOOKUP_LEDE > bool > default y > +config BUSYBOX_DEFAULT_FEATURE_NSLOOKUP_LEDE_LONG_OPTIONS > + bool > + default n > config BUSYBOX_DEFAULT_NTPD > bool > default y > @@ -2302,6 +2365,9 @@ config BUSYBOX_DEFAULT_ROUTE > config BUSYBOX_DEFAULT_SLATTACH > bool > default n > +config BUSYBOX_DEFAULT_SSL_CLIENT > + bool > + default n > config BUSYBOX_DEFAULT_TCPSVD > bool > default n > @@ -2317,6 +2383,9 @@ config BUSYBOX_DEFAULT_FEATURE_TELNET_TTYPE > config BUSYBOX_DEFAULT_FEATURE_TELNET_AUTOLOGIN > bool > default n > +config BUSYBOX_DEFAULT_FEATURE_TELNET_WIDTH > + bool > + default n > config BUSYBOX_DEFAULT_TELNETD > bool > default n > @@ -2347,6 +2416,9 @@ config BUSYBOX_DEFAULT_FEATURE_TFTP_PROGRESS_BAR > config BUSYBOX_DEFAULT_TFTP_DEBUG > bool > default n > +config BUSYBOX_DEFAULT_TLS > + bool > + default n > config BUSYBOX_DEFAULT_TRACEROUTE > bool > default y > @@ -2371,22 +2443,22 @@ config BUSYBOX_DEFAULT_VCONFIG > config BUSYBOX_DEFAULT_WGET > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_WGET_STATUSBAR > +config BUSYBOX_DEFAULT_FEATURE_WGET_LONG_OPTIONS > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_WGET_AUTHENTICATION > +config BUSYBOX_DEFAULT_FEATURE_WGET_STATUSBAR > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_WGET_LONG_OPTIONS > +config BUSYBOX_DEFAULT_FEATURE_WGET_AUTHENTICATION > bool > default n > config BUSYBOX_DEFAULT_FEATURE_WGET_TIMEOUT > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_WGET_OPENSSL > +config BUSYBOX_DEFAULT_FEATURE_WGET_HTTPS > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_WGET_SSL_HELPER > +config BUSYBOX_DEFAULT_FEATURE_WGET_OPENSSL > bool > default n > config BUSYBOX_DEFAULT_WHOIS > @@ -2398,13 +2470,16 @@ config BUSYBOX_DEFAULT_ZCIP > config BUSYBOX_DEFAULT_UDHCPC6 > bool > default n > -config BUSYBOX_DEFAULT_UDHCPD > +config BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC3646 > bool > default n > -config BUSYBOX_DEFAULT_DHCPRELAY > +config BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC4704 > bool > default n > -config BUSYBOX_DEFAULT_DUMPLEASES > +config BUSYBOX_DEFAULT_FEATURE_UDHCPC6_RFC4833 > + bool > + default n > +config BUSYBOX_DEFAULT_UDHCPD > bool > default n > config BUSYBOX_DEFAULT_FEATURE_UDHCPD_WRITE_LEASES_EARLY > @@ -2416,6 +2491,12 @@ config BUSYBOX_DEFAULT_FEATURE_UDHCPD_BASE_IP_ON_MAC > config BUSYBOX_DEFAULT_DHCPD_LEASES_FILE > string > default "" > +config BUSYBOX_DEFAULT_DUMPLEASES > + bool > + default n > +config BUSYBOX_DEFAULT_DHCPRELAY > + bool > + default n > config BUSYBOX_DEFAULT_UDHCPC > bool > default y > @@ -2425,6 +2506,9 @@ config BUSYBOX_DEFAULT_FEATURE_UDHCPC_ARPING > config BUSYBOX_DEFAULT_FEATURE_UDHCPC_SANITIZEOPT > bool > default n > +config BUSYBOX_DEFAULT_UDHCPC_DEFAULT_SCRIPT > + string > + default "/usr/share/udhcpc/default.script" > config BUSYBOX_DEFAULT_FEATURE_UDHCP_PORT > bool > default n > @@ -2437,9 +2521,6 @@ config BUSYBOX_DEFAULT_FEATURE_UDHCP_RFC3397 > config BUSYBOX_DEFAULT_FEATURE_UDHCP_8021Q > bool > default n > -config BUSYBOX_DEFAULT_UDHCPC_DEFAULT_SCRIPT > - string > - default "/usr/share/udhcpc/default.script" > config BUSYBOX_DEFAULT_UDHCPC_SLACK_FOR_BUGGY_SERVERS > int > default 80 > @@ -2524,6 +2605,9 @@ config BUSYBOX_DEFAULT_PMAP > config BUSYBOX_DEFAULT_POWERTOP > bool > default n > +config BUSYBOX_DEFAULT_FEATURE_POWERTOP_INTERACTIVE > + bool > + default n > config BUSYBOX_DEFAULT_PS > bool > default y > @@ -2536,10 +2620,10 @@ config BUSYBOX_DEFAULT_FEATURE_PS_LONG > config BUSYBOX_DEFAULT_FEATURE_PS_TIME > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_PS_ADDITIONAL_COLUMNS > +config BUSYBOX_DEFAULT_FEATURE_PS_UNUSUAL_SYSTEMS > bool > default n > -config BUSYBOX_DEFAULT_FEATURE_PS_UNUSUAL_SYSTEMS > +config BUSYBOX_DEFAULT_FEATURE_PS_ADDITIONAL_COLUMNS > bool > default n > config BUSYBOX_DEFAULT_PSTREE > @@ -2548,9 +2632,6 @@ config BUSYBOX_DEFAULT_PSTREE > config BUSYBOX_DEFAULT_PWDX > bool > default n > -config BUSYBOX_DEFAULT_RENICE > - bool > - default n > config BUSYBOX_DEFAULT_SMEMCAP > bool > default n > @@ -2560,6 +2641,9 @@ config BUSYBOX_DEFAULT_BB_SYSCTL > config BUSYBOX_DEFAULT_TOP > bool > default y > +config BUSYBOX_DEFAULT_FEATURE_TOP_INTERACTIVE > + bool > + default n > config BUSYBOX_DEFAULT_FEATURE_TOP_CPU_USAGE_PERCENTAGE > bool > default y > @@ -2698,45 +2782,45 @@ config BUSYBOX_DEFAULT_ASH_OPTIMIZE_FOR_SIZE > config BUSYBOX_DEFAULT_ASH_INTERNAL_GLOB > bool > default y > -config BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT > - bool > - default n > -config BUSYBOX_DEFAULT_ASH_EXPAND_PRMT > - bool > - default y > config BUSYBOX_DEFAULT_ASH_BASH_COMPAT > bool > default y > -config BUSYBOX_DEFAULT_ASH_IDLE_TIMEOUT > - bool > - default n > config BUSYBOX_DEFAULT_ASH_JOB_CONTROL > bool > default y > config BUSYBOX_DEFAULT_ASH_ALIAS > bool > default y > -config BUSYBOX_DEFAULT_ASH_GETOPTS > +config BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT > + bool > + default n > +config BUSYBOX_DEFAULT_ASH_EXPAND_PRMT > bool > default y > -config BUSYBOX_DEFAULT_ASH_BUILTIN_ECHO > +config BUSYBOX_DEFAULT_ASH_IDLE_TIMEOUT > + bool > + default n > +config BUSYBOX_DEFAULT_ASH_MAIL > + bool > + default n > +config BUSYBOX_DEFAULT_ASH_ECHO > bool > default y > -config BUSYBOX_DEFAULT_ASH_BUILTIN_PRINTF > +config BUSYBOX_DEFAULT_ASH_PRINTF > bool > default y > -config BUSYBOX_DEFAULT_ASH_BUILTIN_TEST > +config BUSYBOX_DEFAULT_ASH_TEST > bool > default y > config BUSYBOX_DEFAULT_ASH_HELP > bool > default n > -config BUSYBOX_DEFAULT_ASH_CMDCMD > +config BUSYBOX_DEFAULT_ASH_GETOPTS > bool > default y > -config BUSYBOX_DEFAULT_ASH_MAIL > +config BUSYBOX_DEFAULT_ASH_CMDCMD > bool > - default n > + default y > config BUSYBOX_DEFAULT_CTTYHACK > bool > default n > @@ -2749,9 +2833,6 @@ config BUSYBOX_DEFAULT_HUSH_BASH_COMPAT > config BUSYBOX_DEFAULT_HUSH_BRACE_EXPANSION > bool > default n > -config BUSYBOX_DEFAULT_HUSH_HELP > - bool > - default n > config BUSYBOX_DEFAULT_HUSH_INTERACTIVE > bool > default n > @@ -2782,10 +2863,55 @@ config BUSYBOX_DEFAULT_HUSH_LOCAL > config BUSYBOX_DEFAULT_HUSH_RANDOM_SUPPORT > bool > default n > +config BUSYBOX_DEFAULT_HUSH_MODE_X > + bool > + default n > +config BUSYBOX_DEFAULT_HUSH_ECHO > + bool > + default n > +config BUSYBOX_DEFAULT_HUSH_PRINTF > + bool > + default n > +config BUSYBOX_DEFAULT_HUSH_TEST > + bool > + default n > +config BUSYBOX_DEFAULT_HUSH_HELP > + bool > + default n > +config BUSYBOX_DEFAULT_HUSH_EXPORT > + bool > + default n > config BUSYBOX_DEFAULT_HUSH_EXPORT_N > bool > default n > -config BUSYBOX_DEFAULT_HUSH_MODE_X > +config BUSYBOX_DEFAULT_HUSH_KILL > + bool > + default n > +config BUSYBOX_DEFAULT_HUSH_WAIT > + bool > + default n > +config BUSYBOX_DEFAULT_HUSH_TRAP > + bool > + default n > +config BUSYBOX_DEFAULT_HUSH_TYPE > + bool > + default n > +config BUSYBOX_DEFAULT_HUSH_READ > + bool > + default n > +config BUSYBOX_DEFAULT_HUSH_SET > + bool > + default n > +config BUSYBOX_DEFAULT_HUSH_UNSET > + bool > + default n > +config BUSYBOX_DEFAULT_HUSH_ULIMIT > + bool > + default n > +config BUSYBOX_DEFAULT_HUSH_UMASK > + bool > + default n > +config BUSYBOX_DEFAULT_HUSH_MEMLEAK > bool > default n > config BUSYBOX_DEFAULT_MSH > diff --git a/package/utils/busybox/Makefile b/package/utils/busybox/Makefile > index ebc824e435..653d09ca47 100644 > --- a/package/utils/busybox/Makefile > +++ b/package/utils/busybox/Makefile > @@ -8,14 +8,14 @@ > include $(TOPDIR)/rules.mk > > PKG_NAME:=busybox > -PKG_VERSION:=1.26.2 > -PKG_RELEASE:=7 > +PKG_VERSION:=1.27.1 > +PKG_RELEASE:=1 > PKG_FLAGS:=essential > > PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 > PKG_SOURCE_URL:=https://www.busybox.net/downloads \ > http://sources.buildroot.net > -PKG_HASH:=da3e44913fc1a9c9b7c5337ea5292da518683cbff32be630777f565d6036af16 > +PKG_HASH:=c890ac53fb218eb4c6ad9ed3207a896783b142e6d306f292b8d9bec82af5f936 > > PKG_BUILD_DEPENDS:=BUSYBOX_USE_LIBRPC:librpc BUSYBOX_CONFIG_PAM:libpam > PKG_BUILD_PARALLEL:=1 > diff --git a/package/utils/busybox/config/Config.in > b/package/utils/busybox/config/Config.in > index 3ee3aa2f47..ebcf526428 100644 > --- a/package/utils/busybox/config/Config.in > +++ b/package/utils/busybox/config/Config.in > @@ -49,17 +49,6 @@ config BUSYBOX_CONFIG_USE_PORTABLE_CODE > compiler other than gcc. > If you do use gcc, this option may needlessly increase code size. > > -config BUSYBOX_CONFIG_PLATFORM_LINUX > - bool "Enable Linux-specific applets and features" > - default BUSYBOX_DEFAULT_PLATFORM_LINUX > - help > - For the most part, busybox requires only POSIX compatibility > - from the target system, but some applets and features use > - Linux-specific interfaces. > - > - Answering 'N' here will disable such applets and hide the > - corresponding configuration options. > - > config BUSYBOX_CONFIG_SHOW_USAGE > bool "Show applet usage messages" > default BUSYBOX_DEFAULT_SHOW_USAGE > @@ -123,14 +112,14 @@ config BUSYBOX_CONFIG_INSTALL_NO_USR > never to /usr/bin or /usr/sbin. > > config BUSYBOX_CONFIG_PAM > - bool "Support for PAM (Pluggable Authentication Modules)" > + bool "Support PAM (Pluggable Authentication Modules)" > default BUSYBOX_DEFAULT_PAM > help > Use PAM in some busybox applets (currently login and httpd) instead > of direct access to password database. > > config BUSYBOX_CONFIG_LONG_OPTS > - bool "Support for --long-options" > + bool "Support --long-options" > default BUSYBOX_DEFAULT_LONG_OPTS > help > Enable this if you want busybox applets to use the gnu --long-option > @@ -197,7 +186,7 @@ config BUSYBOX_CONFIG_PID_FILE_PATH > specify a pidfile path. > > config BUSYBOX_CONFIG_FEATURE_SUID > - bool "Support for SUID/SGID handling" > + bool "Support SUID/SGID handling" > default BUSYBOX_DEFAULT_FEATURE_SUID > help > With this option you can install the busybox binary belonging > @@ -337,6 +326,17 @@ config BUSYBOX_CONFIG_FEATURE_HAVE_RPC > # This is automatically selected if any of enabled applets need it. > # You do not need to select it manually. > > +config BUSYBOX_CONFIG_PLATFORM_LINUX > + bool #No description makes it a hidden option > + default BUSYBOX_DEFAULT_PLATFORM_LINUX > + #help > + # For the most part, busybox requires only POSIX compatibility > + # from the target system, but some applets and features use > + # Linux-specific interfaces. > + # > + # This is automatically selected if any applet or feature requires > + # Linux-specific interfaces. You do not need to select it manually. > + > comment 'Build Options' > > config BUSYBOX_CONFIG_STATIC > @@ -610,6 +610,8 @@ config BUSYBOX_CONFIG_DEBUG_SANITIZE > catch bad memory accesses (e.g. buffer overflows), but will make > the executable larger and slow down runtime a bit. > > + This adds -fsanitize=foo options to gcc command line. > + > If you aren't developing/testing busybox, say N here. > > config BUSYBOX_CONFIG_UNIT_TEST > @@ -624,7 +626,7 @@ config BUSYBOX_CONFIG_WERROR > bool "Abort compilation on any warning" > default BUSYBOX_DEFAULT_WERROR > help > - Selecting this will add -Werror to gcc command line. > + This adds -Werror to gcc command line. > > Most people should answer N. > > diff --git a/package/utils/busybox/patches/120-remove_uclibc_rpc_check.patch > b/package/utils/busybox/patches/120-remove_uclibc_rpc_check.patch > index 682a68eebd..1f5b10859b 100644 > --- a/package/utils/busybox/patches/120-remove_uclibc_rpc_check.patch > +++ b/package/utils/busybox/patches/120-remove_uclibc_rpc_check.patch > @@ -1,11 +1,12 @@ > --- a/util-linux/mount.c > +++ b/util-linux/mount.c > -@@ -245,9 +245,6 @@ > +@@ -245,10 +245,6 @@ > #if ENABLE_FEATURE_MOUNT_NFS > /* This is just a warning of a common mistake. Possibly this should be a > * uclibc faq entry rather than in busybox... */ > -# if defined(__UCLIBC__) && ! defined(__UCLIBC_HAS_RPC__) > --# error "You need to build uClibc with UCLIBC_HAS_RPC for NFS support" > +-# warning "You probably need to build uClibc with UCLIBC_HAS_RPC for NFS > support" > +- /* not #error, since user may be using e.g. libtirpc instead */ > -# endif > # include <rpc/rpc.h> > # include <rpc/pmap_prot.h> > diff --git a/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch > b/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch > index 8ef8f2211b..5f64c19d05 100644 > --- a/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch > +++ b/package/utils/busybox/patches/200-udhcpc_reduce_msgs.patch > @@ -1,6 +1,6 @@ > --- a/networking/udhcp/dhcpc.c > +++ b/networking/udhcp/dhcpc.c > -@@ -704,6 +704,7 @@ static int bcast_or_ucast(struct dhcp_pa > +@@ -706,6 +706,7 @@ static int bcast_or_ucast(struct dhcp_pa > static NOINLINE int send_discover(uint32_t xid, uint32_t requested) > { > struct dhcp_packet packet; > @@ -8,7 +8,7 @@ > > /* Fill in: op, htype, hlen, cookie, chaddr fields, > * random xid field (we override it below), > -@@ -721,6 +722,7 @@ static NOINLINE int send_discover(uint32 > +@@ -723,6 +724,7 @@ static NOINLINE int send_discover(uint32 > */ > add_client_options(&packet); > > diff --git a/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch > b/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch > index f5e3a075ae..727f69409c 100644 > --- a/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch > +++ b/package/utils/busybox/patches/201-udhcpc_changed_ifindex.patch > @@ -1,6 +1,6 @@ > --- a/networking/udhcp/dhcpc.c > +++ b/networking/udhcp/dhcpc.c > -@@ -1439,6 +1439,12 @@ int udhcpc_main(int argc UNUSED_PARAM, c > +@@ -1442,6 +1442,12 @@ int udhcpc_main(int argc UNUSED_PARAM, c > /* silence "uninitialized!" warning */ > unsigned timestamp_before_wait = timestamp_before_wait; > > diff --git a/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch > b/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch > index 3df8d930b1..7b77d2970b 100644 > --- a/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch > +++ b/package/utils/busybox/patches/203-udhcpc_renew_no_deconfig.patch > @@ -1,6 +1,6 @@ > --- a/networking/udhcp/dhcpc.c > +++ b/networking/udhcp/dhcpc.c > -@@ -1110,7 +1110,6 @@ static void perform_renew(void) > +@@ -1112,7 +1112,6 @@ static void perform_renew(void) > state = RENEW_REQUESTED; > break; > case RENEW_REQUESTED: /* impatient are we? fine, square 1 */ > diff --git > a/package/utils/busybox/patches/301-ip-link-fix-netlink-msg-size.patch > b/package/utils/busybox/patches/301-ip-link-fix-netlink-msg-size.patch > index 360324bf7c..ca76c44cc8 100644 > --- a/package/utils/busybox/patches/301-ip-link-fix-netlink-msg-size.patch > +++ b/package/utils/busybox/patches/301-ip-link-fix-netlink-msg-size.patch > @@ -1,6 +1,6 @@ > --- a/networking/libiproute/iplink.c > +++ b/networking/libiproute/iplink.c > -@@ -470,7 +470,7 @@ static int do_add_or_delete(char **argv, > +@@ -598,7 +598,7 @@ static int do_add_or_delete(char **argv, > } > xrtnl_open(&rth); > ll_init_map(&rth); > diff --git > a/package/utils/busybox/patches/302-ip-rule-add-suppress-prefixlength.patch > b/package/utils/busybox/patches/302-ip-rule-add-suppress-prefixlength.patch > deleted file mode 100644 > index 7b4797505e..0000000000 > --- > a/package/utils/busybox/patches/302-ip-rule-add-suppress-prefixlength.patch > +++ /dev/null > @@ -1,145 +0,0 @@ > -From dbac30c3784c267bbe44a2a3ebed4e827c8fe82a Mon Sep 17 00:00:00 2001 > -From: Stefan Tomanek <stefan.toma...@wertarbyte.de> > -Date: Tue, 13 Jun 2017 19:06:09 +0200 > -Subject: [PATCH] ip rule: add suppress_{prefixlength,ifgroup} options > - > -(cherry-picked from 192dce4b84fb32346ebc5194de7daa5da3b8d1b4) > - > -function old new delta > -iprule_modify 816 887 +71 > -print_rule 610 680 +70 > ------------------------------------------------------------------------------- > -(add/remove: 0/0 grow/shrink: 2/0 up/down: 141/0) Total: 141 > bytes > - > -Signed-off-by: Stefan Tomanek <stefan.toma...@wertarbyte.de> > -Signed-off-by: Denys Vlasenko <vda.li...@googlemail.com> > ---- > - networking/libiproute/iprule.c | 73 > ++++++++++++++++++++++++++---------------- > - 1 file changed, 46 insertions(+), 27 deletions(-) > - > ---- a/networking/libiproute/iprule.c > -+++ b/networking/libiproute/iprule.c > -@@ -17,25 +17,32 @@ > - #include <netinet/ip.h> > - #include <arpa/inet.h> > - > -+/* from <linux/fib_rules.h>: */ > -+#define FRA_SUPPRESS_IFGROUP 13 > -+#define FRA_SUPPRESS_PREFIXLEN 14 > -+ > - #include "ip_common.h" /* #include "libbb.h" is inside */ > - #include "rt_names.h" > - #include "utils.h" > - > --/* > --static void usage(void) __attribute__((noreturn)); > -- > --static void usage(void) > --{ > -- fprintf(stderr, "Usage: ip rule [ list | add | del ] SELECTOR > ACTION\n"); > -- fprintf(stderr, "SELECTOR := [ from PREFIX ] [ to PREFIX ] [ tos TOS ] > [ fwmark FWMARK ]\n"); > -- fprintf(stderr, " [ dev STRING ] [ pref NUMBER ]\n"); > -- fprintf(stderr, "ACTION := [ table TABLE_ID ] [ nat ADDRESS ]\n"); > -- fprintf(stderr, " [ prohibit | reject | unreachable ]\n"); > -- fprintf(stderr, " [ realms [SRCREALM/]DSTREALM ]\n"); > -- fprintf(stderr, "TABLE_ID := [ local | main | default | NUMBER ]\n"); > -- exit(-1); > --} > --*/ > -+/* If you add stuff here, update iprule_full_usage */ > -+static const char keywords[] ALIGN1 = > -+ "from\0""to\0""preference\0""order\0""priority\0" > -+ "tos\0""fwmark\0""realms\0""table\0""lookup\0" > -+ "suppress_prefixlength\0""suppress_ifgroup\0" > -+ "dev\0""iif\0""nat\0""map-to\0""type\0""help\0" > -+ ; > -+#define keyword_preference (keywords + sizeof("from") > + sizeof("to")) > -+#define keyword_fwmark (keyword_preference + > sizeof("preference") + sizeof("order") + sizeof("priority") + sizeof("tos")) > -+#define keyword_realms (keyword_fwmark + > sizeof("fwmark")) > -+#define keyword_suppress_prefixlength (keyword_realms + > sizeof("realms") + sizeof("table") + sizeof("lookup")) > -+#define keyword_suppress_ifgroup (keyword_suppress_prefixlength + > sizeof("suppress_prefixlength")) > -+enum { > -+ ARG_from = 1, ARG_to, ARG_preference, ARG_order, ARG_priority, > -+ ARG_tos, ARG_fwmark, ARG_realms, ARG_table, ARG_lookup, > -+ ARG_suppress_prefixlength, ARG_suppress_ifgroup, > -+ ARG_dev, ARG_iif, ARG_nat, ARG_map_to, ARG_type, ARG_help, > -+}; > - > - static int FAST_FUNC print_rule(const struct sockaddr_nl *who UNUSED_PARAM, > - struct nlmsghdr *n, void *arg > UNUSED_PARAM) > -@@ -119,6 +126,17 @@ static int FAST_FUNC print_rule(const st > - else if (r->rtm_table) > - printf("lookup %s ", rtnl_rttable_n2a(r->rtm_table)); > - > -+ if (tb[FRA_SUPPRESS_PREFIXLEN]) { > -+ int pl = *(uint32_t*)RTA_DATA(tb[FRA_SUPPRESS_PREFIXLEN]); > -+ if (pl != -1) > -+ printf("%s %d ", keyword_suppress_prefixlength, pl); > -+ } > -+ if (tb[FRA_SUPPRESS_IFGROUP]) { > -+ int grp = *(uint32_t*)RTA_DATA(tb[FRA_SUPPRESS_IFGROUP]); > -+ if (grp != -1) > -+ printf("%s %d ", keyword_suppress_ifgroup, grp); > -+ } > -+ > - if (tb[RTA_FLOW]) { > - uint32_t to = *(uint32_t*)RTA_DATA(tb[RTA_FLOW]); > - uint32_t from = to>>16; > -@@ -174,15 +192,6 @@ static int iprule_list(char **argv) > - /* Return value becomes exitcode. It's okay to not return at all */ > - static int iprule_modify(int cmd, char **argv) > - { > -- static const char keywords[] ALIGN1 = > -- "from\0""to\0""preference\0""order\0""priority\0" > -- "tos\0""fwmark\0""realms\0""table\0""lookup\0""dev\0" > -- "iif\0""nat\0""map-to\0""type\0""help\0"; > -- enum { > -- ARG_from = 1, ARG_to, ARG_preference, ARG_order, ARG_priority, > -- ARG_tos, ARG_fwmark, ARG_realms, ARG_table, ARG_lookup, ARG_dev, > -- ARG_iif, ARG_nat, ARG_map_to, ARG_type, ARG_help > -- }; > - bool table_ok = 0; > - struct rtnl_handle rth; > - struct { > -@@ -232,7 +241,7 @@ static int iprule_modify(int cmd, char * > - ) { > - uint32_t pref; > - NEXT_ARG(); > -- pref = get_u32(*argv, "preference"); > -+ pref = get_u32(*argv, keyword_preference); > - addattr32(&req.n, sizeof(req), RTA_PRIORITY, pref); > - } else if (key == ARG_tos) { > - uint32_t tos; > -@@ -243,13 +252,13 @@ static int iprule_modify(int cmd, char * > - } else if (key == ARG_fwmark) { > - uint32_t fwmark; > - NEXT_ARG(); > -- fwmark = get_u32(*argv, "fwmark"); > -+ fwmark = get_u32(*argv, keyword_fwmark); > - addattr32(&req.n, sizeof(req), RTA_PROTOINFO, fwmark); > - } else if (key == ARG_realms) { > - uint32_t realm; > - NEXT_ARG(); > - if (get_rt_realms(&realm, *argv)) > -- invarg_1_to_2(*argv, "realms"); > -+ invarg_1_to_2(*argv, keyword_realms); > - addattr32(&req.n, sizeof(req), RTA_FLOW, realm); > - } else if (key == ARG_table || > - key == ARG_lookup > -@@ -265,6 +274,16 @@ static int iprule_modify(int cmd, char * > - addattr32(&req.n, sizeof(req), RTA_TABLE, tid); > - } > - table_ok = 1; > -+ } else if (key == ARG_suppress_prefixlength) { > -+ int prefix_length; > -+ NEXT_ARG(); > -+ prefix_length = get_u32(*argv, > keyword_suppress_prefixlength); > -+ addattr32(&req.n, sizeof(req), FRA_SUPPRESS_PREFIXLEN, > prefix_length); > -+ } else if (key == ARG_suppress_ifgroup) { > -+ int grp; > -+ NEXT_ARG(); > -+ grp = get_u32(*argv, keyword_suppress_ifgroup); > -+ addattr32(&req.n, sizeof(req), FRA_SUPPRESS_IFGROUP, > grp); > - } else if (key == ARG_dev || > - key == ARG_iif > - ) { > diff --git > a/package/utils/busybox/patches/401-vi-don-t-touch-file-with-x-when-modified_count-0.patch > > b/package/utils/busybox/patches/401-vi-don-t-touch-file-with-x-when-modified_count-0.patch > deleted file mode 100644 > index e83999d303..0000000000 > --- > a/package/utils/busybox/patches/401-vi-don-t-touch-file-with-x-when-modified_count-0.patch > +++ /dev/null > @@ -1,100 +0,0 @@ > -From e88608eae24ae5934034e1ecb6c494fefbf1b9ae Mon Sep 17 00:00:00 2001 > -From: Denys Vlasenko <vda.li...@googlemail.com> > -Date: Mon, 13 Mar 2017 20:50:42 +0100 > -Subject: [PATCH 1/2] vi: don't touch file with :x when modified_count == 0 > - > -Along with it, there are other changes > - > - - Check for uppercase X is removed as the expression will be always false > and > - :X itself is another totally different command in standard vim > - - The status line will show number of written lines instead of lines > requested > - by the colon command. This is also how the standard vim is doing, though > - the difference is that '!' has to be explicitly specified in vim to allow > - partial writes > - > -Signed-off-by: Yousong Zhou <yszhou4t...@gmail.com> > -Signed-off-by: Denys Vlasenko <vda.li...@googlemail.com> > ---- > - editors/vi.c | 43 ++++++++++++++++++++++++++----------------- > - 1 file changed, 26 insertions(+), 17 deletions(-) > - > ---- a/editors/vi.c > -+++ b/editors/vi.c > -@@ -1038,7 +1038,9 @@ static void colon(char *buf) > - || strncmp(p, "wn", cnt) == 0 > - || (p[0] == 'x' && !p[1]) > - ) { > -- cnt = file_write(current_filename, text, end - 1); > -+ if (modified_count != 0 || p[0] != 'x') { > -+ cnt = file_write(current_filename, text, end - 1); > -+ } > - if (cnt < 0) { > - if (cnt == -1) > - status_line_bold("Write error: %s", > strerror(errno)); > -@@ -1049,8 +1051,9 @@ static void colon(char *buf) > - current_filename, > - count_lines(text, end - 1), cnt > - ); > -- if (p[0] == 'x' || p[1] == 'q' || p[1] == 'n' > -- || p[0] == 'X' || p[1] == 'Q' || p[1] == 'N' > -+ if (p[0] == 'x' > -+ || p[1] == 'q' || p[1] == 'n' > -+ || p[1] == 'Q' || p[1] == 'N' > - ) { > - editing = 0; > - } > -@@ -1480,16 +1483,19 @@ static void colon(char *buf) > - goto ret; > - } > - #endif > -- // how many lines in text[]? > -- li = count_lines(q, r); > -- size = r - q + 1; > - //if (useforce) { > - // if "fn" is not write-able, chmod u+w > - // sprintf(syscmd, "chmod u+w %s", fn); > - // system(syscmd); > - // forced = TRUE; > - //} > -- l = file_write(fn, q, r); > -+ if (modified_count != 0 || cmd[0] != 'x') { > -+ size = r - q + 1; > -+ l = file_write(fn, q, r); > -+ } else { > -+ size = 0; > -+ l = 0; > -+ } > - //if (useforce && forced) { > - // chmod u-w > - // sprintf(syscmd, "chmod u-w %s", fn); > -@@ -1500,17 +1506,20 @@ static void colon(char *buf) > - if (l == -1) > - status_line_bold_errno(fn); > - } else { > -+ // how many lines written > -+ li = count_lines(q, q + l - 1); > - status_line("'%s' %dL, %dC", fn, li, l); > -- if (q == text && r == end - 1 && l == size) { > -- modified_count = 0; > -- last_modified_count = -1; > -- } > -- if ((cmd[0] == 'x' || cmd[1] == 'q' || cmd[1] == 'n' > -- || cmd[0] == 'X' || cmd[1] == 'Q' || cmd[1] == 'N' > -- ) > -- && l == size > -- ) { > -- editing = 0; > -+ if (l == size) { > -+ if (q == text && q + l == end) { > -+ modified_count = 0; > -+ last_modified_count = -1; > -+ } > -+ if (cmd[0] == 'x' > -+ || cmd[1] == 'q' || cmd[1] == 'n' > -+ || cmd[1] == 'Q' || cmd[1] == 'N' > -+ ) { > -+ editing = 0; > -+ } > - } > - } > - #if ENABLE_FEATURE_VI_YANKMARK > diff --git > a/package/utils/busybox/patches/402-vi-avoid-touching-a-new-file-with-ZZ-when-no-editing.patch > > b/package/utils/busybox/patches/402-vi-avoid-touching-a-new-file-with-ZZ-when-no-editing.patch > deleted file mode 100644 > index b56cf735c2..0000000000 > --- > a/package/utils/busybox/patches/402-vi-avoid-touching-a-new-file-with-ZZ-when-no-editing.patch > +++ /dev/null > @@ -1,53 +0,0 @@ > -From 8f3bf4f0d3605b50a8e4c48c89aeabc455f04884 Mon Sep 17 00:00:00 2001 > -From: Yousong Zhou <yszhou4t...@gmail.com> > -Date: Fri, 24 Mar 2017 21:13:10 +0100 > -Subject: [PATCH 2/2] vi: avoid touching a new file with ZZ when no editing > has > - been done > - > -This is the behaviour observed with standard vim and busybox vi of at > -least 1.22.1. It was changed with commit "32afd3a vi: some > -simplifications" which happened before 1.23.0. > - > -Mistyping filename on command line happens fairly often and it's better > -we restore the old behaviour to avoid a few unnecessary flash writes and > -sometimes efforts of debugging bugs caused by those unneeded stray > -files. > - > -Signed-off-by: Yousong Zhou <yszhou4t...@gmail.com> > -Signed-off-by: Denys Vlasenko <vda.li...@googlemail.com> > ---- > - editors/vi.c | 16 ++++++++-------- > - 1 file changed, 8 insertions(+), 8 deletions(-) > - > ---- a/editors/vi.c > -+++ b/editors/vi.c > -@@ -719,14 +719,6 @@ static int init_text_buffer(char *fn) > - { > - int rc; > - > -- flush_undo_data(); > -- modified_count = 0; > -- last_modified_count = -1; > --#if ENABLE_FEATURE_VI_YANKMARK > -- /* init the marks */ > -- memset(mark, 0, sizeof(mark)); > --#endif > -- > - /* allocate/reallocate text buffer */ > - free(text); > - text_size = 10240; > -@@ -741,6 +733,14 @@ static int init_text_buffer(char *fn) > - // file doesnt exist. Start empty buf with dummy line > - char_insert(text, '\n', NO_UNDO); > - } > -+ > -+ flush_undo_data(); > -+ modified_count = 0; > -+ last_modified_count = -1; > -+#if ENABLE_FEATURE_VI_YANKMARK > -+ /* init the marks */ > -+ memset(mark, 0, sizeof(mark)); > -+#endif > - return rc; > - } > -
signature.asc
Description: PGP signature
_______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev