wok-4.x rev 12466

New toolchain GCC 4.9.2, Glibc 2.19, Binutils 2.23.1
author Stanislas Leduc <shann@slitaz.org>
date Wed Nov 09 15:12:00 2022 +0000 (2022-11-09)
parents e929c7543035
children 6898646adcef
files binutils/receipt bison/receipt busybox/receipt busybox/stuff/applications/httpd.desktop busybox/stuff/applications/vi.desktop busybox/stuff/busybox-1.23.config busybox/stuff/httpd.conf busybox/stuff/inetd.conf busybox/stuff/patches/busybox-1.23-cmdline.u busybox/stuff/patches/busybox-1.23-cpio.u busybox/stuff/patches/busybox-1.23-diet.u busybox/stuff/patches/busybox-1.23-diff.u busybox/stuff/patches/busybox-1.23-dpkgxz.u busybox/stuff/patches/busybox-1.23-fbvnc.u busybox/stuff/patches/busybox-1.23-ftpd.u busybox/stuff/patches/busybox-1.23-losetup.u busybox/stuff/patches/busybox-1.23-printable.u busybox/stuff/patches/busybox-1.23-ris.u busybox/stuff/patches/busybox-1.23-shutdown.u busybox/stuff/patches/busybox-1.23-stat.u busybox/stuff/patches/busybox-1.23-tar.u busybox/stuff/patches/busybox-1.23-zmodules.u busybox/stuff/syslog.conf busybox/stuff/udhcp.script busybox/stuff/udhcpd.conf busybox/stuff/www/httpd/404.html bzip2-dev/receipt bzip2/receipt bzlib/receipt gcc-lib-base/receipt gcc/receipt gcc/stuff/gcc-4.9.2-EVIOCGPROP_fix-1.patch gcc/stuff/gcc-4.9.2-libsanitizer_fix-1.patch gdbm-dev/receipt gdbm/receipt gettext-base/receipt gettext/receipt gfortran/receipt glibc-base/receipt glibc-base/stuff/wanted-files.list glibc-dev/receipt glibc-extra-samba/receipt glibc-locale/receipt glibc/receipt glibc/stuff/glibc-2.19-fix-sign-in-bsloww1-input.patch glibc/stuff/glibc-2.19-tzselect-default.patch glibc/stuff/glibc-2.19-xattr_header.patch gmp-dev/receipt gmp/receipt libgfortran/receipt libgomp/receipt libobjc/receipt linux-api-headers/receipt linux-api-headers/stuff/header-type-missing.patch m4/receipt mpc-library/receipt mpfr-dev/receipt mpfr/receipt patch/receipt perl/receipt slitaz-toolchain/receipt wget/receipt zlib-dev/receipt zlib/receipt
line diff
     1.1 --- a/binutils/receipt	Mon Mar 04 18:42:23 2019 +0100
     1.2 +++ b/binutils/receipt	Wed Nov 09 15:12:00 2022 +0000
     1.3 @@ -1,7 +1,7 @@
     1.4  # SliTaz package receipt.
     1.5  
     1.6  PACKAGE="binutils"
     1.7 -VERSION="2.21"
     1.8 +VERSION="2.23.1"
     1.9  CATEGORY="development"
    1.10  SHORT_DESC="GNU assembler, linker and binary utilities."
    1.11  MAINTAINER="pankso@slitaz.org"
    1.12 @@ -53,6 +53,7 @@
    1.13  	$src/configure \
    1.14  		--program-prefix=$TOOLPREFIX \
    1.15  		--enable-shared \
    1.16 +		--disable-werror \
    1.17  		$CONFIGURE_ARGS &&
    1.18  	make tooldir=/usr &&
    1.19  	make tooldir=/usr install &&
     2.1 --- a/bison/receipt	Mon Mar 04 18:42:23 2019 +0100
     2.2 +++ b/bison/receipt	Wed Nov 09 15:12:00 2022 +0000
     2.3 @@ -1,7 +1,7 @@
     2.4  # SliTaz package receipt.
     2.5  
     2.6  PACKAGE="bison"
     2.7 -VERSION="2.5"
     2.8 +VERSION="3.7.5"
     2.9  CATEGORY="development"
    2.10  SHORT_DESC="GNU parser generator."
    2.11  MAINTAINER="pankso@slitaz.org"
    2.12 @@ -18,7 +18,8 @@
    2.13  {
    2.14  	cd $src
    2.15  	./configure $CONFIGURE_ARGS &&
    2.16 -	echo '#define YYENABLE_NLS 1' >> config.h &&
    2.17 +	# 2.5
    2.18 +	#echo '#define YYENABLE_NLS 1' >> config.h &&
    2.19  	make && make install
    2.20  }
    2.21  
     3.1 --- a/busybox/receipt	Mon Mar 04 18:42:23 2019 +0100
     3.2 +++ b/busybox/receipt	Wed Nov 09 15:12:00 2022 +0000
     3.3 @@ -1,25 +1,28 @@
     3.4  # SliTaz package receipt.
     3.5  
     3.6  PACKAGE="busybox"
     3.7 -VERSION="1.18.4"
     3.8 +VERSION="1.23.2"
     3.9  CATEGORY="base-system"
    3.10  SHORT_DESC="Busybox combines tiny versions of many common UNIX utilities."
    3.11 -MAINTAINER="pascal.bellard@slitaz.org"
    3.12 -DEPENDS="slitaz-base-files glibc-base ncurses-common"
    3.13 -BUILD_DEPENDS="bzip2 pam pam-dev uclibc-cross-compiler-i486"
    3.14 -AUFS_NOT_SUPPORTED="uclibc-cross-compiler-i486 is not compatible with aufs 8("
    3.15 +MAINTAINER="shann@slitaz.org"
    3.16 +LICENSE="GPL2"
    3.17  TARBALL="$PACKAGE-$VERSION.tar.bz2"
    3.18  WEB_SITE="http://www.busybox.net/"
    3.19  WGET_URL="http://www.busybox.net/downloads/$TARBALL"
    3.20 -CONFIG_FILES="/etc/dnsd.conf /etc/inetd.conf /etc/udhcpd.conf /etc/resolv.conf /etc/httpd.conf"
    3.21  
    3.22 +DEPENDS="slitaz-base-files glibc-base ncurses-common ncurses-extra"
    3.23 +BUILD_DEPENDS="bzip2 libtirpc-dev"
    3.24 +
    3.25 +CONFIG_FILES="/etc/dnsd.conf /etc/inetd.conf /etc/udhcpd.conf \
    3.26 +/etc/resolv.conf /etc/httpd.conf"
    3.27 +
    3.28 +# Busybox patches
    3.29  apply_bb_patchs()
    3.30  {
    3.31 -    cd $src
    3.32      while read file; do
    3.33      	[ -f done.$file ] && continue
    3.34      	echo "Apply $file..."
    3.35 -    	patch -p1 < $stuff/$PACKAGE-${VERSION%.*}-$file || return 1
    3.36 +    	patch -p1 < $stuff/patches/$PACKAGE-${VERSION%.*}-$file || return 1
    3.37  	touch done.$file
    3.38      done <<EOT
    3.39  tar.u
    3.40 @@ -28,111 +31,84 @@
    3.41  zmodules.u
    3.42  printable.u
    3.43  cmdline.u
    3.44 -conspy.u
    3.45 -httpd.u
    3.46 -su-nochdir.u
    3.47 -tftp-chroot.u
    3.48  diff.u
    3.49 +diet.u
    3.50 +losetup.u
    3.51 +fbvnc.u
    3.52 +cpio.u
    3.53 +ftpd.u
    3.54 +dpkgxz.u
    3.55 +shutdown.u
    3.56  EOT
    3.57      cp $stuff/$PACKAGE-${VERSION%.*}.config .config
    3.58  }
    3.59  
    3.60 -# Rules to compile & install the temporary toolchain.
    3.61 -cook_tmp_toolchain()
    3.62 -{
    3.63 -    { stuff=${stuff:-../stuff}
    3.64 -    apply_bb_patchs && 
    3.65 -    make oldconfig &&
    3.66 -    make &&
    3.67 -    make CONFIG_PREFIX=/tools install
    3.68 -    } || return 1
    3.69 -    echo "Chmod 4755 on busybox binary..."
    3.70 -    chmod 4755 /tools/bin/busybox
    3.71 -}
    3.72 -
    3.73  # Rules to configure and make the package.
    3.74  compile_rules()
    3.75  {
    3.76 -    { apply_bb_patchs && 
    3.77 -    make oldconfig &&
    3.78 -    make &&
    3.79 -    make install
    3.80 -    } || return 1
    3.81 +	apply_bb_patchs &&
    3.82 +	#patch -p1 < $stuff/patches/$PACKAGE-${VERSION%.*}-glibc.patch &&
    3.83 +	cp $stuff/$PACKAGE-${VERSION%.*}.config .config &&
    3.84 +	make oldconfig &&
    3.85 +	make && make install || return 1
    3.86 +	strip --strip-unneeded -R .eh_frame -R .eh_frame_hdr $src/_install/bin/busybox
    3.87 +}
    3.88  
    3.89 -    # prepare busybox-pam package
    3.90 -    sed -i 's/# CONFIG_PAM is not set/CONFIG_PAM=y/' .config
    3.91 -    make oldconfig && make || return 1
    3.92 -    mv busybox busybox-pam
    3.93 -
    3.94 -    # prepare busybox-static package
    3.95 -    cp $stuff/$PACKAGE-${VERSION%.*}.config-static .config
    3.96 -    make oldconfig && make || return 1
    3.97 -    mv busybox busybox-static
    3.98 -
    3.99 -    # prepare ssfs-busybox package
   3.100 -    rootfs=$src/ssfs-busybox/usr/share/ssfs/rootfs
   3.101 -    mkdir -p $rootfs/etc
   3.102 -    cp $stuff/$PACKAGE-${VERSION%.*}.config-ssfs .config
   3.103 -    make oldconfig && make busybox &&
   3.104 -    make CONFIG_PREFIX=$rootfs install || return 1
   3.105 -    cp $stuff/busybox.conf-ssfs $rootfs/etc/busybox.conf
   3.106 -    chown -R 0.0 $rootfs/etc
   3.107 -    chmod 0600 $rootfs/etc/busybox.conf
   3.108 -    chmod 4755 $rootfs/bin/busybox
   3.109 +# Cross compilation check.
   3.110 +testsuite()
   3.111 +{
   3.112 +	readelf -h $src/_install/bin/busybox
   3.113  }
   3.114  
   3.115  # Rules to gen a SliTaz package suitable for Tazpkg.
   3.116  genpkg_rules()
   3.117  {
   3.118 -    cp -a $src/_install/* $fs
   3.119 -    rm -f $fs/bin/bbconfig $fs/usr/bin/ar
   3.120 -    mkdir -p $fs/etc/init.d $fs/var
   3.121 -    
   3.122 -    # Busybox config files.
   3.123 -    for f in busybox.conf dnsd.conf udhcpd.conf inetd.conf httpd.conf zcip.script
   3.124 -    do
   3.125 +	cp -a $src/_install/* $fs
   3.126 +	rm -f $fs/bin/bbconfig $fs/usr/bin/ar
   3.127 +	mkdir -p $fs/etc/init.d $fs/var/spool/cron/crontabs $fs/var/spool/lpd
   3.128 +
   3.129 +	# Busybox config files.
   3.130 +	for f in busybox.conf dnsd.conf udhcpd.conf inetd.conf httpd.conf \
   3.131 +		syslog.conf zcip.script
   3.132 +	do
   3.133  		cp $stuff/$f $fs/etc
   3.134 -    done
   3.135 -    chown -R 0.0 $fs/etc
   3.136 -    chmod 600 $fs/etc/busybox.conf
   3.137 -    touch $fs/etc/resolv.conf
   3.138 +	done
   3.139 +	chown -R 0.0 $fs/etc
   3.140 +	chmod 600 $fs/etc/busybox.conf
   3.141 +	touch $fs/etc/resolv.conf
   3.142  
   3.143 -	# Daemon scripts and init.
   3.144 -    cp $stuff/daemon $fs/etc/init.d
   3.145 -    DAEMON="crond dnsd ftpd httpd inetd klogd ntpd syslogd telnetd tftpd udhcpd zcip"
   3.146 -    for i in $DAEMON; do
   3.147 -		grep -qi config_$i=y $stuff/$PACKAGE-${VERSION%.*}.config && 
   3.148 +	# Daemon scripts.
   3.149 +	cp $stuff/daemon $fs/etc/init.d
   3.150 +	DAEMON="crond dnsd ftpd httpd inetd lpd klogd ntpd syslogd telnetd tftpd udhcpd zcip"
   3.151 +	for i in $DAEMON; do
   3.152 +		grep -qi config_$i=y $stuff/$PACKAGE-${VERSION%.*}.config &&
   3.153  		ln -s daemon $fs/etc/init.d/$i
   3.154 -    done
   3.155 -    rm $fs/linuxrc
   3.156 -    mkdir -p $fs/etc/modprobe.d
   3.157 -    
   3.158 -    # Udhcpc stuff.
   3.159 -    mkdir -p $fs/usr/share/udhcpc
   3.160 -    cp $stuff/udhcp.script $fs/usr/share/udhcpc/default.script
   3.161 -    chmod +x $fs/usr/share/udhcpc/default.script
   3.162 +	done
   3.163 +	rm $fs/linuxrc
   3.164 +	mkdir -p $fs/etc/modprobe.d
   3.165  
   3.166 -    # Httpd stuff.
   3.167 -    cp $stuff/httpd_helper.sh $fs/usr/bin
   3.168 -    chmod +x $fs/usr/bin/httpd_helper.sh
   3.169 -    cp -a $stuff/www $fs/var
   3.170 +	# Udhcpc stuff.
   3.171 +	mkdir -p $fs/usr/share/udhcpc
   3.172 +	cp $stuff/udhcp.script $fs/usr/share/udhcpc/default.script
   3.173 +	chmod +x $fs/usr/share/udhcpc/default.script
   3.174 +
   3.175 +	# Httpd stuff.
   3.176 +	ln -s /usr/lib/slitaz/httphelper.sh $fs/usr/bin/httpd_helper.sh
   3.177 +	cp -a $stuff/www $fs/var
   3.178  }
   3.179  
   3.180 -# Force glibc-2.7 reinstall if 2.3.6 still in use.
   3.181 +# GNU utils stuff.
   3.182  pre_install()
   3.183  {
   3.184  	local i
   3.185  	cp -a /etc/resolv.conf /etc/resolv.conf-busybox-install
   3.186 -	if grep -q 'VERSION="2.3.6"' /var/lib/tazpkg/installed/glibc-base/receipt; then
   3.187 -		tazpkg get-install glibc-base --forced
   3.188 -	fi
   3.189  	answer=""
   3.190  	for i in $(cat $1$INSTALLED/$PACKAGE/files.list); do
   3.191  		[ -f $1$i ] || continue
   3.192  		case "$i" in
   3.193 -		/bin/busybox) continue ;;
   3.194 -		*bin/*) ;;
   3.195 -		*) continue ;;
   3.196 +			/bin/busybox) continue ;;
   3.197 +			*bin/*) ;;
   3.198 +			*) continue ;;
   3.199  		esac
   3.200  		if [ -z "$answer" ]; then
   3.201  			echo -n "Keep installed GNU utilities ? "
   3.202 @@ -168,11 +144,7 @@
   3.203  		echo 'TFTPD_OPTIONS="-r /boot"' >> $root/etc/daemons.conf
   3.204  		echo '' >> $root/etc/daemons.conf
   3.205  	fi
   3.206 -	if ! grep -q ^HTTPD_OPTIONS $root/etc/daemons.conf; then
   3.207 -		echo '# Busybox HTTP web server options.' >> $root/etc/daemons.conf
   3.208 -		echo 'HTTPD_OPTIONS="-u www"' >> $root/etc/daemons.conf
   3.209 -		echo '' >> $root/etc/daemons.conf
   3.210 -	fi
   3.211 +	sed -i "s/copy; 20../copy; $(date +%Y)/" $root/var/www/httpd/404.html
   3.212  }
   3.213  
   3.214  pre_remove()
     4.1 --- a/busybox/stuff/applications/httpd.desktop	Mon Mar 04 18:42:23 2019 +0100
     4.2 +++ b/busybox/stuff/applications/httpd.desktop	Wed Nov 09 15:12:00 2022 +0000
     4.3 @@ -1,7 +1,10 @@
     4.4  [Desktop Entry]
     4.5 -Encoding=UTF-8
     4.6 +Type=Application
     4.7  Name=Local Web Server
     4.8 +Name[fr]=Serveur Web local
     4.9 +Name[pt]=Servidor Web local
    4.10 +Name[pt_BR]=Servidor Web local
    4.11 +Name[ru]=Локальный веб-сервер
    4.12  Exec=browser http://localhost/
    4.13 -Icon=text-html
    4.14 -Type=Application
    4.15 +Icon=network-server
    4.16  Categories=Network;
     5.1 --- a/busybox/stuff/applications/vi.desktop	Mon Mar 04 18:42:23 2019 +0100
     5.2 +++ b/busybox/stuff/applications/vi.desktop	Wed Nov 09 15:12:00 2022 +0000
     5.3 @@ -1,8 +1,10 @@
     5.4  [Desktop Entry]
     5.5 -Encoding=UTF-8
     5.6 +Type=Application
     5.7  Name=Vi Text Editor
     5.8  Name[fr]=Editeur de texte Vi
     5.9 -Exec=terminal vi
    5.10 -Icon=text-editor
    5.11 -Type=Application
    5.12 -Categories=Application;Development;
    5.13 +Name[pt]=Editor de textos Vi
    5.14 +Name[pt_BR]=Editor de textos Vi
    5.15 +Name[ru]=Текстовый редактор Vi
    5.16 +Exec=terminal -e vi
    5.17 +Icon=accessories-text-editor
    5.18 +Categories=Development;IDE;
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/busybox/stuff/busybox-1.23.config	Wed Nov 09 15:12:00 2022 +0000
     6.3 @@ -0,0 +1,1056 @@
     6.4 +#
     6.5 +# Automatically generated make config: don't edit
     6.6 +# Busybox version: 1.23.2
     6.7 +# Fri Apr 29 06:50:20 2022
     6.8 +#
     6.9 +CONFIG_HAVE_DOT_CONFIG=y
    6.10 +
    6.11 +#
    6.12 +# Busybox Settings
    6.13 +#
    6.14 +
    6.15 +#
    6.16 +# General Configuration
    6.17 +#
    6.18 +CONFIG_DESKTOP=y
    6.19 +# CONFIG_EXTRA_COMPAT is not set
    6.20 +CONFIG_INCLUDE_SUSv2=y
    6.21 +# CONFIG_USE_PORTABLE_CODE is not set
    6.22 +CONFIG_PLATFORM_LINUX=y
    6.23 +CONFIG_FEATURE_BUFFERS_USE_MALLOC=y
    6.24 +# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set
    6.25 +# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
    6.26 +CONFIG_SHOW_USAGE=y
    6.27 +CONFIG_FEATURE_VERBOSE_USAGE=y
    6.28 +CONFIG_FEATURE_COMPRESS_USAGE=y
    6.29 +CONFIG_FEATURE_INSTALLER=y
    6.30 +# CONFIG_INSTALL_NO_USR is not set
    6.31 +CONFIG_LOCALE_SUPPORT=y
    6.32 +CONFIG_UNICODE_SUPPORT=y
    6.33 +# CONFIG_UNICODE_USING_LOCALE is not set
    6.34 +# CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set
    6.35 +CONFIG_SUBST_WCHAR=63
    6.36 +CONFIG_LAST_SUPPORTED_WCHAR=11263
    6.37 +# CONFIG_UNICODE_COMBINING_WCHARS is not set
    6.38 +# CONFIG_UNICODE_WIDE_WCHARS is not set
    6.39 +# CONFIG_UNICODE_BIDI_SUPPORT is not set
    6.40 +# CONFIG_UNICODE_NEUTRAL_TABLE is not set
    6.41 +# CONFIG_UNICODE_PRESERVE_BROKEN is not set
    6.42 +# CONFIG_PAM is not set
    6.43 +CONFIG_FEATURE_USE_SENDFILE=y
    6.44 +CONFIG_LONG_OPTS=y
    6.45 +CONFIG_FEATURE_DEVPTS=y
    6.46 +# CONFIG_FEATURE_CLEAN_UP is not set
    6.47 +CONFIG_FEATURE_UTMP=y
    6.48 +CONFIG_FEATURE_WTMP=y
    6.49 +CONFIG_FEATURE_PIDFILE=y
    6.50 +CONFIG_PID_FILE_PATH="/run"
    6.51 +CONFIG_FEATURE_SUID=y
    6.52 +CONFIG_FEATURE_SUID_CONFIG=y
    6.53 +# CONFIG_FEATURE_SUID_CONFIG_QUIET is not set
    6.54 +# CONFIG_SELINUX is not set
    6.55 +# CONFIG_FEATURE_PREFER_APPLETS is not set
    6.56 +CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
    6.57 +CONFIG_FEATURE_SYSLOG=y
    6.58 +# CONFIG_FEATURE_HAVE_RPC is not set
    6.59 +
    6.60 +#
    6.61 +# Build Options
    6.62 +#
    6.63 +# CONFIG_STATIC is not set
    6.64 +# CONFIG_PIE is not set
    6.65 +# CONFIG_NOMMU is not set
    6.66 +# CONFIG_BUILD_LIBBUSYBOX is not set
    6.67 +# CONFIG_FEATURE_INDIVIDUAL is not set
    6.68 +# CONFIG_FEATURE_SHARED_BUSYBOX is not set
    6.69 +CONFIG_LFS=y
    6.70 +CONFIG_CROSS_COMPILER_PREFIX=""
    6.71 +CONFIG_SYSROOT=""
    6.72 +CONFIG_EXTRA_CFLAGS=""
    6.73 +CONFIG_EXTRA_LDFLAGS=""
    6.74 +CONFIG_EXTRA_LDLIBS=""
    6.75 +
    6.76 +#
    6.77 +# Debugging Options
    6.78 +#
    6.79 +# CONFIG_DEBUG is not set
    6.80 +# CONFIG_DEBUG_PESSIMIZE is not set
    6.81 +# CONFIG_UNIT_TEST is not set
    6.82 +# CONFIG_WERROR is not set
    6.83 +CONFIG_NO_DEBUG_LIB=y
    6.84 +# CONFIG_DMALLOC is not set
    6.85 +# CONFIG_EFENCE is not set
    6.86 +
    6.87 +#
    6.88 +# Installation Options ("make install" behavior)
    6.89 +#
    6.90 +CONFIG_INSTALL_APPLET_SYMLINKS=y
    6.91 +# CONFIG_INSTALL_APPLET_HARDLINKS is not set
    6.92 +# CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS is not set
    6.93 +# CONFIG_INSTALL_APPLET_DONT is not set
    6.94 +# CONFIG_INSTALL_SH_APPLET_SYMLINK is not set
    6.95 +# CONFIG_INSTALL_SH_APPLET_HARDLINK is not set
    6.96 +# CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set
    6.97 +CONFIG_PREFIX="./_install"
    6.98 +
    6.99 +#
   6.100 +# Busybox Library Tuning
   6.101 +#
   6.102 +# CONFIG_FEATURE_SYSTEMD is not set
   6.103 +# CONFIG_FEATURE_RTMINMAX is not set
   6.104 +CONFIG_PASSWORD_MINLEN=6
   6.105 +CONFIG_MD5_SMALL=1
   6.106 +CONFIG_SHA3_SMALL=1
   6.107 +# CONFIG_FEATURE_FAST_TOP is not set
   6.108 +# CONFIG_FEATURE_ETC_NETWORKS is not set
   6.109 +CONFIG_FEATURE_USE_TERMIOS=y
   6.110 +CONFIG_FEATURE_EDITING=y
   6.111 +CONFIG_FEATURE_EDITING_MAX_LEN=1024
   6.112 +# CONFIG_FEATURE_EDITING_VI is not set
   6.113 +CONFIG_FEATURE_EDITING_HISTORY=255
   6.114 +CONFIG_FEATURE_EDITING_SAVEHISTORY=y
   6.115 +# CONFIG_FEATURE_EDITING_SAVE_ON_EXIT is not set
   6.116 +CONFIG_FEATURE_REVERSE_SEARCH=y
   6.117 +CONFIG_FEATURE_TAB_COMPLETION=y
   6.118 +# CONFIG_FEATURE_USERNAME_COMPLETION is not set
   6.119 +CONFIG_FEATURE_EDITING_FANCY_PROMPT=y
   6.120 +# CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set
   6.121 +CONFIG_FEATURE_NON_POSIX_CP=y
   6.122 +# CONFIG_FEATURE_VERBOSE_CP_MESSAGE is not set
   6.123 +CONFIG_FEATURE_COPYBUF_KB=4
   6.124 +CONFIG_FEATURE_SKIP_ROOTFS=y
   6.125 +CONFIG_MONOTONIC_SYSCALL=y
   6.126 +CONFIG_IOCTL_HEX2STR_ERROR=y
   6.127 +CONFIG_FEATURE_HWIB=y
   6.128 +
   6.129 +#
   6.130 +# Applets
   6.131 +#
   6.132 +
   6.133 +#
   6.134 +# Archival Utilities
   6.135 +#
   6.136 +CONFIG_FEATURE_SEAMLESS_XZ=y
   6.137 +CONFIG_FEATURE_SEAMLESS_LZMA=y
   6.138 +CONFIG_FEATURE_SEAMLESS_BZ2=y
   6.139 +CONFIG_FEATURE_SEAMLESS_GZ=y
   6.140 +CONFIG_FEATURE_SEAMLESS_Z=y
   6.141 +CONFIG_AR=y
   6.142 +# CONFIG_FEATURE_AR_LONG_FILENAMES is not set
   6.143 +CONFIG_FEATURE_AR_CREATE=y
   6.144 +CONFIG_UNCOMPRESS=y
   6.145 +CONFIG_GUNZIP=y
   6.146 +CONFIG_BUNZIP2=y
   6.147 +CONFIG_UNLZMA=y
   6.148 +# CONFIG_FEATURE_LZMA_FAST is not set
   6.149 +# CONFIG_LZMA is not set
   6.150 +CONFIG_UNXZ=y
   6.151 +# CONFIG_XZ is not set
   6.152 +# CONFIG_BZIP2 is not set
   6.153 +CONFIG_CPIO=y
   6.154 +CONFIG_FEATURE_CPIO_O=y
   6.155 +# CONFIG_FEATURE_CPIO_P is not set
   6.156 +CONFIG_DPKG=y
   6.157 +CONFIG_DPKG_DEB=y
   6.158 +CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY=y
   6.159 +CONFIG_GZIP=y
   6.160 +CONFIG_FEATURE_GZIP_LONG_OPTIONS=y
   6.161 +CONFIG_GZIP_FAST=0
   6.162 +# CONFIG_LZOP is not set
   6.163 +# CONFIG_LZOP_COMPR_HIGH is not set
   6.164 +CONFIG_RPM=y
   6.165 +CONFIG_RPM2CPIO=y
   6.166 +CONFIG_TAR=y
   6.167 +CONFIG_FEATURE_TAR_CREATE=y
   6.168 +CONFIG_FEATURE_TAR_AUTODETECT=y
   6.169 +CONFIG_FEATURE_TAR_FROM=y
   6.170 +CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY=y
   6.171 +CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY=y
   6.172 +CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
   6.173 +CONFIG_FEATURE_TAR_LONG_OPTIONS=y
   6.174 +CONFIG_FEATURE_TAR_TO_COMMAND=y
   6.175 +CONFIG_FEATURE_TAR_UNAME_GNAME=y
   6.176 +CONFIG_FEATURE_TAR_NOPRESERVE_TIME=y
   6.177 +# CONFIG_FEATURE_TAR_SELINUX is not set
   6.178 +CONFIG_UNZIP=y
   6.179 +
   6.180 +#
   6.181 +# Coreutils
   6.182 +#
   6.183 +CONFIG_BASENAME=y
   6.184 +CONFIG_CAT=y
   6.185 +CONFIG_DATE=y
   6.186 +CONFIG_FEATURE_DATE_ISOFMT=y
   6.187 +# CONFIG_FEATURE_DATE_NANO is not set
   6.188 +CONFIG_FEATURE_DATE_COMPAT=y
   6.189 +CONFIG_HOSTID=y
   6.190 +CONFIG_ID=y
   6.191 +CONFIG_GROUPS=y
   6.192 +# CONFIG_SHUF is not set
   6.193 +CONFIG_TEST=y
   6.194 +# CONFIG_FEATURE_TEST_64 is not set
   6.195 +CONFIG_TOUCH=y
   6.196 +CONFIG_FEATURE_TOUCH_NODEREF=y
   6.197 +CONFIG_FEATURE_TOUCH_SUSV3=y
   6.198 +CONFIG_TR=y
   6.199 +CONFIG_FEATURE_TR_CLASSES=y
   6.200 +CONFIG_FEATURE_TR_EQUIV=y
   6.201 +# CONFIG_UNLINK is not set
   6.202 +CONFIG_BASE64=y
   6.203 +CONFIG_WHO=y
   6.204 +CONFIG_USERS=y
   6.205 +CONFIG_CAL=y
   6.206 +# CONFIG_CATV is not set
   6.207 +CONFIG_CHGRP=y
   6.208 +CONFIG_CHMOD=y
   6.209 +CONFIG_CHOWN=y
   6.210 +CONFIG_FEATURE_CHOWN_LONG_OPTIONS=y
   6.211 +CONFIG_CHROOT=y
   6.212 +CONFIG_CKSUM=y
   6.213 +CONFIG_COMM=y
   6.214 +CONFIG_CP=y
   6.215 +CONFIG_FEATURE_CP_LONG_OPTIONS=y
   6.216 +CONFIG_CUT=y
   6.217 +CONFIG_DD=y
   6.218 +CONFIG_FEATURE_DD_SIGNAL_HANDLING=y
   6.219 +CONFIG_FEATURE_DD_THIRD_STATUS_LINE=y
   6.220 +CONFIG_FEATURE_DD_IBS_OBS=y
   6.221 +CONFIG_DF=y
   6.222 +CONFIG_FEATURE_DF_FANCY=y
   6.223 +CONFIG_DIRNAME=y
   6.224 +CONFIG_DOS2UNIX=y
   6.225 +CONFIG_UNIX2DOS=y
   6.226 +CONFIG_DU=y
   6.227 +CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y
   6.228 +CONFIG_ECHO=y
   6.229 +CONFIG_FEATURE_FANCY_ECHO=y
   6.230 +CONFIG_ENV=y
   6.231 +CONFIG_FEATURE_ENV_LONG_OPTIONS=y
   6.232 +CONFIG_EXPAND=y
   6.233 +CONFIG_FEATURE_EXPAND_LONG_OPTIONS=y
   6.234 +CONFIG_EXPR=y
   6.235 +# CONFIG_EXPR_MATH_SUPPORT_64 is not set
   6.236 +CONFIG_FALSE=y
   6.237 +CONFIG_FOLD=y
   6.238 +CONFIG_FSYNC=y
   6.239 +CONFIG_HEAD=y
   6.240 +CONFIG_FEATURE_FANCY_HEAD=y
   6.241 +CONFIG_INSTALL=y
   6.242 +CONFIG_FEATURE_INSTALL_LONG_OPTIONS=y
   6.243 +CONFIG_LN=y
   6.244 +CONFIG_LOGNAME=y
   6.245 +CONFIG_LS=y
   6.246 +CONFIG_FEATURE_LS_FILETYPES=y
   6.247 +CONFIG_FEATURE_LS_FOLLOWLINKS=y
   6.248 +CONFIG_FEATURE_LS_RECURSIVE=y
   6.249 +CONFIG_FEATURE_LS_SORTFILES=y
   6.250 +CONFIG_FEATURE_LS_TIMESTAMPS=y
   6.251 +CONFIG_FEATURE_LS_USERNAME=y
   6.252 +CONFIG_FEATURE_LS_COLOR=y
   6.253 +CONFIG_FEATURE_LS_COLOR_IS_DEFAULT=y
   6.254 +CONFIG_MD5SUM=y
   6.255 +CONFIG_MKDIR=y
   6.256 +CONFIG_FEATURE_MKDIR_LONG_OPTIONS=y
   6.257 +CONFIG_MKFIFO=y
   6.258 +CONFIG_MKNOD=y
   6.259 +CONFIG_MV=y
   6.260 +CONFIG_FEATURE_MV_LONG_OPTIONS=y
   6.261 +CONFIG_NICE=y
   6.262 +CONFIG_NOHUP=y
   6.263 +CONFIG_OD=y
   6.264 +CONFIG_PRINTENV=y
   6.265 +CONFIG_PRINTF=y
   6.266 +CONFIG_PWD=y
   6.267 +CONFIG_READLINK=y
   6.268 +CONFIG_FEATURE_READLINK_FOLLOW=y
   6.269 +CONFIG_REALPATH=y
   6.270 +CONFIG_RM=y
   6.271 +CONFIG_RMDIR=y
   6.272 +CONFIG_FEATURE_RMDIR_LONG_OPTIONS=y
   6.273 +CONFIG_SEQ=y
   6.274 +CONFIG_SHA1SUM=y
   6.275 +CONFIG_SHA256SUM=y
   6.276 +CONFIG_SHA512SUM=y
   6.277 +CONFIG_SHA3SUM=y
   6.278 +CONFIG_SLEEP=y
   6.279 +CONFIG_FEATURE_FANCY_SLEEP=y
   6.280 +CONFIG_FEATURE_FLOAT_SLEEP=y
   6.281 +CONFIG_SORT=y
   6.282 +CONFIG_FEATURE_SORT_BIG=y
   6.283 +CONFIG_SPLIT=y
   6.284 +CONFIG_FEATURE_SPLIT_FANCY=y
   6.285 +CONFIG_STAT=y
   6.286 +CONFIG_FEATURE_STAT_FORMAT=y
   6.287 +CONFIG_STTY=y
   6.288 +CONFIG_SUM=y
   6.289 +CONFIG_SYNC=y
   6.290 +CONFIG_TAC=y
   6.291 +CONFIG_TAIL=y
   6.292 +CONFIG_FEATURE_FANCY_TAIL=y
   6.293 +CONFIG_TEE=y
   6.294 +CONFIG_FEATURE_TEE_USE_BLOCK_IO=y
   6.295 +CONFIG_TRUE=y
   6.296 +CONFIG_TTY=y
   6.297 +CONFIG_UNAME=y
   6.298 +CONFIG_UNEXPAND=y
   6.299 +CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS=y
   6.300 +CONFIG_UNIQ=y
   6.301 +CONFIG_USLEEP=y
   6.302 +CONFIG_UUDECODE=y
   6.303 +CONFIG_UUENCODE=y
   6.304 +CONFIG_WC=y
   6.305 +CONFIG_FEATURE_WC_LARGE=y
   6.306 +CONFIG_WHOAMI=y
   6.307 +CONFIG_YES=y
   6.308 +
   6.309 +#
   6.310 +# Common options
   6.311 +#
   6.312 +CONFIG_FEATURE_VERBOSE=y
   6.313 +
   6.314 +#
   6.315 +# Common options for cp and mv
   6.316 +#
   6.317 +CONFIG_FEATURE_PRESERVE_HARDLINKS=y
   6.318 +
   6.319 +#
   6.320 +# Common options for ls, more and telnet
   6.321 +#
   6.322 +CONFIG_FEATURE_AUTOWIDTH=y
   6.323 +
   6.324 +#
   6.325 +# Common options for df, du, ls
   6.326 +#
   6.327 +CONFIG_FEATURE_HUMAN_READABLE=y
   6.328 +
   6.329 +#
   6.330 +# Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum
   6.331 +#
   6.332 +CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
   6.333 +
   6.334 +#
   6.335 +# Console Utilities
   6.336 +#
   6.337 +CONFIG_CHVT=y
   6.338 +# CONFIG_FGCONSOLE is not set
   6.339 +CONFIG_CLEAR=y
   6.340 +CONFIG_DEALLOCVT=y
   6.341 +CONFIG_DUMPKMAP=y
   6.342 +CONFIG_KBD_MODE=y
   6.343 +# CONFIG_LOADFONT is not set
   6.344 +CONFIG_LOADKMAP=y
   6.345 +CONFIG_OPENVT=y
   6.346 +CONFIG_RESET=y
   6.347 +# CONFIG_RESIZE is not set
   6.348 +# CONFIG_FEATURE_RESIZE_PRINT is not set
   6.349 +CONFIG_SETCONSOLE=y
   6.350 +# CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS is not set
   6.351 +# CONFIG_SETFONT is not set
   6.352 +# CONFIG_FEATURE_SETFONT_TEXTUAL_MAP is not set
   6.353 +CONFIG_DEFAULT_SETFONT_DIR=""
   6.354 +CONFIG_SETKEYCODES=y
   6.355 +CONFIG_SETLOGCONS=y
   6.356 +# CONFIG_SHOWKEY is not set
   6.357 +# CONFIG_FEATURE_LOADFONT_PSF2 is not set
   6.358 +# CONFIG_FEATURE_LOADFONT_RAW is not set
   6.359 +
   6.360 +#
   6.361 +# Debian Utilities
   6.362 +#
   6.363 +CONFIG_MKTEMP=y
   6.364 +CONFIG_PIPE_PROGRESS=y
   6.365 +# CONFIG_RUN_PARTS is not set
   6.366 +# CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS is not set
   6.367 +# CONFIG_FEATURE_RUN_PARTS_FANCY is not set
   6.368 +# CONFIG_START_STOP_DAEMON is not set
   6.369 +# CONFIG_FEATURE_START_STOP_DAEMON_FANCY is not set
   6.370 +# CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS is not set
   6.371 +CONFIG_WHICH=y
   6.372 +
   6.373 +#
   6.374 +# Editors
   6.375 +#
   6.376 +CONFIG_AWK=y
   6.377 +# CONFIG_FEATURE_AWK_LIBM is not set
   6.378 +CONFIG_FEATURE_AWK_GNU_EXTENSIONS=y
   6.379 +CONFIG_CMP=y
   6.380 +CONFIG_DIFF=y
   6.381 +CONFIG_FEATURE_DIFF_LONG_OPTIONS=y
   6.382 +CONFIG_FEATURE_DIFF_DIR=y
   6.383 +# CONFIG_ED is not set
   6.384 +CONFIG_PATCH=y
   6.385 +CONFIG_SED=y
   6.386 +CONFIG_VI=y
   6.387 +CONFIG_FEATURE_VI_MAX_LEN=1024
   6.388 +CONFIG_FEATURE_VI_8BIT=y
   6.389 +CONFIG_FEATURE_VI_COLON=y
   6.390 +CONFIG_FEATURE_VI_YANKMARK=y
   6.391 +CONFIG_FEATURE_VI_SEARCH=y
   6.392 +# CONFIG_FEATURE_VI_REGEX_SEARCH is not set
   6.393 +CONFIG_FEATURE_VI_USE_SIGNALS=y
   6.394 +CONFIG_FEATURE_VI_DOT_CMD=y
   6.395 +CONFIG_FEATURE_VI_READONLY=y
   6.396 +CONFIG_FEATURE_VI_SETOPTS=y
   6.397 +CONFIG_FEATURE_VI_SET=y
   6.398 +CONFIG_FEATURE_VI_WIN_RESIZE=y
   6.399 +CONFIG_FEATURE_VI_ASK_TERMINAL=y
   6.400 +CONFIG_FEATURE_VI_UNDO=y
   6.401 +CONFIG_FEATURE_VI_UNDO_QUEUE=y
   6.402 +CONFIG_FEATURE_VI_UNDO_QUEUE_MAX=256
   6.403 +CONFIG_FEATURE_ALLOW_EXEC=y
   6.404 +
   6.405 +#
   6.406 +# Finding Utilities
   6.407 +#
   6.408 +CONFIG_FIND=y
   6.409 +CONFIG_FEATURE_FIND_PRINT0=y
   6.410 +CONFIG_FEATURE_FIND_MTIME=y
   6.411 +CONFIG_FEATURE_FIND_MMIN=y
   6.412 +CONFIG_FEATURE_FIND_PERM=y
   6.413 +CONFIG_FEATURE_FIND_TYPE=y
   6.414 +CONFIG_FEATURE_FIND_XDEV=y
   6.415 +CONFIG_FEATURE_FIND_MAXDEPTH=y
   6.416 +CONFIG_FEATURE_FIND_NEWER=y
   6.417 +CONFIG_FEATURE_FIND_INUM=y
   6.418 +CONFIG_FEATURE_FIND_EXEC=y
   6.419 +# CONFIG_FEATURE_FIND_EXEC_PLUS is not set
   6.420 +CONFIG_FEATURE_FIND_USER=y
   6.421 +CONFIG_FEATURE_FIND_GROUP=y
   6.422 +CONFIG_FEATURE_FIND_NOT=y
   6.423 +CONFIG_FEATURE_FIND_DEPTH=y
   6.424 +CONFIG_FEATURE_FIND_PAREN=y
   6.425 +CONFIG_FEATURE_FIND_SIZE=y
   6.426 +CONFIG_FEATURE_FIND_PRUNE=y
   6.427 +CONFIG_FEATURE_FIND_DELETE=y
   6.428 +CONFIG_FEATURE_FIND_PATH=y
   6.429 +CONFIG_FEATURE_FIND_REGEX=y
   6.430 +# CONFIG_FEATURE_FIND_CONTEXT is not set
   6.431 +CONFIG_FEATURE_FIND_LINKS=y
   6.432 +CONFIG_GREP=y
   6.433 +CONFIG_FEATURE_GREP_EGREP_ALIAS=y
   6.434 +CONFIG_FEATURE_GREP_FGREP_ALIAS=y
   6.435 +CONFIG_FEATURE_GREP_CONTEXT=y
   6.436 +CONFIG_XARGS=y
   6.437 +CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION=y
   6.438 +CONFIG_FEATURE_XARGS_SUPPORT_QUOTES=y
   6.439 +CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT=y
   6.440 +CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y
   6.441 +CONFIG_FEATURE_XARGS_SUPPORT_REPL_STR=y
   6.442 +
   6.443 +#
   6.444 +# Init Utilities
   6.445 +#
   6.446 +# CONFIG_BOOTCHARTD is not set
   6.447 +# CONFIG_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set
   6.448 +# CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE is not set
   6.449 +CONFIG_HALT=y
   6.450 +# CONFIG_FEATURE_CALL_TELINIT is not set
   6.451 +CONFIG_TELINIT_PATH=""
   6.452 +CONFIG_INIT=y
   6.453 +CONFIG_FEATURE_USE_INITTAB=y
   6.454 +CONFIG_FEATURE_KILL_REMOVED=y
   6.455 +CONFIG_FEATURE_KILL_DELAY=0
   6.456 +CONFIG_FEATURE_INIT_SCTTY=y
   6.457 +CONFIG_FEATURE_INIT_SYSLOG=y
   6.458 +CONFIG_FEATURE_EXTRA_QUIET=y
   6.459 +# CONFIG_FEATURE_INIT_COREDUMPS is not set
   6.460 +CONFIG_FEATURE_INITRD=y
   6.461 +CONFIG_INIT_TERMINAL_TYPE=""
   6.462 +CONFIG_MESG=y
   6.463 +CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP=y
   6.464 +
   6.465 +#
   6.466 +# Login/Password Management Utilities
   6.467 +#
   6.468 +# CONFIG_ADD_SHELL is not set
   6.469 +# CONFIG_REMOVE_SHELL is not set
   6.470 +CONFIG_FEATURE_SHADOWPASSWDS=y
   6.471 +# CONFIG_USE_BB_PWD_GRP is not set
   6.472 +# CONFIG_USE_BB_SHADOW is not set
   6.473 +CONFIG_USE_BB_CRYPT=y
   6.474 +CONFIG_USE_BB_CRYPT_SHA=y
   6.475 +CONFIG_ADDUSER=y
   6.476 +CONFIG_FEATURE_ADDUSER_LONG_OPTIONS=y
   6.477 +# CONFIG_FEATURE_CHECK_NAMES is not set
   6.478 +CONFIG_LAST_ID=60000
   6.479 +CONFIG_FIRST_SYSTEM_ID=100
   6.480 +CONFIG_LAST_SYSTEM_ID=999
   6.481 +CONFIG_ADDGROUP=y
   6.482 +CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS=y
   6.483 +CONFIG_FEATURE_ADDUSER_TO_GROUP=y
   6.484 +CONFIG_DELUSER=y
   6.485 +CONFIG_DELGROUP=y
   6.486 +CONFIG_FEATURE_DEL_USER_FROM_GROUP=y
   6.487 +CONFIG_GETTY=y
   6.488 +CONFIG_LOGIN=y
   6.489 +# CONFIG_LOGIN_SESSION_AS_CHILD is not set
   6.490 +# CONFIG_LOGIN_SCRIPTS is not set
   6.491 +CONFIG_FEATURE_NOLOGIN=y
   6.492 +CONFIG_FEATURE_SECURETTY=y
   6.493 +CONFIG_PASSWD=y
   6.494 +# CONFIG_FEATURE_PASSWD_WEAK_CHECK is not set
   6.495 +CONFIG_CRYPTPW=y
   6.496 +CONFIG_CHPASSWD=y
   6.497 +CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="des"
   6.498 +CONFIG_SU=y
   6.499 +CONFIG_FEATURE_SU_SYSLOG=y
   6.500 +CONFIG_FEATURE_SU_CHECKS_SHELLS=y
   6.501 +CONFIG_SULOGIN=y
   6.502 +CONFIG_VLOCK=y
   6.503 +
   6.504 +#
   6.505 +# Linux Ext2 FS Progs
   6.506 +#
   6.507 +CONFIG_CHATTR=y
   6.508 +# CONFIG_FSCK is not set
   6.509 +CONFIG_LSATTR=y
   6.510 +CONFIG_TUNE2FS=y
   6.511 +
   6.512 +#
   6.513 +# Linux Module Utilities
   6.514 +#
   6.515 +CONFIG_MODINFO=y
   6.516 +# CONFIG_MODPROBE_SMALL is not set
   6.517 +# CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE is not set
   6.518 +# CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set
   6.519 +CONFIG_INSMOD=y
   6.520 +CONFIG_RMMOD=y
   6.521 +CONFIG_LSMOD=y
   6.522 +CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y
   6.523 +CONFIG_MODPROBE=y
   6.524 +CONFIG_FEATURE_MODPROBE_BLACKLIST=y
   6.525 +CONFIG_DEPMOD=y
   6.526 +
   6.527 +#
   6.528 +# Options common to multiple modutils
   6.529 +#
   6.530 +# CONFIG_FEATURE_2_4_MODULES is not set
   6.531 +# CONFIG_FEATURE_INSMOD_TRY_MMAP is not set
   6.532 +# CONFIG_FEATURE_INSMOD_VERSION_CHECKING is not set
   6.533 +# CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set
   6.534 +# CONFIG_FEATURE_INSMOD_LOADINKMEM is not set
   6.535 +# CONFIG_FEATURE_INSMOD_LOAD_MAP is not set
   6.536 +# CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL is not set
   6.537 +CONFIG_FEATURE_CHECK_TAINTED_MODULE=y
   6.538 +CONFIG_FEATURE_MODUTILS_ALIAS=y
   6.539 +CONFIG_FEATURE_MODUTILS_SYMBOLS=y
   6.540 +CONFIG_DEFAULT_MODULES_DIR="/lib/modules"
   6.541 +CONFIG_DEFAULT_DEPMOD_FILE="modules.dep"
   6.542 +
   6.543 +#
   6.544 +# Linux System Utilities
   6.545 +#
   6.546 +CONFIG_BLOCKDEV=y
   6.547 +CONFIG_FATATTR=y
   6.548 +# CONFIG_FBVNC is not set
   6.549 +CONFIG_FSTRIM=y
   6.550 +# CONFIG_MDEV is not set
   6.551 +# CONFIG_FEATURE_MDEV_CONF is not set
   6.552 +# CONFIG_FEATURE_MDEV_RENAME is not set
   6.553 +# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set
   6.554 +# CONFIG_FEATURE_MDEV_EXEC is not set
   6.555 +# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set
   6.556 +CONFIG_REV=y
   6.557 +# CONFIG_ACPID is not set
   6.558 +# CONFIG_FEATURE_ACPID_COMPAT is not set
   6.559 +CONFIG_BLKID=y
   6.560 +CONFIG_FEATURE_BLKID_TYPE=y
   6.561 +CONFIG_DMESG=y
   6.562 +CONFIG_FEATURE_DMESG_PRETTY=y
   6.563 +CONFIG_FBSET=y
   6.564 +CONFIG_FEATURE_FBSET_FANCY=y
   6.565 +CONFIG_FEATURE_FBSET_READMODE=y
   6.566 +CONFIG_FDFLUSH=y
   6.567 +CONFIG_FDFORMAT=y
   6.568 +CONFIG_FDISK=y
   6.569 +# CONFIG_FDISK_SUPPORT_LARGE_DISKS is not set
   6.570 +CONFIG_FEATURE_FDISK_WRITABLE=y
   6.571 +# CONFIG_FEATURE_AIX_LABEL is not set
   6.572 +# CONFIG_FEATURE_SGI_LABEL is not set
   6.573 +# CONFIG_FEATURE_SUN_LABEL is not set
   6.574 +# CONFIG_FEATURE_OSF_LABEL is not set
   6.575 +CONFIG_FEATURE_GPT_LABEL=y
   6.576 +# CONFIG_FEATURE_FDISK_ADVANCED is not set
   6.577 +CONFIG_FINDFS=y
   6.578 +CONFIG_FLOCK=y
   6.579 +CONFIG_FREERAMDISK=y
   6.580 +# CONFIG_FSCK_MINIX is not set
   6.581 +# CONFIG_MKFS_EXT2 is not set
   6.582 +# CONFIG_MKFS_MINIX is not set
   6.583 +# CONFIG_FEATURE_MINIX2 is not set
   6.584 +# CONFIG_MKFS_REISER is not set
   6.585 +CONFIG_MKFS_VFAT=y
   6.586 +# CONFIG_GETOPT is not set
   6.587 +# CONFIG_FEATURE_GETOPT_LONG is not set
   6.588 +CONFIG_HEXDUMP=y
   6.589 +CONFIG_FEATURE_HEXDUMP_REVERSE=y
   6.590 +# CONFIG_HD is not set
   6.591 +CONFIG_HWCLOCK=y
   6.592 +CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS=y
   6.593 +CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS=y
   6.594 +CONFIG_IPCRM=y
   6.595 +CONFIG_IPCS=y
   6.596 +CONFIG_LOSETUP=y
   6.597 +CONFIG_LSPCI=y
   6.598 +CONFIG_LSUSB=y
   6.599 +CONFIG_MKSWAP=y
   6.600 +CONFIG_FEATURE_MKSWAP_UUID=y
   6.601 +CONFIG_MORE=y
   6.602 +CONFIG_MOUNT=y
   6.603 +# CONFIG_FEATURE_MOUNT_FAKE is not set
   6.604 +# CONFIG_FEATURE_MOUNT_VERBOSE is not set
   6.605 +CONFIG_FEATURE_MOUNT_HELPERS=y
   6.606 +CONFIG_FEATURE_MOUNT_LABEL=y
   6.607 +# CONFIG_FEATURE_MOUNT_NFS is not set
   6.608 +CONFIG_FEATURE_MOUNT_CIFS=y
   6.609 +CONFIG_FEATURE_MOUNT_FLAGS=y
   6.610 +CONFIG_FEATURE_MOUNT_FSTAB=y
   6.611 +CONFIG_PIVOT_ROOT=y
   6.612 +CONFIG_RDATE=y
   6.613 +CONFIG_RDEV=y
   6.614 +CONFIG_READPROFILE=y
   6.615 +CONFIG_RTCWAKE=y
   6.616 +CONFIG_SCRIPT=y
   6.617 +CONFIG_SCRIPTREPLAY=y
   6.618 +CONFIG_SETARCH=y
   6.619 +CONFIG_SWAPONOFF=y
   6.620 +CONFIG_FEATURE_SWAPON_DISCARD=y
   6.621 +CONFIG_FEATURE_SWAPON_PRI=y
   6.622 +CONFIG_SWITCH_ROOT=y
   6.623 +CONFIG_UMOUNT=y
   6.624 +CONFIG_FEATURE_UMOUNT_ALL=y
   6.625 +
   6.626 +#
   6.627 +# Common options for mount/umount
   6.628 +#
   6.629 +CONFIG_FEATURE_MOUNT_LOOP=y
   6.630 +CONFIG_FEATURE_MOUNT_LOOP_CREATE=y
   6.631 +# CONFIG_FEATURE_MTAB_SUPPORT is not set
   6.632 +CONFIG_VOLUMEID=y
   6.633 +
   6.634 +#
   6.635 +# Filesystem/Volume identification
   6.636 +#
   6.637 +CONFIG_FEATURE_VOLUMEID_BTRFS=y
   6.638 +# CONFIG_FEATURE_VOLUMEID_CRAMFS is not set
   6.639 +CONFIG_FEATURE_VOLUMEID_EXFAT=y
   6.640 +CONFIG_FEATURE_VOLUMEID_EXT=y
   6.641 +CONFIG_FEATURE_VOLUMEID_F2FS=y
   6.642 +CONFIG_FEATURE_VOLUMEID_FAT=y
   6.643 +CONFIG_FEATURE_VOLUMEID_HFS=y
   6.644 +CONFIG_FEATURE_VOLUMEID_ISO9660=y
   6.645 +# CONFIG_FEATURE_VOLUMEID_JFS is not set
   6.646 +CONFIG_FEATURE_VOLUMEID_LINUXRAID=y
   6.647 +CONFIG_FEATURE_VOLUMEID_LINUXSWAP=y
   6.648 +CONFIG_FEATURE_VOLUMEID_LUKS=y
   6.649 +CONFIG_FEATURE_VOLUMEID_NILFS=y
   6.650 +CONFIG_FEATURE_VOLUMEID_NTFS=y
   6.651 +# CONFIG_FEATURE_VOLUMEID_OCFS2 is not set
   6.652 +CONFIG_FEATURE_VOLUMEID_REISERFS=y
   6.653 +CONFIG_FEATURE_VOLUMEID_ROMFS=y
   6.654 +CONFIG_FEATURE_VOLUMEID_SQUASHFS=y
   6.655 +# CONFIG_FEATURE_VOLUMEID_SYSV is not set
   6.656 +CONFIG_FEATURE_VOLUMEID_UDF=y
   6.657 +CONFIG_FEATURE_VOLUMEID_XFS=y
   6.658 +
   6.659 +#
   6.660 +# Miscellaneous Utilities
   6.661 +#
   6.662 +CONFIG_CONSPY=y
   6.663 +CONFIG_CROND=y
   6.664 +# CONFIG_FEATURE_CROND_D is not set
   6.665 +# CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set
   6.666 +CONFIG_FEATURE_CROND_DIR="/var/spool/cron"
   6.667 +CONFIG_LESS=y
   6.668 +CONFIG_FEATURE_LESS_MAXLINES=9999999
   6.669 +CONFIG_FEATURE_LESS_BRACKETS=y
   6.670 +CONFIG_FEATURE_LESS_FLAGS=y
   6.671 +CONFIG_FEATURE_LESS_MARKS=y
   6.672 +CONFIG_FEATURE_LESS_REGEXP=y
   6.673 +# CONFIG_FEATURE_LESS_WINCH is not set
   6.674 +# CONFIG_FEATURE_LESS_ASK_TERMINAL is not set
   6.675 +# CONFIG_FEATURE_LESS_DASHCMD is not set
   6.676 +# CONFIG_FEATURE_LESS_LINENUMS is not set
   6.677 +# CONFIG_NANDWRITE is not set
   6.678 +# CONFIG_NANDDUMP is not set
   6.679 +# CONFIG_RFKILL is not set
   6.680 +CONFIG_SETSERIAL=y
   6.681 +CONFIG_TASKSET=y
   6.682 +CONFIG_FEATURE_TASKSET_FANCY=y
   6.683 +CONFIG_UBIATTACH=y
   6.684 +CONFIG_UBIDETACH=y
   6.685 +# CONFIG_UBIMKVOL is not set
   6.686 +# CONFIG_UBIRMVOL is not set
   6.687 +# CONFIG_UBIRSVOL is not set
   6.688 +# CONFIG_UBIUPDATEVOL is not set
   6.689 +CONFIG_WALL=y
   6.690 +CONFIG_ADJTIMEX=y
   6.691 +CONFIG_BBCONFIG=y
   6.692 +CONFIG_FEATURE_COMPRESS_BBCONFIG=y
   6.693 +CONFIG_BEEP=y
   6.694 +CONFIG_FEATURE_BEEP_FREQ=4000
   6.695 +CONFIG_FEATURE_BEEP_LENGTH_MS=30
   6.696 +# CONFIG_CHAT is not set
   6.697 +# CONFIG_FEATURE_CHAT_NOFAIL is not set
   6.698 +# CONFIG_FEATURE_CHAT_TTY_HIFI is not set
   6.699 +# CONFIG_FEATURE_CHAT_IMPLICIT_CR is not set
   6.700 +# CONFIG_FEATURE_CHAT_SWALLOW_OPTS is not set
   6.701 +# CONFIG_FEATURE_CHAT_SEND_ESCAPES is not set
   6.702 +# CONFIG_FEATURE_CHAT_VAR_ABORT_LEN is not set
   6.703 +# CONFIG_FEATURE_CHAT_CLR_ABORT is not set
   6.704 +CONFIG_CHRT=y
   6.705 +CONFIG_CRONTAB=y
   6.706 +# CONFIG_DC is not set
   6.707 +# CONFIG_FEATURE_DC_LIBM is not set
   6.708 +# CONFIG_DEVFSD is not set
   6.709 +# CONFIG_DEVFSD_MODLOAD is not set
   6.710 +# CONFIG_DEVFSD_FG_NP is not set
   6.711 +# CONFIG_DEVFSD_VERBOSE is not set
   6.712 +# CONFIG_FEATURE_DEVFS is not set
   6.713 +# CONFIG_DEVMEM is not set
   6.714 +CONFIG_EJECT=y
   6.715 +CONFIG_FEATURE_EJECT_SCSI=y
   6.716 +CONFIG_FBSPLASH=y
   6.717 +# CONFIG_FLASHCP is not set
   6.718 +# CONFIG_FLASH_LOCK is not set
   6.719 +# CONFIG_FLASH_UNLOCK is not set
   6.720 +# CONFIG_FLASH_ERASEALL is not set
   6.721 +CONFIG_IONICE=y
   6.722 +# CONFIG_INOTIFYD is not set
   6.723 +CONFIG_LAST=y
   6.724 +CONFIG_FEATURE_LAST_SMALL=y
   6.725 +# CONFIG_FEATURE_LAST_FANCY is not set
   6.726 +CONFIG_HDPARM=y
   6.727 +CONFIG_FEATURE_HDPARM_GET_IDENTITY=y
   6.728 +# CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set
   6.729 +# CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF is not set
   6.730 +# CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set
   6.731 +# CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set
   6.732 +CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA=y
   6.733 +# CONFIG_MAKEDEVS is not set
   6.734 +# CONFIG_FEATURE_MAKEDEVS_LEAF is not set
   6.735 +# CONFIG_FEATURE_MAKEDEVS_TABLE is not set
   6.736 +# CONFIG_MAN is not set
   6.737 +CONFIG_MICROCOM=y
   6.738 +CONFIG_MOUNTPOINT=y
   6.739 +CONFIG_MT=y
   6.740 +CONFIG_RAIDAUTORUN=y
   6.741 +# CONFIG_READAHEAD is not set
   6.742 +# CONFIG_RUNLEVEL is not set
   6.743 +# CONFIG_RX is not set
   6.744 +CONFIG_SETSID=y
   6.745 +CONFIG_STRINGS=y
   6.746 +CONFIG_TIME=y
   6.747 +CONFIG_TIMEOUT=y
   6.748 +CONFIG_TTYSIZE=y
   6.749 +CONFIG_VOLNAME=y
   6.750 +CONFIG_WATCHDOG=y
   6.751 +
   6.752 +#
   6.753 +# Networking Utilities
   6.754 +#
   6.755 +CONFIG_NAMEIF=y
   6.756 +# CONFIG_FEATURE_NAMEIF_EXTENDED is not set
   6.757 +CONFIG_NBDCLIENT=y
   6.758 +CONFIG_NC=y
   6.759 +CONFIG_NC_SERVER=y
   6.760 +CONFIG_NC_EXTRA=y
   6.761 +CONFIG_NC_110_COMPAT=y
   6.762 +CONFIG_PING=y
   6.763 +CONFIG_PING6=y
   6.764 +CONFIG_FEATURE_FANCY_PING=y
   6.765 +CONFIG_WHOIS=y
   6.766 +CONFIG_FEATURE_IPV6=y
   6.767 +# CONFIG_FEATURE_UNIX_LOCAL is not set
   6.768 +CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y
   6.769 +# CONFIG_VERBOSE_RESOLUTION_ERRORS is not set
   6.770 +CONFIG_ARP=y
   6.771 +CONFIG_ARPING=y
   6.772 +CONFIG_BRCTL=y
   6.773 +CONFIG_FEATURE_BRCTL_FANCY=y
   6.774 +CONFIG_FEATURE_BRCTL_SHOW=y
   6.775 +CONFIG_DNSD=y
   6.776 +CONFIG_ETHER_WAKE=y
   6.777 +CONFIG_FAKEIDENTD=y
   6.778 +CONFIG_FTPD=y
   6.779 +CONFIG_FEATURE_FTP_WRITE=y
   6.780 +CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST=y
   6.781 +CONFIG_FEATURE_FTP_AUTHENTICATION=y
   6.782 +CONFIG_FTPGET=y
   6.783 +CONFIG_FTPPUT=y
   6.784 +CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS=y
   6.785 +CONFIG_HOSTNAME=y
   6.786 +CONFIG_HTTPD=y
   6.787 +CONFIG_FEATURE_HTTPD_RANGES=y
   6.788 +CONFIG_FEATURE_HTTPD_SETUID=y
   6.789 +CONFIG_FEATURE_HTTPD_BASIC_AUTH=y
   6.790 +CONFIG_FEATURE_HTTPD_AUTH_MD5=y
   6.791 +CONFIG_FEATURE_HTTPD_CGI=y
   6.792 +CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR=y
   6.793 +CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV=y
   6.794 +CONFIG_FEATURE_HTTPD_ENCODE_URL_STR=y
   6.795 +CONFIG_FEATURE_HTTPD_ERROR_PAGES=y
   6.796 +CONFIG_FEATURE_HTTPD_PROXY=y
   6.797 +CONFIG_FEATURE_HTTPD_GZIP=y
   6.798 +CONFIG_IFCONFIG=y
   6.799 +CONFIG_FEATURE_IFCONFIG_STATUS=y
   6.800 +# CONFIG_FEATURE_IFCONFIG_SLIP is not set
   6.801 +CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ=y
   6.802 +CONFIG_FEATURE_IFCONFIG_HW=y
   6.803 +CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS=y
   6.804 +CONFIG_IFENSLAVE=y
   6.805 +# CONFIG_IFPLUGD is not set
   6.806 +# CONFIG_IFUPDOWN is not set
   6.807 +CONFIG_IFUPDOWN_IFSTATE_PATH=""
   6.808 +# CONFIG_FEATURE_IFUPDOWN_IP is not set
   6.809 +# CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN is not set
   6.810 +# CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN is not set
   6.811 +# CONFIG_FEATURE_IFUPDOWN_IPV4 is not set
   6.812 +# CONFIG_FEATURE_IFUPDOWN_IPV6 is not set
   6.813 +# CONFIG_FEATURE_IFUPDOWN_MAPPING is not set
   6.814 +# CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP is not set
   6.815 +# CONFIG_INETD is not set
   6.816 +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO is not set
   6.817 +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD is not set
   6.818 +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME is not set
   6.819 +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME is not set
   6.820 +# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN is not set
   6.821 +# CONFIG_FEATURE_INETD_RPC is not set
   6.822 +CONFIG_IP=y
   6.823 +CONFIG_FEATURE_IP_ADDRESS=y
   6.824 +CONFIG_FEATURE_IP_LINK=y
   6.825 +CONFIG_FEATURE_IP_ROUTE=y
   6.826 +CONFIG_FEATURE_IP_TUNNEL=y
   6.827 +CONFIG_FEATURE_IP_RULE=y
   6.828 +CONFIG_FEATURE_IP_SHORT_FORMS=y
   6.829 +# CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set
   6.830 +CONFIG_IPADDR=y
   6.831 +CONFIG_IPLINK=y
   6.832 +CONFIG_IPROUTE=y
   6.833 +CONFIG_IPTUNNEL=y
   6.834 +CONFIG_IPRULE=y
   6.835 +CONFIG_IPCALC=y
   6.836 +CONFIG_FEATURE_IPCALC_FANCY=y
   6.837 +CONFIG_FEATURE_IPCALC_LONG_OPTIONS=y
   6.838 +CONFIG_NETSTAT=y
   6.839 +CONFIG_FEATURE_NETSTAT_WIDE=y
   6.840 +CONFIG_FEATURE_NETSTAT_PRG=y
   6.841 +CONFIG_NSLOOKUP=y
   6.842 +CONFIG_NTPD=y
   6.843 +CONFIG_FEATURE_NTPD_SERVER=y
   6.844 +CONFIG_FEATURE_NTPD_CONF=y
   6.845 +CONFIG_PSCAN=y
   6.846 +CONFIG_ROUTE=y
   6.847 +# CONFIG_SLATTACH is not set
   6.848 +# CONFIG_TCPSVD is not set
   6.849 +CONFIG_TELNET=y
   6.850 +CONFIG_FEATURE_TELNET_TTYPE=y
   6.851 +CONFIG_FEATURE_TELNET_AUTOLOGIN=y
   6.852 +# CONFIG_TELNETD is not set
   6.853 +# CONFIG_FEATURE_TELNETD_STANDALONE is not set
   6.854 +# CONFIG_FEATURE_TELNETD_INETD_WAIT is not set
   6.855 +CONFIG_TFTP=y
   6.856 +CONFIG_TFTPD=y
   6.857 +
   6.858 +#
   6.859 +# Common options for tftp/tftpd
   6.860 +#
   6.861 +CONFIG_FEATURE_TFTPD_RIS=y
   6.862 +CONFIG_FEATURE_TFTP_GET=y
   6.863 +CONFIG_FEATURE_TFTP_PUT=y
   6.864 +CONFIG_FEATURE_TFTP_BLOCKSIZE=y
   6.865 +CONFIG_FEATURE_TFTP_PROGRESS_BAR=y
   6.866 +# CONFIG_TFTP_DEBUG is not set
   6.867 +CONFIG_TRACEROUTE=y
   6.868 +CONFIG_TRACEROUTE6=y
   6.869 +CONFIG_FEATURE_TRACEROUTE_VERBOSE=y
   6.870 +CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE=y
   6.871 +CONFIG_FEATURE_TRACEROUTE_USE_ICMP=y
   6.872 +CONFIG_TUNCTL=y
   6.873 +CONFIG_FEATURE_TUNCTL_UG=y
   6.874 +CONFIG_UDHCPC6=y
   6.875 +CONFIG_UDHCPD=y
   6.876 +CONFIG_DHCPRELAY=y
   6.877 +CONFIG_DUMPLEASES=y
   6.878 +CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY=y
   6.879 +CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC=y
   6.880 +CONFIG_DHCPD_LEASES_FILE="/var/lib/misc/udhcpd.leases"
   6.881 +CONFIG_UDHCPC=y
   6.882 +CONFIG_FEATURE_UDHCPC_ARPING=y
   6.883 +CONFIG_FEATURE_UDHCPC_SANITIZEOPT=y
   6.884 +# CONFIG_FEATURE_UDHCP_PORT is not set
   6.885 +CONFIG_UDHCP_DEBUG=0
   6.886 +CONFIG_FEATURE_UDHCP_RFC3397=y
   6.887 +CONFIG_FEATURE_UDHCP_8021Q=y
   6.888 +CONFIG_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script"
   6.889 +CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
   6.890 +CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS=""
   6.891 +# CONFIG_UDPSVD is not set
   6.892 +CONFIG_VCONFIG=y
   6.893 +CONFIG_WGET=y
   6.894 +CONFIG_FEATURE_WGET_STATUSBAR=y
   6.895 +CONFIG_FEATURE_WGET_AUTHENTICATION=y
   6.896 +CONFIG_FEATURE_WGET_LONG_OPTIONS=y
   6.897 +CONFIG_FEATURE_WGET_TIMEOUT=y
   6.898 +CONFIG_ZCIP=y
   6.899 +
   6.900 +#
   6.901 +# Print Utilities
   6.902 +#
   6.903 +CONFIG_LPD=y
   6.904 +CONFIG_LPR=y
   6.905 +CONFIG_LPQ=y
   6.906 +
   6.907 +#
   6.908 +# Mail Utilities
   6.909 +#
   6.910 +# CONFIG_MAKEMIME is not set
   6.911 +CONFIG_FEATURE_MIME_CHARSET="us-ascii"
   6.912 +# CONFIG_POPMAILDIR is not set
   6.913 +# CONFIG_FEATURE_POPMAILDIR_DELIVERY is not set
   6.914 +# CONFIG_REFORMIME is not set
   6.915 +# CONFIG_FEATURE_REFORMIME_COMPAT is not set
   6.916 +CONFIG_SENDMAIL=y
   6.917 +
   6.918 +#
   6.919 +# Process Utilities
   6.920 +#
   6.921 +CONFIG_IOSTAT=y
   6.922 +CONFIG_LSOF=y
   6.923 +CONFIG_MPSTAT=y
   6.924 +CONFIG_NMETER=y
   6.925 +CONFIG_PMAP=y
   6.926 +CONFIG_POWERTOP=y
   6.927 +CONFIG_PSTREE=y
   6.928 +# CONFIG_PWDX is not set
   6.929 +CONFIG_SMEMCAP=y
   6.930 +CONFIG_TOP=y
   6.931 +CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y
   6.932 +CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y
   6.933 +CONFIG_FEATURE_TOP_SMP_CPU=y
   6.934 +CONFIG_FEATURE_TOP_DECIMALS=y
   6.935 +CONFIG_FEATURE_TOP_SMP_PROCESS=y
   6.936 +CONFIG_FEATURE_TOPMEM=y
   6.937 +CONFIG_UPTIME=y
   6.938 +CONFIG_FEATURE_UPTIME_UTMP_SUPPORT=y
   6.939 +CONFIG_FREE=y
   6.940 +CONFIG_FUSER=y
   6.941 +CONFIG_KILL=y
   6.942 +CONFIG_KILLALL=y
   6.943 +CONFIG_KILLALL5=y
   6.944 +CONFIG_PGREP=y
   6.945 +CONFIG_PIDOF=y
   6.946 +CONFIG_FEATURE_PIDOF_SINGLE=y
   6.947 +CONFIG_FEATURE_PIDOF_OMIT=y
   6.948 +CONFIG_PKILL=y
   6.949 +CONFIG_PS=y
   6.950 +# CONFIG_FEATURE_PS_WIDE is not set
   6.951 +# CONFIG_FEATURE_PS_LONG is not set
   6.952 +CONFIG_FEATURE_PS_TIME=y
   6.953 +CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS=y
   6.954 +# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set
   6.955 +CONFIG_RENICE=y
   6.956 +CONFIG_BB_SYSCTL=y
   6.957 +CONFIG_FEATURE_SHOW_THREADS=y
   6.958 +CONFIG_WATCH=y
   6.959 +
   6.960 +#
   6.961 +# Runit Utilities
   6.962 +#
   6.963 +# CONFIG_RUNSV is not set
   6.964 +# CONFIG_RUNSVDIR is not set
   6.965 +# CONFIG_FEATURE_RUNSVDIR_LOG is not set
   6.966 +# CONFIG_SV is not set
   6.967 +CONFIG_SV_DEFAULT_SERVICE_DIR=""
   6.968 +# CONFIG_SVLOGD is not set
   6.969 +# CONFIG_CHPST is not set
   6.970 +# CONFIG_SETUIDGID is not set
   6.971 +# CONFIG_ENVUIDGID is not set
   6.972 +# CONFIG_ENVDIR is not set
   6.973 +# CONFIG_SOFTLIMIT is not set
   6.974 +# CONFIG_CHCON is not set
   6.975 +# CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set
   6.976 +# CONFIG_GETENFORCE is not set
   6.977 +# CONFIG_GETSEBOOL is not set
   6.978 +# CONFIG_LOAD_POLICY is not set
   6.979 +# CONFIG_MATCHPATHCON is not set
   6.980 +# CONFIG_RESTORECON is not set
   6.981 +# CONFIG_RUNCON is not set
   6.982 +# CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set
   6.983 +# CONFIG_SELINUXENABLED is not set
   6.984 +# CONFIG_SETENFORCE is not set
   6.985 +# CONFIG_SETFILES is not set
   6.986 +# CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set
   6.987 +# CONFIG_SETSEBOOL is not set
   6.988 +# CONFIG_SESTATUS is not set
   6.989 +
   6.990 +#
   6.991 +# Shells
   6.992 +#
   6.993 +CONFIG_ASH=y
   6.994 +CONFIG_ASH_BASH_COMPAT=y
   6.995 +# CONFIG_ASH_IDLE_TIMEOUT is not set
   6.996 +CONFIG_ASH_JOB_CONTROL=y
   6.997 +CONFIG_ASH_ALIAS=y
   6.998 +CONFIG_ASH_GETOPTS=y
   6.999 +CONFIG_ASH_BUILTIN_ECHO=y
  6.1000 +CONFIG_ASH_BUILTIN_PRINTF=y
  6.1001 +CONFIG_ASH_BUILTIN_TEST=y
  6.1002 +CONFIG_ASH_HELP=y
  6.1003 +CONFIG_ASH_CMDCMD=y
  6.1004 +# CONFIG_ASH_MAIL is not set
  6.1005 +CONFIG_ASH_OPTIMIZE_FOR_SIZE=y
  6.1006 +CONFIG_ASH_RANDOM_SUPPORT=y
  6.1007 +# CONFIG_ASH_EXPAND_PRMT is not set
  6.1008 +# CONFIG_CTTYHACK is not set
  6.1009 +# CONFIG_HUSH is not set
  6.1010 +# CONFIG_HUSH_BASH_COMPAT is not set
  6.1011 +# CONFIG_HUSH_BRACE_EXPANSION is not set
  6.1012 +# CONFIG_HUSH_HELP is not set
  6.1013 +# CONFIG_HUSH_INTERACTIVE is not set
  6.1014 +# CONFIG_HUSH_SAVEHISTORY is not set
  6.1015 +# CONFIG_HUSH_JOB is not set
  6.1016 +# CONFIG_HUSH_TICK is not set
  6.1017 +# CONFIG_HUSH_IF is not set
  6.1018 +# CONFIG_HUSH_LOOPS is not set
  6.1019 +# CONFIG_HUSH_CASE is not set
  6.1020 +# CONFIG_HUSH_FUNCTIONS is not set
  6.1021 +# CONFIG_HUSH_LOCAL is not set
  6.1022 +# CONFIG_HUSH_RANDOM_SUPPORT is not set
  6.1023 +# CONFIG_HUSH_EXPORT_N is not set
  6.1024 +# CONFIG_HUSH_MODE_X is not set
  6.1025 +# CONFIG_MSH is not set
  6.1026 +CONFIG_FEATURE_SH_IS_ASH=y
  6.1027 +# CONFIG_FEATURE_SH_IS_HUSH is not set
  6.1028 +# CONFIG_FEATURE_SH_IS_NONE is not set
  6.1029 +# CONFIG_FEATURE_BASH_IS_ASH is not set
  6.1030 +# CONFIG_FEATURE_BASH_IS_HUSH is not set
  6.1031 +CONFIG_FEATURE_BASH_IS_NONE=y
  6.1032 +CONFIG_SH_MATH_SUPPORT=y
  6.1033 +# CONFIG_SH_MATH_SUPPORT_64 is not set
  6.1034 +CONFIG_FEATURE_SH_EXTRA_QUIET=y
  6.1035 +# CONFIG_FEATURE_SH_STANDALONE is not set
  6.1036 +# CONFIG_FEATURE_SH_NOFORK is not set
  6.1037 +CONFIG_FEATURE_SH_HISTFILESIZE=y
  6.1038 +
  6.1039 +#
  6.1040 +# System Logging Utilities
  6.1041 +#
  6.1042 +CONFIG_SYSLOGD=y
  6.1043 +CONFIG_FEATURE_ROTATE_LOGFILE=y
  6.1044 +CONFIG_FEATURE_REMOTE_LOG=y
  6.1045 +CONFIG_FEATURE_SYSLOGD_DUP=y
  6.1046 +CONFIG_FEATURE_SYSLOGD_CFG=y
  6.1047 +CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=1024
  6.1048 +# CONFIG_FEATURE_IPC_SYSLOG is not set
  6.1049 +CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=0
  6.1050 +# CONFIG_LOGREAD is not set
  6.1051 +# CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING is not set
  6.1052 +CONFIG_FEATURE_KMSG_SYSLOG=y
  6.1053 +CONFIG_KLOGD=y
  6.1054 +
  6.1055 +#
  6.1056 +# klogd should not be used together with syslog to kernel printk buffer
  6.1057 +#
  6.1058 +CONFIG_FEATURE_KLOGD_KLOGCTL=y
  6.1059 +CONFIG_LOGGER=y
     7.1 --- a/busybox/stuff/httpd.conf	Mon Mar 04 18:42:23 2019 +0100
     7.2 +++ b/busybox/stuff/httpd.conf	Wed Nov 09 15:12:00 2022 +0000
     7.3 @@ -4,16 +4,16 @@
     7.4  H:/var/www
     7.5  
     7.6  # Allow address.
     7.7 -A:0.0.0.0/0
     7.8 +A:192.168.
     7.9  
    7.10  # File to open by default.
    7.11 -#I:index.html      
    7.12 +#I:index.html
    7.13  
    7.14  # Path to the 404 error page.
    7.15 -#E404:/path/404.html 
    7.16 +E404:/var/www/httpd/404.html
    7.17  
    7.18 -# Require user root, password root on urls starting with /adm/.
    7.19 -#/adm:root:root
    7.20 +# Require user root on urls starting with /adm/. use passwd system db
    7.21 +/adm:root:*
    7.22  
    7.23  # Reverse proxy.
    7.24  #P:/url:[http://]hostname[:port]/new/path
    7.25 @@ -21,6 +21,7 @@
    7.26  # CGI interpreter path.
    7.27  *.sh:/bin/sh
    7.28  *.cgi:/bin/sh
    7.29 +#*.py:/usr/bin/python
    7.30  #*.php:/usr/bin/php-cgi
    7.31  
    7.32  # MIME type.
     8.1 --- a/busybox/stuff/inetd.conf	Mon Mar 04 18:42:23 2019 +0100
     8.2 +++ b/busybox/stuff/inetd.conf	Wed Nov 09 15:12:00 2022 +0000
     8.3 @@ -26,6 +26,10 @@
     8.4  
     8.5  # These are standard services.
     8.6  #
     8.7 -tftp	dgram	udp	wait	root	/usr/bin/tftpd	/usr/bin/tftpd -r /boot
     8.8 -#systat	stream	tcp	nowait	nobody	/bin/ps
     8.9 -#netstat	stream	tcp	nowait	root	/bin/netstat	/bin/netstat	-a
    8.10 +tftp	dgram	udp	wait	root	/usr/sbin/tftpd	tftpd -r /boot
    8.11 +#systat	stream	tcp	nowait	nobody	/sbin/ps -auwwx
    8.12 +#netstat	stream	tcp	nowait	root	/bin/netstat	netstat	-a
    8.13 +#http	stream	tcp	nowait	root	/usr/sbin/httpd	httpd	-i -u 80:80
    8.14 +#ftp	stream	tcp	nowait	root	/usr/sbin/ftpd	ftpd	-w /home/ftp
    8.15 +#printer	stream	tcp	nowait	root	/usr/bin/lpd	lpd	/var/spool/lpd
    8.16 +#telnet	stream	tcp	nowait	root	/usr/sbin/telnetd	telnetd	-i
     9.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.2 +++ b/busybox/stuff/patches/busybox-1.23-cmdline.u	Wed Nov 09 15:12:00 2022 +0000
     9.3 @@ -0,0 +1,37 @@
     9.4 +Display command line in usage output. Useful to debug scripts with variables.
     9.5 +--- busybox-1.23.0/libbb/appletlib.c
     9.6 ++++ busybox-1.23.0/libbb/appletlib.c
     9.7 +@@ -93,9 +93,16 @@
     9.8 + 
     9.9 + #endif /* FEATURE_COMPRESS_USAGE */
    9.10 + 
    9.11 +-
    9.12 ++static char **bb_argv;
    9.13 + void FAST_FUNC bb_show_usage(void)
    9.14 + {
    9.15 ++	full_write2_str("\nCommand line: ");
    9.16 ++	while (*bb_argv) {
    9.17 ++		full_write2_str(*bb_argv++);
    9.18 ++		full_write2_str(" ");
    9.19 ++	}
    9.20 ++	full_write2_str("\n\n");
    9.21 ++
    9.22 + 	if (ENABLE_SHOW_USAGE) {
    9.23 + #ifdef SINGLE_APPLET_STR
    9.24 + 		/* Imagine that this applet is "true". Dont suck in printf! */
    9.25 +@@ -615,6 +622,7 @@
    9.26 + /* If we were called as "busybox..." */
    9.27 + static int busybox_main(char **argv)
    9.28 + {
    9.29 ++	bb_argv = argv;
    9.30 + 	if (!argv[1]) {
    9.31 + 		/* Called without arguments */
    9.32 + 		const char *a;
    9.33 +@@ -792,6 +800,7 @@
    9.34 + int main(int argc UNUSED_PARAM, char **argv)
    9.35 + #endif
    9.36 + {
    9.37 ++	bb_argv = argv;
    9.38 + 	/* Tweak malloc for reduced memory consumption */
    9.39 + #ifdef M_TRIM_THRESHOLD
    9.40 + 	/* M_TRIM_THRESHOLD is the maximum amount of freed top-most memory
    10.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.2 +++ b/busybox/stuff/patches/busybox-1.23-cpio.u	Wed Nov 09 15:12:00 2022 +0000
    10.3 @@ -0,0 +1,12 @@
    10.4 +--- busybox-1.23.0/archival/cpio.c
    10.5 ++++ busybox-1.23.0/archival/cpio.c
    10.6 +@@ -226,6 +226,9 @@
    10.7 + 			if (!(S_ISLNK(st.st_mode) || S_ISREG(st.st_mode)))
    10.8 + 				st.st_size = 0; /* paranoia */
    10.9 + 
   10.10 ++			if (S_ISLNK(st.st_mode))
   10.11 ++				st.st_nlink = 1; /* like GNU cpio */
   10.12 ++
   10.13 + 			/* Store hardlinks for later processing, dont output them */
   10.14 + 			if (!S_ISDIR(st.st_mode) && st.st_nlink > 1) {
   10.15 + 				struct name_s *n;
    11.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    11.2 +++ b/busybox/stuff/patches/busybox-1.23-diet.u	Wed Nov 09 15:12:00 2022 +0000
    11.3 @@ -0,0 +1,110 @@
    11.4 +--- busybox-1.23.0/include/platform.h
    11.5 ++++ busybox-1.23.0/include/platform.h
    11.6 +@@ -483,6 +483,20 @@
    11.7 + # undef HAVE_NET_ETHERNET_H
    11.8 + #endif
    11.9 + 
   11.10 ++#if defined(__dietlibc__)
   11.11 ++# define __aligned_u64 __u64 __attribute__((aligned(8)))
   11.12 ++# define LOOP_SET_STATUS64	0x4C04
   11.13 ++# define LOOP_GET_STATUS64	0x4C05
   11.14 ++# define MAXSYMLINKS	20
   11.15 ++# define S_TYPEISMQ(x)	0
   11.16 ++# define S_TYPEISSEM(x)	0
   11.17 ++# define S_TYPEISSHM(x)	0
   11.18 ++# undef HAVE_STRVERSCMP
   11.19 ++# undef HAVE_DPRINTF
   11.20 ++# undef HAVE_STRCASESTR
   11.21 ++# define ttyname_r(a,b,c)	(strlcpy(b, ttyname(a), c) == 0)
   11.22 ++#endif
   11.23 ++ 
   11.24 + /*
   11.25 +  * Now, define prototypes for all the functions defined in platform.c
   11.26 +  * These must come after all the HAVE_* macros are defined (or not)
   11.27 +--- busybox-1.23.0/networking/ping.c
   11.28 ++++ busybox-1.23.0/networking/ping.c
   11.29 +@@ -29,6 +29,84 @@
   11.30 + #include <netinet/ip_icmp.h>
   11.31 + #include "libbb.h"
   11.32 + 
   11.33 ++#ifdef __dietlibc__
   11.34 ++/* Dietlibc is missing the BSD definition 'struct icmp' */
   11.35 ++/*
   11.36 ++ * Internal of an ICMP Router Advertisement
   11.37 ++ */
   11.38 ++struct icmp_ra_addr
   11.39 ++{
   11.40 ++    uint32_t ira_addr;
   11.41 ++    uint32_t ira_preference;
   11.42 ++};
   11.43 ++
   11.44 ++struct icmp
   11.45 ++{
   11.46 ++    uint8_t  icmp_type;  /* type of message, see below */
   11.47 ++    uint8_t  icmp_code;  /* type sub code */
   11.48 ++    uint16_t icmp_cksum; /* ones complement checksum of struct */
   11.49 ++    union
   11.50 ++    {
   11.51 ++	uint8_t ih_pptr;             /* ICMP_PARAMPROB */
   11.52 ++	struct in_addr ih_gwaddr;   /* gateway address */
   11.53 ++	struct ih_idseq             /* echo datagram */
   11.54 ++	{
   11.55 ++	    uint16_t icd_id;
   11.56 ++	    uint16_t icd_seq;
   11.57 ++	} ih_idseq;
   11.58 ++	uint32_t ih_void;
   11.59 ++
   11.60 ++	/* ICMP_UNREACH_NEEDFRAG -- Path MTU Discovery (RFC1191) */
   11.61 ++	struct ih_pmtu
   11.62 ++	{
   11.63 ++	    uint16_t ipm_void;
   11.64 ++	    uint16_t ipm_nextmtu;
   11.65 ++	} ih_pmtu;
   11.66 ++
   11.67 ++	struct ih_rtradv
   11.68 ++	{
   11.69 ++	    uint8_t irt_num_addrs;
   11.70 ++	    uint8_t irt_wpa;
   11.71 ++	    uint16_t irt_lifetime;
   11.72 ++	} ih_rtradv;
   11.73 ++    } icmp_hun;
   11.74 ++#define icmp_pptr       icmp_hun.ih_pptr
   11.75 ++#define icmp_gwaddr     icmp_hun.ih_gwaddr
   11.76 ++#define icmp_id         icmp_hun.ih_idseq.icd_id
   11.77 ++#define icmp_seq        icmp_hun.ih_idseq.icd_seq
   11.78 ++#define icmp_void       icmp_hun.ih_void
   11.79 ++#define icmp_pmvoid     icmp_hun.ih_pmtu.ipm_void
   11.80 ++#define icmp_nextmtu    icmp_hun.ih_pmtu.ipm_nextmtu
   11.81 ++#define icmp_num_addrs  icmp_hun.ih_rtradv.irt_num_addrs
   11.82 ++#define icmp_wpa        icmp_hun.ih_rtradv.irt_wpa
   11.83 ++#define icmp_lifetime   icmp_hun.ih_rtradv.irt_lifetime
   11.84 ++    union
   11.85 ++    {
   11.86 ++	struct
   11.87 ++	{
   11.88 ++	    uint32_t its_otime;
   11.89 ++	    uint32_t its_rtime;
   11.90 ++	    uint32_t its_ttime;
   11.91 ++	} id_ts;
   11.92 ++	struct
   11.93 ++	{
   11.94 ++	    struct ip idi_ip;
   11.95 ++	    /* options and then 64 bits of data */
   11.96 ++	} id_ip;
   11.97 ++	struct icmp_ra_addr id_radv;
   11.98 ++	uint32_t   id_mask;
   11.99 ++	uint8_t    id_data[1];
  11.100 ++    } icmp_dun;
  11.101 ++#define icmp_otime      icmp_dun.id_ts.its_otime
  11.102 ++#define icmp_rtime      icmp_dun.id_ts.its_rtime
  11.103 ++#define icmp_ttime      icmp_dun.id_ts.its_ttime
  11.104 ++#define icmp_ip         icmp_dun.id_ip.idi_ip
  11.105 ++#define icmp_radv       icmp_dun.id_radv
  11.106 ++#define icmp_mask       icmp_dun.id_mask
  11.107 ++#define icmp_data       icmp_dun.id_data
  11.108 ++};
  11.109 ++#endif /* __dietlibc__ */
  11.110 ++ 
  11.111 + #ifdef __BIONIC__
  11.112 + /* should be in netinet/ip_icmp.h */
  11.113 + # define ICMP_DEST_UNREACH    3  /* Destination Unreachable  */
    12.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    12.2 +++ b/busybox/stuff/patches/busybox-1.23-diff.u	Wed Nov 09 15:12:00 2022 +0000
    12.3 @@ -0,0 +1,53 @@
    12.4 +--- busybox-1.23.0/editors/diff.c
    12.5 ++++ busybox-1.23.0/editors/diff.c
    12.6 +@@ -113,6 +113,7 @@
    12.7 + //usage:     "\n	-B	Ignore changes whose lines are all blank"
    12.8 + //usage:     "\n	-d	Try hard to find a smaller set of changes"
    12.9 + //usage:     "\n	-i	Ignore case differences"
   12.10 ++//usage:     "\n	-l	Ignore symbolic links"
   12.11 + //usage:     "\n	-L	Use LABEL instead of the filename in the unified header"
   12.12 + //usage:     "\n	-N	Treat absent files as empty"
   12.13 + //usage:     "\n	-q	Output only whether files differ"
   12.14 +@@ -143,6 +144,7 @@
   12.15 + 	FLAG_b,
   12.16 + 	FLAG_d,
   12.17 + 	FLAG_i,
   12.18 ++	FLAG_l,
   12.19 + 	FLAG_L,         /* never used, handled by getopt32 */
   12.20 + 	FLAG_N,
   12.21 + 	FLAG_q,
   12.22 +@@ -756,6 +756,14 @@
   12.23 + 		j = fread(buf1, 1, sz, fp[1]);
   12.24 + 		if (i != j) {
   12.25 + 			differ = true;
   12.26 ++			/* Ensure we detect binary file even if a file is empty or very
   12.27 ++			   short. */
   12.28 ++			for (k = 0; k < i; k++)
   12.29 ++				if (!buf0[k])
   12.30 ++					binary = true;
   12.31 ++			for (k = 0; k < j; k++)
   12.32 ++				if (!buf1[k])
   12.33 ++					binary = true;
   12.34 + 			i = MIN(i, j);
   12.35 + 		}
   12.36 + 		if (i == 0)
   12.37 +@@ -869,7 +879,9 @@
   12.38 + 		 * Using list.len to specify its length,
   12.39 + 		 * add_to_dirlist will remove it. */
   12.40 + 		list[i].len = strlen(p[i]);
   12.41 +-		recursive_action(p[i], ACTION_RECURSE | ACTION_FOLLOWLINKS,
   12.42 ++		recursive_action(p[i],
   12.43 ++				(option_mask32 & FLAG(l)) ? ACTION_RECURSE :
   12.44 ++				ACTION_RECURSE | ACTION_FOLLOWLINKS,
   12.45 + 				add_to_dirlist, skip_dir, &list[i], 0);
   12.46 + 		/* Sort dl alphabetically.
   12.47 + 		 * GNU diff does this ignoring any number of trailing dots.
   12.48 +@@ -983,7 +995,7 @@
   12.49 + #if ENABLE_FEATURE_DIFF_LONG_OPTIONS
   12.50 + 	applet_long_options = diff_longopts;
   12.51 + #endif
   12.52 +-	getopt32(argv, "abdiL:NqrsS:tTU:wupBE",
   12.53 ++	getopt32(argv, "abdilL:NqrsS:tTU:wupBE",
   12.54 + 			&L_arg, &s_start, &opt_U_context);
   12.55 + 	argv += optind;
   12.56 + 	while (L_arg)
    13.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    13.2 +++ b/busybox/stuff/patches/busybox-1.23-dpkgxz.u	Wed Nov 09 15:12:00 2022 +0000
    13.3 @@ -0,0 +1,163 @@
    13.4 +Description: Add support for latest .deb format members
    13.5 + This adds support for control.tar, control.tar.xz, data.tar, data.tar.xz
    13.6 + and data.tar.lzma in the dpkg and dpkg-deb applet. It also removes support
    13.7 + for control.tar.bz2 which has never been supported.
    13.8 + .
    13.9 + This should make these applets conform to deb(5).
   13.10 +Author: Guillem Jover <guillem@debian.org>
   13.11 +Origin: vendor
   13.12 +Forwarded: no
   13.13 +Last-Update: 2014-07-30
   13.14 +Bug-Debian: http://bugs.debian.org/756462
   13.15 +---
   13.16 + archival/dpkg.c                                   |   12 ++++++++++--
   13.17 + archival/dpkg_deb.c                               |    6 ++++++
   13.18 + archival/libarchive/Kbuild.src                    |    1 +
   13.19 + archival/libarchive/filter_accept_list_reassign.c |   11 +++++++++++
   13.20 + archival/libarchive/get_header_tar_xz.c           |   21 +++++++++++++++++++++
   13.21 + include/bb_archive.h                              |    1 +
   13.22 + 6 files changed, 50 insertions(+), 2 deletions(-)
   13.23 + create mode 100644 archival/libarchive/get_header_tar_xz.c
   13.24 +
   13.25 +diff --git a/archival/dpkg.c b/archival/dpkg.c
   13.26 +index 2893cfc..71eae66 100644
   13.27 +--- a/archival/dpkg.c
   13.28 ++++ b/archival/dpkg.c
   13.29 +@@ -1472,11 +1472,12 @@ static void init_archive_deb_control(archive_handle_t *ar_handle)
   13.30 + 	tar_handle->src_fd = ar_handle->src_fd;
   13.31 + 
   13.32 + 	/* We don't care about data.tar.* or debian-binary, just control.tar.* */
   13.33 ++	llist_add_to(&(ar_handle->accept), (char*)"control.tar");
   13.34 + #if ENABLE_FEATURE_SEAMLESS_GZ
   13.35 + 	llist_add_to(&(ar_handle->accept), (char*)"control.tar.gz");
   13.36 + #endif
   13.37 +-#if ENABLE_FEATURE_SEAMLESS_BZ2
   13.38 +-	llist_add_to(&(ar_handle->accept), (char*)"control.tar.bz2");
   13.39 ++#if ENABLE_FEATURE_SEAMLESS_XZ
   13.40 ++	llist_add_to(&(ar_handle->accept), (char*)"control.tar.xz");
   13.41 + #endif
   13.42 + 
   13.43 + 	/* Assign the tar handle as a subarchive of the ar handle */
   13.44 +@@ -1492,12 +1493,19 @@ static void init_archive_deb_data(archive_handle_t *ar_handle)
   13.45 + 	tar_handle->src_fd = ar_handle->src_fd;
   13.46 + 
   13.47 + 	/* We don't care about control.tar.* or debian-binary, just data.tar.* */
   13.48 ++	llist_add_to(&(ar_handle->accept), (char*)"data.tar");
   13.49 + #if ENABLE_FEATURE_SEAMLESS_GZ
   13.50 + 	llist_add_to(&(ar_handle->accept), (char*)"data.tar.gz");
   13.51 + #endif
   13.52 ++#if ENABLE_FEATURE_SEAMLESS_XZ
   13.53 ++	llist_add_to(&(ar_handle->accept), (char*)"data.tar.xz");
   13.54 ++#endif
   13.55 + #if ENABLE_FEATURE_SEAMLESS_BZ2
   13.56 + 	llist_add_to(&(ar_handle->accept), (char*)"data.tar.bz2");
   13.57 + #endif
   13.58 ++#if ENABLE_FEATURE_SEAMLESS_LZMA
   13.59 ++	llist_add_to(&(ar_handle->accept), (char*)"data.tar.lzma");
   13.60 ++#endif
   13.61 + 
   13.62 + 	/* Assign the tar handle as a subarchive of the ar handle */
   13.63 + 	ar_handle->dpkg__sub_archive = tar_handle;
   13.64 +diff --git a/archival/dpkg_deb.c b/archival/dpkg_deb.c
   13.65 +index 13f9db9..48920f6 100644
   13.66 +--- a/archival/dpkg_deb.c
   13.67 ++++ b/archival/dpkg_deb.c
   13.68 +@@ -70,10 +70,16 @@ int dpkg_deb_main(int argc, char **argv)
   13.69 + 	ar_archive->dpkg__sub_archive = tar_archive;
   13.70 + 	ar_archive->filter = filter_accept_list_reassign;
   13.71 + 
   13.72 ++	llist_add_to(&ar_archive->accept, (char*)"data.tar");
   13.73 ++	llist_add_to(&control_tar_llist, (char*)"control.tar");
   13.74 + #if ENABLE_FEATURE_SEAMLESS_GZ
   13.75 + 	llist_add_to(&ar_archive->accept, (char*)"data.tar.gz");
   13.76 + 	llist_add_to(&control_tar_llist, (char*)"control.tar.gz");
   13.77 + #endif
   13.78 ++#if ENABLE_FEATURE_SEAMLESS_XZ
   13.79 ++	llist_add_to(&ar_archive->accept, (char*)"data.tar.xz");
   13.80 ++	llist_add_to(&control_tar_llist, (char*)"control.tar.xz");
   13.81 ++#endif
   13.82 + #if ENABLE_FEATURE_SEAMLESS_BZ2
   13.83 + 	llist_add_to(&ar_archive->accept, (char*)"data.tar.bz2");
   13.84 + 	llist_add_to(&control_tar_llist, (char*)"control.tar.bz2");
   13.85 +diff --git a/archival/libarchive/Kbuild.src b/archival/libarchive/Kbuild.src
   13.86 +index 968fdf8..fda05d8 100644
   13.87 +--- a/archival/libarchive/Kbuild.src
   13.88 ++++ b/archival/libarchive/Kbuild.src
   13.89 +@@ -33,6 +33,7 @@ DPKG_FILES:= \
   13.90 + 	get_header_ar.o \
   13.91 + 	get_header_tar.o \
   13.92 + 	get_header_tar_gz.o \
   13.93 ++	get_header_tar_xz.o \
   13.94 + 	get_header_tar_bz2.o \
   13.95 + 	get_header_tar_lzma.o \
   13.96 + 
   13.97 +diff --git a/archival/libarchive/filter_accept_list_reassign.c b/archival/libarchive/filter_accept_list_reassign.c
   13.98 +index 3d19abe..bcfeb96 100644
   13.99 +--- a/archival/libarchive/filter_accept_list_reassign.c
  13.100 ++++ b/archival/libarchive/filter_accept_list_reassign.c
  13.101 +@@ -28,12 +28,23 @@ char FAST_FUNC filter_accept_list_reassign(archive_handle_t *archive_handle)
  13.102 + 		name_ptr++;
  13.103 + 
  13.104 + 		/* Modify the subarchive handler based on the extension */
  13.105 ++		if (strcmp(name_ptr, "tar") == 0
  13.106 ++		) {
  13.107 ++			archive_handle->dpkg__action_data_subarchive = get_header_tar;
  13.108 ++			return EXIT_SUCCESS;
  13.109 ++		}
  13.110 + 		if (ENABLE_FEATURE_SEAMLESS_GZ
  13.111 + 		 && strcmp(name_ptr, "gz") == 0
  13.112 + 		) {
  13.113 + 			archive_handle->dpkg__action_data_subarchive = get_header_tar_gz;
  13.114 + 			return EXIT_SUCCESS;
  13.115 + 		}
  13.116 ++		if (ENABLE_FEATURE_SEAMLESS_XZ
  13.117 ++		 && strcmp(name_ptr, "xz") == 0
  13.118 ++		) {
  13.119 ++			archive_handle->dpkg__action_data_subarchive = get_header_tar_xz;
  13.120 ++			return EXIT_SUCCESS;
  13.121 ++		}
  13.122 + 		if (ENABLE_FEATURE_SEAMLESS_BZ2
  13.123 + 		 && strcmp(name_ptr, "bz2") == 0
  13.124 + 		) {
  13.125 +diff --git a/archival/libarchive/get_header_tar_xz.c b/archival/libarchive/get_header_tar_xz.c
  13.126 +new file mode 100644
  13.127 +index 0000000..30ac522
  13.128 +--- /dev/null
  13.129 ++++ b/archival/libarchive/get_header_tar_xz.c
  13.130 +@@ -0,0 +1,21 @@
  13.131 ++/* vi: set sw=4 ts=4: */
  13.132 ++/*
  13.133 ++ * Licensed under GPLv2 or later, see file LICENSE in this source tree.
  13.134 ++ */
  13.135 ++
  13.136 ++#include "libbb.h"
  13.137 ++#include "bb_archive.h"
  13.138 ++
  13.139 ++char FAST_FUNC get_header_tar_xz(archive_handle_t *archive_handle)
  13.140 ++{
  13.141 ++	/* Can't lseek over pipes */
  13.142 ++	archive_handle->seek = seek_by_read;
  13.143 ++
  13.144 ++	fork_transformer_with_sig(archive_handle->src_fd, unpack_xz_stream, "unxz");
  13.145 ++	archive_handle->offset = 0;
  13.146 ++	while (get_header_tar(archive_handle) == EXIT_SUCCESS)
  13.147 ++		continue;
  13.148 ++
  13.149 ++	/* Can only do one file at a time */
  13.150 ++	return EXIT_FAILURE;
  13.151 ++}
  13.152 +diff --git a/include/bb_archive.h b/include/bb_archive.h
  13.153 +index b82cfd8..a356f70 100644
  13.154 +--- a/include/bb_archive.h
  13.155 ++++ b/include/bb_archive.h
  13.156 +@@ -182,6 +182,7 @@ char get_header_ar(archive_handle_t *archive_handle) FAST_FUNC;
  13.157 + char get_header_cpio(archive_handle_t *archive_handle) FAST_FUNC;
  13.158 + char get_header_tar(archive_handle_t *archive_handle) FAST_FUNC;
  13.159 + char get_header_tar_gz(archive_handle_t *archive_handle) FAST_FUNC;
  13.160 ++char get_header_tar_xz(archive_handle_t *archive_handle) FAST_FUNC;
  13.161 + char get_header_tar_bz2(archive_handle_t *archive_handle) FAST_FUNC;
  13.162 + char get_header_tar_lzma(archive_handle_t *archive_handle) FAST_FUNC;
  13.163 + 
  13.164 +-- 
  13.165 +1.7.10.4
  13.166 +
    14.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    14.2 +++ b/busybox/stuff/patches/busybox-1.23-fbvnc.u	Wed Nov 09 15:12:00 2022 +0000
    14.3 @@ -0,0 +1,683 @@
    14.4 +   text    data     bss     dec     hex filename
    14.5 +   3122       0       0    3122     c32 util-linux/fbvnc.o
    14.6 +--- /dev/null
    14.7 ++++ busybox/util-linux/fbvnc.c
    14.8 +@@ -0,0 +1,551 @@
    14.9 ++/* vi: set sw=4 ts=4: */
   14.10 ++/*
   14.11 ++ * A small linux framebuffer VNC viewer
   14.12 ++ *
   14.13 ++ * pascal.bellard@ads-lu.com
   14.14 ++ *
   14.15 ++ * Based on Ali Gholami Rudi's fbvnc.c
   14.16 ++ *   http://repo.or.cz/w/fbvnc.git
   14.17 ++ *
   14.18 ++ * Licensed under GPLv2 or later, see file LICENSE in this source tree.
   14.19 ++ */
   14.20 ++
   14.21 ++//applet:IF_FBVNC(APPLET(fbvnc, BB_DIR_BIN, BB_SUID_DROP))
   14.22 ++
   14.23 ++//kbuild:lib-$(CONFIG_FBVNC) += fbvnc.o
   14.24 ++
   14.25 ++//config:config FBVNC
   14.26 ++//config:	bool "fbvnc"
   14.27 ++//config:	default n
   14.28 ++//config:	depends on PLATFORM_LINUX
   14.29 ++//config:	help
   14.30 ++//config:	  A linux framebuffer VNC viewer.
   14.31 ++
   14.32 ++//usage:#define fbvnc_trivial_usage
   14.33 ++//usage:	"[VNC_SERVER] [PORT]"
   14.34 ++//usage:#define fbvnc_full_usage "\n\n"
   14.35 ++//usage:     "A linux framebuffer VNC viewer."
   14.36 ++//usage:     "\nTo exit, press any mouse button and press ESC."
   14.37 ++
   14.38 ++#include "libbb.h"
   14.39 ++#include "vnc.h"
   14.40 ++
   14.41 ++/* Stuff stolen from the kernel's fb.h */
   14.42 ++#define FB_ACTIVATE_ALL 64
   14.43 ++enum {
   14.44 ++	FBIOGET_VSCREENINFO = 0x4600,
   14.45 ++	FBIOPUT_VSCREENINFO = 0x4601,
   14.46 ++	FBIOGET_FSCREENINFO = 0x4602,
   14.47 ++	FBIOGETCMAP = 0x4604,
   14.48 ++	FBIOPUTCMAP = 0x4605
   14.49 ++};
   14.50 ++
   14.51 ++struct fb_bitfield {
   14.52 ++	uint32_t offset;                /* beginning of bitfield */
   14.53 ++	uint32_t length;                /* length of bitfield */
   14.54 ++	uint32_t msb_right;             /* !=0: Most significant bit is right */
   14.55 ++};
   14.56 ++struct fb_var_screeninfo {
   14.57 ++	uint32_t xres;                  /* visible resolution */
   14.58 ++	uint32_t yres;
   14.59 ++	uint32_t xres_virtual;          /* virtual resolution */
   14.60 ++	uint32_t yres_virtual;
   14.61 ++	uint32_t xoffset;               /* offset from virtual to visible */
   14.62 ++	uint32_t yoffset;               /* resolution */
   14.63 ++
   14.64 ++	uint32_t bits_per_pixel;
   14.65 ++	uint32_t grayscale;             /* !=0 Graylevels instead of colors */
   14.66 ++
   14.67 ++	struct fb_bitfield red;         /* bitfield in fb mem if true color, */
   14.68 ++	struct fb_bitfield green;       /* else only length is significant */
   14.69 ++	struct fb_bitfield blue;
   14.70 ++	struct fb_bitfield transp;      /* transparency */
   14.71 ++
   14.72 ++	uint32_t nonstd;                /* !=0 Non standard pixel format */
   14.73 ++
   14.74 ++	uint32_t activate;              /* see FB_ACTIVATE_x */
   14.75 ++
   14.76 ++	uint32_t height;                /* height of picture in mm */
   14.77 ++	uint32_t width;                 /* width of picture in mm */
   14.78 ++
   14.79 ++	uint32_t accel_flags;           /* acceleration flags (hints) */
   14.80 ++
   14.81 ++	/* Timing: All values in pixclocks, except pixclock (of course) */
   14.82 ++	uint32_t pixclock;              /* pixel clock in ps (pico seconds) */
   14.83 ++	uint32_t left_margin;           /* time from sync to picture */
   14.84 ++	uint32_t right_margin;          /* time from picture to sync */
   14.85 ++	uint32_t upper_margin;          /* time from sync to picture */
   14.86 ++	uint32_t lower_margin;
   14.87 ++	uint32_t hsync_len;             /* length of horizontal sync */
   14.88 ++	uint32_t vsync_len;             /* length of vertical sync */
   14.89 ++	uint32_t sync;                  /* see FB_SYNC_x */
   14.90 ++	uint32_t vmode;                 /* see FB_VMODE_x */
   14.91 ++	uint32_t reserved[6];           /* Reserved for future compatibility */
   14.92 ++};
   14.93 ++
   14.94 ++#define DEFAULTFBDEV  FB_0
   14.95 ++
   14.96 ++struct fb_fix_screeninfo {
   14.97 ++	char id[16];			/* identification string eg "TT Builtin" */
   14.98 ++	unsigned long smem_start;	/* Start of frame buffer mem */
   14.99 ++					/* (physical address) */
  14.100 ++	uint32_t smem_len;		/* Length of frame buffer mem */
  14.101 ++	uint32_t type;			/* see FB_TYPE_*		*/
  14.102 ++	uint32_t type_aux;		/* Interleave for interleaved Planes */
  14.103 ++	uint32_t visual;		/* see FB_VISUAL_*		*/ 
  14.104 ++	uint16_t xpanstep;		/* zero if no hardware panning  */
  14.105 ++	uint16_t ypanstep;		/* zero if no hardware panning  */
  14.106 ++	uint16_t ywrapstep;		/* zero if no hardware ywrap    */
  14.107 ++	uint32_t line_length;		/* length of a line in bytes    */
  14.108 ++	unsigned long mmio_start;	/* Start of Memory Mapped I/O   */
  14.109 ++					/* (physical address) */
  14.110 ++	uint32_t mmio_len;		/* Length of Memory Mapped I/O  */
  14.111 ++	uint32_t accel;			/* Indicate to driver which	*/
  14.112 ++					/*  specific chip/card we have	*/
  14.113 ++	uint16_t reserved[3];		/* Reserved for future compatibility */
  14.114 ++};
  14.115 ++
  14.116 ++struct fb_cmap {
  14.117 ++	uint32_t start;			/* First entry	*/
  14.118 ++	uint32_t len;			/* Number of entries */
  14.119 ++	uint16_t *red;			/* Red values	*/
  14.120 ++	uint16_t *green;
  14.121 ++	uint16_t *blue;
  14.122 ++	uint16_t *transp;			/* transparency, can be NULL */
  14.123 ++};
  14.124 ++
  14.125 ++#define FB_VISUAL_TRUECOLOR		2	/* True color	*/
  14.126 ++
  14.127 ++#define COLORLEVELS   (1 << 8)
  14.128 ++
  14.129 ++struct scroll_data {
  14.130 ++	int size;
  14.131 ++	int srv_size;
  14.132 ++	int offset;
  14.133 ++	int pos;
  14.134 ++};
  14.135 ++
  14.136 ++struct globals {
  14.137 ++	struct termios term_orig;
  14.138 ++	struct pollfd ufds[3];
  14.139 ++#define kbd_fd		ufds[0].fd
  14.140 ++#define vnc_fd		ufds[1].fd
  14.141 ++#define rat_fd		ufds[2].fd
  14.142 ++	struct scroll_data scroll[2];
  14.143 ++#define cols		scroll[0].size
  14.144 ++#define srv_cols	scroll[0].srv_size
  14.145 ++#define oc		scroll[0].offset
  14.146 ++#define mc		scroll[0].pos
  14.147 ++#define rows		scroll[1].size
  14.148 ++#define srv_rows	scroll[1].srv_size
  14.149 ++#define or		scroll[1].offset
  14.150 ++#define mr		scroll[1].pos
  14.151 ++	char rat_buttons;
  14.152 ++	int fb_fd;
  14.153 ++	void *fb_ptr;
  14.154 ++	int bpp;
  14.155 ++	int nr, ng, nb;
  14.156 ++	struct fb_var_screeninfo vinfo;
  14.157 ++	struct fb_fix_screeninfo finfo;
  14.158 ++	unsigned short red[COLORLEVELS], green[COLORLEVELS], blue[COLORLEVELS];
  14.159 ++};
  14.160 ++
  14.161 ++#define G (*ptr_to_globals)
  14.162 ++#define INIT_G() do { \
  14.163 ++	SET_PTR_TO_GLOBALS(xzalloc(sizeof(G))); \
  14.164 ++} while (0)
  14.165 ++
  14.166 ++static int fb_len(void)
  14.167 ++{
  14.168 ++	return G.finfo.line_length * G.vinfo.yres_virtual;
  14.169 ++}
  14.170 ++
  14.171 ++static void fb_ioctl_cmap(int fct, struct fb_cmap *cmap)
  14.172 ++{
  14.173 ++	if (G.finfo.visual == FB_VISUAL_TRUECOLOR)
  14.174 ++		return;
  14.175 ++	cmap->start = 0;
  14.176 ++	cmap->len = MAX(G.nr, MAX(G.ng, G.nb));
  14.177 ++	cmap->transp = NULL;
  14.178 ++	xioctl(G.fb_fd, fct, cmap);
  14.179 ++}
  14.180 ++
  14.181 ++static void fb_cmap_save(int save)
  14.182 ++{
  14.183 ++	struct fb_cmap cmap;
  14.184 ++	
  14.185 ++	cmap.red = G.red;
  14.186 ++	cmap.green = G.green;
  14.187 ++	cmap.blue = G.blue;
  14.188 ++	fb_ioctl_cmap(save ? FBIOGETCMAP : FBIOPUTCMAP, &cmap);
  14.189 ++}
  14.190 ++
  14.191 ++static void fb_build_cmap(unsigned short *color, int n)
  14.192 ++{
  14.193 ++	int i, inc = 65535 / (n - 1);
  14.194 ++	
  14.195 ++	for (i = 0; n--; i += inc)
  14.196 ++		*color++ = i;
  14.197 ++}
  14.198 ++
  14.199 ++static void fb_cmap(void)
  14.200 ++{
  14.201 ++	unsigned short red[COLORLEVELS], green[COLORLEVELS], blue[COLORLEVELS];
  14.202 ++	struct fb_cmap cmap;
  14.203 ++
  14.204 ++	fb_build_cmap(cmap.red = red,     G.nr);
  14.205 ++	fb_build_cmap(cmap.green = green, G.ng);
  14.206 ++	fb_build_cmap(cmap.blue = blue,   G.nb);
  14.207 ++	fb_ioctl_cmap(FBIOPUTCMAP, &cmap);
  14.208 ++}
  14.209 ++
  14.210 ++static void fb_init(void)
  14.211 ++{
  14.212 ++	G.fb_fd = xopen(DEFAULTFBDEV, O_RDWR);
  14.213 ++	xioctl(G.fb_fd, FBIOGET_VSCREENINFO, &G.vinfo);
  14.214 ++	xioctl(G.fb_fd, FBIOGET_FSCREENINFO, &G.finfo);
  14.215 ++	close_on_exec_on(G.fb_fd);
  14.216 ++	G.fb_ptr = mmap(NULL, fb_len(), PROT_READ | PROT_WRITE, MAP_SHARED, G.fb_fd, 0);
  14.217 ++	if (G.fb_ptr == MAP_FAILED)
  14.218 ++		bb_perror_msg_and_die("mmap");
  14.219 ++	G.bpp = (G.vinfo.bits_per_pixel + 7) >> 3;
  14.220 ++	G.nr = 1 << G.vinfo.red.length;
  14.221 ++	G.nb = 1 << G.vinfo.blue.length;
  14.222 ++	G.ng = 1 << G.vinfo.green.length;
  14.223 ++	fb_cmap_save(1);
  14.224 ++	fb_cmap();
  14.225 ++}
  14.226 ++
  14.227 ++static void fb_free(void)
  14.228 ++{
  14.229 ++	fb_cmap_save(0);
  14.230 ++	munmap(G.fb_ptr, fb_len());
  14.231 ++	close(G.fb_fd);
  14.232 ++}
  14.233 ++
  14.234 ++#define fb_rows vinfo.yres
  14.235 ++#define fb_cols vinfo.xres
  14.236 ++
  14.237 ++static void fb_set(int r, int c, void *mem, int len)
  14.238 ++{
  14.239 ++	memcpy(G.fb_ptr + (r + G.vinfo.yoffset) * G.finfo.line_length + 
  14.240 ++		(c + G.vinfo.xoffset) * G.bpp, mem, len * G.bpp);
  14.241 ++}
  14.242 ++
  14.243 ++#define line_buffer	bb_common_bufsiz1
  14.244 ++#define MAXPIX		(sizeof(line_buffer)/sizeof(uint32_t))
  14.245 ++
  14.246 ++static void skip(int len)
  14.247 ++{
  14.248 ++	int n;
  14.249 ++	while (len > 0 && (n = read(G.vnc_fd, line_buffer, 
  14.250 ++				    MIN(len, sizeof(line_buffer)))) > 0)
  14.251 ++		len -= n;
  14.252 ++}
  14.253 ++
  14.254 ++static void vnc_init(void)
  14.255 ++{
  14.256 ++	struct vnc_client_init clientinit;
  14.257 ++	struct vnc_server_init serverinit;
  14.258 ++	struct vnc_client_pixelfmt pixfmt_cmd;
  14.259 ++	int connstat = VNC_CONN_FAILED;
  14.260 ++
  14.261 ++	write(G.vnc_fd, "RFB 003.003\n", 12);
  14.262 ++	skip(12);
  14.263 ++
  14.264 ++	xread(G.vnc_fd, &connstat, sizeof(connstat));
  14.265 ++
  14.266 ++	if (ntohl(connstat) != VNC_CONN_NOAUTH)
  14.267 ++		bb_perror_msg_and_die("vnc auth");
  14.268 ++
  14.269 ++	clientinit.shared = 1;
  14.270 ++	write(G.vnc_fd, &clientinit, sizeof(clientinit));
  14.271 ++	read(G.vnc_fd, &serverinit, sizeof(serverinit));
  14.272 ++
  14.273 ++	fb_init();
  14.274 ++	G.srv_cols = ntohs(serverinit.w);
  14.275 ++	G.srv_rows = ntohs(serverinit.h);
  14.276 ++	G.cols = MIN(G.srv_cols, G.fb_cols);
  14.277 ++	G.rows = MIN(G.srv_rows, G.fb_rows);
  14.278 ++	G.mr = G.rows / 2;
  14.279 ++	G.mc = G.cols / 2;
  14.280 ++
  14.281 ++	skip(ntohl(serverinit.len));
  14.282 ++	pixfmt_cmd.type = VNC_CLIENT_PIXFMT;
  14.283 ++	pixfmt_cmd.format.bigendian = 0;
  14.284 ++	pixfmt_cmd.format.truecolor = 1;
  14.285 ++	pixfmt_cmd.format.bpp =
  14.286 ++	pixfmt_cmd.format.depth = G.bpp << 3;
  14.287 ++	pixfmt_cmd.format.rmax = htons(G.nr - 1);
  14.288 ++	pixfmt_cmd.format.gmax = htons(G.ng - 1);
  14.289 ++	pixfmt_cmd.format.bmax = htons(G.nb - 1);
  14.290 ++	pixfmt_cmd.format.rshl = G.vinfo.red.offset;
  14.291 ++	pixfmt_cmd.format.gshl = G.vinfo.green.offset;
  14.292 ++	pixfmt_cmd.format.bshl = G.vinfo.blue.offset;
  14.293 ++	write(G.vnc_fd, &pixfmt_cmd, sizeof(pixfmt_cmd));
  14.294 ++}
  14.295 ++
  14.296 ++static void vnc_refresh(int inc)
  14.297 ++{
  14.298 ++	struct vnc_client_fbup fbup_req;
  14.299 ++	fbup_req.type = VNC_CLIENT_FBUP;
  14.300 ++	fbup_req.inc = inc;
  14.301 ++	fbup_req.x = htons(G.oc);
  14.302 ++	fbup_req.y = htons(G.or);
  14.303 ++	fbup_req.w = htons(G.oc + G.cols);
  14.304 ++	fbup_req.h = htons(G.or + G.rows);
  14.305 ++	write(G.vnc_fd, &fbup_req, sizeof(fbup_req));
  14.306 ++}
  14.307 ++
  14.308 ++static void cleanup(void)
  14.309 ++{
  14.310 ++#define RESETSTR "\x1b[?25h\x1b[2J\x1b[H"
  14.311 ++	fb_free();
  14.312 ++	tcsetattr_stdin_TCSANOW(&G.term_orig);
  14.313 ++	write(STDOUT_FILENO, RESETSTR, sizeof(RESETSTR));
  14.314 ++	if (ENABLE_FEATURE_CLEAN_UP) {
  14.315 ++		close(G.vnc_fd);
  14.316 ++		close(G.rat_fd);
  14.317 ++	}
  14.318 ++}
  14.319 ++
  14.320 ++static void killed(int code) NORETURN;
  14.321 ++static void killed(int code)
  14.322 ++{
  14.323 ++	cleanup();
  14.324 ++	if (code > EXIT_FAILURE)
  14.325 ++		kill_myself_with_sig(code);
  14.326 ++	exit(code);
  14.327 ++}
  14.328 ++
  14.329 ++static void vnc_event(void)
  14.330 ++{
  14.331 ++	struct vnc_rect uprect;
  14.332 ++	union {
  14.333 ++		struct vnc_server_fbup fbup;
  14.334 ++		struct vnc_server_cuttext cuttext;
  14.335 ++		struct vnc_server_colormap colormap;
  14.336 ++	} msg;
  14.337 ++	int n;
  14.338 ++
  14.339 ++	switch (xread_char(G.vnc_fd)) {
  14.340 ++	case VNC_SERVER_FBUP:
  14.341 ++		xread(G.vnc_fd, &msg.fbup.pad, sizeof(msg.fbup) - 1);
  14.342 ++		n = ntohs(msg.fbup.n);
  14.343 ++		while (n--) {
  14.344 ++			int x, y, w, h, l, i;
  14.345 ++			xread(G.vnc_fd, &uprect, sizeof(uprect));
  14.346 ++			if (uprect.enc != 0)
  14.347 ++				killed(1);
  14.348 ++			i = 0;
  14.349 ++			x = ntohs(uprect.x) - G.oc;
  14.350 ++			y = ntohs(uprect.y) - G.or;
  14.351 ++			w = ntohs(uprect.w);
  14.352 ++			h = ntohs(uprect.h);
  14.353 ++			l = MIN(w, G.cols - x);
  14.354 ++			if (x < 0) {
  14.355 ++				l = MIN(w + x, G.cols);
  14.356 ++				i = -x;
  14.357 ++				x = 0;
  14.358 ++			}
  14.359 ++			for (; h--; y++) {
  14.360 ++				int a, b, c = i;
  14.361 ++				for (a = b = 0; w > b; b += a, c = 0) {
  14.362 ++					int len;
  14.363 ++					a = MIN(w - b, MAXPIX);
  14.364 ++					len = MIN(a, l - b) - c;
  14.365 ++					xread(G.vnc_fd, line_buffer, a * G.bpp);
  14.366 ++					if (y >= 0 && y < G.rows && len > 0)
  14.367 ++						fb_set(y, x + b, 
  14.368 ++						       line_buffer + (c * G.bpp),
  14.369 ++						       len);
  14.370 ++				}
  14.371 ++			}
  14.372 ++		}
  14.373 ++		break;
  14.374 ++	case VNC_SERVER_BELL:
  14.375 ++		break;
  14.376 ++	case VNC_SERVER_CUTTEXT:
  14.377 ++		xread(G.vnc_fd, &msg.cuttext.pad1, sizeof(msg.cuttext) - 1);
  14.378 ++		skip(ntohl(msg.cuttext.len));
  14.379 ++		break;
  14.380 ++	case VNC_SERVER_COLORMAP:
  14.381 ++		xread(G.vnc_fd, &msg.colormap.pad, sizeof(msg.colormap) - 1);
  14.382 ++		skip(ntohs(msg.colormap.n) * 3 * 2);
  14.383 ++		break;
  14.384 ++	default:
  14.385 ++		killed(1);
  14.386 ++	}
  14.387 ++}
  14.388 ++
  14.389 ++static int update_scroll(struct scroll_data *s)
  14.390 ++{
  14.391 ++	int shift = s->size / 5;
  14.392 ++	int max = s->srv_size - s->size;
  14.393 ++	int status = 0;
  14.394 ++	if (s->pos < s->offset) {
  14.395 ++		if ((s->offset -= shift) < 0)
  14.396 ++			s->offset = 0;
  14.397 ++	}
  14.398 ++	else if (s->pos >= s->offset + s->size && s->offset < max) {
  14.399 ++		if ((s->offset += shift) > max)
  14.400 ++			s->offset = max;
  14.401 ++	}
  14.402 ++	else status++;
  14.403 ++	s->pos = MAX(s->offset, MIN(s->offset + s->size - 1, s->pos));
  14.404 ++	return status;
  14.405 ++}
  14.406 ++
  14.407 ++static void rat_event(void)
  14.408 ++{
  14.409 ++	static u8 btn2vnc[8] = {
  14.410 ++		0, VNC_BUTTON1_MASK, VNC_BUTTON3_MASK, 
  14.411 ++		VNC_BUTTON1_MASK + VNC_BUTTON3_MASK, VNC_BUTTON2_MASK, 
  14.412 ++		VNC_BUTTON1_MASK + VNC_BUTTON2_MASK,
  14.413 ++		VNC_BUTTON2_MASK + VNC_BUTTON3_MASK,
  14.414 ++		VNC_BUTTON1_MASK + VNC_BUTTON2_MASK + VNC_BUTTON3_MASK
  14.415 ++	};
  14.416 ++	signed char ie[4];
  14.417 ++	struct vnc_client_ratevent me = {VNC_CLIENT_RATEVENT};
  14.418 ++	int refresh;
  14.419 ++
  14.420 ++	xread(G.rat_fd, &ie, sizeof(ie));
  14.421 ++	G.mc += ie[1];
  14.422 ++	G.mr -= ie[2];
  14.423 ++	refresh = 2 - update_scroll(&G.scroll[0]) - update_scroll(&G.scroll[1]);
  14.424 ++	me.mask = btn2vnc[G.rat_buttons = ie[0] & 7];
  14.425 ++	if (ie[3] > 0)		/* wheel up */
  14.426 ++		me.mask |= VNC_BUTTON4_MASK;
  14.427 ++	if (ie[3] < 0)		/* wheel down */
  14.428 ++		me.mask |= VNC_BUTTON5_MASK;
  14.429 ++	me.y = htons(G.mr);
  14.430 ++	me.x = htons(G.mc);
  14.431 ++	write(G.vnc_fd, &me, sizeof(me));
  14.432 ++	if (refresh)
  14.433 ++		vnc_refresh(0);
  14.434 ++}
  14.435 ++
  14.436 ++static int press(int key, int down)
  14.437 ++{
  14.438 ++	struct vnc_client_keyevent ke = {VNC_CLIENT_KEYEVENT};
  14.439 ++	ke.key = htonl(key);
  14.440 ++	ke.down = down;
  14.441 ++	return write(G.vnc_fd, &ke, sizeof(ke));
  14.442 ++}
  14.443 ++
  14.444 ++static void kbd_event(void)
  14.445 ++{
  14.446 ++	char key[1024];
  14.447 ++	int i, nr;
  14.448 ++
  14.449 ++	if ((nr = read(0, key, sizeof(key))) <= 0 )
  14.450 ++		killed(1);
  14.451 ++	for (i = 0; i < nr; i++) {
  14.452 ++		int j, k;
  14.453 ++		int mod[4];
  14.454 ++		int nmod;
  14.455 ++
  14.456 ++		k = nmod = 0;
  14.457 ++		switch (key[i]) {
  14.458 ++		case 0x08:
  14.459 ++		case 0x7f:
  14.460 ++			k = 0xff08;
  14.461 ++			break;
  14.462 ++		case 0x1b:
  14.463 ++			if (G.rat_buttons)
  14.464 ++				killed(0);
  14.465 ++			if (i + 2 < nr && key[i + 1] == '[') {
  14.466 ++				static const char arr2vnc[] = "HDACB";
  14.467 ++				char *p = strchr(arr2vnc, key[i + 2]);
  14.468 ++
  14.469 ++				if (p) {
  14.470 ++					k = p - arr2vnc + 0xff50;
  14.471 ++					i += 2;
  14.472 ++					break;
  14.473 ++				}
  14.474 ++			}
  14.475 ++			if (i + 1 < nr) {
  14.476 ++				mod[nmod++] = 0xffe9;
  14.477 ++				i++;
  14.478 ++			}
  14.479 ++		case 0x09:
  14.480 ++		case 0x0d:
  14.481 ++			k = 0xff00;
  14.482 ++			goto getkey;
  14.483 ++		case 0x0c:	/* Mouse button + ^L: redraw */
  14.484 ++			if (G.rat_buttons) {
  14.485 ++				vnc_refresh(0);
  14.486 ++				continue;
  14.487 ++			}
  14.488 ++		default:
  14.489 ++		getkey:
  14.490 ++			k += (unsigned char) key[i];
  14.491 ++		}
  14.492 ++		if ((k >= 'A' && k <= 'Z') || strchr(":\"<>?{}|+_()*&^%$#@!~", k))
  14.493 ++			mod[nmod++] = 0xffe1;
  14.494 ++		if (k >= 1 && k <= 26) {
  14.495 ++			k += 'a' - 1;
  14.496 ++			mod[nmod++] = 0xffe3;
  14.497 ++		}
  14.498 ++		mod[nmod] = k;
  14.499 ++		for (j = 0; j <= nmod; j++)
  14.500 ++			press(mod[j], 1);
  14.501 ++		press(k, 0);
  14.502 ++		for (j = 0; j < nmod; j++)
  14.503 ++			press(mod[j], 0);
  14.504 ++	}
  14.505 ++}
  14.506 ++
  14.507 ++static void term_setup(void)
  14.508 ++{
  14.509 ++	struct termios termios;
  14.510 ++#define INITSTR	"\x1b[?25l\x1b[2J\x1b[H** fbvnc **"
  14.511 ++
  14.512 ++	write(STDOUT_FILENO, INITSTR, sizeof(INITSTR));
  14.513 ++	tcgetattr (STDIN_FILENO, &termios);
  14.514 ++	G.term_orig = termios;
  14.515 ++	cfmakeraw(&termios);
  14.516 ++	tcsetattr_stdin_TCSANOW(&termios);
  14.517 ++}
  14.518 ++
  14.519 ++int fbvnc_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
  14.520 ++int fbvnc_main(int argc, char **argv)
  14.521 ++{
  14.522 ++	char *host = (char *) "127.0.0.1";
  14.523 ++	int port, pending = 0;
  14.524 ++	
  14.525 ++	INIT_G();
  14.526 ++	if (argc >= 2)
  14.527 ++		host = argv[1];
  14.528 ++	port = bb_lookup_port((argc >= 3) ?  argv[2] : "vnc", "tcp", 5900);
  14.529 ++	G.vnc_fd = create_and_connect_stream_or_die(host, port);
  14.530 ++	vnc_init();
  14.531 ++	G.rat_fd = open("/dev/input/mice", O_RDWR);
  14.532 ++	write(G.rat_fd, "\xf3\xc8\xf3\x64\xf3\x50", 6);	/* for using mouse wheel */
  14.533 ++	read(G.rat_fd, line_buffer, 1);
  14.534 ++	term_setup();
  14.535 ++	atexit(cleanup);
  14.536 ++	bb_signals(BB_FATAL_SIGS, killed);
  14.537 ++
  14.538 ++	G.ufds[0].events =
  14.539 ++	G.ufds[1].events =
  14.540 ++	G.ufds[2].events = POLLIN;
  14.541 ++	vnc_refresh(0);
  14.542 ++	while (1) {
  14.543 ++		int status = poll(G.ufds, 3, 500);
  14.544 ++		if (status == -1 && errno != EINTR)
  14.545 ++			killed(1);
  14.546 ++		if (!status)
  14.547 ++			continue;
  14.548 ++		if (G.ufds[0].revents & POLLIN)
  14.549 ++			kbd_event();
  14.550 ++		if (G.ufds[1].revents & POLLIN) {
  14.551 ++			vnc_event();
  14.552 ++			pending = 0;
  14.553 ++		}
  14.554 ++		if (G.ufds[2].revents & POLLIN)
  14.555 ++			rat_event();
  14.556 ++		if (!pending++)
  14.557 ++			vnc_refresh(1);
  14.558 ++	}
  14.559 ++}
  14.560 +--- /dev/null
  14.561 ++++ busybox/util-linux/vnc.h
  14.562 +@@ -0,0 +1,124 @@
  14.563 ++#define VNC_CONN_FAILED		0
  14.564 ++#define VNC_CONN_NOAUTH		1
  14.565 ++#define VNC_CONN_AUTH		2
  14.566 ++
  14.567 ++#define VNC_AUTH_OK		0
  14.568 ++#define VNC_AUTH_FAILED		1
  14.569 ++#define VNC_AUTH_TOOMANY	2
  14.570 ++
  14.571 ++#define VNC_SERVER_FBUP		0
  14.572 ++#define VNC_SERVER_COLORMAP	1
  14.573 ++#define VNC_SERVER_BELL		2
  14.574 ++#define VNC_SERVER_CUTTEXT	3
  14.575 ++
  14.576 ++#define VNC_CLIENT_PIXFMT	0
  14.577 ++#define VNC_CLIENT_COLORMAP	1
  14.578 ++#define VNC_CLIENT_SETENC	2
  14.579 ++#define VNC_CLIENT_FBUP		3
  14.580 ++#define VNC_CLIENT_KEYEVENT	4
  14.581 ++#define VNC_CLIENT_RATEVENT	5
  14.582 ++#define VNC_CLIENT_CUTTEXT	6
  14.583 ++
  14.584 ++#define VNC_ENC_RAW		0
  14.585 ++#define VNC_ENC_COPYRECT	1
  14.586 ++#define VNC_ENC_RRE		2
  14.587 ++#define VNC_ENC_CORRE		4
  14.588 ++#define VNC_ENC_HEXTILE		5
  14.589 ++
  14.590 ++#define VNC_BUTTON1_MASK	0x01
  14.591 ++#define VNC_BUTTON2_MASK	0x02
  14.592 ++#define VNC_BUTTON3_MASK	0x04
  14.593 ++#define VNC_BUTTON4_MASK	0x10
  14.594 ++#define VNC_BUTTON5_MASK	0x08
  14.595 ++
  14.596 ++typedef unsigned char u8;
  14.597 ++typedef unsigned short u16;
  14.598 ++typedef unsigned int u32;
  14.599 ++
  14.600 ++struct vnc_pixelfmt {
  14.601 ++	u8 bpp;
  14.602 ++	u8 depth;
  14.603 ++	u8 bigendian;
  14.604 ++	u8 truecolor;
  14.605 ++	u16 rmax;
  14.606 ++	u16 gmax;
  14.607 ++	u16 bmax;
  14.608 ++	u8 rshl;
  14.609 ++	u8 gshl;
  14.610 ++	u8 bshl;
  14.611 ++
  14.612 ++	u8 pad1;
  14.613 ++	u16 pad2;
  14.614 ++};
  14.615 ++
  14.616 ++struct vnc_client_init {
  14.617 ++	u8 shared;
  14.618 ++};
  14.619 ++
  14.620 ++struct vnc_server_init {
  14.621 ++    u16 w;
  14.622 ++    u16 h;
  14.623 ++    struct vnc_pixelfmt fmt;
  14.624 ++    u32 len;
  14.625 ++    /* char name[len]; */
  14.626 ++};
  14.627 ++
  14.628 ++struct vnc_rect {
  14.629 ++	u16 x, y;
  14.630 ++	u16 w, h;
  14.631 ++	u32 enc;
  14.632 ++	/* rect bytes */
  14.633 ++};
  14.634 ++
  14.635 ++struct vnc_server_fbup {
  14.636 ++    u8 type;
  14.637 ++    u8 pad;
  14.638 ++    u16 n;
  14.639 ++    /* struct vnc_rect rects[n]; */
  14.640 ++};
  14.641 ++
  14.642 ++struct vnc_server_cuttext {
  14.643 ++	u8 type;
  14.644 ++	u8 pad1;
  14.645 ++	u16 pad2;
  14.646 ++	u32 len;
  14.647 ++	/* char text[length] */
  14.648 ++};
  14.649 ++
  14.650 ++struct vnc_server_colormap {
  14.651 ++	u8 type;
  14.652 ++	u8 pad;
  14.653 ++	u16 first;
  14.654 ++	u16 n;
  14.655 ++	/* u8 colors[n * 3 * 2]; */
  14.656 ++};
  14.657 ++
  14.658 ++struct vnc_client_pixelfmt {
  14.659 ++	u8 type;
  14.660 ++	u8 pad1;
  14.661 ++	u16 pad2;
  14.662 ++	struct vnc_pixelfmt format;
  14.663 ++};
  14.664 ++
  14.665 ++struct vnc_client_fbup {
  14.666 ++	u8 type;
  14.667 ++	u8 inc;
  14.668 ++	u16 x;
  14.669 ++	u16 y;
  14.670 ++	u16 w;
  14.671 ++	u16 h;
  14.672 ++};
  14.673 ++
  14.674 ++struct vnc_client_keyevent {
  14.675 ++	u8 type;
  14.676 ++	u8 down;
  14.677 ++	u16 pad;
  14.678 ++	u32 key;
  14.679 ++};
  14.680 ++
  14.681 ++struct vnc_client_ratevent {
  14.682 ++	u8 type;
  14.683 ++	u8 mask;
  14.684 ++	u16 x;
  14.685 ++	u16 y;
  14.686 ++};
    15.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    15.2 +++ b/busybox/stuff/patches/busybox-1.23-ftpd.u	Wed Nov 09 15:12:00 2022 +0000
    15.3 @@ -0,0 +1,63 @@
    15.4 +Keep anonynous default usage, need -a for authentication check
    15.5 +--- busybox-1.23.0/networking/ftpd.c
    15.6 ++++ busybox-1.23.0/networking/ftpd.c
    15.7 +@@ -13,7 +13,7 @@
    15.8 +  */
    15.9 + 
   15.10 + //usage:#define ftpd_trivial_usage
   15.11 +-//usage:       "[-wvS] [-t N] [-T N] [DIR]"
   15.12 ++//usage:       "[-wvSa] [-t N] [-T N] [DIR]"
   15.13 + //usage:#define ftpd_full_usage "\n\n"
   15.14 + //usage:       "Anonymous FTP server\n"
   15.15 + //usage:       "\n"
   15.16 +@@ -25,6 +25,7 @@
   15.17 + //usage:     "\n	-w	Allow upload"
   15.18 + //usage:     "\n	-v	Log errors to stderr. -vv: verbose log"
   15.19 + //usage:     "\n	-S	Log errors to syslog. -SS: verbose log"
   15.20 ++//usage:     "\n	-a	Authentication check"
   15.21 + //usage:     "\n	-t,-T	Idle and absolute timeouts"
   15.22 + //usage:     "\n	DIR	Change root to this directory"
   15.23 + 
   15.24 +@@ -1106,7 +1107,8 @@
   15.25 + #endif
   15.26 + 	OPT_v = (1 << ((!BB_MMU) * 3 + 0)),
   15.27 + 	OPT_S = (1 << ((!BB_MMU) * 3 + 1)),
   15.28 +-	OPT_w = (1 << ((!BB_MMU) * 3 + 2)) * ENABLE_FEATURE_FTP_WRITE,
   15.29 ++	OPT_a = (1 << ((!BB_MMU) * 3 + 2)),
   15.30 ++	OPT_w = (1 << ((!BB_MMU) * 3 + 3)) * ENABLE_FEATURE_FTP_WRITE,
   15.31 + };
   15.32 + 
   15.33 + int ftpd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
   15.34 +@@ -1127,9 +1129,9 @@
   15.35 + 	G.timeout = 2 * 60;
   15.36 + 	opt_complementary = "t+:T+:vv:SS";
   15.37 + #if BB_MMU
   15.38 +-	opts = getopt32(argv,    "vS" IF_FEATURE_FTP_WRITE("w") "t:T:", &G.timeout, &abs_timeout, &G.verbose, &verbose_S);
   15.39 ++	opts = getopt32(argv,    "vSa" IF_FEATURE_FTP_WRITE("w") "t:T:", &G.timeout, &abs_timeout, &G.verbose, &verbose_S);
   15.40 + #else
   15.41 +-	opts = getopt32(argv, "l1AvS" IF_FEATURE_FTP_WRITE("w") "t:T:", &G.timeout, &abs_timeout, &G.verbose, &verbose_S);
   15.42 ++	opts = getopt32(argv, "l1AvSa" IF_FEATURE_FTP_WRITE("w") "t:T:", &G.timeout, &abs_timeout, &G.verbose, &verbose_S);
   15.43 + 	if (opts & (OPT_l|OPT_1)) {
   15.44 + 		/* Our secret backdoor to ls */
   15.45 + /* TODO: pass --group-directories-first? would be nice, but ls doesn't do that yet */
   15.46 +@@ -1193,7 +1195,8 @@
   15.47 + 	signal(SIGALRM, timeout_handler);
   15.48 + 
   15.49 + #if ENABLE_FEATURE_FTP_AUTHENTICATION
   15.50 +-	{
   15.51 ++	if (opts & OPT_a) {
   15.52 ++	  {
   15.53 + 		struct passwd *pw = NULL;
   15.54 + 
   15.55 + 		while (1) {
   15.56 +@@ -1216,8 +1219,9 @@
   15.57 + 			}
   15.58 + 		}
   15.59 + 		change_identity(pw);
   15.60 ++	  }
   15.61 ++	  WRITE_OK(FTP_LOGINOK);
   15.62 + 	}
   15.63 +-	WRITE_OK(FTP_LOGINOK);
   15.64 + #endif
   15.65 + 
   15.66 + 	/* Do this after auth, else /etc/passwd is not accessible */
    16.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    16.2 +++ b/busybox/stuff/patches/busybox-1.23-losetup.u	Wed Nov 09 15:12:00 2022 +0000
    16.3 @@ -0,0 +1,27 @@
    16.4 +keep previous default behaviour and display cloop devices
    16.5 +--- busybox-1.23.0/util-linux/losetup.c
    16.6 ++++ busybox-1.23.0/util-linux/losetup.c
    16.7 +@@ -71,16 +71,20 @@
    16.8 + 
    16.9 + 	/* -a */
   16.10 +-	if (opt == OPT_a) {
   16.11 ++	if (opt == OPT_a || (!opt && !argv[0])) {
   16.12 +-		int n;
   16.13 ++		int i, n;
   16.14 ++		static char *fmt[3] = { LOOP_FORMAT, "/dev/cloop", "/dev/cloop%u" };
   16.15 ++		
   16.16 ++		for (i = 0; i < 3; i++)
   16.17 + 		for (n = 0; n < MAX_LOOP_NUM; n++) {
   16.18 + 			char *s;
   16.19 + 
   16.20 +-			sprintf(dev, LOOP_FORMAT, n);
   16.21 ++			sprintf(dev, fmt[i], n);
   16.22 + 			s = query_loop(dev);
   16.23 + 			if (s) {
   16.24 + 				printf("%s: %s\n", dev, s);
   16.25 + 				free(s);
   16.26 + 			}
   16.27 ++			if (i == 1) break; /* /dev/cloop */
   16.28 + 		}
   16.29 + 		return EXIT_SUCCESS;
   16.30 + 	}
    17.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    17.2 +++ b/busybox/stuff/patches/busybox-1.23-printable.u	Wed Nov 09 15:12:00 2022 +0000
    17.3 @@ -0,0 +1,24 @@
    17.4 +fix the bug of 'ls cannot display utf-8 filenames'
    17.5 +--- busybox-1.17.3/libbb/printable_string.c
    17.6 ++++ busybox-printable/libbb/printable_string.c
    17.7 +@@ -31,8 +31,8 @@
    17.8 + 		}
    17.9 + 		if (c < ' ')
   17.10 + 			break;
   17.11 +-		if (c >= 0x7f)
   17.12 +-			break;
   17.13 ++		/* if (c >= 0x7f) */
   17.14 ++			/* break; */
   17.15 + 		s++;
   17.16 + 	}
   17.17 + 
   17.18 +@@ -45,7 +45,8 @@
   17.19 + 			unsigned char c = *d;
   17.20 + 			if (c == '\0')
   17.21 + 				break;
   17.22 +-			if (c < ' ' || c >= 0x7f)
   17.23 ++			/* if (c < ' ' || c >= 0x7f) */
   17.24 ++			if (c < ' ')
   17.25 + 				*d = '?';
   17.26 + 			d++;
   17.27 + 		}
    18.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    18.2 +++ b/busybox/stuff/patches/busybox-1.23-ris.u	Wed Nov 09 15:12:00 2022 +0000
    18.3 @@ -0,0 +1,92 @@
    18.4 +Add support for the Windows Remote Installation Service
    18.5 +--- busybox-1.23.0/networking/Config.src
    18.6 ++++ busybox-1.23.0/networking/Config.src
    18.7 +@@ -827,6 +827,15 @@
    18.8 + comment "Common options for tftp/tftpd"
    18.9 + 	depends on TFTP || TFTPD
   18.10 + 
   18.11 ++config FEATURE_TFTPD_RIS
   18.12 ++	bool "Enable \"RIS\" support"
   18.13 ++	default y
   18.14 ++	depends on TFTPD
   18.15 ++	help
   18.16 ++	  Add support for the Windows Remote Installation Service. This allows
   18.17 ++	  a client to get files starting with \ without respecting case.
   18.18 ++	  Each \ will be replaced by a /.
   18.19 ++
   18.20 + config FEATURE_TFTP_GET
   18.21 + 	bool "Enable 'tftp get' and/or tftpd upload code"
   18.22 + 	default y
   18.23 +--- busybox-1.23.0/networking/tftp.c
   18.24 ++++ busybox-1.23.0/networking/tftp.c
   18.25 +@@ -673,6 +673,59 @@
   18.26 + #undef remote_file
   18.27 + }
   18.28 + 
   18.29 ++#if ENABLE_FEATURE_TFTPD_RIS
   18.30 ++#include <dirent.h>
   18.31 ++
   18.32 ++static int lookup_entry(const char *search, char *unixpath);
   18.33 ++static void unixfilename(char *filename);
   18.34 ++
   18.35 ++// lookup search and concat real filename to unixpath
   18.36 ++static int lookup_entry(const char *search, char *unixpath)
   18.37 ++{
   18.38 ++ 	int status = 0;
   18.39 ++	DIR *dirp = opendir(unixpath[0] ? unixpath : ".");
   18.40 ++ 
   18.41 ++ 	if (dirp != NULL) {
   18.42 ++		struct dirent *entry;
   18.43 ++
   18.44 ++		while ((entry = readdir(dirp))) {
   18.45 ++			if (!strcasecmp(entry->d_name, search)) {
   18.46 ++				if (unixpath[0]) strcat(unixpath, "/");
   18.47 ++				strcat(unixpath, entry->d_name);
   18.48 ++				status++;
   18.49 ++				break;
   18.50 ++			}
   18.51 ++		}
   18.52 ++		closedir(dirp);
   18.53 ++ 	}
   18.54 ++	return status;
   18.55 ++}
   18.56 ++
   18.57 ++// update filename with real file path found
   18.58 ++static void unixfilename(char *filename)
   18.59 ++{
   18.60 ++	char unixpath[PATH_MAX];
   18.61 ++	char *s = unixpath + 1;
   18.62 ++	char *check = filename + 1;
   18.63 ++	int len;
   18.64 ++
   18.65 ++	for (unixpath[0] = 0; *check; len++, s += len, check += len) {
   18.66 ++		char *seek = strchr(check, '\\');
   18.67 ++
   18.68 ++		if (!seek) { // basename of filename
   18.69 ++			if (lookup_entry(check, unixpath))
   18.70 ++				strcpy(filename, unixpath); // found
   18.71 ++			break;
   18.72 ++		}
   18.73 ++		len = seek - check;
   18.74 ++		memcpy(s, check, len);
   18.75 ++		s[len] = '\0';
   18.76 ++		if (!lookup_entry(s, unixpath))
   18.77 ++			break; // path mismatch
   18.78 ++	}
   18.79 ++}
   18.80 ++#endif
   18.81 ++
   18.82 + #if ENABLE_TFTP
   18.83 + 
   18.84 + int tftp_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
   18.85 +@@ -820,6 +873,10 @@
   18.86 + 	G.block_buf_tail[0] = '\0';
   18.87 + 
   18.88 + 	local_file = G.block_buf + 2;
   18.89 ++#if ENABLE_FEATURE_TFTPD_RIS
   18.90 ++	if (local_file[0] == '\\')
   18.91 ++		unixfilename(local_file);
   18.92 ++#endif
   18.93 + 	if (local_file[0] == '.' || strstr(local_file, "/.")) {
   18.94 + 		error_msg = "dot in file name";
   18.95 + 		goto err;
    19.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    19.2 +++ b/busybox/stuff/patches/busybox-1.23-shutdown.u	Wed Nov 09 15:12:00 2022 +0000
    19.3 @@ -0,0 +1,63 @@
    19.4 +--- busybox-1.23/init/halt.c
    19.5 ++++ busybox-1.23/init/halt.c
    19.6 +@@ -10,6 +10,7 @@
    19.7 + //applet:IF_HALT(APPLET(halt, BB_DIR_SBIN, BB_SUID_DROP))
    19.8 + //applet:IF_HALT(APPLET_ODDNAME(poweroff, halt, BB_DIR_SBIN, BB_SUID_DROP, poweroff))
    19.9 + //applet:IF_HALT(APPLET_ODDNAME(reboot, halt, BB_DIR_SBIN, BB_SUID_DROP, reboot))
   19.10 ++//applet:IF_HALT(APPLET_ODDNAME(shutdown, halt, BB_DIR_SBIN, BB_SUID_DROP, shutdown))
   19.11 + 
   19.12 + //kbuild:lib-$(CONFIG_HALT) += halt.o
   19.13 + 
   19.14 +@@ -65,6 +66,15 @@
   19.15 + //usage:     "\n	-d SEC	Delay interval"
   19.16 + //usage:     "\n	-n	Do not sync"
   19.17 + //usage:     "\n	-f	Force (don't go through init)"
   19.18 ++//usage:
   19.19 ++//usage:#define shutdown_trivial_usage
   19.20 ++//usage:       "[-rhHP]"
   19.21 ++//usage:#define shutdown_full_usage "\n\n"
   19.22 ++//usage:       "Bring the system down\n"
   19.23 ++//usage:     "\n	-r	Do reboot"
   19.24 ++//usage:     "\n	-h	Do poweroff"
   19.25 ++//usage:     "\n	-H	Do halt"
   19.26 ++//usage:     "\n	-P	Do poweroff"
   19.27 + 
   19.28 + #include "libbb.h"
   19.29 + #include "reboot.h"
   19.30 +@@ -98,6 +108,7 @@
   19.31 + int halt_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
   19.32 + int halt_main(int argc UNUSED_PARAM, char **argv)
   19.33 + {
   19.34 ++	enum { HALT=0, POWEROFF=1, REBOOT=2, SHUTDOWN=3 };
   19.35 + 	static const int magic[] = {
   19.36 + 		RB_HALT_SYSTEM,
   19.37 + 		RB_POWER_OFF,
   19.38 +@@ -109,9 +120,19 @@
   19.39 + 	int which, flags, rc;
   19.40 + 
   19.41 + 	/* Figure out which applet we're running */
   19.42 +-	for (which = 0; "hpr"[which] != applet_name[0]; which++)
   19.43 ++	for (which = 0; "hprs"[which] != applet_name[0]; which++)
   19.44 + 		continue;
   19.45 + 
   19.46 ++	if (which == SHUTDOWN) {
   19.47 ++		which = REBOOT;
   19.48 ++		switch (getopt32(argv, "rhPH")) {
   19.49 ++			case 2:
   19.50 ++			case 4: which = POWEROFF; break;
   19.51 ++			case 8: which = HALT;
   19.52 ++		}
   19.53 ++		flags = 0;
   19.54 ++	}
   19.55 ++	else {
   19.56 + 	/* Parse and handle arguments */
   19.57 + 	opt_complementary = "d+"; /* -d N */
   19.58 + 	/* We support -w even if !ENABLE_FEATURE_WTMP,
   19.59 +@@ -119,6 +140,7 @@
   19.60 + 	 * -i (shut down network interfaces) is ignored.
   19.61 + 	 */
   19.62 + 	flags = getopt32(argv, "d:nfwi", &delay);
   19.63 ++	}
   19.64 + 
   19.65 + 	sleep(delay);
   19.66 + 
    20.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    20.2 +++ b/busybox/stuff/patches/busybox-1.23-stat.u	Wed Nov 09 15:12:00 2022 +0000
    20.3 @@ -0,0 +1,74 @@
    20.4 +Add non standard stat -m support to display file block list
    20.5 +Useful to patch read-only filesystems such as ISO9660, for defragmentation
    20.6 +tools or boot loaders
    20.7 +--- busybox-1.23.0/coreutils/stat.c
    20.8 ++++ busybox-1.23.0/coreutils/stat.c
    20.9 +@@ -23,6 +23,7 @@
   20.10 + //usage:     "\n	-f	Display filesystem status"
   20.11 + //usage:     "\n	-L	Follow links"
   20.12 + //usage:     "\n	-t	Display info in terse form"
   20.13 ++//usage:     "\n	-m	Display block list"
   20.14 + //usage:	IF_SELINUX(
   20.15 + //usage:     "\n	-Z	Print security context"
   20.16 + //usage:	)
   20.17 +@@ -73,11 +74,13 @@
   20.18 + //usage:	)
   20.19 + 
   20.20 + #include "libbb.h"
   20.21 ++#include <linux/fs.h>
   20.22 + 
   20.23 + #define OPT_FILESYS     (1 << 0)
   20.24 + #define OPT_TERSE       (1 << 1)
   20.25 + #define OPT_DEREFERENCE (1 << 2)
   20.26 +-#define OPT_SELINUX     (1 << 3)
   20.27 ++#define OPT_MAP         (1 << 3)
   20.28 ++#define OPT_SELINUX     (1 << 4)
   20.29 + 
   20.30 + #if ENABLE_FEATURE_STAT_FORMAT
   20.31 + typedef bool (*statfunc_ptr)(const char *, const char *);
   20.32 +@@ -425,6 +428,26 @@
   20.33 + 
   20.34 + /* Stat the file system and print what we find.  */
   20.35 + #if !ENABLE_FEATURE_STAT_FORMAT
   20.36 ++#define do_mapfile(filename, format) do_mapfile(filename)
   20.37 ++#endif
   20.38 ++static bool do_mapfile(const char *filename, const char *format)
   20.39 ++{
   20.40 ++	int i = 0;
   20.41 ++	int fd = xopen(filename, O_RDONLY);
   20.42 ++
   20.43 ++#if ENABLE_FEATURE_STAT_FORMAT
   20.44 ++	(void) format;
   20.45 ++#endif
   20.46 ++	while (1) {
   20.47 ++		int blk = i++;
   20.48 ++		if (ioctl(fd,FIBMAP,&blk) < 0 || blk == 0) break;
   20.49 ++		printf("%u\n",blk);
   20.50 ++	}	
   20.51 ++	return 1;
   20.52 ++}
   20.53 ++
   20.54 ++/* Stat the file system and print what we find.  */
   20.55 ++#if !ENABLE_FEATURE_STAT_FORMAT
   20.56 + #define do_statfs(filename, format) do_statfs(filename)
   20.57 + #endif
   20.58 + static bool do_statfs(const char *filename, const char *format)
   20.59 +@@ -721,7 +744,7 @@
   20.60 + 	statfunc_ptr statfunc = do_stat;
   20.61 + 
   20.62 + 	opt_complementary = "-1"; /* min one arg */
   20.63 +-	opts = getopt32(argv, "ftL"
   20.64 ++	opts = getopt32(argv, "ftLm"
   20.65 + 		IF_SELINUX("Z")
   20.66 + 		IF_FEATURE_STAT_FORMAT("c:", &format)
   20.67 + 	);
   20.68 +@@ -732,6 +755,9 @@
   20.69 + 		selinux_or_die();
   20.70 + 	}
   20.71 + #endif
   20.72 ++ 	if (opts & OPT_MAP) { /* -m */
   20.73 ++ 		statfunc = do_mapfile;
   20.74 ++	}
   20.75 + 	ok = 1;
   20.76 + 	argv += optind;
   20.77 + 	for (i = 0; argv[i]; ++i)
    21.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    21.2 +++ b/busybox/stuff/patches/busybox-1.23-tar.u	Wed Nov 09 15:12:00 2022 +0000
    21.3 @@ -0,0 +1,18 @@
    21.4 +Accept and ignore --wildcards argument
    21.5 +--- busybox-1.23.0/archival/tar.c
    21.6 ++++ busybox-1.23.0/archival/tar.c
    21.7 +@@ -928,10 +928,12 @@
    21.8 + # if ENABLE_FEATURE_TAR_NOPRESERVE_TIME
    21.9 + 	"touch\0"               No_argument       "m"
   21.10 + # endif
   21.11 +-	"no-recursion\0"	No_argument       "\xfa"
   21.12 ++	"no-recursion\0"	No_argument       "\xf9"
   21.13 + # if ENABLE_FEATURE_TAR_TO_COMMAND
   21.14 +-	"to-command\0"		Required_argument "\xfb"
   21.15 ++	"to-command\0"		Required_argument "\xfa"
   21.16 + # endif
   21.17 ++	/* ignore --wildcards */
   21.18 ++	"wildcards\0"           No_argument       "\xfb"
   21.19 + 	/* use numeric uid/gid from tar header, not textual */
   21.20 + 	"numeric-owner\0"       No_argument       "\xfc"
   21.21 + 	/* do not restore mode */
    22.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    22.2 +++ b/busybox/stuff/patches/busybox-1.23-zmodules.u	Wed Nov 09 15:12:00 2022 +0000
    22.3 @@ -0,0 +1,26 @@
    22.4 +Add LZMA_DEFAULT_MAGIC support
    22.5 +--- busybox-1.23/archival/libarchive/open_transformer.c
    22.6 ++++ busybox-1.23/archival/libarchive/open_transformer.c
    22.7 +@@ -178,6 +178,22 @@
    22.8 + 	/* .gz and .bz2 both have 2-byte signature, and their
    22.9 + 	 * unpack_XXX_stream wants this header skipped. */
   22.10 + 	xread(fd, magic.b16, sizeof(magic.b16[0]));
   22.11 ++#if 1
   22.12 ++// SliTaz uses .gz suffix for lzma'd kernel modules
   22.13 ++#if BB_BIG_ENDIAN
   22.14 ++#define LZMA_DEFAULT_MAGIC 0x5d00
   22.15 ++#else
   22.16 ++#define LZMA_DEFAULT_MAGIC 0x5d
   22.17 ++#endif
   22.18 ++	if (ENABLE_FEATURE_SEAMLESS_LZMA
   22.19 ++	 && magic.b16[0] == LZMA_DEFAULT_MAGIC
   22.20 ++	) {
   22.21 ++		xlseek(fd, offset, SEEK_CUR);
   22.22 ++		xstate->xformer = unpack_lzma_stream;
   22.23 ++		USE_FOR_NOMMU(xstate->xformer_prog = "unlzma";)
   22.24 ++		goto found_magic;
   22.25 ++	}
   22.26 ++#endif
   22.27 + 	if (ENABLE_FEATURE_SEAMLESS_GZ
   22.28 + 	 && magic.b16[0] == GZIP_MAGIC
   22.29 + 	) {
    23.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    23.2 +++ b/busybox/stuff/syslog.conf	Wed Nov 09 15:12:00 2022 +0000
    23.3 @@ -0,0 +1,8 @@
    23.4 +# /etc/syslog.conf	Configuration file for syslogd.
    23.5 +
    23.6 +*.*;auth,authpriv.none	/var/log/messages
    23.7 +auth,authpriv.*		/var/log/auth.log
    23.8 +cron.*			/var/log/cron.log
    23.9 +daemon.*		/var/log/daemon.log
   23.10 +mail.*			/var/log/mail.log
   23.11 +lpr.*			/var/log/lpr.log
    24.1 --- a/busybox/stuff/udhcp.script	Mon Mar 04 18:42:23 2019 +0100
    24.2 +++ b/busybox/stuff/udhcp.script	Wed Nov 09 15:12:00 2022 +0000
    24.3 @@ -16,6 +16,9 @@
    24.4  
    24.5  logger "$0 interface=$interface ip=$ip broadcast=$broadcast subnet=$subnet router=$router domain=$domain dns=$dns $@"
    24.6  
    24.7 +skip=$(sed "/skipdhcpip=/!d;s/.*skipdhcpip=\([^ ]*\).*/\1/" </proc/cmdline)
    24.8 +[ -n "$skip" ] && case "$ip" in $skip*) exit 0;; esac
    24.9 +
   24.10  case "$1" in
   24.11  	deconfig)
   24.12  		netfs || /sbin/ifconfig $interface 0.0.0.0
    25.1 --- a/busybox/stuff/udhcpd.conf	Mon Mar 04 18:42:23 2019 +0100
    25.2 +++ b/busybox/stuff/udhcpd.conf	Wed Nov 09 15:12:00 2022 +0000
    25.3 @@ -2,67 +2,114 @@
    25.4  #
    25.5  
    25.6  # The start and end of the IP lease block
    25.7 -start           192.168.0.20    #default: 192.168.0.20
    25.8 -end             192.168.0.254   #default: 192.168.0.254
    25.9 +start		192.168.0.20	#default: 192.168.0.20
   25.10 +end		192.168.0.254	#default: 192.168.0.254
   25.11  
   25.12  # The interface that udhcpd will use
   25.13 -interface       eth0            #default: eth0
   25.14 +interface	eth0		#default: eth0
   25.15  
   25.16 -# The maximum number of leases (includes addressesd reserved
   25.17 -# by OFFER's, DECLINE's, and ARP conficts
   25.18 -#max_leases     254             #default: 254
   25.19 +# The maximum number of leases (includes addresses reserved
   25.20 +# by OFFER's, DECLINE's, and ARP conflicts). Will be corrected
   25.21 +# if it's bigger than IP lease block, but it ok to make it
   25.22 +# smaller than lease block.
   25.23 +#max_leases	254		#default: 254
   25.24  
   25.25 -# The amount of time that an IP will be reserved (leased) for if a
   25.26 -# DHCP decline message is received (seconds).
   25.27 -#decline_time   3600            #default: 3600 (1 hour)
   25.28 +# The amount of time that an IP will be reserved (leased to nobody)
   25.29 +# if a DHCP decline message is received (seconds)
   25.30 +#decline_time	3600		#default: 3600 (1 hour)
   25.31  
   25.32 -# The amount of time that an IP will be reserved (leased) for if an
   25.33 -# ARP conflct occurs. (seconds
   25.34 -#conflict_time  3600            #default: 3600 (1 hour)
   25.35 +# The amount of time that an IP will be reserved
   25.36 +# if an ARP conflict occurs (seconds)
   25.37 +#conflict_time	3600		#default: 3600 (1 hour)
   25.38  
   25.39 -# How long an offered address is reserved (leased) in seconds
   25.40 -#offer_time     60              #default: 60 (1 minute)
   25.41 +# How long an offered address is reserved (seconds)
   25.42 +#offer_time	60		#default: 60 (1 minute)
   25.43  
   25.44 -# If a lease to be given is below this value, the full lease time is
   25.45 -# instead used (seconds).
   25.46 -#min_lease      60              #defult: 60
   25.47 +# If client asks for lease below this value, it will be rounded up
   25.48 +# to this value (seconds)
   25.49 +#min_lease	60		#default: 60 (1 minute)
   25.50  
   25.51  # The location of the leases file
   25.52 -lease_file     /var/lib/udhcpd.leases     #default: /var/lib/misc/udhcpd.leases
   25.53 +lease_file	/var/lib/udhcpd.leases	#default: /var/lib/misc/udhcpd.leases
   25.54  
   25.55  # The location of the pid file
   25.56 -pidfile        /var/run/udhcpd.pid     #default: /var/run/udhcpd.pid
   25.57 +pidfile	/var/run/udhcpd.pid	#default: /var/run/udhcpd.pid
   25.58  
   25.59 -# The remainer of options are DHCP options and can be specifed with the
   25.60 +# The time period at which udhcpd will write out leases file.
   25.61 +# If this is 0, udhcpd will never automatically write leases file.
   25.62 +# Specified in seconds.
   25.63 +#auto_time	7200
   25.64 +
   25.65 +# Every time udhcpd writes a leases file, the below script will be called
   25.66 +#notify_file			# default: no script
   25.67 +#notify_file	dumpleases	# useful for debugging
   25.68 +
   25.69 +# The following are bootp specific options
   25.70 +# next server to use in bootstrap
   25.71 +#siaddr		192.168.0.22	# default: 0.0.0.0 (none)
   25.72 +# tftp server name
   25.73 +#sname		zorak		# default: none
   25.74 +# tftp file to download (e.g. kernel image)
   25.75 +#boot_file	/var/nfs_root	# default: none
   25.76 +
   25.77 +# Static leases map
   25.78 +#static_lease 00:60:08:11:CE:4E 192.168.0.54
   25.79 +#static_lease 00:60:08:11:CE:3E 192.168.0.44
   25.80 +
   25.81 +# The remainder of options are DHCP options and can be specified with the
   25.82  # keyword 'opt' or 'option'. If an option can take multiple items, such
   25.83  # as the dns option, they can be listed on the same line, or multiple
   25.84 -# lines. The only option with a default is 'lease'.
   25.85 +# lines.
   25.86 +# Examples:
   25.87 +#opt	dns	192.168.10.2 192.168.10.10
   25.88 +option	subnet	255.255.255.0
   25.89 +#opt	router	192.168.10.2
   25.90 +#opt	wins	192.168.10.10
   25.91 +#option	dns	129.219.13.81	# appended to above DNS servers for a total of 3
   25.92 +#option	domain	local
   25.93 +option	lease	864000		# default: 10 days
   25.94 +#option	msstaticroutes	10.0.0.0/8 10.127.0.1		# single static route
   25.95 +#option	staticroutes	10.0.0.0/8 10.127.0.1, 10.11.12.0/24 10.11.12.1
   25.96 +# Arbitrary option in hex form:
   25.97 +#option	0x08	01020304	# option 8: "cookie server IP addr: 1.2.3.4"
   25.98  
   25.99 -#Examples
  25.100 -#opt     dns     192.168.10.2 192.168.10.10
  25.101 -option  subnet  255.255.255.0
  25.102 -#option  dns     129.219.13.81   # appened to above DNS servers for a total of 3
  25.103 -option  lease   864000          # 10 days of seconds
  25.104 -
  25.105 -# Currently supported options
  25.106 -#opt subnet
  25.107 -#opt timezone
  25.108 -#opt router
  25.109 -#opt timesrv
  25.110 -#opt namesrv
  25.111 -#opt dns
  25.112 -#opt logsrv
  25.113 -#opt cookiesrv
  25.114 -#opt lprsrv
  25.115 -#opt bootsize
  25.116 -#opt domain
  25.117 -#opt swapsrv
  25.118 -#opt rootpath
  25.119 -#opt ipttl
  25.120 -#opt mtu
  25.121 -#opt broadcast
  25.122 -#opt wins
  25.123 -#opt lease
  25.124 -#opt ntpsrv
  25.125 -#opt tftp
  25.126 -#opt bootfile
  25.127 +# Currently supported options (for more info, see options.c):
  25.128 +#opt lease      NUM
  25.129 +#opt subnet     IP
  25.130 +#opt broadcast  IP
  25.131 +#opt router     IP_LIST
  25.132 +#opt ipttl      NUM
  25.133 +#opt mtu        NUM
  25.134 +#opt hostname   STRING		# client's hostname
  25.135 +#opt domain     STRING		# client's domain suffix
  25.136 +#opt search     STRING_LIST	# search domains
  25.137 +#opt nisdomain  STRING
  25.138 +#opt timezone   NUM		# (localtime - UTC_time) in seconds. signed
  25.139 +#opt tftp       STRING		# tftp server name
  25.140 +#opt bootfile   STRING		# tftp file to download (e.g. kernel image)
  25.141 +#opt bootsize   NUM		# size of that file
  25.142 +#opt rootpath   STRING		# (NFS) path to mount as root fs
  25.143 +#opt wpad       STRING
  25.144 +#opt serverid   IP		# default: server's IP
  25.145 +#opt message    STRING		# error message (udhcpd sends it on success too)
  25.146 +#opt vlanid     NUM		# 802.1P VLAN ID
  25.147 +#opt vlanpriority NUM		# 802.1Q VLAN priority
  25.148 +# Options specifying server(s)
  25.149 +#opt dns        IP_LIST
  25.150 +#opt wins       IP_LIST
  25.151 +#opt nissrv     IP_LIST
  25.152 +#opt ntpsrv     IP_LIST
  25.153 +#opt lprsrv     IP_LIST
  25.154 +#opt swapsrv    IP
  25.155 +# Options specifying routes
  25.156 +#opt routes     IP_PAIR_LIST
  25.157 +#opt staticroutes   STATIC_ROUTES # RFC 3442 classless static route option
  25.158 +#opt msstaticroutes STATIC_ROUTES # same, using MS option number
  25.159 +# Obsolete options, no longer supported
  25.160 +#opt logsrv     IP_LIST	# 704/UDP log server (not syslog!)
  25.161 +#opt namesrv    IP_LIST	# IEN 116 name server, obsolete (August 1979!!!)
  25.162 +#opt cookiesrv  IP_LIST	# RFC 865 "quote of the day" server, rarely (never?) used
  25.163 +#opt timesrv    IP_LIST	# RFC 868 time server, rarely (never?) used
  25.164 +# TODO: in development
  25.165 +#opt userclass  STRING		# RFC 3004. set of LASCII strings. "I am a printer" etc
  25.166 +#opt sipserv    STRING LIST	# RFC 3361. flag byte, then: 0: domain names, 1: IP addrs
    26.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    26.2 +++ b/busybox/stuff/www/httpd/404.html	Wed Nov 09 15:12:00 2022 +0000
    26.3 @@ -0,0 +1,32 @@
    26.4 +<!DOCTYPE html>
    26.5 +<html>
    26.6 +<head>
    26.7 +	<meta charset="utf-8" />
    26.8 +	<title>404 Not Found</title>
    26.9 +	<link rel="stylesheet" type="text/css" href="/style.css" />
   26.10 +</head>
   26.11 +<body>
   26.12 +
   26.13 +<header>
   26.14 +	<h1>SliTaz Web Server</h1>
   26.15 +</header>
   26.16 +
   26.17 +<!-- Content -->
   26.18 +<div id="content">
   26.19 +<h2>Not Found</h2>
   26.20 +
   26.21 +<p>The requested URL <b id="uri"></b> was not found on this server.</p>
   26.22 +
   26.23 +<!-- End content -->
   26.24 +</div>
   26.25 +
   26.26 +<script type="text/javascript">
   26.27 +document.getElementById('uri').innerText = window.location.pathname
   26.28 +</script>
   26.29 +
   26.30 +<footer>
   26.31 +Copyright &copy; 2015 <a href="http://www.slitaz.org/">SliTaz GNU/Linux</a>
   26.32 +</footer>
   26.33 +
   26.34 +</body>
   26.35 +</html>
    27.1 --- a/bzip2-dev/receipt	Mon Mar 04 18:42:23 2019 +0100
    27.2 +++ b/bzip2-dev/receipt	Wed Nov 09 15:12:00 2022 +0000
    27.3 @@ -1,7 +1,7 @@
    27.4  # SliTaz package receipt.
    27.5  
    27.6  PACKAGE="bzip2-dev"
    27.7 -VERSION="1.0.6"
    27.8 +VERSION="1.0.8"
    27.9  CATEGORY="development"
   27.10  SHORT_DESC="High-quality data compressor dev files."
   27.11  MAINTAINER="pankso@slitaz.org"
    28.1 --- a/bzip2/receipt	Mon Mar 04 18:42:23 2019 +0100
    28.2 +++ b/bzip2/receipt	Wed Nov 09 15:12:00 2022 +0000
    28.3 @@ -1,13 +1,13 @@
    28.4  # SliTaz package receipt.
    28.5  
    28.6  PACKAGE="bzip2"
    28.7 -VERSION="1.0.6"
    28.8 +VERSION="1.0.8"
    28.9  CATEGORY="utilities"
   28.10  SHORT_DESC="High-quality data compressor."
   28.11  MAINTAINER="pankso@slitaz.org"
   28.12  TARBALL="$PACKAGE-$VERSION.tar.gz"
   28.13  WEB_SITE="http://www.bzip.org/"
   28.14 -WGET_URL="http://www.bzip.org/$VERSION/$TARBALL"
   28.15 +WGET_URL="http://sourceware.org/pub//$PACKAGE/$TARBALL"
   28.16  DEPENDS="bzlib"
   28.17  BUILD_DEPENDS="gcc"
   28.18  TAGS="compression archive"
    29.1 --- a/bzlib/receipt	Mon Mar 04 18:42:23 2019 +0100
    29.2 +++ b/bzlib/receipt	Wed Nov 09 15:12:00 2022 +0000
    29.3 @@ -1,7 +1,7 @@
    29.4  # SliTaz package receipt.
    29.5  
    29.6  PACKAGE="bzlib"
    29.7 -VERSION="1.0.6"
    29.8 +VERSION="1.0.8"
    29.9  CATEGORY="utilities"
   29.10  SHORT_DESC="High-quality data compressor libraries."
   29.11  DEPENDS="glibc-base"
    30.1 --- a/gcc-lib-base/receipt	Mon Mar 04 18:42:23 2019 +0100
    30.2 +++ b/gcc-lib-base/receipt	Wed Nov 09 15:12:00 2022 +0000
    30.3 @@ -1,7 +1,7 @@
    30.4  # SliTaz package receipt.
    30.5  
    30.6  PACKAGE="gcc-lib-base"
    30.7 -VERSION="4.5.2"
    30.8 +VERSION="4.9.2"
    30.9  CATEGORY="development"
   30.10  SHORT_DESC="GCC base libraries, libgcc_s and libstdc++."
   30.11  WEB_SITE="http://gcc.gnu.org/"
    31.1 --- a/gcc/receipt	Mon Mar 04 18:42:23 2019 +0100
    31.2 +++ b/gcc/receipt	Wed Nov 09 15:12:00 2022 +0000
    31.3 @@ -1,7 +1,7 @@
    31.4  # SliTaz package receipt.
    31.5  
    31.6  PACKAGE="gcc"
    31.7 -VERSION="4.5.2"
    31.8 +VERSION="4.9.2"
    31.9  CATEGORY="development"
   31.10  SHORT_DESC="The the GNU Compiler Collection."
   31.11  MAINTAINER="pankso@slitaz.org"
   31.12 @@ -119,6 +119,10 @@
   31.13  {
   31.14  	cd $src
   31.15  
   31.16 +	# Patch for compile with kernel 2.6 branch (thanks TimeSys)
   31.17 +	# see http://repository.timesys.com/buildsources/
   31.18 +	patch -Np1 < $stuff/gcc-$VERSION-EVIOCGPROP_fix-1.patch
   31.19 +	patch -Np1 < $stuff/gcc-$VERSION-libsanitizer_fix-1.patch
   31.20  
   31.21  	# SliTaz is a Busybox based OS, why we so small and fast. Using gawk by
   31.22  	# default to build package will not ensure package work with Busybox awk
    32.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    32.2 +++ b/gcc/stuff/gcc-4.9.2-EVIOCGPROP_fix-1.patch	Wed Nov 09 15:12:00 2022 +0000
    32.3 @@ -0,0 +1,22 @@
    32.4 +Author: Jaret Cantu <jaret.cantu@timesys.com>
    32.5 +Date:   Thu Nov 20 13:10:47 EST 2014
    32.6 +
    32.7 +    Check for the existence of EVIOCGPROP()
    32.8 +
    32.9 +    The EV_VERSION in 2.6.37 falls within the check, but EVIOCGPROP was not
   32.10 +    introduced until 2.6.38.
   32.11 +
   32.12 +--- gcc-4.9.2/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc.orig	2014-11-20 13:07:38.462155257 -0500
   32.13 ++++ gcc-4.9.2/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc	2014-11-20 13:08:29.098945193 -0500
   32.14 +@@ -672,7 +672,11 @@ namespace __sanitizer {
   32.15 +   unsigned IOCTL_EQL_SETSLAVECFG = EQL_SETSLAVECFG;
   32.16 + #if EV_VERSION > (0x010000)
   32.17 +   unsigned IOCTL_EVIOCGKEYCODE_V2 = EVIOCGKEYCODE_V2;
   32.18 ++#ifdef EVIOCGPROP
   32.19 +   unsigned IOCTL_EVIOCGPROP = EVIOCGPROP(0);
   32.20 ++#else
   32.21 ++  unsigned IOCTL_EVIOCGPROP = IOCTL_NOT_PRESENT;
   32.22 ++#endif
   32.23 +   unsigned IOCTL_EVIOCSKEYCODE_V2 = EVIOCSKEYCODE_V2;
   32.24 + #else
   32.25 +   unsigned IOCTL_EVIOCGKEYCODE_V2 = IOCTL_NOT_PRESENT;
    33.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    33.2 +++ b/gcc/stuff/gcc-4.9.2-libsanitizer_fix-1.patch	Wed Nov 09 15:12:00 2022 +0000
    33.3 @@ -0,0 +1,86 @@
    33.4 +2013-12-10  Jakub Jelinek  <jakub@redhat.com>
    33.5 +
    33.6 +	* sanitizer_common/Makefile.am (AM_CPPFLAGS): Add
    33.7 +	-isystem $(top_srcdir)/include/system.
    33.8 +	* sanitizer_common/Makefile.in: Regenerated.
    33.9 +	* include/system/linux/aio_abi.h: New header.
   33.10 +	* include/system/linux/mroute.h: New header.
   33.11 +	* include/system/linux/mroute6.h: New header.
   33.12 +	* include/system/linux/perf_event.h: New header.
   33.13 +	* include/system/linux/types.h: New header.
   33.14 +
   33.15 +--- a/libsanitizer/sanitizer_common/Makefile.am	2013-12-10 09:55:19.000000000 +0100
   33.16 ++++ b/libsanitizer/sanitizer_common/Makefile.am	2013-12-10 09:56:36.748472017 +0100
   33.17 +@@ -1,5 +1,5 @@
   33.18 +-AM_CPPFLAGS = -I $(top_srcdir)/include
   33.19 +- 
   33.20 ++AM_CPPFLAGS = -I $(top_srcdir)/include -isystem $(top_srcdir)/include/system
   33.21 ++
   33.22 + # May be used by toolexeclibdir.
   33.23 + gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
   33.24 + 
   33.25 +--- a/libsanitizer/include/system/linux/mroute.h 2013-12-10 09:56:03.888640325 +0100
   33.26 ++++ b/libsanitizer/include/system/linux/mroute.h 2013-12-10 09:56:03.888640325 +0100
   33.27 +@@ -0,0 +1,8 @@
   33.28 ++#include <linux/version.h>
   33.29 ++/* <linux/mroute.h> before 2.6.26 included <linux/in.h>
   33.30 ++   which clashes with userspace headers.  */
   33.31 ++#if LINUX_VERSION_CODE < 132634
   33.32 ++#define _LINUX_IN_H
   33.33 ++#include <linux/types.h>
   33.34 ++#endif
   33.35 ++#include_next <linux/mroute.h>
   33.36 +--- a/libsanitizer/include/system/linux/aio_abi.h 2013-12-10 09:56:03.887640312 +0100
   33.37 ++++ b/libsanitizer/include/system/linux/aio_abi.h 2013-12-10 09:56:03.887640312 +0100
   33.38 +@@ -0,0 +1,7 @@
   33.39 ++#include <linux/version.h>
   33.40 ++#include_next <linux/aio_abi.h>
   33.41 ++/* IOCB_CMD_PREADV/PWRITEV has been added in 2.6.19 */
   33.42 ++#if LINUX_VERSION_CODE < 132627
   33.43 ++#define IOCB_CMD_PREADV 7
   33.44 ++#define IOCB_CMD_PWRITEV 8
   33.45 ++#endif
   33.46 +--- a/libsanitizer/include/system/linux/types.h	2013-12-10 09:56:03.888640325 +0100
   33.47 ++++ b/libsanitizer/include/system/linux/types.h	2013-12-10 09:56:03.888640325 +0100
   33.48 +@@ -0,0 +1,12 @@
   33.49 ++#ifndef LINUX_TYPES_WRAPPER_H
   33.50 ++#define LINUX_TYPES_WRAPPER_H
   33.51 ++
   33.52 ++/* Before
   33.53 ++   https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/include/linux/types.h?id=6c7c6afbb8c0e60d32a563cae7c6889211e9d9d8
   33.54 ++   linux/types.h conflicted with sys/ustat.h.  Work around it.  */
   33.55 ++
   33.56 ++#define ustat __asan_bad_ustat
   33.57 ++#include_next <linux/types.h>
   33.58 ++#undef ustat
   33.59 ++
   33.60 ++#endif
   33.61 +--- a/libsanitizer/include/system/linux/perf_event.h	2013-12-10 09:56:03.888640325 +0100
   33.62 ++++ b/libsanitizer/include/system/linux/perf_event.h	2013-12-10 09:56:03.888640325 +0100
   33.63 +@@ -0,0 +1,7 @@
   33.64 ++#include <linux/version.h>
   33.65 ++/* <linux/perf_event.h> has been added in 2.6.32 */
   33.66 ++#if LINUX_VERSION_CODE >= 132640
   33.67 ++#include_next <linux/perf_event.h>
   33.68 ++#else
   33.69 ++#define perf_event_attr __sanitizer_perf_event_attr
   33.70 ++#endif
   33.71 +--- a/libsanitizer/include/system/linux/mroute6.h	2013-12-10 09:56:03.888640325 +0100
   33.72 ++++ b/libsanitizer/include/system/linux/mroute6.h	2013-12-10 09:56:03.888640325 +0100
   33.73 +@@ -0,0 +1,5 @@
   33.74 ++#include <linux/version.h>
   33.75 ++/* <linux/mroute6.h> has been added in 2.6.26 */
   33.76 ++#if LINUX_VERSION_CODE >= 132634
   33.77 ++#include_next <linux/mroute6.h>
   33.78 ++#endif
   33.79 +--- a/libsanitizer/sanitizer_common/Makefile.in	2013-12-10 09:55:19.000000000 +0100
   33.80 ++++ b/libsanitizer/sanitizer_common/Makefile.in	2013-12-10 09:57:05.079324403 +0100
   33.81 +@@ -235,7 +235,7 @@ toolexeclibdir = @toolexeclibdir@
   33.82 + top_build_prefix = @top_build_prefix@
   33.83 + top_builddir = @top_builddir@
   33.84 + top_srcdir = @top_srcdir@
   33.85 +-AM_CPPFLAGS = -I $(top_srcdir)/include
   33.86 ++AM_CPPFLAGS = -I $(top_srcdir)/include -isystem $(top_srcdir)/include/system
   33.87 + 
   33.88 + # May be used by toolexeclibdir.
   33.89 + gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
    34.1 --- a/gdbm-dev/receipt	Mon Mar 04 18:42:23 2019 +0100
    34.2 +++ b/gdbm-dev/receipt	Wed Nov 09 15:12:00 2022 +0000
    34.3 @@ -1,7 +1,7 @@
    34.4  # SliTaz package receipt.
    34.5  
    34.6  PACKAGE="gdbm-dev"
    34.7 -VERSION="1.10"
    34.8 +VERSION="1.19"
    34.9  CATEGORY="development"
   34.10  SHORT_DESC="GNU database indexing library development files."
   34.11  MAINTAINER="pascal.bellard@slitaz.org"
    35.1 --- a/gdbm/receipt	Mon Mar 04 18:42:23 2019 +0100
    35.2 +++ b/gdbm/receipt	Wed Nov 09 15:12:00 2022 +0000
    35.3 @@ -1,7 +1,7 @@
    35.4  # SliTaz package receipt.
    35.5  
    35.6  PACKAGE="gdbm"
    35.7 -VERSION="1.10"
    35.8 +VERSION="1.19"
    35.9  CATEGORY="misc"
   35.10  SHORT_DESC="GNU database indexing library."
   35.11  MAINTAINER="pascal.bellard@slitaz.org"
   35.12 @@ -9,8 +9,8 @@
   35.13  WEB_SITE="http://www.gnu.org/software/gdbm"
   35.14  WGET_URL="$GNU_MIRROR/$PACKAGE/$TARBALL"
   35.15  
   35.16 -DEPENDS="glibc-base"
   35.17 -BUILD_DEPENDS="gcc"
   35.18 +DEPENDS=""
   35.19 +BUILD_DEPENDS="readline-dev"
   35.20  
   35.21  # Rules to configure and make the package.
   35.22  compile_rules()
    36.1 --- a/gettext-base/receipt	Mon Mar 04 18:42:23 2019 +0100
    36.2 +++ b/gettext-base/receipt	Wed Nov 09 15:12:00 2022 +0000
    36.3 @@ -1,7 +1,7 @@
    36.4  # SliTaz package receipt.
    36.5  
    36.6  PACKAGE="gettext-base"
    36.7 -VERSION="0.18.1.1"
    36.8 +VERSION="0.18.2"
    36.9  CATEGORY="base-system"
   36.10  SHORT_DESC="Base tools from the GNU Translation Project."
   36.11  MAINTAINER="pankso@slitaz.org"
    37.1 --- a/gettext/receipt	Mon Mar 04 18:42:23 2019 +0100
    37.2 +++ b/gettext/receipt	Wed Nov 09 15:12:00 2022 +0000
    37.3 @@ -1,7 +1,7 @@
    37.4  # SliTaz package receipt.
    37.5  
    37.6  PACKAGE="gettext"
    37.7 -VERSION="0.18.1.1"
    37.8 +VERSION="0.18.2"
    37.9  CATEGORY="development"
   37.10  SHORT_DESC="Utilities for the GNU Translation Project."
   37.11  MAINTAINER="pankso@slitaz.org"
    38.1 --- a/gfortran/receipt	Mon Mar 04 18:42:23 2019 +0100
    38.2 +++ b/gfortran/receipt	Wed Nov 09 15:12:00 2022 +0000
    38.3 @@ -1,7 +1,7 @@
    38.4  # SliTaz package receipt.
    38.5  
    38.6  PACKAGE="gfortran"
    38.7 -VERSION="4.5.2"
    38.8 +VERSION="4.9.2"
    38.9  CATEGORY="development"
   38.10  SHORT_DESC="GCC fortran extension."
   38.11  WEB_SITE="http://gcc.gnu.org/"
    39.1 --- a/glibc-base/receipt	Mon Mar 04 18:42:23 2019 +0100
    39.2 +++ b/glibc-base/receipt	Wed Nov 09 15:12:00 2022 +0000
    39.3 @@ -1,7 +1,7 @@
    39.4  # SliTaz package receipt.
    39.5  
    39.6  PACKAGE="glibc-base"
    39.7 -VERSION="2.13"
    39.8 +VERSION="2.19"
    39.9  CATEGORY="base-system"
   39.10  SHORT_DESC="GNU libc minimal libraries and UTF-8 support for SliTaz."
   39.11  WEB_SITE="http://www.gnu.org/software/libc/"
    40.1 --- a/glibc-base/stuff/wanted-files.list	Mon Mar 04 18:42:23 2019 +0100
    40.2 +++ b/glibc-base/stuff/wanted-files.list	Wed Nov 09 15:12:00 2022 +0000
    40.3 @@ -1,18 +1,18 @@
    40.4 -/lib/libutil-2.13.so
    40.5 -/lib/libnss_dns-2.13.so
    40.6 -/lib/libnsl-2.13.so
    40.7 -/lib/libanl-2.13.so
    40.8 -/lib/libm-2.13.so
    40.9 -/lib/libpthread-2.13.so
   40.10 +/lib/libutil-2.19.so
   40.11 +/lib/libnss_dns-2.19.so
   40.12 +/lib/libnsl-2.19.so
   40.13 +/lib/libanl-2.19.so
   40.14 +/lib/libm-2.19.so
   40.15 +/lib/libpthread-2.19.so
   40.16  /lib/libthread_db-1.0.so
   40.17 -/lib/libnss_compat-2.13.so
   40.18 -/lib/libc-2.13.so
   40.19 -/lib/librt-2.13.so
   40.20 -/lib/libcrypt-2.13.so
   40.21 -/lib/ld-2.13.so
   40.22 -/lib/libresolv-2.13.so
   40.23 -/lib/libnss_files-2.13.so
   40.24 -/lib/libdl-2.13.so
   40.25 +/lib/libnss_compat-2.19.so
   40.26 +/lib/libc-2.19.so
   40.27 +/lib/librt-2.19.so
   40.28 +/lib/libcrypt-2.19.so
   40.29 +/lib/ld-2.19.so
   40.30 +/lib/libresolv-2.19.so
   40.31 +/lib/libnss_files-2.19.so
   40.32 +/lib/libdl-2.19.so
   40.33  
   40.34  /usr/lib/gconv/UNICODE.so
   40.35  /usr/lib/gconv/gconv-modules
   40.36 @@ -41,19 +41,6 @@
   40.37  /usr/share/i18n/locales/translit_small
   40.38  /usr/share/i18n/locales/translit_wide
   40.39  
   40.40 -/usr/share/zoneinfo/Europe/Madrid
   40.41 -/usr/share/zoneinfo/Europe/Moscow
   40.42 -/usr/share/zoneinfo/Europe/London
   40.43 -/usr/share/zoneinfo/Europe/Zurich
   40.44 -/usr/share/zoneinfo/Europe/Paris
   40.45 -/usr/share/zoneinfo/UTC
   40.46 -/usr/share/zoneinfo/CET
   40.47 -/usr/share/zoneinfo/America/Montreal
   40.48 -/usr/share/zoneinfo/America/New_York
   40.49 -/usr/share/zoneinfo/America/Los_Angeles
   40.50 -/usr/share/zoneinfo/America/Sao_Paulo
   40.51 -/usr/share/zoneinfo/America/Mexico_City
   40.52 -
   40.53  /etc/rpc
   40.54  /etc/ld.so.conf
   40.55  /etc/ld.so.cache
    41.1 --- a/glibc-dev/receipt	Mon Mar 04 18:42:23 2019 +0100
    41.2 +++ b/glibc-dev/receipt	Wed Nov 09 15:12:00 2022 +0000
    41.3 @@ -1,7 +1,7 @@
    41.4  # SliTaz package receipt.
    41.5  
    41.6  PACKAGE="glibc-dev"
    41.7 -VERSION="2.13"
    41.8 +VERSION="2.19"
    41.9  CATEGORY="development"
   41.10  SHORT_DESC="The GNU C libraries devel files (Part of SliTaz toolchain)."
   41.11  MAINTAINER="pankso@slitaz.org"
    42.1 --- a/glibc-extra-samba/receipt	Mon Mar 04 18:42:23 2019 +0100
    42.2 +++ b/glibc-extra-samba/receipt	Wed Nov 09 15:12:00 2022 +0000
    42.3 @@ -1,7 +1,7 @@
    42.4  # SliTaz package receipt.
    42.5  
    42.6  PACKAGE="glibc-extra-samba"
    42.7 -VERSION="2.13"
    42.8 +VERSION="2.19"
    42.9  CATEGORY="base-system"
   42.10  SHORT_DESC="GNU libc extra gconv modules for samba."
   42.11  WEB_SITE="http://gcc.gnu.org/"
    43.1 --- a/glibc-locale/receipt	Mon Mar 04 18:42:23 2019 +0100
    43.2 +++ b/glibc-locale/receipt	Wed Nov 09 15:12:00 2022 +0000
    43.3 @@ -1,7 +1,7 @@
    43.4  # SliTaz package receipt.
    43.5  
    43.6  PACKAGE="glibc-locale"
    43.7 -VERSION="2.13"
    43.8 +VERSION="2.19"
    43.9  CATEGORY="system-tools"
   43.10  SHORT_DESC="The GNU C libraries locale files and utilities (see also locale-*)."
   43.11  MAINTAINER="pankso@slitaz.org"
   43.12 @@ -19,7 +19,7 @@
   43.13  	cp -a $_pkg/usr/lib/gconv $fs/usr/lib
   43.14  	cp -a $_pkg/usr/share/locale $fs/usr/share
   43.15  	cp -a $_pkg/usr/share/i18n $fs/usr/share
   43.16 -	cp -a $_pkg/usr/share/zoneinfo $fs/usr/share
   43.17 +	#cp -a $_pkg/usr/share/zoneinfo $fs/usr/share
   43.18  
   43.19  	# Utilities and tools
   43.20  	cp -a $_pkg/usr/bin/iconv $fs/usr/bin
    44.1 --- a/glibc/receipt	Mon Mar 04 18:42:23 2019 +0100
    44.2 +++ b/glibc/receipt	Wed Nov 09 15:12:00 2022 +0000
    44.3 @@ -1,7 +1,7 @@
    44.4  # SliTaz package receipt.
    44.5  
    44.6  PACKAGE="glibc"
    44.7 -VERSION="2.13"
    44.8 +VERSION="2.19"
    44.9  CATEGORY="meta"
   44.10  SHORT_DESC="The GNU C libraries. This package is used to compile the libc."
   44.11  MAINTAINER="pankso@slitaz.org"
   44.12 @@ -10,7 +10,7 @@
   44.13  WGET_URL="$GNU_MIRROR/$PACKAGE/$TARBALL"
   44.14  
   44.15  DEPENDS="glibc-base glibc-locale glibc-dev"
   44.16 -BUILD_DEPENDS="linux-api-headers"
   44.17 +BUILD_DEPENDS="linux-api-headers autoconf bash advancecomp"
   44.18  
   44.19  # Genpkg order for tazwok.
   44.20  COOK_OPT="genpkg=glibc-base:glibc-extra-samba:glib-locale:glibc-dev"
   44.21 @@ -19,11 +19,6 @@
   44.22  cook_tmp_toolchain()
   44.23  {
   44.24  	cd $src
   44.25 -	
   44.26 -	# Fix a bug that prevents Glibc from building with GCC-4.5.2:
   44.27 -	patch -Np1 -i $stuff/glibc-2.13-gcc_fix-1.patch
   44.28 -	
   44.29 -	patch -Np1 -i $stuff/glibc-2.13-CVE-2015-0235.patch
   44.30  
   44.31  	# Build in a separate directory.
   44.32  	mkdir ../glibc-build && cd ../glibc-build
   44.33 @@ -68,19 +63,22 @@
   44.34  		[ -d "/var/lib/tazpkg/installed/gawk" ] || tazpkg get-install gawk
   44.35  	fi
   44.36  
   44.37 -	# Following patches and sed fixes comes from LFS development book:
   44.38 -	# http://www.linuxfromscratch.org/lfs/view/development/chapter06/glibc.html
   44.39 -	DL=$(readelf -l /bin/sh | sed -n 's@.*interpret.*/tools\(.*\)]$@\1@p')
   44.40 -	sed -i "s|libs -o|libs -L/usr/lib -Wl,-dynamic-linker=$DL -o|" \
   44.41 -		scripts/test-installation.pl
   44.42 -	unset DL
   44.43 +	# Fixes and patches from LFS, Redhat
   44.44  	sed -i -e 's/"db1"/& \&\& $name ne "nss_test1"/' scripts/test-installation.pl
   44.45  	sed -i 's|@BASH@|/bin/bash|' elf/ldd.bash.in
   44.46  
   44.47 -	# Fix a bug that prevents Glibc from building with GCC-4.5.2:
   44.48 -	patch -Np1 -i $stuff/glibc-2.13-gcc_fix-1.patch
   44.49 +	# Glibc misc Bug Fixes
   44.50 +	# fix for {linux,sys}/xattr.h incompatibility - commit fdbe8eae
   44.51 +	patch -p1 -i $stuff/glibc-2.19-xattr_header.patch
   44.52  
   44.53 -	patch -Np1 -i $stuff/glibc-2.13-CVE-2015-0235.patch
   44.54 +	# fix issues in sin/cos slow path calculation - commit ffe768a9
   44.55 +	patch -p1 -i $stuff/glibc-2.19-fix-sign-in-bsloww1-input.patch
   44.56 +
   44.57 +	# fix tzselect with missing TZDIR - commit 893b4f37/c72399fb
   44.58 +	patch -p1 -i $stuff/glibc-2.19-tzselect-default.patch
   44.59 +
   44.60 +	# Revert commit causing issues with crappy DNS servers
   44.61 +	patch -Np1 -i $stuff/glibc-2.14-revert-4768ae77.patch
   44.62  
   44.63  	# Fix a stack imbalance that occurs under some conditions:
   44.64  	sed -i '195,213 s/PRIVATE_FUTEX/FUTEX_CLOCK_REALTIME/' \
   44.65 @@ -107,6 +105,7 @@
   44.66  		--disable-profile \
   44.67  		--enable-add-ons \
   44.68  		--enable-kernel=2.6.30 \
   44.69 +		--enable-obsolete-rpc \
   44.70  		--libexecdir=/usr/lib/glibc \
   44.71  		--build=$HOST_SYSTEM \
   44.72  		--host=$HOST_SYSTEM &&
    45.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    45.2 +++ b/glibc/stuff/glibc-2.19-fix-sign-in-bsloww1-input.patch	Wed Nov 09 15:12:00 2022 +0000
    45.3 @@ -0,0 +1,71 @@
    45.4 +
    45.5 +From ffe768a90912f9bce43b70a82576b3dc99e3121c Mon Sep 17 00:00:00 2001
    45.6 +From: Siddhesh Poyarekar <siddhesh@redhat.com>
    45.7 +Date: Thu, 27 Feb 2014 21:29:16 +0530
    45.8 +Subject: [PATCH] Fix sign of input to bsloww1 (BZ #16623)
    45.9 +
   45.10 +In 84ba214c, I removed some redundant sign computations and in the
   45.11 +process, I incorrectly got rid of a temporary variable, thus passing
   45.12 +the absolute value of the input to bsloww1.  This caused #16623.
   45.13 +
   45.14 +This fix undoes the incorrect change.
   45.15 +---
   45.16 + sysdeps/ieee754/dbl-64/s_sin.c | 16 ++++++++++------
   45.17 + 3 files changed, 18 insertions(+), 7 deletions(-)
   45.18 +
   45.19 +diff --git a/sysdeps/ieee754/dbl-64/s_sin.c b/sysdeps/ieee754/dbl-64/s_sin.c
   45.20 +index 6105e9f..50109b8 100644
   45.21 +--- a/sysdeps/ieee754/dbl-64/s_sin.c
   45.22 ++++ b/sysdeps/ieee754/dbl-64/s_sin.c
   45.23 +@@ -447,19 +447,21 @@ __sin (double x)
   45.24 + 	    }
   45.25 + 	  else
   45.26 + 	    {
   45.27 ++	      double t;
   45.28 + 	      if (a > 0)
   45.29 + 		{
   45.30 + 		  m = 1;
   45.31 ++		  t = a;
   45.32 + 		  db = da;
   45.33 + 		}
   45.34 + 	      else
   45.35 + 		{
   45.36 + 		  m = 0;
   45.37 +-		  a = -a;
   45.38 ++		  t = -a;
   45.39 + 		  db = -da;
   45.40 + 		}
   45.41 +-	      u.x = big + a;
   45.42 +-	      y = a - (u.x - big);
   45.43 ++	      u.x = big + t;
   45.44 ++	      y = t - (u.x - big);
   45.45 + 	      res = do_sin (u, y, db, &cor);
   45.46 + 	      cor = (cor > 0) ? 1.035 * cor + eps : 1.035 * cor - eps;
   45.47 + 	      retval = ((res == res + cor) ? ((m) ? res : -res)
   45.48 +@@ -671,19 +673,21 @@ __cos (double x)
   45.49 + 	    }
   45.50 + 	  else
   45.51 + 	    {
   45.52 ++	      double t;
   45.53 + 	      if (a > 0)
   45.54 + 		{
   45.55 + 		  m = 1;
   45.56 ++		  t = a;
   45.57 + 		  db = da;
   45.58 + 		}
   45.59 + 	      else
   45.60 + 		{
   45.61 + 		  m = 0;
   45.62 +-		  a = -a;
   45.63 ++		  t = -a;
   45.64 + 		  db = -da;
   45.65 + 		}
   45.66 +-	      u.x = big + a;
   45.67 +-	      y = a - (u.x - big);
   45.68 ++	      u.x = big + t;
   45.69 ++	      y = t - (u.x - big);
   45.70 + 	      res = do_sin (u, y, db, &cor);
   45.71 + 	      cor = (cor > 0) ? 1.035 * cor + eps : 1.035 * cor - eps;
   45.72 + 	      retval = ((res == res + cor) ? ((m) ? res : -res)
   45.73 +-- 
   45.74 +1.9.0
    46.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    46.2 +++ b/glibc/stuff/glibc-2.19-tzselect-default.patch	Wed Nov 09 15:12:00 2022 +0000
    46.3 @@ -0,0 +1,13 @@
    46.4 +diff --git a/timezone/Makefile b/timezone/Makefile
    46.5 +index 998cd14..d5f647c 100644
    46.6 +--- a/timezone/Makefile
    46.7 ++++ b/timezone/Makefile
    46.8 +@@ -118,7 +118,7 @@ $(testdata)/Asia/Tokyo: asia $(zic-deps)
    46.9 + 
   46.10 + $(objpfx)tzselect: tzselect.ksh $(common-objpfx)config.make
   46.11 + 	sed -e 's|/bin/bash|$(KSH)|g' \
   46.12 +-	    -e '/TZDIR=/s|\$$(pwd)|$(zonedir)|' \
   46.13 ++	    -e 's|TZDIR=[^}]*|TZDIR=$(zonedir)|' \
   46.14 + 	    -e '/TZVERSION=/s|see_Makefile|"$(version)"|' \
   46.15 + 	    -e '/PKGVERSION=/s|=.*|="$(PKGVERSION)"|' \
   46.16 + 	    -e '/REPORT_BUGS_TO=/s|=.*|="$(REPORT_BUGS_TO)"|' \
    47.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    47.2 +++ b/glibc/stuff/glibc-2.19-xattr_header.patch	Wed Nov 09 15:12:00 2022 +0000
    47.3 @@ -0,0 +1,43 @@
    47.4 +From: Serge Hallyn <serge.hallyn@ubuntu.com>
    47.5 +Date: Tue, 11 Mar 2014 04:17:07 +0000 (-0500)
    47.6 +Subject: misc/sys/xattr.h: guard against linux uapi header inclusion
    47.7 +X-Git-Url: https://sourceware.org/git/?p=glibc.git;a=commitdiff_plain;h=fdbe8eae;hp=fede7a5ffa188c22c3789135bd5cf82e487dd3d0
    47.8 +
    47.9 +misc/sys/xattr.h: guard against linux uapi header inclusion
   47.10 +
   47.11 +If the glibc xattr.h header is included after the uapi header,
   47.12 +compilation fails due to an enum re-using a #define from the
   47.13 +uapi header.  Protect against this by guarding the define and
   47.14 +enum inclusions against each other.
   47.15 +
   47.16 +(A corresponding kernel patch has been sent here:
   47.17 +http://lkml.org/lkml/2014/3/7/331 )
   47.18 +
   47.19 +(See https://lists.debian.org/debian-glibc/2014/03/msg00029.html
   47.20 +and https://sourceware.org/glibc/wiki/Synchronizing_Headers
   47.21 +for more information.)
   47.22 +
   47.23 +Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
   47.24 +---
   47.25 +
   47.26 +diff --git a/misc/sys/xattr.h b/misc/sys/xattr.h
   47.27 +index 929cd87..796df90 100644
   47.28 +--- a/misc/sys/xattr.h
   47.29 ++++ b/misc/sys/xattr.h
   47.30 +@@ -26,6 +26,7 @@ __BEGIN_DECLS
   47.31 + 
   47.32 + /* The following constants should be used for the fifth parameter of
   47.33 +    `*setxattr'.  */
   47.34 ++#ifndef __USE_KERNEL_XATTR_DEFS
   47.35 + enum
   47.36 + {
   47.37 +   XATTR_CREATE = 1,	/* set value, fail if attr already exists.  */
   47.38 +@@ -33,6 +34,7 @@ enum
   47.39 +   XATTR_REPLACE = 2	/* set value, fail if attr does not exist.  */
   47.40 + #define XATTR_REPLACE	XATTR_REPLACE
   47.41 + };
   47.42 ++#endif
   47.43 + 
   47.44 + /* Set the attribute NAME of the file pointed to by PATH to VALUE (which
   47.45 +    is SIZE bytes long).  Return 0 on success, -1 for errors.  */
   47.46 +
    48.1 --- a/gmp-dev/receipt	Mon Mar 04 18:42:23 2019 +0100
    48.2 +++ b/gmp-dev/receipt	Wed Nov 09 15:12:00 2022 +0000
    48.3 @@ -1,7 +1,7 @@
    48.4  # SliTaz package receipt
    48.5  
    48.6  PACKAGE="gmp-dev"
    48.7 -VERSION="5.0.1"
    48.8 +VERSION="6.0.0a"
    48.9  CATEGORY="development"
   48.10  SHORT_DESC="GNU Multiple Precision Arithmetic devel files."
   48.11  MAINTAINER="pankso@slitaz.org"
    49.1 --- a/gmp/receipt	Mon Mar 04 18:42:23 2019 +0100
    49.2 +++ b/gmp/receipt	Wed Nov 09 15:12:00 2022 +0000
    49.3 @@ -1,7 +1,7 @@
    49.4  # SliTaz package receipt
    49.5  
    49.6  PACKAGE="gmp"
    49.7 -VERSION="5.0.1"
    49.8 +VERSION="6.0.0a"
    49.9  CATEGORY="development"
   49.10  SHORT_DESC="GNU Multiple Precision Arithmetic Library."
   49.11  MAINTAINER="pankso@slitaz.org"
   49.12 @@ -10,7 +10,7 @@
   49.13  WGET_URL="$GNU_MIRROR/$PACKAGE/$TARBALL"
   49.14  
   49.15  DEPENDS="glibc-base"
   49.16 -BUILD_DEPENDS="binutils"
   49.17 +BUILD_DEPENDS="binutils m4"
   49.18  
   49.19  # Rules to configure and make the package.
   49.20  compile_rules()
    50.1 --- a/libgfortran/receipt	Mon Mar 04 18:42:23 2019 +0100
    50.2 +++ b/libgfortran/receipt	Wed Nov 09 15:12:00 2022 +0000
    50.3 @@ -1,7 +1,7 @@
    50.4  # SliTaz package receipt.
    50.5  
    50.6  PACKAGE="libgfortran"
    50.7 -VERSION="4.5.2"
    50.8 +VERSION="4.9.2"
    50.9  CATEGORY="misc"
   50.10  SHORT_DESC="GCC fortran runtime."
   50.11  WEB_SITE="http://gcc.gnu.org/"
    51.1 --- a/libgomp/receipt	Mon Mar 04 18:42:23 2019 +0100
    51.2 +++ b/libgomp/receipt	Wed Nov 09 15:12:00 2022 +0000
    51.3 @@ -1,7 +1,7 @@
    51.4  # SliTaz package receipt.
    51.5  
    51.6  PACKAGE="libgomp"
    51.7 -VERSION="4.5.2"
    51.8 +VERSION="4.9.2"
    51.9  CATEGORY="development"
   51.10  SHORT_DESC="API specification for parallel programming."
   51.11  MAINTAINER="pascal.bellard@slitaz.org"
    52.1 --- a/libobjc/receipt	Mon Mar 04 18:42:23 2019 +0100
    52.2 +++ b/libobjc/receipt	Wed Nov 09 15:12:00 2022 +0000
    52.3 @@ -1,7 +1,7 @@
    52.4  # SliTaz package receipt.
    52.5  
    52.6  PACKAGE="libobjc"
    52.7 -VERSION="4.5.2"
    52.8 +VERSION="4.9.2"
    52.9  CATEGORY="development"
   52.10  SHORT_DESC="API for gcc object"
   52.11  MAINTAINER="slaxemulator@gmail.com"
    53.1 --- a/linux-api-headers/receipt	Mon Mar 04 18:42:23 2019 +0100
    53.2 +++ b/linux-api-headers/receipt	Wed Nov 09 15:12:00 2022 +0000
    53.3 @@ -24,6 +24,9 @@
    53.4  compile_rules()
    53.5  {
    53.6  	cd $src
    53.7 +
    53.8 +        patch -p1 < $stuff/header-type-missing.patch
    53.9 +
   53.10  	make mrproper &&
   53.11  	make headers_check &&
   53.12  	make INSTALL_HDR_PATH=$DESTDIR/usr headers_install
    54.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    54.2 +++ b/linux-api-headers/stuff/header-type-missing.patch	Wed Nov 09 15:12:00 2022 +0000
    54.3 @@ -0,0 +1,71 @@
    54.4 +diff --git a/include/drm/drm_mode.h b/include/drm/drm_mode.h
    54.5 +index c4961ea..fe8005f 100644
    54.6 +--- a/include/drm/drm_mode.h
    54.7 ++++ b/include/drm/drm_mode.h
    54.8 +@@ -81,6 +81,8 @@ 
    54.9 + #define DRM_MODE_DIRTY_ON       1
   54.10 + #define DRM_MODE_DIRTY_ANNOTATE 2
   54.11 + 
   54.12 ++#include <linux/types.h>
   54.13 ++
   54.14 + struct drm_mode_modeinfo {
   54.15 + 	__u32 clock;
   54.16 + 	__u16 hdisplay, hsync_start, hsync_end, htotal, hskew;
   54.17 +diff --git a/include/drm/i915_drm.h b/include/drm/i915_drm.h
   54.18 +index 28c0d11..d7ddd33 100644
   54.19 +--- a/include/drm/i915_drm.h
   54.20 ++++ b/include/drm/i915_drm.h
   54.21 +@@ -27,6 +27,7 @@ 
   54.22 + #ifndef _I915_DRM_H_
   54.23 + #define _I915_DRM_H_
   54.24 + 
   54.25 ++#include <linux/types.h>
   54.26 + #include "drm.h"
   54.27 + 
   54.28 + /* Please note that modifications to all structs defined here are
   54.29 +diff --git a/include/drm/mga_drm.h b/include/drm/mga_drm.h
   54.30 +index fca8170..8058ce0 100644
   54.31 +--- a/include/drm/mga_drm.h
   54.32 ++++ b/include/drm/mga_drm.h
   54.33 +@@ -35,6 +35,7 @@ 
   54.34 + #ifndef __MGA_DRM_H__
   54.35 + #define __MGA_DRM_H__
   54.36 + 
   54.37 ++#include <linux/types.h>
   54.38 + #include "drm.h"
   54.39 + 
   54.40 + /* WARNING: If you change any of these defines, make sure to change the
   54.41 +diff --git a/include/drm/radeon_drm.h b/include/drm/radeon_drm.h
   54.42 +index b65be60..f0be4c7 100644
   54.43 +--- a/include/drm/radeon_drm.h
   54.44 ++++ b/include/drm/radeon_drm.h
   54.45 +@@ -33,6 +33,7 @@ 
   54.46 + #ifndef __RADEON_DRM_H__
   54.47 + #define __RADEON_DRM_H__
   54.48 + 
   54.49 ++#include <linux/types.h>
   54.50 + #include "drm.h"
   54.51 + 
   54.52 + /* WARNING: If you change any of these defines, make sure to change the
   54.53 +diff --git a/include/drm/via_drm.h b/include/drm/via_drm.h
   54.54 +index fd11a5b..23880b0 100644
   54.55 +--- a/include/drm/via_drm.h
   54.56 ++++ b/include/drm/via_drm.h
   54.57 +@@ -24,6 +24,7 @@ 
   54.58 + #ifndef _VIA_DRM_H_
   54.59 + #define _VIA_DRM_H_
   54.60 + 
   54.61 ++#include <linux/types.h>
   54.62 + #include "drm.h"
   54.63 + 
   54.64 + /* WARNING: These defines must be the same as what the Xserver uses.
   54.65 +diff a/include/scsi/scsi_netlink.h b/include/scsi/scsi_netlink.h
   54.66 +--- a/include/scsi/scsi_netlink.h
   54.67 ++++ b/include/scsi/scsi_netlink.h
   54.68 +@@ -22,6 +22,7 @@
   54.69 + #ifndef SCSI_NETLINK_H
   54.70 + #define SCSI_NETLINK_H
   54.71 + 
   54.72 ++#include <linux/types.h>
   54.73 + #include <linux/netlink.h>
   54.74 + 
    55.1 --- a/m4/receipt	Mon Mar 04 18:42:23 2019 +0100
    55.2 +++ b/m4/receipt	Wed Nov 09 15:12:00 2022 +0000
    55.3 @@ -1,7 +1,7 @@
    55.4  # SliTaz package receipt.
    55.5  
    55.6  PACKAGE="m4"
    55.7 -VERSION="1.4.16"
    55.8 +VERSION="1.4.18"
    55.9  CATEGORY="development"
   55.10  SHORT_DESC="GNU traditional Unix macro processor."
   55.11  MAINTAINER="pankso@slitaz.org"
    56.1 --- a/mpc-library/receipt	Mon Mar 04 18:42:23 2019 +0100
    56.2 +++ b/mpc-library/receipt	Wed Nov 09 15:12:00 2022 +0000
    56.3 @@ -1,7 +1,7 @@
    56.4  # SliTaz package receipt.
    56.5  
    56.6  PACKAGE="mpc-library"
    56.7 -VERSION="0.8.2"
    56.8 +VERSION="1.0.2"
    56.9  CATEGORY="development"
   56.10  SHORT_DESC="MPC is a C library for the arithmetic of complex numbers."
   56.11  MAINTAINER="pankso@slitaz.org"
   56.12 @@ -25,5 +25,9 @@
   56.13  	mkdir -p $fs/usr
   56.14  	cp -a $_pkg/usr/lib $fs/usr
   56.15  	cp -a $_pkg/usr/include $fs/usr
   56.16 +
   56.17 +	# Workaround soname transition (mpc 0.8.2 > 1.0.2)
   56.18 +	# libmpc.so.2 > libmpc.so.3 for cc1
   56.19 +	cd $fs/usr/lib
   56.20 +        ln -sf libmpc.so.3 libmpc.so.2
   56.21  }
   56.22 -
    57.1 --- a/mpfr-dev/receipt	Mon Mar 04 18:42:23 2019 +0100
    57.2 +++ b/mpfr-dev/receipt	Wed Nov 09 15:12:00 2022 +0000
    57.3 @@ -1,9 +1,9 @@
    57.4  # SliTaz package receipt
    57.5  
    57.6  PACKAGE="mpfr-dev"
    57.7 -VERSION="3.0.1"
    57.8 +VERSION="3.1.2"
    57.9  CATEGORY="development"
   57.10 -SHORT_DESC="GNU Multiple Precision Arithmetic devel files."
   57.11 +SHORT_DESC="MPFR library devel files."
   57.12  MAINTAINER="pankso@slitaz.org"
   57.13  DEPENDS="mpfr"
   57.14  WANTED="mpfr"
    58.1 --- a/mpfr/receipt	Mon Mar 04 18:42:23 2019 +0100
    58.2 +++ b/mpfr/receipt	Wed Nov 09 15:12:00 2022 +0000
    58.3 @@ -1,7 +1,7 @@
    58.4  # SliTaz package receipt
    58.5  
    58.6  PACKAGE="mpfr"
    58.7 -VERSION="3.0.1"
    58.8 +VERSION="3.1.2"
    58.9  CATEGORY="development"
   58.10  SHORT_DESC="C library for multiple-precision floating-point computations."
   58.11  MAINTAINER="pankso@slitaz.org"
   58.12 @@ -16,8 +16,9 @@
   58.13  compile_rules()
   58.14  {	
   58.15  	cd $src
   58.16 -	patch -Np1 -i $stuff/$PACKAGE-$VERSION.patch 
   58.17 -	./configure $CONFIGURE_ARGS &&
   58.18 +	./configure \
   58.19 +	    --enable-thread-safe \
   58.20 +	    $CONFIGURE_ARGS &&
   58.21  	make && make install
   58.22  }
   58.23  
    59.1 --- a/patch/receipt	Mon Mar 04 18:42:23 2019 +0100
    59.2 +++ b/patch/receipt	Wed Nov 09 15:12:00 2022 +0000
    59.3 @@ -1,7 +1,7 @@
    59.4  # SliTaz package receipt.
    59.5  
    59.6  PACKAGE="patch"
    59.7 -VERSION="2.6.1"
    59.8 +VERSION="2.7.6"
    59.9  CATEGORY="utilities"
   59.10  SHORT_DESC="Utilitie to patch file with diff file."
   59.11  MAINTAINER="pankso@slitaz.org"
    60.1 --- a/perl/receipt	Mon Mar 04 18:42:23 2019 +0100
    60.2 +++ b/perl/receipt	Wed Nov 09 15:12:00 2022 +0000
    60.3 @@ -7,7 +7,7 @@
    60.4  MAINTAINER="pankso@slitaz.org"
    60.5  TARBALL="$PACKAGE-$VERSION.tar.bz2"
    60.6  DEPENDS="libdb gdbm zlib"
    60.7 -BUILD_DEPENDS="db gdbm zlib"
    60.8 +BUILD_DEPENDS="db gdbm zlib less"
    60.9  WEB_SITE="http://www.perl.org/"
   60.10  WGET_URL="http://ftp.funet.fi/pub/CPAN/src/$TARBALL"
   60.11  PROVIDE="microperl"
    61.1 --- a/slitaz-toolchain/receipt	Mon Mar 04 18:42:23 2019 +0100
    61.2 +++ b/slitaz-toolchain/receipt	Wed Nov 09 15:12:00 2022 +0000
    61.3 @@ -1,7 +1,7 @@
    61.4  # SliTaz package receipt.
    61.5  
    61.6  PACKAGE="slitaz-toolchain"
    61.7 -VERSION="4.0"
    61.8 +VERSION="4.1"
    61.9  CATEGORY="meta"
   61.10  SHORT_DESC="SliTaz meta package to rebuild or install current toolchain."
   61.11  MAINTAINER="pankso@slitaz.org"
    62.1 --- a/wget/receipt	Mon Mar 04 18:42:23 2019 +0100
    62.2 +++ b/wget/receipt	Wed Nov 09 15:12:00 2022 +0000
    62.3 @@ -1,7 +1,7 @@
    62.4  # SliTaz package receipt.
    62.5  
    62.6  PACKAGE="wget"
    62.7 -VERSION="1.13.4"
    62.8 +VERSION="1.17.1"
    62.9  CATEGORY="utilities"
   62.10  SHORT_DESC="retrieve files from the web"
   62.11  MAINTAINER="sygne@ombres.eu"
    63.1 --- a/zlib-dev/receipt	Mon Mar 04 18:42:23 2019 +0100
    63.2 +++ b/zlib-dev/receipt	Wed Nov 09 15:12:00 2022 +0000
    63.3 @@ -1,7 +1,7 @@
    63.4  # SliTaz package receipt.
    63.5  
    63.6  PACKAGE="zlib-dev"
    63.7 -VERSION="1.2.6"
    63.8 +VERSION="1.2.12"
    63.9  CATEGORY="development"
   63.10  SHORT_DESC="Zlib compression library devel files."
   63.11  MAINTAINER="pankso@slitaz.org"
    64.1 --- a/zlib/receipt	Mon Mar 04 18:42:23 2019 +0100
    64.2 +++ b/zlib/receipt	Wed Nov 09 15:12:00 2022 +0000
    64.3 @@ -1,11 +1,11 @@
    64.4  # SliTaz package receipt.
    64.5  
    64.6  PACKAGE="zlib"
    64.7 -VERSION="1.2.6"
    64.8 +VERSION="1.2.12"
    64.9  CATEGORY="base-system"
   64.10  SHORT_DESC="Compression library."
   64.11  MAINTAINER="pankso@slitaz.org"
   64.12 -TARBALL="$PACKAGE-$VERSION.tar.bz2"
   64.13 +TARBALL="$PACKAGE-$VERSION.tar.xz"
   64.14  WEB_SITE="http://zlib.net/"
   64.15  WGET_URL="$WEB_SITE/$TARBALL"
   64.16