From 430675423b95cd1dab73d5401e344051d525564f Mon Sep 17 00:00:00 2001 From: Alexey Pavlov Date: Wed, 29 Apr 2020 21:51:42 +0300 Subject: [PATCH] busybox: Update to 1.31.1 --- busybox/PKGBUILD | 23 +- busybox/busybox-1.23.2-1.cygwin.patch | 1539 --------------------- busybox/busybox-1.31.1-msys2.patch | 747 ++++++++++ busybox/{msys2.config => msys2_defconfig} | 818 ++++++----- busybox/pwdW.patch | 64 - 5 files changed, 1244 insertions(+), 1947 deletions(-) delete mode 100644 busybox/busybox-1.23.2-1.cygwin.patch create mode 100644 busybox/busybox-1.31.1-msys2.patch rename busybox/{msys2.config => msys2_defconfig} (74%) delete mode 100644 busybox/pwdW.patch diff --git a/busybox/PKGBUILD b/busybox/PKGBUILD index 1999c45a..719141fc 100644 --- a/busybox/PKGBUILD +++ b/busybox/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: Martell Malone pkgname=busybox -pkgver=1.23.2 +pkgver=1.31.1 pkgrel=1 pkgdesc="BusyBox: The Swiss Army Knife of Embedded Linux" arch=('i686' 'x86_64') @@ -10,27 +10,24 @@ license=('GPL2') depends=('msys2-runtime') install=busybox.install source=("https://busybox.net/downloads/${pkgname}-${pkgver}.tar.bz2" - "busybox-1.23.2-1.cygwin.patch" - "msys2.config" - "pwdW.patch") - -sha256sums=('05a6f9e21aad8c098e388ae77de7b2361941afa7157ef74216703395b14e319a' - '79f504821d8d44b4be4eacce32f965e3e3591deebc00289cdd421180ded7e571' - 'ed8a9a051e97bbf24348e10b6fe1b4330d06825fa9dfd6c08c2f737c1456bd4e' - 'fa18a8deef9464ffa29aa966489294c6587b395f61c179538630fbb8e384dfbe') + "busybox-1.31.1-msys2.patch" + "msys2_defconfig") +sha256sums=('d0f940a72f648943c1f2211e0e3117387c31d765137d92bd8284a3fb9752a998' + '824e74f153ea1cb389d0cf35ab7df2e51fbe9ffbbd4dd718855ba0da6c1a8027' + '3a08ea8d5f2dbdf4f9f47b80f5f4e64d55e0ea3346b9e27949cc3e882ad04606') prepare() { cd "${srcdir}/${pkgname}-${pkgver}" - patch -p1 -i ${srcdir}/busybox-1.23.2-1.cygwin.patch - #patch -p1 -i ${srcdir}/pwdW.patch - cp ${srcdir}/msys2.config ${srcdir}/${pkgname}-${pkgver}/.config + patch -p1 -i ${srcdir}/busybox-1.31.1-msys2.patch + + cp ${srcdir}/msys2_defconfig ${srcdir}/${pkgname}-${pkgver}/.config } build() { cd "${srcdir}/${pkgname}-${pkgver}" #make oldconfig #CFLAGS='-O2 -static-libgcc' - make cygwin_defconfig + #make cygwin_defconfig make mv -v busybox_unstripped.exe busybox.exe } diff --git a/busybox/busybox-1.23.2-1.cygwin.patch b/busybox/busybox-1.23.2-1.cygwin.patch deleted file mode 100644 index 5e572b35..00000000 --- a/busybox/busybox-1.23.2-1.cygwin.patch +++ /dev/null @@ -1,1539 +0,0 @@ ---- busybox-1.23.2.orig/configs/cygwin_defconfig 2015-03-23 04:06:55.000000000 +0100 -+++ busybox-1.23.2/configs/cygwin_defconfig 2015-06-25 21:16:30.748688700 +0200 -@@ -1,7 +1,7 @@ - # - # Automatically generated make config: don't edit --# Busybox version: 1.19.0.git --# Sun Jul 10 12:48:50 2011 -+# Busybox version: 1.23.2 -+# Thu Jun 25 20:26:26 2015 - # - CONFIG_HAVE_DOT_CONFIG=y - -@@ -24,11 +24,11 @@ CONFIG_SHOW_USAGE=y - CONFIG_FEATURE_VERBOSE_USAGE=y - CONFIG_FEATURE_COMPRESS_USAGE=y - CONFIG_FEATURE_INSTALLER=y --# CONFIG_INSTALL_NO_USR is not set --# CONFIG_LOCALE_SUPPORT is not set -+CONFIG_INSTALL_NO_USR=y -+CONFIG_LOCALE_SUPPORT=y - CONFIG_UNICODE_SUPPORT=y - # CONFIG_UNICODE_USING_LOCALE is not set --# CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set -+CONFIG_FEATURE_CHECK_UNICODE_IN_ENV=y - CONFIG_SUBST_WCHAR=65533 - CONFIG_LAST_SUPPORTED_WCHAR=0 - # CONFIG_UNICODE_COMBINING_WCHARS is not set -@@ -36,13 +36,16 @@ CONFIG_LAST_SUPPORTED_WCHAR=0 - # CONFIG_UNICODE_BIDI_SUPPORT is not set - # CONFIG_UNICODE_NEUTRAL_TABLE is not set - # CONFIG_UNICODE_PRESERVE_BROKEN is not set -+# CONFIG_PAM is not set -+# CONFIG_FEATURE_USE_SENDFILE is not set - CONFIG_LONG_OPTS=y - CONFIG_FEATURE_DEVPTS=y --# CONFIG_FEATURE_CLEAN_UP is not set -+CONFIG_FEATURE_CLEAN_UP=y - # CONFIG_FEATURE_UTMP is not set - # CONFIG_FEATURE_WTMP is not set - CONFIG_FEATURE_PIDFILE=y --CONFIG_FEATURE_SUID=y -+CONFIG_PID_FILE_PATH="" -+# CONFIG_FEATURE_SUID is not set - # CONFIG_FEATURE_SUID_CONFIG is not set - # CONFIG_FEATURE_SUID_CONFIG_QUIET is not set - # CONFIG_SELINUX is not set -@@ -62,13 +65,17 @@ CONFIG_FEATURE_SYSLOG=y - # CONFIG_FEATURE_SHARED_BUSYBOX is not set - CONFIG_LFS=y - CONFIG_CROSS_COMPILER_PREFIX="" -+CONFIG_SYSROOT="" - CONFIG_EXTRA_CFLAGS="" -+CONFIG_EXTRA_LDFLAGS="" -+CONFIG_EXTRA_LDLIBS="" - - # - # Debugging Options - # - # CONFIG_DEBUG is not set - # CONFIG_DEBUG_PESSIMIZE is not set -+# CONFIG_UNIT_TEST is not set - # CONFIG_WERROR is not set - CONFIG_NO_DEBUG_LIB=y - # CONFIG_DMALLOC is not set -@@ -93,20 +100,23 @@ CONFIG_PREFIX="./_install" - CONFIG_FEATURE_RTMINMAX=y - CONFIG_PASSWORD_MINLEN=6 - CONFIG_MD5_SMALL=1 --CONFIG_FEATURE_FAST_TOP=y -+CONFIG_SHA3_SMALL=1 -+# CONFIG_FEATURE_FAST_TOP is not set - # CONFIG_FEATURE_ETC_NETWORKS is not set - CONFIG_FEATURE_USE_TERMIOS=y - CONFIG_FEATURE_EDITING=y - CONFIG_FEATURE_EDITING_MAX_LEN=1024 --# CONFIG_FEATURE_EDITING_VI is not set -+CONFIG_FEATURE_EDITING_VI=y - CONFIG_FEATURE_EDITING_HISTORY=255 - CONFIG_FEATURE_EDITING_SAVEHISTORY=y -+# CONFIG_FEATURE_EDITING_SAVE_ON_EXIT is not set -+CONFIG_FEATURE_REVERSE_SEARCH=y - CONFIG_FEATURE_TAB_COMPLETION=y - # CONFIG_FEATURE_USERNAME_COMPLETION is not set - CONFIG_FEATURE_EDITING_FANCY_PROMPT=y --# CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set -+CONFIG_FEATURE_EDITING_ASK_TERMINAL=y - CONFIG_FEATURE_NON_POSIX_CP=y --# CONFIG_FEATURE_VERBOSE_CP_MESSAGE is not set -+CONFIG_FEATURE_VERBOSE_CP_MESSAGE=y - CONFIG_FEATURE_COPYBUF_KB=4 - CONFIG_FEATURE_SKIP_ROOTFS=y - # CONFIG_MONOTONIC_SYSCALL is not set -@@ -125,10 +135,17 @@ CONFIG_FEATURE_SEAMLESS_LZMA=y - CONFIG_FEATURE_SEAMLESS_BZ2=y - CONFIG_FEATURE_SEAMLESS_GZ=y - # CONFIG_FEATURE_SEAMLESS_Z is not set --# CONFIG_AR is not set --# CONFIG_FEATURE_AR_LONG_FILENAMES is not set --# CONFIG_FEATURE_AR_CREATE is not set -+CONFIG_AR=y -+CONFIG_FEATURE_AR_LONG_FILENAMES=y -+CONFIG_FEATURE_AR_CREATE=y -+CONFIG_UNCOMPRESS=y -+CONFIG_GUNZIP=y - CONFIG_BUNZIP2=y -+CONFIG_UNLZMA=y -+CONFIG_FEATURE_LZMA_FAST=y -+CONFIG_LZMA=y -+CONFIG_UNXZ=y -+CONFIG_XZ=y - CONFIG_BZIP2=y - CONFIG_CPIO=y - CONFIG_FEATURE_CPIO_O=y -@@ -136,13 +153,13 @@ CONFIG_FEATURE_CPIO_P=y - # CONFIG_DPKG is not set - # CONFIG_DPKG_DEB is not set - # CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set --CONFIG_GUNZIP=y - CONFIG_GZIP=y - CONFIG_FEATURE_GZIP_LONG_OPTIONS=y -+CONFIG_GZIP_FAST=1 - CONFIG_LZOP=y --# CONFIG_LZOP_COMPR_HIGH is not set --CONFIG_RPM2CPIO=y -+CONFIG_LZOP_COMPR_HIGH=y - CONFIG_RPM=y -+CONFIG_RPM2CPIO=y - CONFIG_TAR=y - CONFIG_FEATURE_TAR_CREATE=y - CONFIG_FEATURE_TAR_AUTODETECT=y -@@ -155,12 +172,6 @@ CONFIG_FEATURE_TAR_TO_COMMAND=y - CONFIG_FEATURE_TAR_UNAME_GNAME=y - CONFIG_FEATURE_TAR_NOPRESERVE_TIME=y - # CONFIG_FEATURE_TAR_SELINUX is not set --# CONFIG_UNCOMPRESS is not set --CONFIG_UNLZMA=y --CONFIG_FEATURE_LZMA_FAST=y --CONFIG_LZMA=y --CONFIG_UNXZ=y --CONFIG_XZ=y - CONFIG_UNZIP=y - - # -@@ -170,17 +181,24 @@ CONFIG_BASENAME=y - CONFIG_CAT=y - CONFIG_DATE=y - CONFIG_FEATURE_DATE_ISOFMT=y --# CONFIG_FEATURE_DATE_NANO is not set -+CONFIG_FEATURE_DATE_NANO=y - CONFIG_FEATURE_DATE_COMPAT=y -+CONFIG_HOSTID=y - CONFIG_ID=y - CONFIG_GROUPS=y -+CONFIG_SHUF=y - CONFIG_TEST=y - CONFIG_FEATURE_TEST_64=y - CONFIG_TOUCH=y -+CONFIG_FEATURE_TOUCH_NODEREF=y -+CONFIG_FEATURE_TOUCH_SUSV3=y - CONFIG_TR=y - CONFIG_FEATURE_TR_CLASSES=y - CONFIG_FEATURE_TR_EQUIV=y -+CONFIG_UNLINK=y - CONFIG_BASE64=y -+# CONFIG_WHO is not set -+# CONFIG_USERS is not set - CONFIG_CAL=y - CONFIG_CATV=y - CONFIG_CHGRP=y -@@ -203,7 +221,7 @@ CONFIG_DIRNAME=y - CONFIG_DOS2UNIX=y - CONFIG_UNIX2DOS=y - CONFIG_DU=y --# CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K is not set -+CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y - CONFIG_ECHO=y - CONFIG_FEATURE_FANCY_ECHO=y - CONFIG_ENV=y -@@ -217,7 +235,6 @@ CONFIG_FOLD=y - CONFIG_FSYNC=y - CONFIG_HEAD=y - CONFIG_FEATURE_FANCY_HEAD=y --CONFIG_HOSTID=y - CONFIG_INSTALL=y - CONFIG_FEATURE_INSTALL_LONG_OPTIONS=y - CONFIG_LN=y -@@ -254,6 +271,7 @@ CONFIG_SEQ=y - CONFIG_SHA1SUM=y - CONFIG_SHA256SUM=y - CONFIG_SHA512SUM=y -+CONFIG_SHA3SUM=y - CONFIG_SLEEP=y - CONFIG_FEATURE_FANCY_SLEEP=y - CONFIG_FEATURE_FLOAT_SLEEP=y -@@ -261,8 +279,8 @@ CONFIG_SORT=y - CONFIG_FEATURE_SORT_BIG=y - CONFIG_SPLIT=y - CONFIG_FEATURE_SPLIT_FANCY=y --# CONFIG_STAT is not set --# CONFIG_FEATURE_STAT_FORMAT is not set -+CONFIG_STAT=y -+CONFIG_FEATURE_STAT_FORMAT=y - CONFIG_STTY=y - CONFIG_SUM=y - CONFIG_SYNC=y -@@ -282,11 +300,15 @@ CONFIG_UUDECODE=y - CONFIG_UUENCODE=y - CONFIG_WC=y - CONFIG_FEATURE_WC_LARGE=y --# CONFIG_WHO is not set - CONFIG_WHOAMI=y - CONFIG_YES=y - - # -+# Common options -+# -+CONFIG_FEATURE_VERBOSE=y -+ -+# - # Common options for cp and mv - # - CONFIG_FEATURE_PRESERVE_HARDLINKS=y -@@ -302,7 +324,7 @@ CONFIG_FEATURE_AUTOWIDTH=y - CONFIG_FEATURE_HUMAN_READABLE=y - - # --# Common options for md5sum, sha1sum, sha256sum, sha512sum -+# Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum - # - CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y - -@@ -348,10 +370,19 @@ CONFIG_WHICH=y - # - # Editors - # -+CONFIG_AWK=y -+CONFIG_FEATURE_AWK_LIBM=y -+CONFIG_FEATURE_AWK_GNU_EXTENSIONS=y -+CONFIG_CMP=y -+CONFIG_DIFF=y -+CONFIG_FEATURE_DIFF_LONG_OPTIONS=y -+CONFIG_FEATURE_DIFF_DIR=y -+CONFIG_ED=y - CONFIG_PATCH=y -+CONFIG_SED=y - CONFIG_VI=y - CONFIG_FEATURE_VI_MAX_LEN=4096 --# CONFIG_FEATURE_VI_8BIT is not set -+CONFIG_FEATURE_VI_8BIT=y - CONFIG_FEATURE_VI_COLON=y - CONFIG_FEATURE_VI_YANKMARK=y - CONFIG_FEATURE_VI_SEARCH=y -@@ -363,14 +394,9 @@ CONFIG_FEATURE_VI_SETOPTS=y - CONFIG_FEATURE_VI_SET=y - CONFIG_FEATURE_VI_WIN_RESIZE=y - CONFIG_FEATURE_VI_ASK_TERMINAL=y --CONFIG_AWK=y --CONFIG_FEATURE_AWK_LIBM=y --CONFIG_CMP=y --CONFIG_DIFF=y --CONFIG_FEATURE_DIFF_LONG_OPTIONS=y --CONFIG_FEATURE_DIFF_DIR=y --CONFIG_ED=y --CONFIG_SED=y -+CONFIG_FEATURE_VI_UNDO=y -+CONFIG_FEATURE_VI_UNDO_QUEUE=y -+CONFIG_FEATURE_VI_UNDO_QUEUE_MAX=256 - CONFIG_FEATURE_ALLOW_EXEC=y - - # -@@ -387,6 +413,7 @@ CONFIG_FEATURE_FIND_MAXDEPTH=y - CONFIG_FEATURE_FIND_NEWER=y - CONFIG_FEATURE_FIND_INUM=y - CONFIG_FEATURE_FIND_EXEC=y -+CONFIG_FEATURE_FIND_EXEC_PLUS=y - CONFIG_FEATURE_FIND_USER=y - CONFIG_FEATURE_FIND_GROUP=y - CONFIG_FEATURE_FIND_NOT=y -@@ -408,6 +435,7 @@ CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATIO - CONFIG_FEATURE_XARGS_SUPPORT_QUOTES=y - CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT=y - CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y -+CONFIG_FEATURE_XARGS_SUPPORT_REPL_STR=y - - # - # Init Utilities -@@ -436,42 +464,44 @@ CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP=y - # - CONFIG_ADD_SHELL=y - CONFIG_REMOVE_SHELL=y --CONFIG_FEATURE_SHADOWPASSWDS=y --CONFIG_USE_BB_PWD_GRP=y --CONFIG_USE_BB_SHADOW=y -+# CONFIG_FEATURE_SHADOWPASSWDS is not set -+# CONFIG_USE_BB_PWD_GRP is not set -+# CONFIG_USE_BB_SHADOW is not set - CONFIG_USE_BB_CRYPT=y - CONFIG_USE_BB_CRYPT_SHA=y --CONFIG_ADDUSER=y --CONFIG_FEATURE_ADDUSER_LONG_OPTIONS=y -+# CONFIG_ADDUSER is not set -+# CONFIG_FEATURE_ADDUSER_LONG_OPTIONS is not set - # CONFIG_FEATURE_CHECK_NAMES is not set --CONFIG_FIRST_SYSTEM_ID=100 --CONFIG_LAST_SYSTEM_ID=999 --CONFIG_ADDGROUP=y --CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS=y --CONFIG_FEATURE_ADDUSER_TO_GROUP=y --CONFIG_DELUSER=y --CONFIG_DELGROUP=y --CONFIG_FEATURE_DEL_USER_FROM_GROUP=y -+CONFIG_LAST_ID=0 -+CONFIG_FIRST_SYSTEM_ID=0 -+CONFIG_LAST_SYSTEM_ID=0 -+# CONFIG_ADDGROUP is not set -+# CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS is not set -+# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set -+# CONFIG_DELUSER is not set -+# CONFIG_DELGROUP is not set -+# CONFIG_FEATURE_DEL_USER_FROM_GROUP is not set - # CONFIG_GETTY is not set - CONFIG_LOGIN=y --# CONFIG_PAM is not set --CONFIG_LOGIN_SCRIPTS=y --CONFIG_FEATURE_NOLOGIN=y --CONFIG_FEATURE_SECURETTY=y --CONFIG_PASSWD=y --CONFIG_FEATURE_PASSWD_WEAK_CHECK=y -+# CONFIG_LOGIN_SESSION_AS_CHILD is not set -+# CONFIG_LOGIN_SCRIPTS is not set -+# CONFIG_FEATURE_NOLOGIN is not set -+# CONFIG_FEATURE_SECURETTY is not set -+# CONFIG_PASSWD is not set -+# CONFIG_FEATURE_PASSWD_WEAK_CHECK is not set - CONFIG_CRYPTPW=y --CONFIG_CHPASSWD=y --CONFIG_SU=y --CONFIG_FEATURE_SU_SYSLOG=y --CONFIG_FEATURE_SU_CHECKS_SHELLS=y --CONFIG_SULOGIN=y --CONFIG_VLOCK=y -+# CONFIG_CHPASSWD is not set -+CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="sha512" -+# CONFIG_SU is not set -+# CONFIG_FEATURE_SU_SYSLOG is not set -+# CONFIG_FEATURE_SU_CHECKS_SHELLS is not set -+# CONFIG_SULOGIN is not set -+# CONFIG_VLOCK is not set - - # - # Linux Ext2 FS Progs - # --CONFIG_CHATTR=y -+# CONFIG_CHATTR is not set - # CONFIG_FSCK is not set - # CONFIG_LSATTR is not set - # CONFIG_TUNE2FS is not set -@@ -511,7 +541,15 @@ CONFIG_DEFAULT_DEPMOD_FILE="" - # Linux System Utilities - # - # CONFIG_BLOCKDEV is not set --CONFIG_REV=y -+# CONFIG_FATATTR is not set -+# CONFIG_FSTRIM is not set -+# CONFIG_MDEV is not set -+# CONFIG_FEATURE_MDEV_CONF is not set -+# CONFIG_FEATURE_MDEV_RENAME is not set -+# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set -+# CONFIG_FEATURE_MDEV_EXEC is not set -+# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set -+# CONFIG_REV is not set - # CONFIG_ACPID is not set - # CONFIG_FEATURE_ACPID_COMPAT is not set - # CONFIG_BLKID is not set -@@ -535,10 +573,10 @@ CONFIG_REV=y - # CONFIG_FINDFS is not set - CONFIG_FLOCK=y - # CONFIG_FREERAMDISK is not set --CONFIG_FSCK_MINIX=y -+# CONFIG_FSCK_MINIX is not set - # CONFIG_MKFS_EXT2 is not set - # CONFIG_MKFS_MINIX is not set --CONFIG_FEATURE_MINIX2=y -+# CONFIG_FEATURE_MINIX2 is not set - # CONFIG_MKFS_REISER is not set - # CONFIG_MKFS_VFAT is not set - CONFIG_GETOPT=y -@@ -554,14 +592,8 @@ CONFIG_IPCRM=y - # CONFIG_LOSETUP is not set - # CONFIG_LSPCI is not set - # CONFIG_LSUSB is not set --# CONFIG_MDEV is not set --# CONFIG_FEATURE_MDEV_CONF is not set --# CONFIG_FEATURE_MDEV_RENAME is not set --# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set --# CONFIG_FEATURE_MDEV_EXEC is not set --# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set --CONFIG_MKSWAP=y --CONFIG_FEATURE_MKSWAP_UUID=y -+# CONFIG_MKSWAP is not set -+# CONFIG_FEATURE_MKSWAP_UUID is not set - CONFIG_MORE=y - # CONFIG_MOUNT is not set - # CONFIG_FEATURE_MOUNT_FAKE is not set -@@ -574,13 +606,14 @@ CONFIG_MORE=y - # CONFIG_FEATURE_MOUNT_FSTAB is not set - # CONFIG_PIVOT_ROOT is not set - # CONFIG_RDATE is not set --CONFIG_RDEV=y --CONFIG_READPROFILE=y -+# CONFIG_RDEV is not set -+# CONFIG_READPROFILE is not set - # CONFIG_RTCWAKE is not set - CONFIG_SCRIPT=y - CONFIG_SCRIPTREPLAY=y - # CONFIG_SETARCH is not set - # CONFIG_SWAPONOFF is not set -+# CONFIG_FEATURE_SWAPON_DISCARD is not set - # CONFIG_FEATURE_SWAPON_PRI is not set - # CONFIG_SWITCH_ROOT is not set - # CONFIG_UMOUNT is not set -@@ -589,40 +622,62 @@ CONFIG_SCRIPTREPLAY=y - # CONFIG_FEATURE_MOUNT_LOOP_CREATE is not set - # CONFIG_FEATURE_MTAB_SUPPORT is not set - # CONFIG_VOLUMEID is not set --# CONFIG_FEATURE_VOLUMEID_EXT is not set - # CONFIG_FEATURE_VOLUMEID_BTRFS is not set --# CONFIG_FEATURE_VOLUMEID_REISERFS is not set -+# CONFIG_FEATURE_VOLUMEID_CRAMFS is not set -+# CONFIG_FEATURE_VOLUMEID_EXFAT is not set -+# CONFIG_FEATURE_VOLUMEID_EXT is not set -+# CONFIG_FEATURE_VOLUMEID_F2FS is not set - # CONFIG_FEATURE_VOLUMEID_FAT is not set - # CONFIG_FEATURE_VOLUMEID_HFS is not set --# CONFIG_FEATURE_VOLUMEID_JFS is not set --# CONFIG_FEATURE_VOLUMEID_XFS is not set --# CONFIG_FEATURE_VOLUMEID_NTFS is not set - # CONFIG_FEATURE_VOLUMEID_ISO9660 is not set --# CONFIG_FEATURE_VOLUMEID_UDF is not set --# CONFIG_FEATURE_VOLUMEID_LUKS is not set -+# CONFIG_FEATURE_VOLUMEID_JFS is not set -+# CONFIG_FEATURE_VOLUMEID_LINUXRAID is not set - # CONFIG_FEATURE_VOLUMEID_LINUXSWAP is not set --# CONFIG_FEATURE_VOLUMEID_CRAMFS is not set -+# CONFIG_FEATURE_VOLUMEID_LUKS is not set -+# CONFIG_FEATURE_VOLUMEID_NILFS is not set -+# CONFIG_FEATURE_VOLUMEID_NTFS is not set -+# CONFIG_FEATURE_VOLUMEID_OCFS2 is not set -+# CONFIG_FEATURE_VOLUMEID_REISERFS is not set - # CONFIG_FEATURE_VOLUMEID_ROMFS is not set -+# CONFIG_FEATURE_VOLUMEID_SQUASHFS is not set - # CONFIG_FEATURE_VOLUMEID_SYSV is not set --# CONFIG_FEATURE_VOLUMEID_OCFS2 is not set --# CONFIG_FEATURE_VOLUMEID_LINUXRAID is not set -+# CONFIG_FEATURE_VOLUMEID_UDF is not set -+# CONFIG_FEATURE_VOLUMEID_XFS is not set - - # - # Miscellaneous Utilities - # - # CONFIG_CONSPY is not set -+CONFIG_CROND=y -+CONFIG_FEATURE_CROND_D=y -+CONFIG_FEATURE_CROND_CALL_SENDMAIL=y -+CONFIG_FEATURE_CROND_DIR="/var/spool/cron" -+CONFIG_LESS=y -+CONFIG_FEATURE_LESS_MAXLINES=9999999 -+CONFIG_FEATURE_LESS_BRACKETS=y -+CONFIG_FEATURE_LESS_FLAGS=y -+CONFIG_FEATURE_LESS_MARKS=y -+CONFIG_FEATURE_LESS_REGEXP=y -+CONFIG_FEATURE_LESS_WINCH=y -+CONFIG_FEATURE_LESS_ASK_TERMINAL=y -+CONFIG_FEATURE_LESS_DASHCMD=y -+CONFIG_FEATURE_LESS_LINENUMS=y - # CONFIG_NANDWRITE is not set - # CONFIG_NANDDUMP is not set -+# CONFIG_RFKILL is not set - # CONFIG_SETSERIAL is not set -+# CONFIG_TASKSET is not set -+# CONFIG_FEATURE_TASKSET_FANCY is not set - # CONFIG_UBIATTACH is not set - # CONFIG_UBIDETACH is not set - # CONFIG_UBIMKVOL is not set - # CONFIG_UBIRMVOL is not set - # CONFIG_UBIRSVOL is not set - # CONFIG_UBIUPDATEVOL is not set -+# CONFIG_WALL is not set - # CONFIG_ADJTIMEX is not set --# CONFIG_BBCONFIG is not set --# CONFIG_FEATURE_COMPRESS_BBCONFIG is not set -+CONFIG_BBCONFIG=y -+CONFIG_FEATURE_COMPRESS_BBCONFIG=y - # CONFIG_BEEP is not set - CONFIG_FEATURE_BEEP_FREQ=0 - CONFIG_FEATURE_BEEP_LENGTH_MS=0 -@@ -634,11 +689,7 @@ CONFIG_FEATURE_CHAT_SWALLOW_OPTS=y - CONFIG_FEATURE_CHAT_SEND_ESCAPES=y - CONFIG_FEATURE_CHAT_VAR_ABORT_LEN=y - CONFIG_FEATURE_CHAT_CLR_ABORT=y --CONFIG_CHRT=y --CONFIG_CROND=y --CONFIG_FEATURE_CROND_D=y --CONFIG_FEATURE_CROND_CALL_SENDMAIL=y --CONFIG_FEATURE_CROND_DIR="/var/spool/cron" -+# CONFIG_CHRT is not set - CONFIG_CRONTAB=y - CONFIG_DC=y - CONFIG_FEATURE_DC_LIBM=y -@@ -647,7 +698,7 @@ CONFIG_FEATURE_DC_LIBM=y - # CONFIG_DEVFSD_FG_NP is not set - # CONFIG_DEVFSD_VERBOSE is not set - # CONFIG_FEATURE_DEVFS is not set --CONFIG_DEVMEM=y -+# CONFIG_DEVMEM is not set - # CONFIG_EJECT is not set - # CONFIG_FEATURE_EJECT_SCSI is not set - # CONFIG_FBSPLASH is not set -@@ -660,15 +711,6 @@ CONFIG_DEVMEM=y - # CONFIG_LAST is not set - # CONFIG_FEATURE_LAST_SMALL is not set - # CONFIG_FEATURE_LAST_FANCY is not set --CONFIG_LESS=y --CONFIG_FEATURE_LESS_MAXLINES=9999999 --CONFIG_FEATURE_LESS_BRACKETS=y --CONFIG_FEATURE_LESS_FLAGS=y --CONFIG_FEATURE_LESS_MARKS=y --CONFIG_FEATURE_LESS_REGEXP=y --CONFIG_FEATURE_LESS_WINCH=y --CONFIG_FEATURE_LESS_DASHCMD=y --CONFIG_FEATURE_LESS_LINENUMS=y - # CONFIG_HDPARM is not set - # CONFIG_FEATURE_HDPARM_GET_IDENTITY is not set - # CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set -@@ -676,27 +718,23 @@ CONFIG_FEATURE_LESS_LINENUMS=y - # CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set - # CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set - # CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA is not set --# CONFIG_MAKEDEVS is not set -+CONFIG_MAKEDEVS=y - # CONFIG_FEATURE_MAKEDEVS_LEAF is not set --# CONFIG_FEATURE_MAKEDEVS_TABLE is not set -+CONFIG_FEATURE_MAKEDEVS_TABLE=y - CONFIG_MAN=y --# CONFIG_MICROCOM is not set --# CONFIG_MOUNTPOINT is not set -+CONFIG_MICROCOM=y -+CONFIG_MOUNTPOINT=y - CONFIG_MT=y - # CONFIG_RAIDAUTORUN is not set - # CONFIG_READAHEAD is not set --# CONFIG_RFKILL is not set - # CONFIG_RUNLEVEL is not set --# CONFIG_RX is not set -+CONFIG_RX=y - CONFIG_SETSID=y - CONFIG_STRINGS=y --# CONFIG_TASKSET is not set --# CONFIG_FEATURE_TASKSET_FANCY is not set - CONFIG_TIME=y - CONFIG_TIMEOUT=y - CONFIG_TTYSIZE=y - CONFIG_VOLNAME=y --# CONFIG_WALL is not set - # CONFIG_WATCHDOG is not set - - # -@@ -708,15 +746,15 @@ CONFIG_VOLNAME=y - CONFIG_NC=y - CONFIG_NC_SERVER=y - CONFIG_NC_EXTRA=y --# CONFIG_NC_110_COMPAT is not set --# CONFIG_PING is not set --# CONFIG_PING6 is not set --# CONFIG_FEATURE_FANCY_PING is not set -+CONFIG_NC_110_COMPAT=y -+CONFIG_PING=y -+CONFIG_PING6=y -+CONFIG_FEATURE_FANCY_PING=y - CONFIG_WHOIS=y - CONFIG_FEATURE_IPV6=y - # CONFIG_FEATURE_UNIX_LOCAL is not set - CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y --# CONFIG_VERBOSE_RESOLUTION_ERRORS is not set -+CONFIG_VERBOSE_RESOLUTION_ERRORS=y - # CONFIG_ARP is not set - # CONFIG_ARPING is not set - # CONFIG_BRCTL is not set -@@ -728,13 +766,13 @@ CONFIG_FAKEIDENTD=y - CONFIG_FTPD=y - CONFIG_FEATURE_FTP_WRITE=y - CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST=y -+# CONFIG_FEATURE_FTP_AUTHENTICATION is not set - CONFIG_FTPGET=y - CONFIG_FTPPUT=y - CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS=y - CONFIG_HOSTNAME=y - CONFIG_HTTPD=y - CONFIG_FEATURE_HTTPD_RANGES=y --# CONFIG_FEATURE_HTTPD_USE_SENDFILE is not set - CONFIG_FEATURE_HTTPD_SETUID=y - CONFIG_FEATURE_HTTPD_BASIC_AUTH=y - CONFIG_FEATURE_HTTPD_AUTH_MD5=y -@@ -788,9 +826,10 @@ CONFIG_FEATURE_IPCALC_LONG_OPTIONS=y - # CONFIG_NETSTAT is not set - # CONFIG_FEATURE_NETSTAT_WIDE is not set - # CONFIG_FEATURE_NETSTAT_PRG is not set --# CONFIG_NSLOOKUP is not set -+CONFIG_NSLOOKUP=y - # CONFIG_NTPD is not set - # CONFIG_FEATURE_NTPD_SERVER is not set -+# CONFIG_FEATURE_NTPD_CONF is not set - CONFIG_PSCAN=y - # CONFIG_ROUTE is not set - # CONFIG_SLATTACH is not set -@@ -811,14 +850,15 @@ CONFIG_FEATURE_TFTP_GET=y - CONFIG_FEATURE_TFTP_PUT=y - CONFIG_FEATURE_TFTP_BLOCKSIZE=y - CONFIG_FEATURE_TFTP_PROGRESS_BAR=y --# CONFIG_TFTP_DEBUG is not set --# CONFIG_TRACEROUTE is not set -+CONFIG_TFTP_DEBUG=y -+CONFIG_TRACEROUTE=y - # CONFIG_TRACEROUTE6 is not set --# CONFIG_FEATURE_TRACEROUTE_VERBOSE is not set --# CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE is not set --# CONFIG_FEATURE_TRACEROUTE_USE_ICMP is not set -+CONFIG_FEATURE_TRACEROUTE_VERBOSE=y -+CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE=y -+CONFIG_FEATURE_TRACEROUTE_USE_ICMP=y - # CONFIG_TUNCTL is not set - # CONFIG_FEATURE_TUNCTL_UG is not set -+# CONFIG_UDHCPC6 is not set - # CONFIG_UDHCPD is not set - # CONFIG_DHCPRELAY is not set - # CONFIG_DUMPLEASES is not set -@@ -827,6 +867,7 @@ CONFIG_FEATURE_TFTP_PROGRESS_BAR=y - CONFIG_DHCPD_LEASES_FILE="" - # CONFIG_UDHCPC is not set - # CONFIG_FEATURE_UDHCPC_ARPING is not set -+# CONFIG_FEATURE_UDHCPC_SANITIZEOPT is not set - # CONFIG_FEATURE_UDHCP_PORT is not set - CONFIG_UDHCP_DEBUG=0 - # CONFIG_FEATURE_UDHCP_RFC3397 is not set -@@ -864,7 +905,8 @@ CONFIG_SENDMAIL=y - # - # Process Utilities - # --CONFIG_IOSTAT=y -+# CONFIG_IOSTAT is not set -+CONFIG_LSOF=y - CONFIG_MPSTAT=y - CONFIG_NMETER=y - # CONFIG_PMAP is not set -@@ -872,7 +914,16 @@ CONFIG_NMETER=y - CONFIG_PSTREE=y - CONFIG_PWDX=y - CONFIG_SMEMCAP=y --# CONFIG_FREE is not set -+CONFIG_TOP=y -+CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y -+CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y -+CONFIG_FEATURE_TOP_SMP_CPU=y -+CONFIG_FEATURE_TOP_DECIMALS=y -+# CONFIG_FEATURE_TOP_SMP_PROCESS is not set -+# CONFIG_FEATURE_TOPMEM is not set -+CONFIG_UPTIME=y -+# CONFIG_FEATURE_UPTIME_UTMP_SUPPORT is not set -+CONFIG_FREE=y - CONFIG_FUSER=y - CONFIG_KILL=y - CONFIG_KILLALL=y -@@ -883,21 +934,14 @@ CONFIG_FEATURE_PIDOF_SINGLE=y - CONFIG_FEATURE_PIDOF_OMIT=y - CONFIG_PKILL=y - CONFIG_PS=y --CONFIG_FEATURE_PS_WIDE=y --# CONFIG_FEATURE_PS_TIME is not set -+# CONFIG_FEATURE_PS_WIDE is not set -+# CONFIG_FEATURE_PS_LONG is not set -+CONFIG_FEATURE_PS_TIME=y - CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS=y - # CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set - CONFIG_RENICE=y --CONFIG_BB_SYSCTL=y --CONFIG_TOP=y --CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y --CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y --CONFIG_FEATURE_TOP_SMP_CPU=y --CONFIG_FEATURE_TOP_DECIMALS=y --CONFIG_FEATURE_TOP_SMP_PROCESS=y --CONFIG_FEATURE_TOPMEM=y -+# CONFIG_BB_SYSCTL is not set - # CONFIG_FEATURE_SHOW_THREADS is not set --# CONFIG_UPTIME is not set - CONFIG_WATCH=y - - # -@@ -935,19 +979,20 @@ CONFIG_SOFTLIMIT=y - # - CONFIG_ASH=y - CONFIG_ASH_BASH_COMPAT=y --# CONFIG_ASH_IDLE_TIMEOUT is not set -+CONFIG_ASH_IDLE_TIMEOUT=y - CONFIG_ASH_JOB_CONTROL=y - CONFIG_ASH_ALIAS=y - CONFIG_ASH_GETOPTS=y - CONFIG_ASH_BUILTIN_ECHO=y - CONFIG_ASH_BUILTIN_PRINTF=y - CONFIG_ASH_BUILTIN_TEST=y -+CONFIG_ASH_HELP=y - CONFIG_ASH_CMDCMD=y - # CONFIG_ASH_MAIL is not set - CONFIG_ASH_OPTIMIZE_FOR_SIZE=y - CONFIG_ASH_RANDOM_SUPPORT=y - CONFIG_ASH_EXPAND_PRMT=y --# CONFIG_CTTYHACK is not set -+CONFIG_CTTYHACK=y - CONFIG_HUSH=y - CONFIG_HUSH_BASH_COMPAT=y - CONFIG_HUSH_BRACE_EXPANSION=y -@@ -968,9 +1013,9 @@ CONFIG_HUSH_MODE_X=y - CONFIG_FEATURE_SH_IS_ASH=y - # CONFIG_FEATURE_SH_IS_HUSH is not set - # CONFIG_FEATURE_SH_IS_NONE is not set --# CONFIG_FEATURE_BASH_IS_ASH is not set -+CONFIG_FEATURE_BASH_IS_ASH=y - # CONFIG_FEATURE_BASH_IS_HUSH is not set --CONFIG_FEATURE_BASH_IS_NONE=y -+# CONFIG_FEATURE_BASH_IS_NONE is not set - CONFIG_SH_MATH_SUPPORT=y - CONFIG_SH_MATH_SUPPORT_64=y - CONFIG_FEATURE_SH_EXTRA_QUIET=y -@@ -991,6 +1036,7 @@ CONFIG_FEATURE_IPC_SYSLOG=y - CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=16 - CONFIG_LOGREAD=y - CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING=y -+# CONFIG_FEATURE_KMSG_SYSLOG is not set - # CONFIG_KLOGD is not set - # CONFIG_FEATURE_KLOGD_KLOGCTL is not set - CONFIG_LOGGER=y ---- busybox-1.23.2.orig/coreutils/date.c 2015-03-23 04:07:18.000000000 +0100 -+++ busybox-1.23.2/coreutils/date.c 2015-06-25 21:16:30.764288700 +0200 -@@ -138,7 +138,7 @@ - //usage: "Wed Apr 12 18:52:41 MDT 2000\n" - - #include "libbb.h" --#if ENABLE_FEATURE_DATE_NANO -+#if ENABLE_FEATURE_DATE_NANO && defined(HAVE_SYS_SYSCALL_H) - # include - #endif - -@@ -260,10 +260,13 @@ int date_main(int argc UNUSED_PARAM, cha - #endif - } else { - #if ENABLE_FEATURE_DATE_NANO -+# ifdef HAVE_SYS_SYSCALL_H - /* libc has incredibly messy way of doing this, - * typically requiring -lrt. We just skip all this mess */ - syscall(__NR_clock_gettime, CLOCK_REALTIME, &ts); --#else -+# else -+ clock_gettime(CLOCK_REALTIME, &ts); -+# endif - time(&ts.tv_sec); - #endif - } ---- busybox-1.23.2.orig/coreutils/du.c 2015-03-23 04:06:55.000000000 +0100 -+++ busybox-1.23.2/coreutils/du.c 2015-07-04 19:11:09.235169800 +0200 -@@ -148,6 +148,10 @@ static unsigned long long du(const char - } - } - -+ if (DEV_BSIZE > 512) { -+ sum *= DEV_BSIZE / 512; -+ } -+ - if (!(option_mask32 & OPT_l_hardlinks) - && statbuf.st_nlink > 1 - ) { ---- busybox-1.23.2.orig/coreutils/ls.c 2015-03-23 04:07:18.000000000 +0100 -+++ busybox-1.23.2/coreutils/ls.c 2015-07-04 19:08:39.162906200 +0200 -@@ -755,6 +755,9 @@ static struct dnode *my_stat(const char - #endif - cur->dn_ino = statbuf.st_ino ; - cur->dn_blocks = statbuf.st_blocks; -+ if (DEV_BSIZE > 512) { -+ cur->dn_blocks *= DEV_BSIZE / 512; -+ } - cur->dn_nlink = statbuf.st_nlink ; - cur->dn_uid = statbuf.st_uid ; - cur->dn_gid = statbuf.st_gid ; ---- busybox-1.23.2.orig/coreutils/stat.c 2015-03-23 04:06:55.000000000 +0100 -+++ busybox-1.23.2/coreutils/stat.c 2015-07-04 17:23:54.973668200 +0200 -@@ -332,7 +332,7 @@ static void FAST_FUNC print_stat(char *p - printf(pformat, (unsigned long long) statbuf->st_size); - } else if (m == 'B') { - strcat(pformat, "lu"); -- printf(pformat, (unsigned long) 512); //ST_NBLOCKSIZE -+ printf(pformat, (unsigned long) DEV_BSIZE); - } else if (m == 'b') { - strcat(pformat, "llu"); - printf(pformat, (unsigned long long) statbuf->st_blocks); ---- busybox-1.23.2.orig/include/applets.src.h 2015-03-23 04:06:55.000000000 +0100 -+++ busybox-1.23.2/include/applets.src.h 2015-06-25 21:16:30.764288700 +0200 -@@ -240,7 +240,9 @@ IF_MKFS_MINIX(APPLET_ODDNAME(mkfs.minix, - IF_MKFS_REISER(APPLET_ODDNAME(mkfs.reiser, mkfs_reiser, BB_DIR_SBIN, BB_SUID_DROP, mkfs_reiser)) - IF_MKFS_VFAT(APPLET_ODDNAME(mkfs.vfat, mkfs_vfat, BB_DIR_SBIN, BB_SUID_DROP, mkfs_vfat)) - IF_MKNOD(APPLET_NOEXEC(mknod, mknod, BB_DIR_BIN, BB_SUID_DROP, mknod)) -+#ifndef __CYGWIN__ - IF_CRYPTPW(APPLET_ODDNAME(mkpasswd, cryptpw, BB_DIR_USR_BIN, BB_SUID_DROP, mkpasswd)) -+#endif - IF_MKSWAP(APPLET(mkswap, BB_DIR_SBIN, BB_SUID_DROP)) - IF_MKTEMP(APPLET(mktemp, BB_DIR_BIN, BB_SUID_DROP)) - IF_MORE(APPLET(more, BB_DIR_BIN, BB_SUID_DROP)) ---- busybox-1.23.2.orig/include/libbb.h 2015-03-23 04:07:19.000000000 +0100 -+++ busybox-1.23.2/include/libbb.h 2015-07-04 18:52:25.264195500 +0200 -@@ -12,6 +12,20 @@ - - #include "platform.h" - -+#ifdef HAVE_INCOMPATIBLE_ITOA -+/* Hide itoa(int, char *, int) */ -+# define itoa do_not_use_itoa -+/* Hide utoa(unsigned, char *, int) */ -+# define utoa do_not_use_utoa -+#endif -+#include -+#ifdef HAVE_INCOMPATIBLE_ITOA -+# undef itoa -+# undef utoa -+# define itoa bb_itoa -+# define utoa bb_utoa -+#endif -+ - #include - #include - #include -@@ -26,9 +40,11 @@ - # define sigemptyset(s) __sigemptyset(s) - # define sigisemptyset(s) __sigisemptyset(s) - #endif -+#ifdef __CYGWIN__ -+# define sigisemptyset(s) (!*(s)) -+#endif - #include - #include --#include - #include - #include - #include -@@ -51,6 +67,13 @@ - #include - #include - #include -+#ifndef DEV_BSIZE -+# ifdef S_BLKSIZE -+# define DEV_BSIZE S_BLKSIZE -+# else -+# define DEV_BSIZE 512 -+# endif -+#endif - #include - #include - #if ENABLE_FEATURE_SHADOWPASSWDS -@@ -77,6 +100,9 @@ - * of struct sysinfo (only in some toolchanins), which breaks build. - * Include sys/sysinfo.h only in those files which need it. - */ -+#ifdef __CYGWIN__ -+#include -+#endif - #if ENABLE_SELINUX - # include - # include -@@ -107,7 +133,7 @@ - #ifndef _PATH_GSHADOW - #define _PATH_GSHADOW "/etc/gshadow" - #endif --#if defined __FreeBSD__ || defined __OpenBSD__ -+#if defined __FreeBSD__ || defined __OpenBSD__ || defined __CYGWIN__ - # include - # include - #elif defined __APPLE__ ---- busybox-1.23.2.orig/include/platform.h 2015-03-23 04:07:19.000000000 +0100 -+++ busybox-1.23.2/include/platform.h 2015-06-25 21:16:30.764288700 +0200 -@@ -346,7 +346,15 @@ typedef unsigned smalluint; - #endif - - #if defined(__CYGWIN__) -+# define GETADDRINFO_IGNORES_RESOLV_SERVER -+# define HAVE_INCOMPATIBLE_ITOA 1 -+# define KERNEL_HZ_EQUAL_SC_CLK_TCK -+# define KEYBOARD_ESC_POLL_TIMEOUT 600 /* Windows console requires longer timeout. */ -+# define MAN_FORMATTING_COMMAND "tbl | nroff -Tascii -mandoc 2>&1" - # define MAXSYMLINKS SYMLOOP_MAX -+# define NO_ROOT_UID_CHECK -+# define NO_SOCKOPT_IP_MULTICAST_IF -+# define TRACEROUTE_ONE_SOCKET_ONLY - #endif - - #if defined(ANDROID) || defined(__ANDROID__) -@@ -364,10 +372,13 @@ typedef unsigned smalluint; - #define HAVE_CLEARENV 1 - #define HAVE_FDATASYNC 1 - #define HAVE_DPRINTF 1 -+#define HAVE_IN_PKTINFO_IPI_SPEC_DST 1 /* struct in_pktinfo.ipi_spec_dst */ - #define HAVE_MEMRCHR 1 - #define HAVE_MKDTEMP 1 - #define HAVE_PTSNAME_R 1 -+#define HAVE_RES_STATE_U_EXT_NSADDRS 1 /* resolv.h: _res._u._ext.nsaddrs */ - #define HAVE_SETBIT 1 -+#define HAVE_SETHOSTNAME 1 - #define HAVE_SIGHANDLER_T 1 - #define HAVE_STPCPY 1 - #define HAVE_STRCASESTR 1 -@@ -375,6 +386,7 @@ typedef unsigned smalluint; - #define HAVE_STRSEP 1 - #define HAVE_STRSIGNAL 1 - #define HAVE_STRVERSCMP 1 -+#define HAVE_SYS_SYSCALL_H 1 - #define HAVE_VASPRINTF 1 - #define HAVE_USLEEP 1 - #define HAVE_UNLOCKED_STDIO 1 -@@ -383,6 +395,9 @@ typedef unsigned smalluint; - #define HAVE_XTABS 1 - #define HAVE_MNTENT_H 1 - #define HAVE_NET_ETHERNET_H 1 -+#define HAVE_STRUCT_ICMP -+#define HAVE_NETINET_ICMP6_H -+#define HAVE_STRUCT_IPHDR - #define HAVE_SYS_STATFS_H 1 - - #if defined(__UCLIBC__) -@@ -417,9 +432,14 @@ typedef unsigned smalluint; - #if defined(__CYGWIN__) - # undef HAVE_CLEARENV - # undef HAVE_FDPRINTF --# undef HAVE_MEMRCHR --# undef HAVE_PTSNAME_R -+# undef HAVE_IN_PKTINFO_IPI_SPEC_DST -+# undef HAVE_SETHOSTNAME - # undef HAVE_STRVERSCMP -+# undef HAVE_RES_STATE_U_EXT_NSADDRS -+# undef HAVE_STRUCT_ICMP -+# undef HAVE_NETINET_ICMP6_H -+# undef HAVE_STRUCT_IPHDR -+# undef HAVE_SYS_SYSCALL_H - # undef HAVE_UNLOCKED_LINE_OPS - #endif - ---- busybox-1.23.2.orig/libbb/missing_syscalls.c 2015-03-23 04:06:55.000000000 +0100 -+++ busybox-1.23.2/libbb/missing_syscalls.c 2015-06-25 21:16:30.764288700 +0200 -@@ -7,10 +7,11 @@ - //kbuild:lib-y += missing_syscalls.o - - /*#include - for struct timex, but may collide with */ --#include - #include "libbb.h" - - #if defined(ANDROID) || defined(__ANDROID__) -+#include -+ - pid_t getsid(pid_t pid) - { - return syscall(__NR_getsid, pid); ---- busybox-1.23.2.orig/libbb/read_key.c 2015-03-23 04:06:55.000000000 +0100 -+++ busybox-1.23.2/libbb/read_key.c 2015-06-25 21:16:30.764288700 +0200 -@@ -9,6 +9,10 @@ - */ - #include "libbb.h" - -+#ifndef KEYBOARD_ESC_POLL_TIMEOUT -+# define KEYBOARD_ESC_POLL_TIMEOUT 50 -+#endif -+ - int64_t FAST_FUNC read_key(int fd, char *buffer, int timeout) - { - struct pollfd pfd; -@@ -158,7 +162,7 @@ int64_t FAST_FUNC read_key(int fd, char - * so if we block for long it's not really an escape sequence. - * Timeout is needed to reconnect escape sequences - * split up by transmission over a serial console. */ -- if (safe_poll(&pfd, 1, 50) == 0) { -+ if (safe_poll(&pfd, 1, KEYBOARD_ESC_POLL_TIMEOUT) == 0) { - /* No more data! - * Array is sorted from shortest to longest, - * we can't match anything later in array - ---- busybox-1.23.2.orig/libbb/udp_io.c 2015-03-23 04:06:55.000000000 +0100 -+++ busybox-1.23.2/libbb/udp_io.c 2015-06-25 21:16:30.764288700 +0200 -@@ -8,6 +8,11 @@ - */ - #include "libbb.h" - -+#ifndef HAVE_IN_PKTINFO_IPI_SPEC_DST -+# undef IP_PKTINFO -+# undef IP6_PKTINFO -+#endif -+ - /* - * This asks kernel to let us know dst addr/port of incoming packets - * We don't check for errors here. Not supported == won't be used ---- busybox-1.23.2.orig/miscutils/man.c 2015-03-23 04:07:19.000000000 +0100 -+++ busybox-1.23.2/miscutils/man.c 2015-06-25 21:16:30.764288700 +0200 -@@ -12,6 +12,10 @@ - - #include "libbb.h" - -+#ifndef MAN_FORMATTING_COMMAND -+# define MAN_FORMATTING_COMMAND "gtbl | nroff -Tascii -mandoc 2>&1" -+#endif -+ - enum { - OPT_a = 1, /* all */ - OPT_w = 2, /* print path */ -@@ -107,7 +111,7 @@ static int run_pipe(const char *pager, c - * Otherwise it may show just empty screen */ - cmd = xasprintf( - /* replaced -Tlatin1 with -Tascii for non-UTF8 displays */ -- man ? "gtbl | nroff -Tascii -mandoc 2>&1 | %s" -+ man ? MAN_FORMATTING_COMMAND " | %s" - : "%s", - pager); - system(cmd); ---- busybox-1.23.2.orig/networking/hostname.c 2015-03-23 04:06:55.000000000 +0100 -+++ busybox-1.23.2/networking/hostname.c 2015-06-25 21:16:30.764288700 +0200 -@@ -31,6 +31,7 @@ - - static void do_sethostname(char *s, int isfile) - { -+#ifdef HAVE_SETHOSTNAME - // if (!s) - // return; - if (isfile) { -@@ -45,6 +46,11 @@ static void do_sethostname(char *s, int - // bb_error_msg_and_die(bb_msg_perm_denied_are_you_root); - bb_perror_msg_and_die("sethostname"); - } -+#else -+ (void)s; (void)isfile; -+ errno = ENOSYS; -+ bb_perror_msg_and_die("sethostname"); -+#endif - } - - /* Manpage circa 2009: ---- busybox-1.23.2.orig/networking/ip_icmp_missing.h 1970-01-01 01:00:00.000000000 +0100 -+++ busybox-1.23.2/networking/ip_icmp_missing.h 2015-06-25 21:16:30.764288700 +0200 -@@ -0,0 +1,162 @@ -+/* vi: set sw=4 ts=4: */ -+/* -+ * Declarations from , , -+ * missing on some platforms (Bionic, Cygwin) -+ * -+ * Licensed under GPLv2 or later, see file LICENSE in this source tree. -+ */ -+ -+#ifndef IP_ICMP_MISSING_H -+#define IP_ICMP_MISSING_H -+#ifndef LIBBB_H -+# error libbbb.h must be included first -+#endif -+ -+ -+// -+ -+#ifndef HAVE_STRUCT_IPHDR -+ -+struct iphdr { -+ unsigned ihl:4; -+ unsigned version:4; -+ uint8_t tos; -+ uint16_t tot_len; -+ uint16_t id; -+ uint16_t frag_off; -+ uint8_t ttl; -+ uint8_t protocol; -+ uint16_t check; -+ uint32_t saddr; -+ uint32_t daddr; -+}; -+ -+#endif // HAVE_STRUCT_IPHDR -+ -+#ifndef MAX_IPOPTLEN -+# define MAX_IPOPTLEN 40 -+#endif -+ -+// -+ -+#ifndef ICMP_ECHOREPLY // __CYGWIN__ -+# define ICMP_ECHOREPLY 0 -+#endif -+#ifndef ICMP_DEST_UNREACH // __BIONIC__ || __CYGWIN -+# define ICMP_DEST_UNREACH 3 -+# define ICMP_SOURCE_QUENCH 4 -+# define ICMP_REDIRECT 5 -+# define ICMP_ECHO 8 -+# define ICMP_TIME_EXCEEDED 11 -+# define ICMP_PARAMETERPROB 12 -+# define ICMP_TIMESTAMP 13 -+# define ICMP_TIMESTAMPREPLY 14 -+# define ICMP_INFO_REQUEST 15 -+# define ICMP_INFO_REPLY 16 -+# define ICMP_ADDRESS 17 -+# define ICMP_ADDRESSREPLY 18 -+#endif -+ -+#ifndef ICMP_MINLEN -+# define ICMP_MINLEN 8 -+#endif -+ -+#ifndef ICMP_UNREACH -+# define ICMP_UNREACH 3 -+# define ICMP_TIMXCEED 11 -+ -+# define ICMP_UNREACH_NET 0 -+# define ICMP_UNREACH_HOST 1 -+# define ICMP_UNREACH_PROTOCOL 2 -+# define ICMP_UNREACH_PORT 3 -+# define ICMP_UNREACH_NEEDFRAG 4 -+# define ICMP_UNREACH_SRCFAIL 5 -+# define ICMP_UNREACH_NET_UNKNOWN 6 -+# define ICMP_UNREACH_HOST_UNKNOWN 7 -+# define ICMP_UNREACH_ISOLATED 8 -+# define ICMP_UNREACH_NET_PROHIB 9 -+# define ICMP_UNREACH_HOST_PROHIB 10 -+# define ICMP_UNREACH_TOSNET 11 -+# define ICMP_UNREACH_TOSHOST 12 -+# define ICMP_UNREACH_FILTER_PROHIB 13 -+# define ICMP_UNREACH_HOST_PRECEDENCE 14 -+# define ICMP_UNREACH_PRECEDENCE_CUTOFF 15 -+ -+# define ICMP_TIMXCEED_INTRANS 0 -+# define ICMP_TIMXCEED_REASS 1 -+#endif -+ -+#ifndef HAVE_STRUCT_ICMP -+ -+struct icmp { -+ uint8_t icmp_type; -+ uint8_t icmp_code; -+ uint16_t icmp_cksum; -+ union { -+ struct ih_idseq { -+ uint16_t icd_id; -+ uint16_t icd_seq; -+ } ih_idseq; -+ struct ih_pmtu { -+ uint16_t ipm_void; -+ uint16_t ipm_nextmtu; -+ } ih_pmtu; -+ } icmp_hun; -+# define icmp_id icmp_hun.ih_idseq.icd_id -+# define icmp_seq icmp_hun.ih_idseq.icd_seq -+# define icmp_nextmtu icmp_hun.ih_pmtu.ipm_nextmtu -+ union { -+ uint32_t _unused[3]; -+ struct id_ip { -+ struct ip idi_ip; -+ } id_ip; -+ uint8_t id_data[1]; -+ } icmp_dun; -+# define icmp_ip icmp_dun.id_ip.idi_ip -+# define icmp_data icmp_dun.id_data -+}; -+ -+#endif // HAVE_STRUCT_ICMP -+ -+// -+ -+#ifndef HAVE_NETINET_ICMP6_H -+ -+struct icmp6_hdr { -+ uint8_t icmp6_type; -+ uint8_t icmp6_code; -+ uint16_t icmp6_cksum; -+ union { -+ uint32_t icmp6_un_data32[1]; -+ uint16_t icmp6_un_data16[2]; -+ uint8_t icmp6_un_data8[4]; -+ } icmp6_dataun; -+}; -+ -+#define icmp6_data16 icmp6_dataun.icmp6_un_data16 -+#define icmp6_data8 icmp6_dataun.icmp6_un_data8 -+#define icmp6_id icmp6_data16[0] -+#define icmp6_seq icmp6_data16[1] -+ -+#define ICMP6_DST_UNREACH 1 -+#define ICMP6_PACKET_TOO_BIG 2 -+#define ICMP6_TIME_EXCEEDED 3 -+#define ICMP6_PARAM_PROB 4 -+ -+#define ICMP6_ECHO_REQUEST 128 -+#define ICMP6_ECHO_REPLY 129 -+#define MLD_LISTENER_QUERY 130 -+#define MLD_LISTENER_REPORT 131 -+#define MLD_LISTENER_REDUCTION 132 -+ -+#define ICMP6_DST_UNREACH_NOROUTE 0 -+#define ICMP6_DST_UNREACH_ADMIN 1 -+#define ICMP6_DST_UNREACH_ADDR 3 -+#define ICMP6_DST_UNREACH_NOPORT 4 -+#define ICMP6_TIME_EXCEED_TRANSIT 0 -+ -+#define ND_REDIRECT 137 -+ -+#endif // HAVE_NETINET_ICMP6_H -+ -+#endif // IP_ICMP_MISSING_H ---- busybox-1.23.2.orig/networking/nslookup.c 2015-03-23 04:06:55.000000000 +0100 -+++ busybox-1.23.2/networking/nslookup.c 2015-06-25 21:16:30.779888800 +0200 -@@ -119,16 +119,27 @@ static void server_print(void) - char *server; - struct sockaddr *sa; - --#if ENABLE_FEATURE_IPV6 -+#if ENABLE_FEATURE_IPV6 && defined(HAVE_RES_STATE_U_EXT_NSADDRS) - sa = (struct sockaddr*)_res._u._ext.nsaddrs[0]; - if (!sa) - #endif -- sa = (struct sockaddr*)&_res.nsaddr_list[0]; -+ sa = (_res.nscount > 0 ? (struct sockaddr*)&_res.nsaddr_list[0] : NULL); -+ -+ if (!sa) { -+ printf("Server: [unknown]\n\n"); -+ return; -+ } -+ - server = xmalloc_sockaddr2dotted_noport(sa); - - print_host(server, "Server:"); - if (ENABLE_FEATURE_CLEAN_UP) - free(server); -+ -+#ifdef GETADDRINFO_IGNORES_RESOLV_SERVER -+ bb_error_msg("warning: this server config is possibly ignored"); -+#endif -+ - bb_putchar('\n'); - } - -@@ -149,7 +160,7 @@ static void set_default_dns(const char * - /* struct copy */ - _res.nsaddr_list[0] = lsa->u.sin; - } --#if ENABLE_FEATURE_IPV6 -+#if ENABLE_FEATURE_IPV6 && defined(HAVE_RES_STATE_U_EXT_NSADDRS) - /* Hoped libc can cope with IPv4 address there too. - * No such luck, glibc 2.4 segfaults even with IPv6, - * maybe I misunderstand how to make glibc use IPv6 addr? ---- busybox-1.23.2.orig/networking/ping.c 2015-03-23 04:06:55.000000000 +0100 -+++ busybox-1.23.2/networking/ping.c 2015-06-25 21:16:30.779888800 +0200 -@@ -26,24 +26,10 @@ - */ - - #include -+#include - #include - #include "libbb.h" -- --#ifdef __BIONIC__ --/* should be in netinet/ip_icmp.h */ --# define ICMP_DEST_UNREACH 3 /* Destination Unreachable */ --# define ICMP_SOURCE_QUENCH 4 /* Source Quench */ --# define ICMP_REDIRECT 5 /* Redirect (change route) */ --# define ICMP_ECHO 8 /* Echo Request */ --# define ICMP_TIME_EXCEEDED 11 /* Time Exceeded */ --# define ICMP_PARAMETERPROB 12 /* Parameter Problem */ --# define ICMP_TIMESTAMP 13 /* Timestamp Request */ --# define ICMP_TIMESTAMPREPLY 14 /* Timestamp Reply */ --# define ICMP_INFO_REQUEST 15 /* Information Request */ --# define ICMP_INFO_REPLY 16 /* Information Reply */ --# define ICMP_ADDRESS 17 /* Address Mask Request */ --# define ICMP_ADDRESSREPLY 18 /* Address Mask Reply */ --#endif -+#include "ip_icmp_missing.h" - - //config:config PING - //config: bool "ping" -@@ -135,6 +121,7 @@ - //usage: "round-trip min/avg/max = 20.1/20.1/20.1 ms\n" - - #if ENABLE_PING6 -+#ifdef HAVE_NETINET_ICMP6_H - # include - /* I see RENUMBERED constants in bits/in.h - !!? - * What a fuck is going on with libc? Is it a glibc joke? */ -@@ -143,6 +130,7 @@ - # define IPV6_HOPLIMIT IPV6_2292HOPLIMIT - # endif - #endif -+#endif - - enum { - DEFDATALEN = 56, -@@ -246,8 +234,10 @@ static void ping6(len_and_sockaddr *lsa) - /*memset(pkt, 0, sizeof(G.packet)); already is */ - pkt->icmp6_type = ICMP6_ECHO_REQUEST; - -+#ifdef SOL_RAW - sockopt = offsetof(struct icmp6_hdr, icmp6_cksum); - setsockopt(pingsock, SOL_RAW, IPV6_CHECKSUM, &sockopt, sizeof(sockopt)); -+#endif - - xsendto(pingsock, G.packet, DEFDATALEN + sizeof(struct icmp6_hdr), &lsa->u.sa, lsa->len); - -@@ -688,9 +678,11 @@ static void ping4(len_and_sockaddr *lsa) - - pingaddr.sin = lsa->u.sin; - if (source_lsa) { -+#ifndef NO_SOCKOPT_IP_MULTICAST_IF - if (setsockopt(pingsock, IPPROTO_IP, IP_MULTICAST_IF, - &source_lsa->u.sa, source_lsa->len)) - bb_error_msg_and_die("can't set multicast source interface"); -+#endif - xbind(pingsock, &source_lsa->u.sa, source_lsa->len); - } - -@@ -768,10 +760,12 @@ static void ping6(len_and_sockaddr *lsa) - sockopt = (datalen * 2) + 7 * 1024; /* giving it a bit of extra room */ - setsockopt(pingsock, SOL_SOCKET, SO_RCVBUF, &sockopt, sizeof(sockopt)); - -+#ifdef SOL_RAW - sockopt = offsetof(struct icmp6_hdr, icmp6_cksum); - if (offsetof(struct icmp6_hdr, icmp6_cksum) != 2) - BUG_bad_offsetof_icmp6_cksum(); - setsockopt(pingsock, SOL_RAW, IPV6_CHECKSUM, &sockopt, sizeof(sockopt)); -+#endif - - /* request ttl info to be returned in ancillary data */ - setsockopt(pingsock, SOL_IPV6, IPV6_HOPLIMIT, &const_int_1, sizeof(const_int_1)); ---- busybox-1.23.2.orig/networking/traceroute.c 2015-03-23 04:06:55.000000000 +0100 -+++ busybox-1.23.2/networking/traceroute.c 2015-06-25 21:16:30.779888800 +0200 -@@ -271,7 +271,7 @@ - #include - #include - #include --#if ENABLE_FEATURE_IPV6 -+#if ENABLE_TRACEROUTE6 - # include - # include - # ifndef SOL_IPV6 -@@ -280,6 +280,7 @@ - #endif - - #include "libbb.h" -+#include "ip_icmp_missing.h" - #include "inet_common.h" - - #ifndef IPPROTO_ICMP -@@ -289,6 +290,11 @@ - # define IPPROTO_IP 0 - #endif - -+#ifdef TRACEROUTE_ONE_SOCKET_ONLY -+# if !(ENABLE_FEATURE_TRACEROUTE_USE_ICMP && !ENABLE_TRACEROUTE6) -+# error (FEATURE_TRACEROUTE_USE_ICMP && !TRACEROUTE6) is required on this platform -+# endif -+#endif - - #define OPT_STRING \ - "FIlnrdvxt:i:m:p:q:s:w:z:f:" \ -@@ -321,7 +327,11 @@ enum { - enum { - SIZEOF_ICMP_HDR = 8, - rcvsock = 3, /* receive (icmp) socket file descriptor */ -+#ifndef TRACEROUTE_ONE_SOCKET_ONLY - sndsock = 4, /* send (udp/icmp) socket file descriptor */ -+#else -+ sndsock = rcvsock, /* use one (icmp) socket file descriptor */ -+#endif - }; - - /* Data section of the probe packet */ -@@ -581,7 +591,6 @@ packet4_ok(int read_len, const struct so - || type == ICMP_ECHOREPLY - ) { - const struct ip *hip; -- const struct udphdr *up; - - hip = &icp->icmp_ip; - hlen = hip->ip_hl << 2; -@@ -604,7 +613,11 @@ packet4_ok(int read_len, const struct so - ) { - return (type == ICMP_TIMXCEED ? -1 : code + 1); - } -- } else { -+ } -+#ifndef TRACEROUTE_ONE_SOCKET_ONLY -+ else { -+ const struct udphdr *up; -+ - up = (struct udphdr *)((char *)hip + hlen); - if (hlen + 12 <= read_len - && hip->ip_p == IPPROTO_UDP -@@ -617,6 +630,7 @@ packet4_ok(int read_len, const struct so - return (type == ICMP_TIMXCEED ? -1 : code + 1); - } - } -+#endif - } - #if ENABLE_FEATURE_TRACEROUTE_VERBOSE - if (verbose) { -@@ -836,6 +850,12 @@ common_traceroute_main(int op, char **ar - ); - argv += optind; - -+#ifdef TRACEROUTE_ONE_SOCKET_ONLY -+ if (op & (OPT_USE_ICMP|OPT_PORT)) -+ bb_error_msg("warning: -I and -p have no effect (ICMP is always used instead of UDP)"); -+ op |= OPT_USE_ICMP; -+ option_mask32 |= OPT_USE_ICMP; -+#endif - #if 0 /* IGNORED */ - if (op & OPT_IP_CHKSUM) - bb_error_msg("warning: ip checksums disabled"); -@@ -850,6 +870,7 @@ common_traceroute_main(int op, char **ar - port = xatou16(port_str); - if (op & OPT_NPROBES) - nprobes = xatou_range(nprobes_str, 1, INT_MAX); -+#ifndef NO_ROOT_UID_CHECK - if (op & OPT_SOURCE) { - /* - * set the ip source address of the outbound -@@ -858,6 +879,7 @@ common_traceroute_main(int op, char **ar - if (getuid() != 0) - bb_error_msg_and_die(bb_msg_you_must_be_root); - } -+#endif - if (op & OPT_WAITTIME) - waittime = xatou_range(waittime_str, 1, 24 * 60 * 60); - if (op & OPT_PAUSE_MS) -@@ -941,10 +963,12 @@ common_traceroute_main(int op, char **ar - } else - #endif - { -+#ifndef TRACEROUTE_ONE_SOCKET_ONLY - if (op & OPT_USE_ICMP) - xmove_fd(xsocket(AF_INET, SOCK_RAW, IPPROTO_ICMP), sndsock); - else - xmove_fd(xsocket(AF_INET, SOCK_DGRAM, 0), sndsock); -+#endif - #if ENABLE_FEATURE_TRACEROUTE_SOURCE_ROUTE && defined IP_OPTIONS - if (lsrr > 0) { - unsigned char optlist[MAX_IPOPTLEN]; -@@ -1022,10 +1046,12 @@ common_traceroute_main(int op, char **ar - len_and_sockaddr *source_lsa = xdotted2sockaddr(source, 0); - #endif - /* Ping4 does this (why?) */ -+#ifndef NO_SOCKOPT_IP_MULTICAST_IF - if (af == AF_INET) - if (setsockopt(sndsock, IPPROTO_IP, IP_MULTICAST_IF, - &source_lsa->u.sa, source_lsa->len)) - bb_error_msg_and_die("can't set multicast source interface"); -+#endif - //TODO: we can query source port we bound to, - // and check it in replies... if we care enough - xbind(sndsock, &source_lsa->u.sa, source_lsa->len); ---- busybox-1.23.2.orig/procps/ps.c 2015-03-23 04:06:55.000000000 +0100 -+++ busybox-1.23.2/procps/ps.c 2015-06-25 21:16:30.779888800 +0200 -@@ -155,6 +155,7 @@ struct globals { - #define INIT_G() do { } while (0) - - #if ENABLE_FEATURE_PS_TIME -+#ifndef KERNEL_HZ_EQUAL_SC_CLK_TCK - /* for ELF executables, notes are pushed before environment and args */ - static uintptr_t find_elf_note(uintptr_t findme) - { -@@ -221,16 +222,21 @@ static inline unsigned get_HZ_by_waiting - return 100; - } - #endif -+#endif // !KERNEL_HZ_EQUAL_SC_CLK_TCK - - static unsigned get_kernel_HZ(void) - { - if (kernel_HZ) - return kernel_HZ; - -+#ifdef KERNEL_HZ_EQUAL_SC_CLK_TCK -+ kernel_HZ = bb_clk_tck(); -+#else - /* Works for ELF only, Linux 2.4.0+ */ - kernel_HZ = find_elf_note(AT_CLKTCK); - if (kernel_HZ == (unsigned)-1) - kernel_HZ = get_HZ_by_waiting(); -+#endif - - G.seconds_since_boot = get_uptime(); - ---- busybox-1.23.2.orig/procps/top.c 2015-03-23 04:06:55.000000000 +0100 -+++ busybox-1.23.2/procps/top.c 2015-06-25 21:16:30.779888800 +0200 -@@ -311,7 +311,7 @@ static void get_jiffy_counts(void) - */ - while (1) { - cpu_jif = xrealloc_vector(cpu_jif, 1, num_cpus); -- if (read_cpu_jiffy(fp, &cpu_jif[num_cpus]) <= 4) -+ if (read_cpu_jiffy(fp, &cpu_jif[num_cpus]) < 4) - break; - num_cpus++; - } ---- busybox-1.23.2.orig/shell/ash.c 2015-03-23 04:07:19.000000000 +0100 -+++ busybox-1.23.2/shell/ash.c 2015-06-29 20:53:57.762924200 +0200 -@@ -42,6 +42,9 @@ - #include - #include - #include /* for setting $HOSTNAME */ -+#ifdef __CYGWIN__ -+#include -+#endif - - #include "busybox.h" /* for applet_names */ - #include "unicode.h" -@@ -2649,9 +2652,23 @@ cdcmd(int argc UNUSED_PARAM, char **argv - char c; - struct stat statb; - int flags; -+#ifdef __CYGWIN__ -+ char posixpath[PATH_MAX]; -+#endif - - flags = cdopt(); - dest = *argptr; -+ -+#ifdef __CYGWIN__ -+ if (dest && *dest && dest[1]) { -+ // Convert X:\SOME\DIR -> /cygdrive/x/SOME/DIR -+ if (cygwin_conv_path(CCP_WIN_A_TO_POSIX | CCP_RELATIVE, dest, -+ posixpath, sizeof(posixpath)) < 0) -+ ash_msg_and_raise_error("can't normalize %s", dest); -+ dest = posixpath; -+ } -+#endif -+ - if (!dest) - dest = bltinlookup("HOME"); - else if (LONE_DASH(dest)) { diff --git a/busybox/busybox-1.31.1-msys2.patch b/busybox/busybox-1.31.1-msys2.patch new file mode 100644 index 00000000..8f3691f2 --- /dev/null +++ b/busybox/busybox-1.31.1-msys2.patch @@ -0,0 +1,747 @@ +diff -Naur busybox-1.31.1-orig/coreutils/date.c busybox-1.31.1/coreutils/date.c +--- busybox-1.31.1-orig/coreutils/date.c 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/coreutils/date.c 2020-04-29 20:17:14.678630100 +0300 +@@ -139,7 +139,7 @@ + + #include "libbb.h" + #include "common_bufsiz.h" +-#if ENABLE_FEATURE_DATE_NANO ++#if ENABLE_FEATURE_DATE_NANO && defined(HAVE_SYS_SYSCALL_H) + # include + #endif + +@@ -272,10 +272,13 @@ + #endif + } else { + #if ENABLE_FEATURE_DATE_NANO ++# ifdef HAVE_SYS_SYSCALL_H + /* libc has incredibly messy way of doing this, + * typically requiring -lrt. We just skip all this mess */ + syscall(__NR_clock_gettime, CLOCK_REALTIME, &ts); +-#else ++# else ++ clock_gettime(CLOCK_REALTIME, &ts); ++# endif + time(&ts.tv_sec); + #endif + } +diff -Naur busybox-1.31.1-orig/coreutils/du.c busybox-1.31.1/coreutils/du.c +--- busybox-1.31.1-orig/coreutils/du.c 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/coreutils/du.c 2020-04-29 20:15:37.413377400 +0300 +@@ -172,6 +172,10 @@ + } + } + ++ if (DEV_BSIZE > 512) { ++ sum *= DEV_BSIZE / 512; ++ } ++ + if (!(option_mask32 & OPT_l_hardlinks) + && statbuf.st_nlink > 1 + ) { +diff -Naur busybox-1.31.1-orig/coreutils/ls.c busybox-1.31.1/coreutils/ls.c +--- busybox-1.31.1-orig/coreutils/ls.c 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/coreutils/ls.c 2020-04-29 20:15:37.980872400 +0300 +@@ -742,6 +742,9 @@ + #endif + cur->dn_ino = statbuf.st_ino ; + cur->dn_blocks = statbuf.st_blocks; ++ if (DEV_BSIZE > 512) { ++ cur->dn_blocks *= DEV_BSIZE / 512; ++ } + cur->dn_nlink = statbuf.st_nlink ; + cur->dn_uid = statbuf.st_uid ; + cur->dn_gid = statbuf.st_gid ; +diff -Naur busybox-1.31.1-orig/coreutils/stat.c busybox-1.31.1/coreutils/stat.c +--- busybox-1.31.1-orig/coreutils/stat.c 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/coreutils/stat.c 2020-04-29 20:15:38.559936200 +0300 +@@ -376,7 +376,7 @@ + printf(pformat, (unsigned long long) statbuf->st_size); + } else if (m == 'B') { + strcat(pformat, "lu"); +- printf(pformat, (unsigned long) 512); //ST_NBLOCKSIZE ++ printf(pformat, (unsigned long) DEV_BSIZE); + } else if (m == 'b') { + strcat(pformat, "llu"); + printf(pformat, (unsigned long long) statbuf->st_blocks); +diff -Naur busybox-1.31.1-orig/include/libbb.h busybox-1.31.1/include/libbb.h +--- busybox-1.31.1-orig/include/libbb.h 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/include/libbb.h 2020-04-29 20:15:39.688914800 +0300 +@@ -12,6 +12,20 @@ + + #include "platform.h" + ++#ifdef HAVE_INCOMPATIBLE_ITOA ++/* Hide itoa(int, char *, int) */ ++# define itoa do_not_use_itoa ++/* Hide utoa(unsigned, char *, int) */ ++# define utoa do_not_use_utoa ++#endif ++#include ++#ifdef HAVE_INCOMPATIBLE_ITOA ++# undef itoa ++# undef utoa ++# define itoa bb_itoa ++# define utoa bb_utoa ++#endif ++ + #include + #include + #include +@@ -27,9 +41,11 @@ + # define sigemptyset(s) __sigemptyset(s) + # define sigisemptyset(s) __sigisemptyset(s) + #endif ++#ifdef __CYGWIN__ ++# define sigisemptyset(s) (!*(s)) ++#endif + #include + #include +-#include + #include + #include + #include +@@ -53,6 +69,13 @@ + #include + #include + #include ++#ifndef DEV_BSIZE ++# ifdef S_BLKSIZE ++# define DEV_BSIZE S_BLKSIZE ++# else ++# define DEV_BSIZE 512 ++# endif ++#endif + #include + #include + #if ENABLE_FEATURE_SHADOWPASSWDS +@@ -79,6 +102,9 @@ + * of struct sysinfo (only in some toolchanins), which breaks build. + * Include sys/sysinfo.h only in those files which need it. + */ ++#ifdef __CYGWIN__ ++#include ++#endif + #if ENABLE_SELINUX + # include + # include +@@ -134,7 +160,7 @@ + #ifndef _PATH_GSHADOW + #define _PATH_GSHADOW "/etc/gshadow" + #endif +-#if defined __FreeBSD__ || defined __OpenBSD__ ++#if defined __FreeBSD__ || defined __OpenBSD__ || defined __CYGWIN__ + # include + # include + #elif defined __APPLE__ +diff -Naur busybox-1.31.1-orig/include/platform.h busybox-1.31.1/include/platform.h +--- busybox-1.31.1-orig/include/platform.h 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/include/platform.h 2020-04-29 20:31:57.357589600 +0300 +@@ -376,7 +390,15 @@ + #endif + + #if defined(__CYGWIN__) ++# define GETADDRINFO_IGNORES_RESOLV_SERVER ++# define HAVE_INCOMPATIBLE_ITOA 1 ++# define KERNEL_HZ_EQUAL_SC_CLK_TCK ++# define KEYBOARD_ESC_POLL_TIMEOUT 600 /* Windows console requires longer timeout. */ ++# define MAN_FORMATTING_COMMAND "tbl | nroff -Tascii -mandoc 2>&1" + # define MAXSYMLINKS SYMLOOP_MAX ++# define NO_ROOT_UID_CHECK ++# define NO_SOCKOPT_IP_MULTICAST_IF ++# define TRACEROUTE_ONE_SOCKET_ONLY + #endif + + #if defined(ANDROID) || defined(__ANDROID__) +@@ -394,11 +416,14 @@ + #define HAVE_CLEARENV 1 + #define HAVE_FDATASYNC 1 + #define HAVE_DPRINTF 1 ++#define HAVE_IN_PKTINFO_IPI_SPEC_DST 1 /* struct in_pktinfo.ipi_spec_dst */ + #define HAVE_MEMRCHR 1 + #define HAVE_MKDTEMP 1 + #define HAVE_TTYNAME_R 1 + #define HAVE_PTSNAME_R 1 ++#define HAVE_RES_STATE_U_EXT_NSADDRS 1 /* resolv.h: _res._u._ext.nsaddrs */ + #define HAVE_SETBIT 1 ++#define HAVE_SETHOSTNAME 1 + #define HAVE_SIGHANDLER_T 1 + #define HAVE_STPCPY 1 + #define HAVE_MEMPCPY 1 +@@ -407,6 +432,7 @@ + #define HAVE_STRSEP 1 + #define HAVE_STRSIGNAL 1 + #define HAVE_STRVERSCMP 1 ++#define HAVE_SYS_SYSCALL_H 1 + #define HAVE_VASPRINTF 1 + #define HAVE_USLEEP 1 + #define HAVE_UNLOCKED_STDIO 1 +@@ -415,6 +441,9 @@ + #define HAVE_XTABS 1 + #define HAVE_MNTENT_H 1 + #define HAVE_NET_ETHERNET_H 1 ++#define HAVE_STRUCT_ICMP ++#define HAVE_NETINET_ICMP6_H ++#define HAVE_STRUCT_IPHDR + #define HAVE_SYS_STATFS_H 1 + #define HAVE_PRINTF_PERCENTM 1 + +@@ -450,9 +479,14 @@ + #if defined(__CYGWIN__) + # undef HAVE_CLEARENV + # undef HAVE_FDPRINTF +-# undef HAVE_MEMRCHR +-# undef HAVE_PTSNAME_R ++# undef HAVE_IN_PKTINFO_IPI_SPEC_DST ++# undef HAVE_SETHOSTNAME + # undef HAVE_STRVERSCMP ++# undef HAVE_RES_STATE_U_EXT_NSADDRS ++# undef HAVE_STRUCT_ICMP ++# undef HAVE_NETINET_ICMP6_H ++# undef HAVE_STRUCT_IPHDR ++# undef HAVE_SYS_SYSCALL_H + # undef HAVE_UNLOCKED_LINE_OPS + #endif + +diff -Naur busybox-1.31.1-orig/libbb/in_ether.c busybox-1.31.1/libbb/in_ether.c +--- busybox-1.31.1-orig/libbb/in_ether.c 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/libbb/in_ether.c 2020-04-29 19:28:33.325849100 +0300 +@@ -10,6 +10,11 @@ + #include + #include + ++/* Octets in one Ethernet addr, from */ ++#ifndef ETH_ALEN ++#define ETH_ALEN 6 ++#endif ++ + /* Convert Ethernet address from "XX[:]XX[:]XX[:]XX[:]XX[:]XX" to sockaddr. + * Return nonzero on error. + */ +diff -Naur busybox-1.31.1-orig/libbb/read_key.c busybox-1.31.1/libbb/read_key.c +--- busybox-1.31.1-orig/libbb/read_key.c 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/libbb/read_key.c 2020-04-29 20:15:41.665639600 +0300 +@@ -9,6 +9,10 @@ + */ + #include "libbb.h" + ++#ifndef KEYBOARD_ESC_POLL_TIMEOUT ++# define KEYBOARD_ESC_POLL_TIMEOUT 50 ++#endif ++ + int64_t FAST_FUNC read_key(int fd, char *buffer, int timeout) + { + struct pollfd pfd; +@@ -170,7 +174,7 @@ + * so if we block for long it's not really an escape sequence. + * Timeout is needed to reconnect escape sequences + * split up by transmission over a serial console. */ +- if (safe_poll(&pfd, 1, 50) == 0) { ++ if (safe_poll(&pfd, 1, KEYBOARD_ESC_POLL_TIMEOUT) == 0) { + /* No more data! + * Array is sorted from shortest to longest, + * we can't match anything later in array - +diff -Naur busybox-1.31.1-orig/libbb/udp_io.c busybox-1.31.1/libbb/udp_io.c +--- busybox-1.31.1-orig/libbb/udp_io.c 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/libbb/udp_io.c 2020-04-29 20:15:42.227240900 +0300 +@@ -8,10 +8,20 @@ + */ + #include "libbb.h" + ++#ifndef HAVE_IN_PKTINFO_IPI_SPEC_DST ++# undef IP_PKTINFO ++# undef IP6_PKTINFO ++#endif ++ + #if defined(IPV6_PKTINFO) && !defined(IPV6_RECVPKTINFO) + # define IPV6_RECVPKTINFO IPV6_PKTINFO + #endif + ++#ifndef HAVE_IN_PKTINFO_IPI_SPEC_DST ++# undef IP_PKTINFO ++# undef IP6_PKTINFO ++#endif ++ + /* + * This asks kernel to let us know dst addr/port of incoming packets + * We don't check for errors here. Not supported == won't be used +diff -Naur busybox-1.31.1-orig/networking/hostname.c busybox-1.31.1/networking/hostname.c +--- busybox-1.31.1-orig/networking/hostname.c 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/networking/hostname.c 2020-04-29 20:15:43.648288100 +0300 +@@ -49,6 +49,7 @@ + + static void do_sethostname(char *s, int isfile) + { ++#ifdef HAVE_SETHOSTNAME + // if (!s) + // return; + if (isfile) { +@@ -63,6 +64,11 @@ + // bb_error_msg_and_die(bb_msg_perm_denied_are_you_root); + bb_perror_msg_and_die("sethostname"); + } ++#else ++ (void)s; (void)isfile; ++ errno = ENOSYS; ++ bb_perror_msg_and_die("sethostname"); ++#endif + } + + /* Manpage circa 2009: +diff -Naur busybox-1.31.1-orig/networking/ip_icmp_missing.h busybox-1.31.1/networking/ip_icmp_missing.h +--- busybox-1.31.1-orig/networking/ip_icmp_missing.h 1970-01-01 03:00:00.000000000 +0300 ++++ busybox-1.31.1/networking/ip_icmp_missing.h 2020-04-29 20:15:44.220769300 +0300 +@@ -0,0 +1,162 @@ ++/* vi: set sw=4 ts=4: */ ++/* ++ * Declarations from , , ++ * missing on some platforms (Bionic, Cygwin) ++ * ++ * Licensed under GPLv2 or later, see file LICENSE in this source tree. ++ */ ++ ++#ifndef IP_ICMP_MISSING_H ++#define IP_ICMP_MISSING_H ++#ifndef LIBBB_H ++# error libbbb.h must be included first ++#endif ++ ++ ++// ++ ++#ifndef HAVE_STRUCT_IPHDR ++ ++struct iphdr { ++ unsigned ihl:4; ++ unsigned version:4; ++ uint8_t tos; ++ uint16_t tot_len; ++ uint16_t id; ++ uint16_t frag_off; ++ uint8_t ttl; ++ uint8_t protocol; ++ uint16_t check; ++ uint32_t saddr; ++ uint32_t daddr; ++}; ++ ++#endif // HAVE_STRUCT_IPHDR ++ ++#ifndef MAX_IPOPTLEN ++# define MAX_IPOPTLEN 40 ++#endif ++ ++// ++ ++#ifndef ICMP_ECHOREPLY // __CYGWIN__ ++# define ICMP_ECHOREPLY 0 ++#endif ++#ifndef ICMP_DEST_UNREACH // __BIONIC__ || __CYGWIN ++# define ICMP_DEST_UNREACH 3 ++# define ICMP_SOURCE_QUENCH 4 ++# define ICMP_REDIRECT 5 ++# define ICMP_ECHO 8 ++# define ICMP_TIME_EXCEEDED 11 ++# define ICMP_PARAMETERPROB 12 ++# define ICMP_TIMESTAMP 13 ++# define ICMP_TIMESTAMPREPLY 14 ++# define ICMP_INFO_REQUEST 15 ++# define ICMP_INFO_REPLY 16 ++# define ICMP_ADDRESS 17 ++# define ICMP_ADDRESSREPLY 18 ++#endif ++ ++#ifndef ICMP_MINLEN ++# define ICMP_MINLEN 8 ++#endif ++ ++#ifndef ICMP_UNREACH ++# define ICMP_UNREACH 3 ++# define ICMP_TIMXCEED 11 ++ ++# define ICMP_UNREACH_NET 0 ++# define ICMP_UNREACH_HOST 1 ++# define ICMP_UNREACH_PROTOCOL 2 ++# define ICMP_UNREACH_PORT 3 ++# define ICMP_UNREACH_NEEDFRAG 4 ++# define ICMP_UNREACH_SRCFAIL 5 ++# define ICMP_UNREACH_NET_UNKNOWN 6 ++# define ICMP_UNREACH_HOST_UNKNOWN 7 ++# define ICMP_UNREACH_ISOLATED 8 ++# define ICMP_UNREACH_NET_PROHIB 9 ++# define ICMP_UNREACH_HOST_PROHIB 10 ++# define ICMP_UNREACH_TOSNET 11 ++# define ICMP_UNREACH_TOSHOST 12 ++# define ICMP_UNREACH_FILTER_PROHIB 13 ++# define ICMP_UNREACH_HOST_PRECEDENCE 14 ++# define ICMP_UNREACH_PRECEDENCE_CUTOFF 15 ++ ++# define ICMP_TIMXCEED_INTRANS 0 ++# define ICMP_TIMXCEED_REASS 1 ++#endif ++ ++#ifndef HAVE_STRUCT_ICMP ++ ++struct icmp { ++ uint8_t icmp_type; ++ uint8_t icmp_code; ++ uint16_t icmp_cksum; ++ union { ++ struct ih_idseq { ++ uint16_t icd_id; ++ uint16_t icd_seq; ++ } ih_idseq; ++ struct ih_pmtu { ++ uint16_t ipm_void; ++ uint16_t ipm_nextmtu; ++ } ih_pmtu; ++ } icmp_hun; ++# define icmp_id icmp_hun.ih_idseq.icd_id ++# define icmp_seq icmp_hun.ih_idseq.icd_seq ++# define icmp_nextmtu icmp_hun.ih_pmtu.ipm_nextmtu ++ union { ++ uint32_t _unused[3]; ++ struct id_ip { ++ struct ip idi_ip; ++ } id_ip; ++ uint8_t id_data[1]; ++ } icmp_dun; ++# define icmp_ip icmp_dun.id_ip.idi_ip ++# define icmp_data icmp_dun.id_data ++}; ++ ++#endif // HAVE_STRUCT_ICMP ++ ++// ++ ++#ifndef HAVE_NETINET_ICMP6_H ++ ++struct icmp6_hdr { ++ uint8_t icmp6_type; ++ uint8_t icmp6_code; ++ uint16_t icmp6_cksum; ++ union { ++ uint32_t icmp6_un_data32[1]; ++ uint16_t icmp6_un_data16[2]; ++ uint8_t icmp6_un_data8[4]; ++ } icmp6_dataun; ++}; ++ ++#define icmp6_data16 icmp6_dataun.icmp6_un_data16 ++#define icmp6_data8 icmp6_dataun.icmp6_un_data8 ++#define icmp6_id icmp6_data16[0] ++#define icmp6_seq icmp6_data16[1] ++ ++#define ICMP6_DST_UNREACH 1 ++#define ICMP6_PACKET_TOO_BIG 2 ++#define ICMP6_TIME_EXCEEDED 3 ++#define ICMP6_PARAM_PROB 4 ++ ++#define ICMP6_ECHO_REQUEST 128 ++#define ICMP6_ECHO_REPLY 129 ++#define MLD_LISTENER_QUERY 130 ++#define MLD_LISTENER_REPORT 131 ++#define MLD_LISTENER_REDUCTION 132 ++ ++#define ICMP6_DST_UNREACH_NOROUTE 0 ++#define ICMP6_DST_UNREACH_ADMIN 1 ++#define ICMP6_DST_UNREACH_ADDR 3 ++#define ICMP6_DST_UNREACH_NOPORT 4 ++#define ICMP6_TIME_EXCEED_TRANSIT 0 ++ ++#define ND_REDIRECT 137 ++ ++#endif // HAVE_NETINET_ICMP6_H ++ ++#endif // IP_ICMP_MISSING_H +diff -Naur busybox-1.31.1-orig/networking/nslookup.c busybox-1.31.1/networking/nslookup.c +--- busybox-1.31.1-orig/networking/nslookup.c 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/networking/nslookup.c 2020-04-29 20:15:44.514947800 +0300 +@@ -147,16 +147,27 @@ + char *server; + struct sockaddr *sa; + +-#if ENABLE_FEATURE_IPV6 ++#if ENABLE_FEATURE_IPV6 && defined(HAVE_RES_STATE_U_EXT_NSADDRS) + sa = (struct sockaddr*)_res._u._ext.nsaddrs[0]; + if (!sa) + #endif +- sa = (struct sockaddr*)&_res.nsaddr_list[0]; ++ sa = (_res.nscount > 0 ? (struct sockaddr*)&_res.nsaddr_list[0] : NULL); ++ ++ if (!sa) { ++ printf("Server: [unknown]\n\n"); ++ return; ++ } ++ + server = xmalloc_sockaddr2dotted_noport(sa); + + print_host(server, "Server:"); + if (ENABLE_FEATURE_CLEAN_UP) + free(server); ++ ++#ifdef GETADDRINFO_IGNORES_RESOLV_SERVER ++ bb_error_msg("warning: this server config is possibly ignored"); ++#endif ++ + bb_putchar('\n'); + } + +@@ -177,7 +188,7 @@ + /* struct copy */ + _res.nsaddr_list[0] = lsa->u.sin; + } +-#if ENABLE_FEATURE_IPV6 ++#if ENABLE_FEATURE_IPV6 && defined(HAVE_RES_STATE_U_EXT_NSADDRS) + /* Hoped libc can cope with IPv4 address there too. + * No such luck, glibc 2.4 segfaults even with IPv6, + * maybe I misunderstand how to make glibc use IPv6 addr? +diff -Naur busybox-1.31.1-orig/networking/ping.c busybox-1.31.1/networking/ping.c +--- busybox-1.31.1-orig/networking/ping.c 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/networking/ping.c 2020-04-29 20:25:06.178811400 +0300 +@@ -119,25 +119,11 @@ + //usage: "round-trip min/avg/max = 20.1/20.1/20.1 ms\n" + + #include ++#include + #include + #include "libbb.h" + #include "common_bufsiz.h" +- +-#ifdef __BIONIC__ +-/* should be in netinet/ip_icmp.h */ +-# define ICMP_DEST_UNREACH 3 /* Destination Unreachable */ +-# define ICMP_SOURCE_QUENCH 4 /* Source Quench */ +-# define ICMP_REDIRECT 5 /* Redirect (change route) */ +-# define ICMP_ECHO 8 /* Echo Request */ +-# define ICMP_TIME_EXCEEDED 11 /* Time Exceeded */ +-# define ICMP_PARAMETERPROB 12 /* Parameter Problem */ +-# define ICMP_TIMESTAMP 13 /* Timestamp Request */ +-# define ICMP_TIMESTAMPREPLY 14 /* Timestamp Reply */ +-# define ICMP_INFO_REQUEST 15 /* Information Request */ +-# define ICMP_INFO_REPLY 16 /* Information Reply */ +-# define ICMP_ADDRESS 17 /* Address Mask Request */ +-# define ICMP_ADDRESSREPLY 18 /* Address Mask Reply */ +-#endif ++#include "ip_icmp_missing.h" + + /* Some operating systems, like GNU/Hurd, don't define SOL_RAW, but do have + * IPPROTO_RAW. Since the IPPROTO definitions are also valid to use for +@@ -148,6 +134,7 @@ + #endif + + #if ENABLE_PING6 ++#ifdef HAVE_NETINET_ICMP6_H + # include + /* I see RENUMBERED constants in bits/in.h - !!? + * What a fuck is going on with libc? Is it a glibc joke? */ +@@ -156,6 +143,7 @@ + # define IPV6_HOPLIMIT IPV6_2292HOPLIMIT + # endif + #endif ++#endif + + enum { + DEFDATALEN = 56, +@@ -721,9 +709,11 @@ + + pingaddr.sin = lsa->u.sin; + if (source_lsa) { ++#ifndef NO_SOCKOPT_IP_MULTICAST_IF + if (setsockopt(pingsock, IPPROTO_IP, IP_MULTICAST_IF, + &source_lsa->u.sa, source_lsa->len)) + bb_error_msg_and_die("can't set multicast source interface"); ++#endif + xbind(pingsock, &source_lsa->u.sa, source_lsa->len); + } + +diff -Naur busybox-1.31.1-orig/networking/traceroute.c busybox-1.31.1/networking/traceroute.c +--- busybox-1.31.1-orig/networking/traceroute.c 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/networking/traceroute.c 2020-04-29 20:22:25.481038700 +0300 +@@ -305,7 +305,7 @@ + #include + #include + #include +-#if ENABLE_FEATURE_IPV6 ++#if ENABLE_TRACEROUTE6 + # include + # include + # ifndef SOL_IPV6 +@@ -317,6 +317,7 @@ + #endif + + #include "libbb.h" ++#include "ip_icmp_missing.h" + #include "inet_common.h" + + #ifndef IPPROTO_ICMP +@@ -334,6 +335,11 @@ + # define SOL_RAW IPPROTO_RAW + #endif + ++#ifdef TRACEROUTE_ONE_SOCKET_ONLY ++# if !(ENABLE_FEATURE_TRACEROUTE_USE_ICMP && !ENABLE_TRACEROUTE6) ++# error (FEATURE_TRACEROUTE_USE_ICMP && !TRACEROUTE6) is required on this platform ++# endif ++#endif + + #define OPT_STRING \ + "FIlnrdvxt:i:m:p:q:s:w:z:f:" \ +@@ -364,7 +370,11 @@ + enum { + SIZEOF_ICMP_HDR = 8, + rcvsock = 3, /* receive (icmp) socket file descriptor */ ++#ifndef TRACEROUTE_ONE_SOCKET_ONLY + sndsock = 4, /* send (udp/icmp) socket file descriptor */ ++#else ++ sndsock = rcvsock, /* use one (icmp) socket file descriptor */ ++#endif + }; + + /* Data section of the probe packet */ +@@ -604,7 +614,6 @@ + || type == ICMP_ECHOREPLY + ) { + const struct ip *hip; +- const struct udphdr *up; + + hip = &icp->icmp_ip; + hlen = hip->ip_hl << 2; +@@ -627,7 +636,11 @@ + ) { + return (type == ICMP_TIMXCEED ? -1 : code + 1); + } +- } else { ++ } ++#ifndef TRACEROUTE_ONE_SOCKET_ONLY ++ else { ++ const struct udphdr *up; ++ + up = (struct udphdr *)((char *)hip + hlen); + if (hlen + 12 <= read_len + && hip->ip_p == IPPROTO_UDP +@@ -640,6 +653,7 @@ + return (type == ICMP_TIMXCEED ? -1 : code + 1); + } + } ++#endif + } + #if ENABLE_FEATURE_TRACEROUTE_VERBOSE + if (verbose) { +@@ -855,6 +869,12 @@ + ); + argv += optind; + ++#ifdef TRACEROUTE_ONE_SOCKET_ONLY ++ if (op & (OPT_USE_ICMP|OPT_PORT)) ++ bb_error_msg("warning: -I and -p have no effect (ICMP is always used instead of UDP)"); ++ op |= OPT_USE_ICMP; ++ option_mask32 |= OPT_USE_ICMP; ++#endif + #if 0 /* IGNORED */ + if (op & OPT_IP_CHKSUM) + bb_error_msg("warning: ip checksums disabled"); +@@ -869,6 +889,7 @@ + port = xatou16(port_str); + if (op & OPT_NPROBES) + nprobes = xatou_range(nprobes_str, 1, INT_MAX); ++#ifndef NO_ROOT_UID_CHECK + if (op & OPT_SOURCE) { + /* + * set the ip source address of the outbound +@@ -877,6 +898,7 @@ + if (getuid() != 0) + bb_error_msg_and_die(bb_msg_you_must_be_root); + } ++#endif + if (op & OPT_WAITTIME) + waittime = xatou_range(waittime_str, 1, 24 * 60 * 60); + if (op & OPT_PAUSE_MS) +@@ -939,10 +961,12 @@ + } else + #endif + { ++#ifndef TRACEROUTE_ONE_SOCKET_ONLY + if (op & OPT_USE_ICMP) + xmove_fd(xsocket(AF_INET, SOCK_RAW, IPPROTO_ICMP), sndsock); + else + xmove_fd(xsocket(AF_INET, SOCK_DGRAM, 0), sndsock); ++#endif + } + + #ifdef SO_SNDBUF +@@ -1000,10 +1024,12 @@ + len_and_sockaddr *source_lsa = xdotted2sockaddr(source, 0); + #endif + /* Ping4 does this (why?) */ ++#ifndef NO_SOCKOPT_IP_MULTICAST_IF + if (af == AF_INET) + if (setsockopt(sndsock, IPPROTO_IP, IP_MULTICAST_IF, + &source_lsa->u.sa, source_lsa->len)) + bb_error_msg_and_die("can't set multicast source interface"); ++#endif + //TODO: we can query source port we bound to, + // and check it in replies... if we care enough + +diff -Naur busybox-1.31.1-orig/procps/top.c busybox-1.31.1/procps/top.c +--- busybox-1.31.1-orig/procps/top.c 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/procps/top.c 2020-04-29 20:15:47.071108500 +0300 +@@ -324,7 +324,7 @@ + */ + while (1) { + cpu_jif = xrealloc_vector(cpu_jif, 1, num_cpus); +- if (read_cpu_jiffy(fp, &cpu_jif[num_cpus]) <= 4) ++ if (read_cpu_jiffy(fp, &cpu_jif[num_cpus]) < 4) + break; + num_cpus++; + } +diff -Naur busybox-1.31.1-orig/shell/ash.c busybox-1.31.1/shell/ash.c +--- busybox-1.31.1-orig/shell/ash.c 2019-10-21 17:54:40.000000000 +0300 ++++ busybox-1.31.1/shell/ash.c 2020-04-29 20:18:17.969474000 +0300 +@@ -181,6 +181,9 @@ + #include + #include /* for setting $HOSTNAME */ + #include "busybox.h" /* for applet_names */ ++#ifdef __CYGWIN__ ++#include ++#endif + #if ENABLE_FEATURE_SH_EMBEDDED_SCRIPTS + # include "embedded_scripts.h" + #else +@@ -2840,9 +2843,23 @@ + char c; + struct stat statb; + int flags; ++#ifdef __CYGWIN__ ++ char posixpath[PATH_MAX]; ++#endif + + flags = cdopt(); + dest = *argptr; ++ ++#ifdef __CYGWIN__ ++ if (dest && *dest && dest[1]) { ++ // Convert X:\SOME\DIR -> /cygdrive/x/SOME/DIR ++ if (cygwin_conv_path(CCP_WIN_A_TO_POSIX | CCP_RELATIVE, dest, ++ posixpath, sizeof(posixpath)) < 0) ++ ash_msg_and_raise_error("can't normalize %s", dest); ++ dest = posixpath; ++ } ++#endif ++ + if (!dest) + dest = bltinlookup("HOME"); + else if (LONE_DASH(dest)) { +diff -Naur busybox-1.31.1-orig/shell/shell_common.c busybox-1.31.1/shell/shell_common.c +--- busybox-1.31.1-orig/shell/shell_common.c 2019-06-10 13:50:53.000000000 +0300 ++++ busybox-1.31.1/shell/shell_common.c 2020-04-29 19:28:33.325849100 +0300 +@@ -328,6 +328,9 @@ + static const struct limits limits_tbl[] = { + { RLIMIT_CORE, 9, "core file size (blocks)" }, // -c + { RLIMIT_DATA, 10, "data seg size (kb)" }, // -d ++#ifndef RLIMIT_NICE ++#define RLIMIT_NICE 13 ++#endif + { RLIMIT_NICE, 0, "scheduling priority" }, // -e + { RLIMIT_FSIZE, 9, "file size (blocks)" }, // -f + #define LIMIT_F_IDX 3 diff --git a/busybox/msys2.config b/busybox/msys2_defconfig similarity index 74% rename from busybox/msys2.config rename to busybox/msys2_defconfig index e62a2343..4667dd61 100644 --- a/busybox/msys2.config +++ b/busybox/msys2_defconfig @@ -1,81 +1,60 @@ -# Maintainer: Martell Malone -# msys2 config for busybox -# Busybox version: 1.22.1 - +# +# Automatically generated make config: don't edit +# Busybox version: 1.31.1 +# Tue Apr 28 11:51:18 2020 +# CONFIG_HAVE_DOT_CONFIG=y # -# Busybox Settings -# - -# -# General Configuration +# Settings # CONFIG_DESKTOP=y # CONFIG_EXTRA_COMPAT is not set +# CONFIG_FEDORA_COMPAT is not set CONFIG_INCLUDE_SUSv2=y -# CONFIG_USE_PORTABLE_CODE is not set -CONFIG_PLATFORM_LINUX=y -CONFIG_FEATURE_BUFFERS_USE_MALLOC=y -# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set -# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set +CONFIG_LONG_OPTS=y CONFIG_SHOW_USAGE=y CONFIG_FEATURE_VERBOSE_USAGE=y CONFIG_FEATURE_COMPRESS_USAGE=y -CONFIG_FEATURE_INSTALLER=y -# CONFIG_INSTALL_NO_USR is not set -# CONFIG_LOCALE_SUPPORT is not set -CONFIG_UNICODE_SUPPORT=y -# CONFIG_UNICODE_USING_LOCALE is not set -# CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set -CONFIG_SUBST_WCHAR=65533 -CONFIG_LAST_SUPPORTED_WCHAR=0 -# CONFIG_UNICODE_COMBINING_WCHARS is not set -# CONFIG_UNICODE_WIDE_WCHARS is not set -# CONFIG_UNICODE_BIDI_SUPPORT is not set -# CONFIG_UNICODE_NEUTRAL_TABLE is not set -# CONFIG_UNICODE_PRESERVE_BROKEN is not set -CONFIG_LONG_OPTS=y +CONFIG_LFS=y +# CONFIG_PAM is not set CONFIG_FEATURE_DEVPTS=y -# CONFIG_FEATURE_CLEAN_UP is not set # CONFIG_FEATURE_UTMP is not set # CONFIG_FEATURE_WTMP is not set CONFIG_FEATURE_PIDFILE=y CONFIG_PID_FILE_PATH="/var/run" +CONFIG_BUSYBOX=y +CONFIG_FEATURE_SHOW_SCRIPT=y +CONFIG_FEATURE_INSTALLER=y +# CONFIG_INSTALL_NO_USR is not set CONFIG_FEATURE_SUID=y # CONFIG_FEATURE_SUID_CONFIG is not set # CONFIG_FEATURE_SUID_CONFIG_QUIET is not set -# CONFIG_SELINUX is not set # CONFIG_FEATURE_PREFER_APPLETS is not set CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe" +# CONFIG_SELINUX is not set +# CONFIG_FEATURE_CLEAN_UP is not set +CONFIG_FEATURE_SYSLOG_INFO=y CONFIG_FEATURE_SYSLOG=y -# CONFIG_FEATURE_HAVE_RPC is not set +CONFIG_PLATFORM_LINUX=y # # Build Options # -CONFIG_STATIC=y +# CONFIG_STATIC is not set # CONFIG_PIE is not set # CONFIG_NOMMU is not set # CONFIG_BUILD_LIBBUSYBOX is not set +# CONFIG_FEATURE_LIBBUSYBOX_STATIC is not set # CONFIG_FEATURE_INDIVIDUAL is not set # CONFIG_FEATURE_SHARED_BUSYBOX is not set -CONFIG_LFS=y CONFIG_CROSS_COMPILER_PREFIX="" CONFIG_SYSROOT="" CONFIG_EXTRA_CFLAGS="" CONFIG_EXTRA_LDFLAGS="" CONFIG_EXTRA_LDLIBS="" - -# -# Debugging Options -# -# CONFIG_DEBUG is not set -# CONFIG_DEBUG_PESSIMIZE is not set -# CONFIG_WERROR is not set -CONFIG_NO_DEBUG_LIB=y -# CONFIG_DMALLOC is not set -# CONFIG_EFENCE is not set +# CONFIG_USE_PORTABLE_CODE is not set +CONFIG_STACK_OPTIMIZATION_386=y # # Installation Options ("make install" behavior) @@ -90,16 +69,33 @@ CONFIG_INSTALL_APPLET_SYMLINKS=y CONFIG_PREFIX="./_install" # -# Busybox Library Tuning +# Debugging Options # -# CONFIG_FEATURE_SYSTEMD is not set +# CONFIG_DEBUG is not set +# CONFIG_DEBUG_PESSIMIZE is not set +# CONFIG_DEBUG_SANITIZE is not set +# CONFIG_UNIT_TEST is not set +# CONFIG_WERROR is not set +CONFIG_NO_DEBUG_LIB=y +# CONFIG_DMALLOC is not set +# CONFIG_EFENCE is not set + +# +# Library Tuning +# +# CONFIG_FEATURE_USE_BSS_TAIL is not set +CONFIG_FLOAT_DURATION=y CONFIG_FEATURE_RTMINMAX=y +CONFIG_FEATURE_RTMINMAX_USE_LIBC_DEFINITIONS=y +CONFIG_FEATURE_BUFFERS_USE_MALLOC=y +# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set +# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set CONFIG_PASSWORD_MINLEN=6 CONFIG_MD5_SMALL=1 CONFIG_SHA3_SMALL=1 CONFIG_FEATURE_FAST_TOP=y # CONFIG_FEATURE_ETC_NETWORKS is not set -CONFIG_FEATURE_USE_TERMIOS=y +# CONFIG_FEATURE_ETC_SERVICES is not set CONFIG_FEATURE_EDITING=y CONFIG_FEATURE_EDITING_MAX_LEN=1024 # CONFIG_FEATURE_EDITING_VI is not set @@ -110,9 +106,22 @@ CONFIG_FEATURE_REVERSE_SEARCH=y CONFIG_FEATURE_TAB_COMPLETION=y # CONFIG_FEATURE_USERNAME_COMPLETION is not set CONFIG_FEATURE_EDITING_FANCY_PROMPT=y +CONFIG_FEATURE_EDITING_WINCH=y # CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set +CONFIG_LOCALE_SUPPORT=y +CONFIG_UNICODE_SUPPORT=y +# CONFIG_UNICODE_USING_LOCALE is not set +CONFIG_FEATURE_CHECK_UNICODE_IN_ENV=y +CONFIG_SUBST_WCHAR=65533 +CONFIG_LAST_SUPPORTED_WCHAR=0 +# CONFIG_UNICODE_COMBINING_WCHARS is not set +# CONFIG_UNICODE_WIDE_WCHARS is not set +# CONFIG_UNICODE_BIDI_SUPPORT is not set +# CONFIG_UNICODE_NEUTRAL_TABLE is not set +# CONFIG_UNICODE_PRESERVE_BROKEN is not set CONFIG_FEATURE_NON_POSIX_CP=y # CONFIG_FEATURE_VERBOSE_CP_MESSAGE is not set +# CONFIG_FEATURE_USE_SENDFILE is not set CONFIG_FEATURE_COPYBUF_KB=4 CONFIG_FEATURE_SKIP_ROOTFS=y # CONFIG_MONOTONIC_SYSCALL is not set @@ -136,65 +145,61 @@ CONFIG_FEATURE_SEAMLESS_GZ=y # CONFIG_FEATURE_AR_CREATE is not set # CONFIG_UNCOMPRESS is not set CONFIG_GUNZIP=y +CONFIG_ZCAT=y +CONFIG_FEATURE_GUNZIP_LONG_OPTIONS=y CONFIG_BUNZIP2=y +CONFIG_BZCAT=y CONFIG_UNLZMA=y -CONFIG_FEATURE_LZMA_FAST=y +CONFIG_LZCAT=y CONFIG_LZMA=y CONFIG_UNXZ=y +CONFIG_XZCAT=y CONFIG_XZ=y CONFIG_BZIP2=y +CONFIG_BZIP2_SMALL=8 +CONFIG_FEATURE_BZIP2_DECOMPRESS=y CONFIG_CPIO=y CONFIG_FEATURE_CPIO_O=y CONFIG_FEATURE_CPIO_P=y # CONFIG_DPKG is not set # CONFIG_DPKG_DEB is not set -# CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set CONFIG_GZIP=y CONFIG_FEATURE_GZIP_LONG_OPTIONS=y CONFIG_GZIP_FAST=0 +# CONFIG_FEATURE_GZIP_LEVELS is not set +CONFIG_FEATURE_GZIP_DECOMPRESS=y CONFIG_LZOP=y +# CONFIG_UNLZOP is not set +# CONFIG_LZOPCAT is not set # CONFIG_LZOP_COMPR_HIGH is not set CONFIG_RPM=y CONFIG_RPM2CPIO=y CONFIG_TAR=y +CONFIG_FEATURE_TAR_LONG_OPTIONS=y CONFIG_FEATURE_TAR_CREATE=y CONFIG_FEATURE_TAR_AUTODETECT=y CONFIG_FEATURE_TAR_FROM=y CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY=y CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY=y CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y -CONFIG_FEATURE_TAR_LONG_OPTIONS=y CONFIG_FEATURE_TAR_TO_COMMAND=y CONFIG_FEATURE_TAR_UNAME_GNAME=y CONFIG_FEATURE_TAR_NOPRESERVE_TIME=y # CONFIG_FEATURE_TAR_SELINUX is not set CONFIG_UNZIP=y +CONFIG_FEATURE_UNZIP_CDF=y +CONFIG_FEATURE_UNZIP_BZIP2=y +CONFIG_FEATURE_UNZIP_LZMA=y +CONFIG_FEATURE_UNZIP_XZ=y +CONFIG_FEATURE_LZMA_FAST=y # # Coreutils # CONFIG_BASENAME=y CONFIG_CAT=y -CONFIG_DATE=y -CONFIG_FEATURE_DATE_ISOFMT=y -# CONFIG_FEATURE_DATE_NANO is not set -CONFIG_FEATURE_DATE_COMPAT=y -CONFIG_HOSTID=y -CONFIG_ID=y -CONFIG_GROUPS=y -CONFIG_TEST=y -CONFIG_FEATURE_TEST_64=y -CONFIG_TOUCH=y -CONFIG_FEATURE_TOUCH_NODEREF=y -CONFIG_FEATURE_TOUCH_SUSV3=y -CONFIG_TR=y -CONFIG_FEATURE_TR_CLASSES=y -CONFIG_FEATURE_TR_EQUIV=y -CONFIG_BASE64=y -# CONFIG_WHO is not set -# CONFIG_USERS is not set -CONFIG_CAL=y -CONFIG_CATV=y +CONFIG_FEATURE_CATN=y +CONFIG_FEATURE_CATV=y CONFIG_CHGRP=y CONFIG_CHMOD=y CONFIG_CHOWN=y @@ -204,11 +209,17 @@ CONFIG_CKSUM=y CONFIG_COMM=y CONFIG_CP=y CONFIG_FEATURE_CP_LONG_OPTIONS=y +CONFIG_FEATURE_CP_REFLINK=y CONFIG_CUT=y +CONFIG_DATE=y +CONFIG_FEATURE_DATE_ISOFMT=y +# CONFIG_FEATURE_DATE_NANO is not set +CONFIG_FEATURE_DATE_COMPAT=y CONFIG_DD=y CONFIG_FEATURE_DD_SIGNAL_HANDLING=y CONFIG_FEATURE_DD_THIRD_STATUS_LINE=y CONFIG_FEATURE_DD_IBS_OBS=y +CONFIG_FEATURE_DD_STATUS=y CONFIG_DF=y CONFIG_FEATURE_DF_FANCY=y CONFIG_DIRNAME=y @@ -219,39 +230,54 @@ CONFIG_DU=y CONFIG_ECHO=y CONFIG_FEATURE_FANCY_ECHO=y CONFIG_ENV=y -CONFIG_FEATURE_ENV_LONG_OPTIONS=y CONFIG_EXPAND=y -CONFIG_FEATURE_EXPAND_LONG_OPTIONS=y +CONFIG_UNEXPAND=y CONFIG_EXPR=y CONFIG_EXPR_MATH_SUPPORT_64=y +CONFIG_FACTOR=y CONFIG_FALSE=y CONFIG_FOLD=y -CONFIG_FSYNC=y CONFIG_HEAD=y CONFIG_FEATURE_FANCY_HEAD=y +CONFIG_HOSTID=y +CONFIG_ID=y +CONFIG_GROUPS=y CONFIG_INSTALL=y CONFIG_FEATURE_INSTALL_LONG_OPTIONS=y +CONFIG_LINK=y CONFIG_LN=y CONFIG_LOGNAME=y CONFIG_LS=y CONFIG_FEATURE_LS_FILETYPES=y CONFIG_FEATURE_LS_FOLLOWLINKS=y CONFIG_FEATURE_LS_RECURSIVE=y +CONFIG_FEATURE_LS_WIDTH=y CONFIG_FEATURE_LS_SORTFILES=y CONFIG_FEATURE_LS_TIMESTAMPS=y CONFIG_FEATURE_LS_USERNAME=y CONFIG_FEATURE_LS_COLOR=y CONFIG_FEATURE_LS_COLOR_IS_DEFAULT=y CONFIG_MD5SUM=y +CONFIG_SHA1SUM=y +CONFIG_SHA256SUM=y +CONFIG_SHA512SUM=y +CONFIG_SHA3SUM=y + +# +# Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum +# +CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y CONFIG_MKDIR=y -CONFIG_FEATURE_MKDIR_LONG_OPTIONS=y CONFIG_MKFIFO=y CONFIG_MKNOD=y +CONFIG_MKTEMP=y CONFIG_MV=y -CONFIG_FEATURE_MV_LONG_OPTIONS=y CONFIG_NICE=y +CONFIG_NL=y CONFIG_NOHUP=y +# CONFIG_NPROC is not set CONFIG_OD=y +CONFIG_PASTE=y CONFIG_PRINTENV=y CONFIG_PRINTF=y CONFIG_PWD=y @@ -260,73 +286,90 @@ CONFIG_FEATURE_READLINK_FOLLOW=y CONFIG_REALPATH=y CONFIG_RM=y CONFIG_RMDIR=y -CONFIG_FEATURE_RMDIR_LONG_OPTIONS=y CONFIG_SEQ=y -CONFIG_SHA1SUM=y -CONFIG_SHA256SUM=y -CONFIG_SHA512SUM=y -CONFIG_SHA3SUM=y +CONFIG_SHRED=y +CONFIG_SHUF=y CONFIG_SLEEP=y CONFIG_FEATURE_FANCY_SLEEP=y -CONFIG_FEATURE_FLOAT_SLEEP=y CONFIG_SORT=y CONFIG_FEATURE_SORT_BIG=y +# CONFIG_FEATURE_SORT_OPTIMIZE_MEMORY is not set CONFIG_SPLIT=y CONFIG_FEATURE_SPLIT_FANCY=y # CONFIG_STAT is not set # CONFIG_FEATURE_STAT_FORMAT is not set +# CONFIG_FEATURE_STAT_FILESYSTEM is not set CONFIG_STTY=y CONFIG_SUM=y -CONFIG_SYNC=y +# CONFIG_SYNC is not set +# CONFIG_FEATURE_SYNC_FANCY is not set +# CONFIG_FSYNC is not set CONFIG_TAC=y CONFIG_TAIL=y CONFIG_FEATURE_FANCY_TAIL=y CONFIG_TEE=y CONFIG_FEATURE_TEE_USE_BLOCK_IO=y +CONFIG_TEST=y +CONFIG_TEST1=y +CONFIG_TEST2=y +CONFIG_FEATURE_TEST_64=y +CONFIG_TIMEOUT=y +CONFIG_TOUCH=y +CONFIG_FEATURE_TOUCH_NODEREF=y +CONFIG_FEATURE_TOUCH_SUSV3=y +CONFIG_TR=y +CONFIG_FEATURE_TR_CLASSES=y +CONFIG_FEATURE_TR_EQUIV=y CONFIG_TRUE=y +CONFIG_TRUNCATE=y CONFIG_TTY=y CONFIG_UNAME=y -CONFIG_UNEXPAND=y -CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS=y +CONFIG_UNAME_OSNAME="GNU/Linux" +CONFIG_BB_ARCH=y CONFIG_UNIQ=y +CONFIG_UNLINK=y CONFIG_USLEEP=y CONFIG_UUDECODE=y +CONFIG_BASE64=y CONFIG_UUENCODE=y CONFIG_WC=y CONFIG_FEATURE_WC_LARGE=y +# CONFIG_WHO is not set +# CONFIG_W is not set +# CONFIG_USERS is not set CONFIG_WHOAMI=y CONFIG_YES=y +# +# Common options +# +CONFIG_FEATURE_VERBOSE=y + # # Common options for cp and mv # CONFIG_FEATURE_PRESERVE_HARDLINKS=y -# -# Common options for ls, more and telnet -# -CONFIG_FEATURE_AUTOWIDTH=y - # # Common options for df, du, ls # CONFIG_FEATURE_HUMAN_READABLE=y -# -# Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum -# -CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y - # # Console Utilities # # CONFIG_CHVT is not set -# CONFIG_FGCONSOLE is not set CONFIG_CLEAR=y # CONFIG_DEALLOCVT is not set # CONFIG_DUMPKMAP is not set +# CONFIG_FGCONSOLE is not set # CONFIG_KBD_MODE is not set # CONFIG_LOADFONT is not set +# CONFIG_SETFONT is not set +# CONFIG_FEATURE_SETFONT_TEXTUAL_MAP is not set +CONFIG_DEFAULT_SETFONT_DIR="" +# CONFIG_FEATURE_LOADFONT_PSF2 is not set +# CONFIG_FEATURE_LOADFONT_RAW is not set # CONFIG_LOADKMAP is not set # CONFIG_OPENVT is not set CONFIG_RESET=y @@ -334,28 +377,30 @@ CONFIG_RESIZE=y CONFIG_FEATURE_RESIZE_PRINT=y # CONFIG_SETCONSOLE is not set # CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS is not set -# CONFIG_SETFONT is not set -# CONFIG_FEATURE_SETFONT_TEXTUAL_MAP is not set -CONFIG_DEFAULT_SETFONT_DIR="" # CONFIG_SETKEYCODES is not set # CONFIG_SETLOGCONS is not set # CONFIG_SHOWKEY is not set -# CONFIG_FEATURE_LOADFONT_PSF2 is not set -# CONFIG_FEATURE_LOADFONT_RAW is not set # # Debian Utilities # -CONFIG_MKTEMP=y CONFIG_PIPE_PROGRESS=y CONFIG_RUN_PARTS=y CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS=y CONFIG_FEATURE_RUN_PARTS_FANCY=y CONFIG_START_STOP_DAEMON=y -CONFIG_FEATURE_START_STOP_DAEMON_FANCY=y CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS=y +CONFIG_FEATURE_START_STOP_DAEMON_FANCY=y CONFIG_WHICH=y +# +# klibc-utils +# +# CONFIG_MINIPS is not set +CONFIG_NUKE=y +CONFIG_RESUME=y +# CONFIG_RUN_INIT is not set + # # Editors # @@ -383,6 +428,9 @@ CONFIG_FEATURE_VI_SETOPTS=y CONFIG_FEATURE_VI_SET=y CONFIG_FEATURE_VI_WIN_RESIZE=y CONFIG_FEATURE_VI_ASK_TERMINAL=y +CONFIG_FEATURE_VI_UNDO=y +CONFIG_FEATURE_VI_UNDO_QUEUE=y +CONFIG_FEATURE_VI_UNDO_QUEUE_MAX=256 CONFIG_FEATURE_ALLOW_EXEC=y # @@ -394,11 +442,13 @@ CONFIG_FEATURE_FIND_MTIME=y CONFIG_FEATURE_FIND_MMIN=y CONFIG_FEATURE_FIND_PERM=y CONFIG_FEATURE_FIND_TYPE=y +CONFIG_FEATURE_FIND_EXECUTABLE=y CONFIG_FEATURE_FIND_XDEV=y CONFIG_FEATURE_FIND_MAXDEPTH=y CONFIG_FEATURE_FIND_NEWER=y CONFIG_FEATURE_FIND_INUM=y CONFIG_FEATURE_FIND_EXEC=y +CONFIG_FEATURE_FIND_EXEC_PLUS=y CONFIG_FEATURE_FIND_USER=y CONFIG_FEATURE_FIND_GROUP=y CONFIG_FEATURE_FIND_NOT=y @@ -406,20 +456,24 @@ CONFIG_FEATURE_FIND_DEPTH=y CONFIG_FEATURE_FIND_PAREN=y CONFIG_FEATURE_FIND_SIZE=y CONFIG_FEATURE_FIND_PRUNE=y +CONFIG_FEATURE_FIND_QUIT=y CONFIG_FEATURE_FIND_DELETE=y CONFIG_FEATURE_FIND_PATH=y CONFIG_FEATURE_FIND_REGEX=y # CONFIG_FEATURE_FIND_CONTEXT is not set CONFIG_FEATURE_FIND_LINKS=y CONFIG_GREP=y -CONFIG_FEATURE_GREP_EGREP_ALIAS=y -CONFIG_FEATURE_GREP_FGREP_ALIAS=y +CONFIG_EGREP=y +CONFIG_FGREP=y CONFIG_FEATURE_GREP_CONTEXT=y CONFIG_XARGS=y CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION=y CONFIG_FEATURE_XARGS_SUPPORT_QUOTES=y CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT=y CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y +CONFIG_FEATURE_XARGS_SUPPORT_REPL_STR=y +CONFIG_FEATURE_XARGS_SUPPORT_PARALLEL=y +CONFIG_FEATURE_XARGS_SUPPORT_ARGS_FILE=y # # Init Utilities @@ -428,59 +482,61 @@ CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y # CONFIG_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set # CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE is not set # CONFIG_HALT is not set +# CONFIG_POWEROFF is not set +# CONFIG_REBOOT is not set +# CONFIG_FEATURE_WAIT_FOR_INIT is not set # CONFIG_FEATURE_CALL_TELINIT is not set CONFIG_TELINIT_PATH="" # CONFIG_INIT is not set +# CONFIG_LINUXRC is not set # CONFIG_FEATURE_USE_INITTAB is not set # CONFIG_FEATURE_KILL_REMOVED is not set CONFIG_FEATURE_KILL_DELAY=0 # CONFIG_FEATURE_INIT_SCTTY is not set # CONFIG_FEATURE_INIT_SYSLOG is not set -# CONFIG_FEATURE_EXTRA_QUIET is not set +# CONFIG_FEATURE_INIT_QUIET is not set # CONFIG_FEATURE_INIT_COREDUMPS is not set -# CONFIG_FEATURE_INITRD is not set CONFIG_INIT_TERMINAL_TYPE="" -CONFIG_MESG=y -CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP=y +# CONFIG_FEATURE_INIT_MODIFY_CMDLINE is not set # # Login/Password Management Utilities # -CONFIG_ADD_SHELL=y -CONFIG_REMOVE_SHELL=y CONFIG_FEATURE_SHADOWPASSWDS=y CONFIG_USE_BB_PWD_GRP=y CONFIG_USE_BB_SHADOW=y CONFIG_USE_BB_CRYPT=y CONFIG_USE_BB_CRYPT_SHA=y +CONFIG_ADDGROUP=y +CONFIG_FEATURE_ADDUSER_TO_GROUP=y +CONFIG_ADD_SHELL=y +CONFIG_REMOVE_SHELL=y CONFIG_ADDUSER=y -CONFIG_FEATURE_ADDUSER_LONG_OPTIONS=y # CONFIG_FEATURE_CHECK_NAMES is not set +CONFIG_LAST_ID=60000 CONFIG_FIRST_SYSTEM_ID=100 CONFIG_LAST_SYSTEM_ID=999 -CONFIG_ADDGROUP=y -CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS=y -CONFIG_FEATURE_ADDUSER_TO_GROUP=y +# CONFIG_CHPASSWD is not set +CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="" +CONFIG_CRYPTPW=y +# CONFIG_MKPASSWD is not set CONFIG_DELUSER=y CONFIG_DELGROUP=y CONFIG_FEATURE_DEL_USER_FROM_GROUP=y # CONFIG_GETTY is not set -CONFIG_LOGIN=y +# CONFIG_LOGIN is not set # CONFIG_LOGIN_SESSION_AS_CHILD is not set -# CONFIG_PAM is not set -CONFIG_LOGIN_SCRIPTS=y -CONFIG_FEATURE_NOLOGIN=y -CONFIG_FEATURE_SECURETTY=y -CONFIG_PASSWD=y -CONFIG_FEATURE_PASSWD_WEAK_CHECK=y -CONFIG_CRYPTPW=y -CONFIG_CHPASSWD=y -CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="des" -CONFIG_SU=y -CONFIG_FEATURE_SU_SYSLOG=y -CONFIG_FEATURE_SU_CHECKS_SHELLS=y -CONFIG_SULOGIN=y -CONFIG_VLOCK=y +# CONFIG_LOGIN_SCRIPTS is not set +# CONFIG_FEATURE_NOLOGIN is not set +# CONFIG_FEATURE_SECURETTY is not set +# CONFIG_PASSWD is not set +# CONFIG_FEATURE_PASSWD_WEAK_CHECK is not set +# CONFIG_SU is not set +# CONFIG_FEATURE_SU_SYSLOG is not set +# CONFIG_FEATURE_SU_CHECKS_SHELLS is not set +# CONFIG_FEATURE_SU_BLANK_PW_NEEDS_SECURE_TTY is not set +# CONFIG_SULOGIN is not set +# CONFIG_VLOCK is not set # # Linux Ext2 FS Progs @@ -493,29 +549,29 @@ CONFIG_CHATTR=y # # Linux Module Utilities # -# CONFIG_MODINFO is not set # CONFIG_MODPROBE_SMALL is not set -# CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE is not set -# CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set +# CONFIG_DEPMOD is not set # CONFIG_INSMOD is not set -# CONFIG_RMMOD is not set # CONFIG_LSMOD is not set # CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT is not set +# CONFIG_MODINFO is not set # CONFIG_MODPROBE is not set # CONFIG_FEATURE_MODPROBE_BLACKLIST is not set -# CONFIG_DEPMOD is not set +# CONFIG_RMMOD is not set # # Options common to multiple modutils # +# CONFIG_FEATURE_CMDLINE_MODULE_OPTIONS is not set +# CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set # CONFIG_FEATURE_2_4_MODULES is not set -# CONFIG_FEATURE_INSMOD_TRY_MMAP is not set # CONFIG_FEATURE_INSMOD_VERSION_CHECKING is not set # CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set # CONFIG_FEATURE_INSMOD_LOADINKMEM is not set # CONFIG_FEATURE_INSMOD_LOAD_MAP is not set # CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL is not set # CONFIG_FEATURE_CHECK_TAINTED_MODULE is not set +# CONFIG_FEATURE_INSMOD_TRY_MMAP is not set # CONFIG_FEATURE_MODUTILS_ALIAS is not set # CONFIG_FEATURE_MODUTILS_SYMBOLS is not set CONFIG_DEFAULT_MODULES_DIR="" @@ -524,25 +580,23 @@ CONFIG_DEFAULT_DEPMOD_FILE="" # # Linux System Utilities # -# CONFIG_BLOCKDEV is not set -CONFIG_FSTRIM=n -# CONFIG_MDEV is not set -# CONFIG_FEATURE_MDEV_CONF is not set -# CONFIG_FEATURE_MDEV_RENAME is not set -# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set -# CONFIG_FEATURE_MDEV_EXEC is not set -# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set -CONFIG_REV=y # CONFIG_ACPID is not set # CONFIG_FEATURE_ACPID_COMPAT is not set +# CONFIG_BLKDISCARD is not set # CONFIG_BLKID is not set # CONFIG_FEATURE_BLKID_TYPE is not set +# CONFIG_BLOCKDEV is not set +CONFIG_CAL=y +# CONFIG_CHRT is not set # CONFIG_DMESG is not set # CONFIG_FEATURE_DMESG_PRETTY is not set +# CONFIG_EJECT is not set +# CONFIG_FEATURE_EJECT_SCSI is not set +CONFIG_FALLOCATE=y +CONFIG_FATATTR=y # CONFIG_FBSET is not set # CONFIG_FEATURE_FBSET_FANCY is not set # CONFIG_FEATURE_FBSET_READMODE is not set -# CONFIG_FDFLUSH is not set # CONFIG_FDFORMAT is not set # CONFIG_FDISK is not set # CONFIG_FDISK_SUPPORT_LARGE_DISKS is not set @@ -555,28 +609,45 @@ CONFIG_REV=y # CONFIG_FEATURE_FDISK_ADVANCED is not set # CONFIG_FINDFS is not set CONFIG_FLOCK=y +# CONFIG_FDFLUSH is not set # CONFIG_FREERAMDISK is not set -CONFIG_FSCK_MINIX=y -# CONFIG_MKFS_EXT2 is not set -# CONFIG_MKFS_MINIX is not set -CONFIG_FEATURE_MINIX2=y -# CONFIG_MKFS_REISER is not set -# CONFIG_MKFS_VFAT is not set +# CONFIG_FSCK_MINIX is not set +# CONFIG_FSFREEZE is not set +# CONFIG_FSTRIM is not set CONFIG_GETOPT=y CONFIG_FEATURE_GETOPT_LONG=y CONFIG_HEXDUMP=y CONFIG_FEATURE_HEXDUMP_REVERSE=y CONFIG_HD=y +CONFIG_XXD=y # CONFIG_HWCLOCK is not set -# CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS is not set # CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS is not set +# CONFIG_IONICE is not set CONFIG_IPCRM=y # CONFIG_IPCS is not set +# CONFIG_LAST is not set +# CONFIG_FEATURE_LAST_FANCY is not set # CONFIG_LOSETUP is not set # CONFIG_LSPCI is not set # CONFIG_LSUSB is not set -CONFIG_MKSWAP=y -CONFIG_FEATURE_MKSWAP_UUID=y +# CONFIG_MDEV is not set +# CONFIG_FEATURE_MDEV_CONF is not set +# CONFIG_FEATURE_MDEV_RENAME is not set +# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set +# CONFIG_FEATURE_MDEV_EXEC is not set +# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set +# CONFIG_FEATURE_MDEV_DAEMON is not set +CONFIG_MESG=y +CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP=y +# CONFIG_MKE2FS is not set +# CONFIG_MKFS_EXT2 is not set +# CONFIG_MKFS_MINIX is not set +# CONFIG_FEATURE_MINIX2 is not set +# CONFIG_MKFS_REISER is not set +# CONFIG_MKDOSFS is not set +# CONFIG_MKFS_VFAT is not set +# CONFIG_MKSWAP is not set +# CONFIG_FEATURE_MKSWAP_UUID is not set CONFIG_MORE=y # CONFIG_MOUNT is not set # CONFIG_FEATURE_MOUNT_FAKE is not set @@ -587,23 +658,49 @@ CONFIG_MORE=y # CONFIG_FEATURE_MOUNT_CIFS is not set # CONFIG_FEATURE_MOUNT_FLAGS is not set # CONFIG_FEATURE_MOUNT_FSTAB is not set +# CONFIG_FEATURE_MOUNT_OTHERTAB is not set +CONFIG_MOUNTPOINT=y +CONFIG_NOLOGIN=y +CONFIG_NOLOGIN_DEPENDENCIES=y +# CONFIG_NSENTER is not set # CONFIG_PIVOT_ROOT is not set # CONFIG_RDATE is not set CONFIG_RDEV=y CONFIG_READPROFILE=y +CONFIG_RENICE=y +CONFIG_REV=y # CONFIG_RTCWAKE is not set CONFIG_SCRIPT=y CONFIG_SCRIPTREPLAY=y # CONFIG_SETARCH is not set -# CONFIG_SWAPONOFF is not set +# CONFIG_LINUX32 is not set +# CONFIG_LINUX64 is not set +# CONFIG_SETPRIV is not set +# CONFIG_FEATURE_SETPRIV_DUMP is not set +# CONFIG_FEATURE_SETPRIV_CAPABILITIES is not set +# CONFIG_FEATURE_SETPRIV_CAPABILITY_NAMES is not set +CONFIG_SETSID=y +# CONFIG_SWAPON is not set +# CONFIG_FEATURE_SWAPON_DISCARD is not set # CONFIG_FEATURE_SWAPON_PRI is not set +# CONFIG_SWAPOFF is not set +# CONFIG_FEATURE_SWAPONOFF_LABEL is not set # CONFIG_SWITCH_ROOT is not set +# CONFIG_TASKSET is not set +# CONFIG_FEATURE_TASKSET_FANCY is not set +# CONFIG_UEVENT is not set # CONFIG_UMOUNT is not set # CONFIG_FEATURE_UMOUNT_ALL is not set +# CONFIG_UNSHARE is not set +# CONFIG_WALL is not set # CONFIG_FEATURE_MOUNT_LOOP is not set # CONFIG_FEATURE_MOUNT_LOOP_CREATE is not set # CONFIG_FEATURE_MTAB_SUPPORT is not set # CONFIG_VOLUMEID is not set +# +# Filesystem/Volume identification +# +# CONFIG_FEATURE_VOLUMEID_BCACHE is not set # CONFIG_FEATURE_VOLUMEID_BTRFS is not set # CONFIG_FEATURE_VOLUMEID_CRAMFS is not set # CONFIG_FEATURE_VOLUMEID_EXFAT is not set @@ -613,9 +710,11 @@ CONFIG_SCRIPTREPLAY=y # CONFIG_FEATURE_VOLUMEID_HFS is not set # CONFIG_FEATURE_VOLUMEID_ISO9660 is not set # CONFIG_FEATURE_VOLUMEID_JFS is not set +# CONFIG_FEATURE_VOLUMEID_LFS is not set # CONFIG_FEATURE_VOLUMEID_LINUXRAID is not set # CONFIG_FEATURE_VOLUMEID_LINUXSWAP is not set # CONFIG_FEATURE_VOLUMEID_LUKS is not set +# CONFIG_FEATURE_VOLUMEID_MINIX is not set # CONFIG_FEATURE_VOLUMEID_NILFS is not set # CONFIG_FEATURE_VOLUMEID_NTFS is not set # CONFIG_FEATURE_VOLUMEID_OCFS2 is not set @@ -623,37 +722,22 @@ CONFIG_SCRIPTREPLAY=y # CONFIG_FEATURE_VOLUMEID_ROMFS is not set # CONFIG_FEATURE_VOLUMEID_SQUASHFS is not set # CONFIG_FEATURE_VOLUMEID_SYSV is not set +# CONFIG_FEATURE_VOLUMEID_UBIFS is not set # CONFIG_FEATURE_VOLUMEID_UDF is not set # CONFIG_FEATURE_VOLUMEID_XFS is not set # # Miscellaneous Utilities # -# CONFIG_CONSPY is not set -CONFIG_LESS=y -CONFIG_FEATURE_LESS_MAXLINES=9999999 -CONFIG_FEATURE_LESS_BRACKETS=y -CONFIG_FEATURE_LESS_FLAGS=y -CONFIG_FEATURE_LESS_MARKS=y -CONFIG_FEATURE_LESS_REGEXP=y -CONFIG_FEATURE_LESS_WINCH=y -CONFIG_FEATURE_LESS_ASK_TERMINAL=y -CONFIG_FEATURE_LESS_DASHCMD=y -CONFIG_FEATURE_LESS_LINENUMS=y -# CONFIG_NANDWRITE is not set -# CONFIG_NANDDUMP is not set -# CONFIG_RFKILL is not set -# CONFIG_SETSERIAL is not set -# CONFIG_UBIATTACH is not set -# CONFIG_UBIDETACH is not set -# CONFIG_UBIMKVOL is not set -# CONFIG_UBIRMVOL is not set -# CONFIG_UBIRSVOL is not set -# CONFIG_UBIUPDATEVOL is not set -# CONFIG_WALL is not set # CONFIG_ADJTIMEX is not set # CONFIG_BBCONFIG is not set # CONFIG_FEATURE_COMPRESS_BBCONFIG is not set +CONFIG_BC=y +CONFIG_DC=y +CONFIG_FEATURE_DC_BIG=y +# CONFIG_FEATURE_DC_LIBM is not set +CONFIG_FEATURE_BC_INTERACTIVE=y +CONFIG_FEATURE_BC_LONG_OPTIONS=y # CONFIG_BEEP is not set CONFIG_FEATURE_BEEP_FREQ=0 CONFIG_FEATURE_BEEP_LENGTH_MS=0 @@ -665,32 +749,24 @@ CONFIG_FEATURE_CHAT_SWALLOW_OPTS=y CONFIG_FEATURE_CHAT_SEND_ESCAPES=y CONFIG_FEATURE_CHAT_VAR_ABORT_LEN=y CONFIG_FEATURE_CHAT_CLR_ABORT=y -CONFIG_CHRT=y +# CONFIG_CONSPY is not set CONFIG_CROND=y CONFIG_FEATURE_CROND_D=y CONFIG_FEATURE_CROND_CALL_SENDMAIL=y +CONFIG_FEATURE_CROND_SPECIAL_TIMES=y CONFIG_FEATURE_CROND_DIR="/var/spool/cron" CONFIG_CRONTAB=y -CONFIG_DC=y -CONFIG_FEATURE_DC_LIBM=y # CONFIG_DEVFSD is not set # CONFIG_DEVFSD_MODLOAD is not set # CONFIG_DEVFSD_FG_NP is not set # CONFIG_DEVFSD_VERBOSE is not set # CONFIG_FEATURE_DEVFS is not set CONFIG_DEVMEM=y -# CONFIG_EJECT is not set -# CONFIG_FEATURE_EJECT_SCSI is not set # CONFIG_FBSPLASH is not set -# CONFIG_FLASHCP is not set +# CONFIG_FLASH_ERASEALL is not set # CONFIG_FLASH_LOCK is not set # CONFIG_FLASH_UNLOCK is not set -# CONFIG_FLASH_ERASEALL is not set -# CONFIG_IONICE is not set -# CONFIG_INOTIFYD is not set -# CONFIG_LAST is not set -# CONFIG_FEATURE_LAST_SMALL is not set -# CONFIG_FEATURE_LAST_FANCY is not set +# CONFIG_FLASHCP is not set # CONFIG_HDPARM is not set # CONFIG_FEATURE_HDPARM_GET_IDENTITY is not set # CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set @@ -698,45 +774,65 @@ CONFIG_DEVMEM=y # CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set # CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set # CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA is not set -# CONFIG_MAKEDEVS is not set +CONFIG_HEXEDIT=y +# CONFIG_I2CGET is not set +# CONFIG_I2CSET is not set +# CONFIG_I2CDUMP is not set +# CONFIG_I2CDETECT is not set +# CONFIG_I2CTRANSFER is not set +# CONFIG_INOTIFYD is not set +CONFIG_LESS=y +CONFIG_FEATURE_LESS_MAXLINES=9999999 +CONFIG_FEATURE_LESS_BRACKETS=y +CONFIG_FEATURE_LESS_FLAGS=y +CONFIG_FEATURE_LESS_TRUNCATE=y +CONFIG_FEATURE_LESS_MARKS=y +CONFIG_FEATURE_LESS_REGEXP=y +CONFIG_FEATURE_LESS_WINCH=y +CONFIG_FEATURE_LESS_ASK_TERMINAL=y +CONFIG_FEATURE_LESS_DASHCMD=y +CONFIG_FEATURE_LESS_LINENUMS=y +CONFIG_FEATURE_LESS_RAW=y +CONFIG_FEATURE_LESS_ENV=y +CONFIG_LSSCSI=y +CONFIG_MAKEDEVS=y # CONFIG_FEATURE_MAKEDEVS_LEAF is not set -# CONFIG_FEATURE_MAKEDEVS_TABLE is not set +CONFIG_FEATURE_MAKEDEVS_TABLE=y CONFIG_MAN=y -# CONFIG_MICROCOM is not set -# CONFIG_MOUNTPOINT is not set +CONFIG_MICROCOM=y CONFIG_MT=y +# CONFIG_NANDWRITE is not set +# CONFIG_NANDDUMP is not set +# CONFIG_PARTPROBE is not set # CONFIG_RAIDAUTORUN is not set # CONFIG_READAHEAD is not set +# CONFIG_RFKILL is not set # CONFIG_RUNLEVEL is not set -# CONFIG_RX is not set -CONFIG_SETSID=y +CONFIG_RX=y +CONFIG_SETFATTR=y +# CONFIG_SETSERIAL is not set CONFIG_STRINGS=y -# CONFIG_TASKSET is not set -# CONFIG_FEATURE_TASKSET_FANCY is not set CONFIG_TIME=y -CONFIG_TIMEOUT=y +CONFIG_TS=y CONFIG_TTYSIZE=y +# CONFIG_UBIATTACH is not set +# CONFIG_UBIDETACH is not set +# CONFIG_UBIMKVOL is not set +# CONFIG_UBIRMVOL is not set +# CONFIG_UBIRSVOL is not set +# CONFIG_UBIUPDATEVOL is not set +# CONFIG_UBIRENAME is not set CONFIG_VOLNAME=y # CONFIG_WATCHDOG is not set # # Networking Utilities # -# CONFIG_NAMEIF is not set -# CONFIG_FEATURE_NAMEIF_EXTENDED is not set -# CONFIG_NBDCLIENT is not set -CONFIG_NC=y -CONFIG_NC_SERVER=y -CONFIG_NC_EXTRA=y -# CONFIG_NC_110_COMPAT is not set -# CONFIG_PING is not set -# CONFIG_PING6 is not set -# CONFIG_FEATURE_FANCY_PING is not set -CONFIG_WHOIS=y CONFIG_FEATURE_IPV6=y # CONFIG_FEATURE_UNIX_LOCAL is not set CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y -# CONFIG_VERBOSE_RESOLUTION_ERRORS is not set +CONFIG_VERBOSE_RESOLUTION_ERRORS=y +# CONFIG_FEATURE_TLS_SHA1 is not set # CONFIG_ARP is not set # CONFIG_ARPING is not set # CONFIG_BRCTL is not set @@ -744,20 +840,20 @@ CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y # CONFIG_FEATURE_BRCTL_SHOW is not set CONFIG_DNSD=y # CONFIG_ETHER_WAKE is not set -CONFIG_FAKEIDENTD=y -CONFIG_FTPD=y -CONFIG_FEATURE_FTP_WRITE=y -CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST=y +# CONFIG_FTPD is not set +# CONFIG_FEATURE_FTPD_WRITE is not set +# CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST is not set +# CONFIG_FEATURE_FTPD_AUTHENTICATION is not set CONFIG_FTPGET=y CONFIG_FTPPUT=y CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS=y CONFIG_HOSTNAME=y +CONFIG_DNSDOMAINNAME=y CONFIG_HTTPD=y CONFIG_FEATURE_HTTPD_RANGES=y -# CONFIG_FEATURE_HTTPD_USE_SENDFILE is not set CONFIG_FEATURE_HTTPD_SETUID=y CONFIG_FEATURE_HTTPD_BASIC_AUTH=y -CONFIG_FEATURE_HTTPD_AUTH_MD5=y +# CONFIG_FEATURE_HTTPD_AUTH_MD5 is not set CONFIG_FEATURE_HTTPD_CGI=y CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR=y CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV=y @@ -773,11 +869,10 @@ CONFIG_FEATURE_HTTPD_GZIP=y # CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set # CONFIG_IFENSLAVE is not set # CONFIG_IFPLUGD is not set -# CONFIG_IFUPDOWN is not set +CONFIG_IFUP=y +CONFIG_IFDOWN=y CONFIG_IFUPDOWN_IFSTATE_PATH="" # CONFIG_FEATURE_IFUPDOWN_IP is not set -# CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN is not set -# CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN is not set # CONFIG_FEATURE_IFUPDOWN_IPV4 is not set # CONFIG_FEATURE_IFUPDOWN_IPV6 is not set # CONFIG_FEATURE_IFUPDOWN_MAPPING is not set @@ -790,79 +885,109 @@ CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME=y CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN=y # CONFIG_FEATURE_INETD_RPC is not set # CONFIG_IP is not set -# CONFIG_FEATURE_IP_ADDRESS is not set -# CONFIG_FEATURE_IP_LINK is not set -# CONFIG_FEATURE_IP_ROUTE is not set -# CONFIG_FEATURE_IP_TUNNEL is not set -# CONFIG_FEATURE_IP_RULE is not set -# CONFIG_FEATURE_IP_SHORT_FORMS is not set -# CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set # CONFIG_IPADDR is not set # CONFIG_IPLINK is not set # CONFIG_IPROUTE is not set # CONFIG_IPTUNNEL is not set # CONFIG_IPRULE is not set +# CONFIG_IPNEIGH is not set +# CONFIG_FEATURE_IP_ADDRESS is not set +# CONFIG_FEATURE_IP_LINK is not set +# CONFIG_FEATURE_IP_ROUTE is not set +CONFIG_FEATURE_IP_ROUTE_DIR="" +# CONFIG_FEATURE_IP_TUNNEL is not set +# CONFIG_FEATURE_IP_RULE is not set +# CONFIG_FEATURE_IP_NEIGH is not set +# CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set CONFIG_IPCALC=y -CONFIG_FEATURE_IPCALC_FANCY=y CONFIG_FEATURE_IPCALC_LONG_OPTIONS=y +CONFIG_FEATURE_IPCALC_FANCY=y +CONFIG_FAKEIDENTD=y +# CONFIG_NAMEIF is not set +# CONFIG_FEATURE_NAMEIF_EXTENDED is not set +# CONFIG_NBDCLIENT is not set +CONFIG_NC=y +# CONFIG_NETCAT is not set +CONFIG_NC_SERVER=y +CONFIG_NC_EXTRA=y +CONFIG_NC_110_COMPAT=y # CONFIG_NETSTAT is not set # CONFIG_FEATURE_NETSTAT_WIDE is not set # CONFIG_FEATURE_NETSTAT_PRG is not set -# CONFIG_NSLOOKUP is not set +CONFIG_NSLOOKUP=y +# CONFIG_FEATURE_NSLOOKUP_BIG is not set +# CONFIG_FEATURE_NSLOOKUP_LONG_OPTIONS is not set # CONFIG_NTPD is not set # CONFIG_FEATURE_NTPD_SERVER is not set +# CONFIG_FEATURE_NTPD_CONF is not set +# CONFIG_FEATURE_NTP_AUTH is not set +CONFIG_PING=y +CONFIG_PING6=y +CONFIG_FEATURE_FANCY_PING=y CONFIG_PSCAN=y # CONFIG_ROUTE is not set # CONFIG_SLATTACH is not set +CONFIG_SSL_CLIENT=y +# CONFIG_TC is not set +# CONFIG_FEATURE_TC_INGRESS is not set CONFIG_TCPSVD=y +CONFIG_UDPSVD=y CONFIG_TELNET=y CONFIG_FEATURE_TELNET_TTYPE=y CONFIG_FEATURE_TELNET_AUTOLOGIN=y +CONFIG_FEATURE_TELNET_WIDTH=y CONFIG_TELNETD=y CONFIG_FEATURE_TELNETD_STANDALONE=y CONFIG_FEATURE_TELNETD_INETD_WAIT=y CONFIG_TFTP=y +CONFIG_FEATURE_TFTP_PROGRESS_BAR=y +CONFIG_FEATURE_TFTP_HPA_COMPAT=y CONFIG_TFTPD=y - -# -# Common options for tftp/tftpd -# CONFIG_FEATURE_TFTP_GET=y CONFIG_FEATURE_TFTP_PUT=y CONFIG_FEATURE_TFTP_BLOCKSIZE=y -CONFIG_FEATURE_TFTP_PROGRESS_BAR=y # CONFIG_TFTP_DEBUG is not set -# CONFIG_TRACEROUTE is not set +CONFIG_TLS=y +CONFIG_TRACEROUTE=y # CONFIG_TRACEROUTE6 is not set -# CONFIG_FEATURE_TRACEROUTE_VERBOSE is not set -# CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE is not set -# CONFIG_FEATURE_TRACEROUTE_USE_ICMP is not set +CONFIG_FEATURE_TRACEROUTE_VERBOSE=y +CONFIG_FEATURE_TRACEROUTE_USE_ICMP=y # CONFIG_TUNCTL is not set # CONFIG_FEATURE_TUNCTL_UG is not set -# CONFIG_UDHCPC6 is not set -# CONFIG_UDHCPD is not set -# CONFIG_DHCPRELAY is not set -# CONFIG_DUMPLEASES is not set -# CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set -# CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set -CONFIG_DHCPD_LEASES_FILE="" -# CONFIG_UDHCPC is not set -# CONFIG_FEATURE_UDHCPC_ARPING is not set -# CONFIG_FEATURE_UDHCP_PORT is not set -CONFIG_UDHCP_DEBUG=0 -# CONFIG_FEATURE_UDHCP_RFC3397 is not set -# CONFIG_FEATURE_UDHCP_8021Q is not set -CONFIG_UDHCPC_DEFAULT_SCRIPT="" -CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=0 -CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="" -CONFIG_UDPSVD=y # CONFIG_VCONFIG is not set CONFIG_WGET=y +CONFIG_FEATURE_WGET_LONG_OPTIONS=y CONFIG_FEATURE_WGET_STATUSBAR=y CONFIG_FEATURE_WGET_AUTHENTICATION=y -CONFIG_FEATURE_WGET_LONG_OPTIONS=y CONFIG_FEATURE_WGET_TIMEOUT=y +CONFIG_FEATURE_WGET_HTTPS=y +CONFIG_FEATURE_WGET_OPENSSL=y +CONFIG_WHOIS=y # CONFIG_ZCIP is not set +# CONFIG_UDHCPD is not set +# CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set +# CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set +CONFIG_DHCPD_LEASES_FILE="" +# CONFIG_DUMPLEASES is not set +# CONFIG_DHCPRELAY is not set +# CONFIG_UDHCPC is not set +# CONFIG_FEATURE_UDHCPC_ARPING is not set +# CONFIG_FEATURE_UDHCPC_SANITIZEOPT is not set +CONFIG_UDHCPC_DEFAULT_SCRIPT="" +# CONFIG_UDHCPC6 is not set +# CONFIG_FEATURE_UDHCPC6_RFC3646 is not set +# CONFIG_FEATURE_UDHCPC6_RFC4704 is not set +# CONFIG_FEATURE_UDHCPC6_RFC4833 is not set +# CONFIG_FEATURE_UDHCPC6_RFC5970 is not set +# +# Common options for DHCP applets +# +# CONFIG_FEATURE_UDHCP_PORT is not set +CONFIG_UDHCP_DEBUG=0 +CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=0 +# CONFIG_FEATURE_UDHCP_RFC3397 is not set +# CONFIG_FEATURE_UDHCP_8021Q is not set +CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="n" # # Print Utilities @@ -874,137 +999,173 @@ CONFIG_LPQ=y # # Mail Utilities # -CONFIG_MAKEMIME=y -CONFIG_FEATURE_MIME_CHARSET="us-ascii" -CONFIG_POPMAILDIR=y -CONFIG_FEATURE_POPMAILDIR_DELIVERY=y -CONFIG_REFORMIME=y -CONFIG_FEATURE_REFORMIME_COMPAT=y -CONFIG_SENDMAIL=y +# CONFIG_MAKEMIME is not set +# CONFIG_POPMAILDIR is not set +# CONFIG_FEATURE_POPMAILDIR_DELIVERY is not set +# CONFIG_REFORMIME is not set +# CONFIG_FEATURE_REFORMIME_COMPAT is not set +# CONFIG_SENDMAIL is not set +CONFIG_FEATURE_MIME_CHARSET="" # # Process Utilities # +CONFIG_FREE=y +CONFIG_FUSER=y CONFIG_IOSTAT=y +CONFIG_KILL=y +CONFIG_KILLALL=y +CONFIG_KILLALL5=y CONFIG_LSOF=y CONFIG_MPSTAT=y CONFIG_NMETER=y +CONFIG_PGREP=y +CONFIG_PKILL=y +CONFIG_PIDOF=y +CONFIG_FEATURE_PIDOF_SINGLE=y +CONFIG_FEATURE_PIDOF_OMIT=y # CONFIG_PMAP is not set # CONFIG_POWERTOP is not set +# CONFIG_FEATURE_POWERTOP_INTERACTIVE is not set +CONFIG_PS=y +# CONFIG_FEATURE_PS_WIDE is not set +# CONFIG_FEATURE_PS_LONG is not set +# CONFIG_FEATURE_PS_TIME is not set +# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set +CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS=y CONFIG_PSTREE=y CONFIG_PWDX=y CONFIG_SMEMCAP=y +CONFIG_BB_SYSCTL=y CONFIG_TOP=y +CONFIG_FEATURE_TOP_INTERACTIVE=y CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y CONFIG_FEATURE_TOP_SMP_CPU=y CONFIG_FEATURE_TOP_DECIMALS=y CONFIG_FEATURE_TOP_SMP_PROCESS=y CONFIG_FEATURE_TOPMEM=y -# CONFIG_UPTIME is not set +CONFIG_UPTIME=y # CONFIG_FEATURE_UPTIME_UTMP_SUPPORT is not set -# CONFIG_FREE is not set -CONFIG_FUSER=y -CONFIG_KILL=y -CONFIG_KILLALL=y -CONFIG_KILLALL5=y -CONFIG_PGREP=y -CONFIG_PIDOF=y -CONFIG_FEATURE_PIDOF_SINGLE=y -CONFIG_FEATURE_PIDOF_OMIT=y -CONFIG_PKILL=y -CONFIG_PS=y -CONFIG_FEATURE_PS_WIDE=y -# CONFIG_FEATURE_PS_LONG is not set -# CONFIG_FEATURE_PS_TIME is not set -CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS=y -# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set -CONFIG_RENICE=y -CONFIG_BB_SYSCTL=y -# CONFIG_FEATURE_SHOW_THREADS is not set CONFIG_WATCH=y +# CONFIG_FEATURE_SHOW_THREADS is not set # # Runit Utilities # -CONFIG_RUNSV=y -CONFIG_RUNSVDIR=y -# CONFIG_FEATURE_RUNSVDIR_LOG is not set -CONFIG_SV=y -CONFIG_SV_DEFAULT_SERVICE_DIR="/var/service" -CONFIG_SVLOGD=y CONFIG_CHPST=y CONFIG_SETUIDGID=y CONFIG_ENVUIDGID=y CONFIG_ENVDIR=y CONFIG_SOFTLIMIT=y +CONFIG_RUNSV=y +CONFIG_RUNSVDIR=y +# CONFIG_FEATURE_RUNSVDIR_LOG is not set +CONFIG_SV=y +CONFIG_SV_DEFAULT_SERVICE_DIR="/var/service" +CONFIG_SVC=y +CONFIG_SVOK=y +CONFIG_SVLOGD=y # CONFIG_CHCON is not set -# CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set # CONFIG_GETENFORCE is not set # CONFIG_GETSEBOOL is not set # CONFIG_LOAD_POLICY is not set # CONFIG_MATCHPATHCON is not set -# CONFIG_RESTORECON is not set # CONFIG_RUNCON is not set -# CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set # CONFIG_SELINUXENABLED is not set +# CONFIG_SESTATUS is not set # CONFIG_SETENFORCE is not set # CONFIG_SETFILES is not set # CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set +# CONFIG_RESTORECON is not set # CONFIG_SETSEBOOL is not set -# CONFIG_SESTATUS is not set # # Shells # +CONFIG_SH_IS_ASH=y +# CONFIG_SH_IS_HUSH is not set +# CONFIG_SH_IS_NONE is not set +# CONFIG_BASH_IS_ASH is not set +# CONFIG_BASH_IS_HUSH is not set +CONFIG_BASH_IS_NONE=y CONFIG_ASH=y +CONFIG_ASH_OPTIMIZE_FOR_SIZE=y +CONFIG_ASH_INTERNAL_GLOB=y CONFIG_ASH_BASH_COMPAT=y -# CONFIG_ASH_IDLE_TIMEOUT is not set +# CONFIG_ASH_BASH_SOURCE_CURDIR is not set +CONFIG_ASH_BASH_NOT_FOUND_HOOK=y CONFIG_ASH_JOB_CONTROL=y CONFIG_ASH_ALIAS=y -CONFIG_ASH_GETOPTS=y -CONFIG_ASH_BUILTIN_ECHO=y -CONFIG_ASH_BUILTIN_PRINTF=y -CONFIG_ASH_BUILTIN_TEST=y -CONFIG_ASH_CMDCMD=y -# CONFIG_ASH_MAIL is not set -CONFIG_ASH_OPTIMIZE_FOR_SIZE=y CONFIG_ASH_RANDOM_SUPPORT=y CONFIG_ASH_EXPAND_PRMT=y -# CONFIG_CTTYHACK is not set -CONFIG_HUSH=y -CONFIG_HUSH_BASH_COMPAT=y -CONFIG_HUSH_BRACE_EXPANSION=y -CONFIG_HUSH_HELP=y -CONFIG_HUSH_INTERACTIVE=y -CONFIG_HUSH_SAVEHISTORY=y -CONFIG_HUSH_JOB=y -CONFIG_HUSH_TICK=y -CONFIG_HUSH_IF=y -CONFIG_HUSH_LOOPS=y -CONFIG_HUSH_CASE=y -CONFIG_HUSH_FUNCTIONS=y -CONFIG_HUSH_LOCAL=y -CONFIG_HUSH_RANDOM_SUPPORT=y -CONFIG_HUSH_EXPORT_N=y -CONFIG_HUSH_MODE_X=y -# CONFIG_MSH is not set -CONFIG_FEATURE_SH_IS_ASH=y -# CONFIG_FEATURE_SH_IS_HUSH is not set -# CONFIG_FEATURE_SH_IS_NONE is not set -# CONFIG_FEATURE_BASH_IS_ASH is not set -# CONFIG_FEATURE_BASH_IS_HUSH is not set -CONFIG_FEATURE_BASH_IS_NONE=y -CONFIG_SH_MATH_SUPPORT=y -CONFIG_SH_MATH_SUPPORT_64=y +CONFIG_ASH_IDLE_TIMEOUT=y +# CONFIG_ASH_MAIL is not set +CONFIG_ASH_ECHO=y +CONFIG_ASH_PRINTF=y +CONFIG_ASH_TEST=y +CONFIG_ASH_HELP=y +CONFIG_ASH_GETOPTS=y +CONFIG_ASH_CMDCMD=y +CONFIG_CTTYHACK=y +# CONFIG_HUSH is not set +# CONFIG_HUSH_BASH_COMPAT is not set +# CONFIG_HUSH_BRACE_EXPANSION is not set +# CONFIG_HUSH_LINENO_VAR is not set +# CONFIG_HUSH_BASH_SOURCE_CURDIR is not set +# CONFIG_HUSH_INTERACTIVE is not set +# CONFIG_HUSH_SAVEHISTORY is not set +# CONFIG_HUSH_JOB is not set +# CONFIG_HUSH_TICK is not set +# CONFIG_HUSH_IF is not set +# CONFIG_HUSH_LOOPS is not set +# CONFIG_HUSH_CASE is not set +# CONFIG_HUSH_FUNCTIONS is not set +# CONFIG_HUSH_LOCAL is not set +# CONFIG_HUSH_RANDOM_SUPPORT is not set +# CONFIG_HUSH_MODE_X is not set +# CONFIG_HUSH_ECHO is not set +# CONFIG_HUSH_PRINTF is not set +# CONFIG_HUSH_TEST is not set +# CONFIG_HUSH_HELP is not set +# CONFIG_HUSH_EXPORT is not set +# CONFIG_HUSH_EXPORT_N is not set +# CONFIG_HUSH_READONLY is not set +# CONFIG_HUSH_KILL is not set +# CONFIG_HUSH_WAIT is not set +# CONFIG_HUSH_COMMAND is not set +# CONFIG_HUSH_TRAP is not set +# CONFIG_HUSH_TYPE is not set +# CONFIG_HUSH_TIMES is not set +# CONFIG_HUSH_READ is not set +# CONFIG_HUSH_SET is not set +# CONFIG_HUSH_UNSET is not set +# CONFIG_HUSH_ULIMIT is not set +# CONFIG_HUSH_UMASK is not set +# CONFIG_HUSH_GETOPTS is not set +# CONFIG_HUSH_MEMLEAK is not set + +# +# Options common to all shells +# +CONFIG_FEATURE_SH_MATH=y +CONFIG_FEATURE_SH_MATH_64=y +CONFIG_FEATURE_SH_MATH_BASE=y CONFIG_FEATURE_SH_EXTRA_QUIET=y # CONFIG_FEATURE_SH_STANDALONE is not set # CONFIG_FEATURE_SH_NOFORK is not set +CONFIG_FEATURE_SH_READ_FRAC=y CONFIG_FEATURE_SH_HISTFILESIZE=y +CONFIG_FEATURE_SH_EMBEDDED_SCRIPTS=y # # System Logging Utilities # +# CONFIG_KLOGD is not set +# CONFIG_FEATURE_KLOGD_KLOGCTL is not set +CONFIG_LOGGER=y +CONFIG_LOGREAD=y +CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING=y CONFIG_SYSLOGD=y CONFIG_FEATURE_ROTATE_LOGFILE=y CONFIG_FEATURE_REMOTE_LOG=y @@ -1013,9 +1174,4 @@ CONFIG_FEATURE_SYSLOGD_CFG=y CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=256 CONFIG_FEATURE_IPC_SYSLOG=y CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=16 -CONFIG_LOGREAD=y -CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING=y -# CONFIG_FEATURE_KMSG_SYSLOG is not set -# CONFIG_KLOGD is not set -# CONFIG_FEATURE_KLOGD_KLOGCTL is not set -CONFIG_LOGGER=y +CONFIG_FEATURE_KMSG_SYSLOG=y diff --git a/busybox/pwdW.patch b/busybox/pwdW.patch deleted file mode 100644 index c8edd4ee..00000000 --- a/busybox/pwdW.patch +++ /dev/null @@ -1,64 +0,0 @@ ---- a/coreutils/pwd.c 2014-10-26 18:24:17.355079400 +0000 -+++ b/coreutils/pwd.c 2014-10-26 18:39:51.371963700 +0000 -@@ -17,10 +17,13 @@ - //usage: "/root\n" - - #include "libbb.h" -+#ifdef __CYGWIN__ -+#include -+#endif - - /* This is a NOFORK applet. Be very careful! */ - --static int logical_getcwd(void) -+static int logical_getcwd(bool winpath) - { - struct stat st1; - struct stat st2; -@@ -55,6 +55,29 @@ - if (st1.st_dev != st2.st_dev) - return 0; - -+ if(winpath) -+ { -+ char *wpath = xzalloc(PATH_MAX); -+ char *cwd = xzalloc(PATH_MAX); -+ char *directory = getcwd(cwd, PATH_MAX); -+ if (cygwin_conv_path(CCP_POSIX_TO_WIN_A|CCP_ABSOLUTE, directory, wpath, PATH_MAX+1) < 0) { -+ free(wpath); -+ free(directory); -+ free(cwd); -+ return 0; -+ } -+ -+ char *c = wpath; -+ while ((c = strchr(c, '\\'))) -+ *c = '/'; -+ -+ puts(wpath); -+ free(wpath); -+ free(directory); -+ free(cwd); -+ return 1; -+ } -+ - puts(wd); - return 1; - } -@@ -74,10 +93,15 @@ - * POSIX requires a default of -L, but most scripts expect -P - */ - unsigned opt = getopt32(argv, "LP"); -- if ((opt & 1) && logical_getcwd()) -+ if ((opt & 1) && logical_getcwd(false)) - return fflush_all(); - } - -+ -+ unsigned wopt = getopt32(argv, "W"); -+ if ((wopt & 1) && logical_getcwd(true)) -+ return fflush_all(); -+ - buf = xrealloc_getcwd_or_warn(NULL); - - if (buf) {