Setup Volume2 1 1 1zip
Changes since previous release:Aaro Koskinen: find: implement -samefileAlin Mr: ash.c: speedup $s: substring (no quotes)Andrej Valek: mktemp: add --tmpdir optionAriadne Conill: cpio: add support for --ignore-devno like GNU cpio cpio: add support for --renumber-inodes like GNU cpioBernhard Reutner-Fischer: chrt: silence analyzer warning libarchive: remove duplicate forward declarationDaniel Thau: awk: fix printf %%Denys Vlasenko: config system: move some options closer to relevalnt tool subdirectories libbb.h: fix logic selecting incorrect BB_STRTOOFF for !LFS configs libbb/lineedit: do not escape %^=+}]:, escape ? in tab completion libbb: clarify what bb_mode_string() generates libbb: code shrink bb_parse_mode libbb: code shrink in des encryption, in setup_salt() libbb: code shrink in main() and scripted_main() libbb: eliminate a static data array in bb_mode_string() libbb: make bb_lookup_port() abort on bad port names libbb: reuse "bad port" error message string shell/ash_test/run-all: unset locale/language variables shell: do not read user database for every prompt - only for those which need it shell: enable more tests which are passing now shell: fix arithmentic evaluation of "++7" and such (it is + + 7, i.e. 7) shell: fix parsing of $(( (v)++ + NUM )) shell: fix script's comm field if ENABLE_FEATURE_PREFER_APPLETS=y shell: use more compact SHELL_ASH / HUSH config defines. no code changes ash: LINENO starts from 0 in -c SCRIPT mode ash: eval: Check nflag in evaltree instead of cmdloop ash: eval: Do not cache value of eflag in evaltree ash: eval: Prevent recursive PS4 expansion ash: fix LINENO in functions ash: fix compile breakage in !ENABLE_ASH_ALIAS config ash: introduce bash-like $FUNCNAME ash: parser: Fix alias expansion after heredoc or newlines ash: parser: Fix handling of empty aliases ash: parser: Get rid of PEOA ash: parser: Save and restore heredoclist in expandstr ash: speed up $x//\*/ too, make it independent of ASH_OPTIMIZE_FOR_SIZE ash: support testsuite for !FEATURE_SUID_CONFIG_QUIET configs ash: use pgetc_eatbnl() in more places, take 3 hush: fix set -n to act immediately, not just after run_list() hush: fix var_LINENO3.tests failure hush: speed up $ too awk: code shrink: avoid duplicate NUL checks and strlen() awk: never return NULL from awk_printf() basename: implement -a and -s SUFFIX blkdiscard: accept -f (force) as no-op bzip: make ftab[] and crc32table[] member arrays of EState, do not allocate chat: hopefully fix infinite spinning on input EOF chmod: correctly report changed modes df: "support" -H as an alias of -h dhcprelay: change two more variables to unsigned find: code shrink -m,a,ctime,min httpd: do not send Last-Modified / ETag / Content-Length for error pages httpd: fix config deps httpd: if range is not specified, correctly fall back to read/write loop httpd: fix compile failure if !FEATURE_HTTPD_RANGES mount: "mount -o rw ...." should not fall back to RO mount mount: with -w, do not fall back to read-only mounts ps: fix -o pid=PID,args interpreting entire "PID,args" as header resize: use tcgetattr(TCSAFLUSH) instead of TCSANOW, closes 13811 shuf: in -i RANGE, accept numbers up to width of pointers shuf: make -i 99999999990-100000000000 work even on 32 bits shuf: with -i LOW-HIGH, do not allow any argv's tar,smemcap: commonalyze checksumming code for tar header tar: prevent malicious archives with enormous long name sizes OOMing the machine tls: "server cert is not RSA" is a fatal error tls: replace "26-bit" P256 code with 32-bit one tls: x25519: code shrink by factoring out common code udhcp: fix build breakage on MIPS udhcpc6: fix udhcp_find_option to actually find DHCP6 options udhcpd: check config file for bad IP ranges (start > end) uudecode: special-case "/dev/stdout", closes 14241 xxd: fix -p -r, closes 13881Dominique Martinet: sed: do not ignore 'g' modifier when match starts with ^Ildar Shaimordanov: wget: allow end-users to customize Content-Type for --post-data and --post-fileIsmael Luceno: less: Ignore -X config: find: Fix mtime/mmin description find: Unify time comparisons find: implement -amin, -atime, -cmin, and -ctimeMartin Kaiser: Makefile.flags: use all cflags for crypt and rt checksMatthew Slowe: timeout: add support for "timeout -k KILL_SECS"Nicholas Niro: ip: added support for setting netns on devicesPeter Korsgaard: libarchive/get_header_ar.c: fix extraction of archives from binutils in deterministic modeRoberto A. Foglietta: ash: add bash-like ERR trap and set -ERon Yorston: libbb: better coreutils compatibility for realpath libbb: code shrink parse_datestr libbb: ensure mode_string is NUL terminated ash: fix ignoreeof option ash: let ignoreeof only affect interactive shells ash: regressions in process substitution ash: stopped jobs should only prevent exit from interactive shell awk: fix read beyond end of buffer cal: implement -m date,touch: allow timezone offsets in dates getopt: code shrink printf: allow 0 as a flag and allow multiple flags rev: correct output for long input lines shuf: speed-up when limited output is requested tar,smemcap: silence compiler warning vi: changes to handling of -c and EXINIT vi: code shrink print_literal() vi: don't right shift empty lines vi: further changes to colon addresses vi: searches in colon commands should wrap vi: support /.exrc wget: implement --post-fileSergey Ponomarev: httpd,telnetd: make default port configurableSören Tempel: ed: align output of read/write commands with POSIX-1.2008 ed: add support for -p command-line option as mandated by POSIX ed: fix current line number for file passed via the command-line ed: align output of read command with POSIX.1-2008Walter Lozano: cmp: add support for -nYU Jincheng: *: generalize "const trick" Make const ptr assign as function call in clang
Setup Volume2 1 1 1zip
Changes since previous release:Andy Shevchenko modprobe: add support for modprobe.blacklist=module1,module2,...Audun-Marius Gangstø: lineedit: fix unicode characters in promptChristian Eggers: shell: fix "read -d ''" behavior ip: add support for "noprefixroute" option ip address: add support for "valid_lft" and "preferred_lft" options chrt: support for musl C libraryCristian Ionescu-Idbohrn: fix warning: label 'out1' defined but not usedDenys Vlasenko: avoid using strtok - eliminates use of hidden global variable use write_str() functions where appropriate fixes for Hurd build move ADJTIME_PATH define to header files examples: remove /sbin/ prefixes, system should be configured with $PATH to find utilities build system: combat gcc zealotry in data alignment build system: make -static-libgcc selectable in config libbb: add and use infrastructure for fixed page size optimization libbb: bb_do_delay(3) -> pause_after_failed_login(), and stop looping there libbb: change decode_base32/64 API to return the end of _dst_, not _src_ libbb: create and use mmap() helpers libbb: do not compile selinux_or_die() if !SELINUX libbb: do not open-code __errno_location() call libbb: exec_login_shell() - new function libbb: extend "errno pointer" trick to other than __GLIBC__ libbb: fold common64_hash() into its only user libbb: in @SECONDS date format, use 64-bit time if libc allows libbb: introduce and use msleep() libbb: introduce and use sleep1() libbb: introduce and use xsettimeofday() libbb: make msleep() result in only one syscall instead of looping libbb: make pw_encrypt() die if supplied salt is bad (e.g. emply) libbb: rename run_shell() to exec_shell() libbb: shrink last_char_is(), no longer allow NULL string argument libbb: shrink recursive_action() by reducing memory pressure libbb: smaller and faster decode_base64() libbb: trim base32/64 tables unicode: fix handling of short 1-4 char tables unicode: relax array alignment for tables lineedit: disable completion and fancy prompts if no shells are selected lineedit: remove ->path_lookup if ash is not configured lineedit: use strncmp instead of is_prefixed_with (we know the length) networking: support ftp PASV responses not ending with ')' ash: clear ungetc counter on syntax errors ash: jobs: Fix infinite loop in waitproc ash: jobs: Fix waitcmd busy loop ash: make interactive ^C break out of PS2 mode ash: reset SIGHUP earlier: allows HUP traps in .profile, closes 13371 hush: NOMMU fix for hush-psubst/tick6.tests hush: deal with FIXMEs for corner cases in parameter expansion hush: do not print killing signal name in `cmd_which_dies_on_signal` hush: fix -c SCRIPT handling hush: fix PS1 prompth in !EDITING config hush: fix ^C in INTERACTIVE, !EDITING config hush: fix this case: echo "SCRIPT" hush hush: if !EDITING, do not regenerate prompt for every input char hush: if login shell, also source /.profile hush: output bash-compat killing signal names hush: remove one redundant getpid() on every startup shell: better support of [[ ]] bashism shell: for signal exitcode, use 128 sig, not 128 + sig - MIPS has signal 128 shell: remove FAST_FUNC from a static function shell: a fix for systems without RLIMIT_NICE awk: FS regex matches only non-empty separators (gawk compat) awk: add a test that $NF is empty awk: fix dodgy multi-char separators splitting logic base32: new applet base32/64: decode in-place base32/64: implement -w COL bc: do not allocate line editing state until needed date: for -uR and -uIh, timezone still has to be shown as +hhmm, not as abbreviation date: remove non-standard special-casing of date '+%f' date: support -Ins, more compatible timezone display in -I dd: support for O_DIRECT i/o factor: 30% faster trial division (better sieve) factor: detect squares grep: for -L, exitcode 0 means files *without* matches were found, closes 13151 hexdump: fix duplicate block comparison hwclock: fix musl breakage of settimeofday(tz) login: log to syslog every bad password, not only 3rd mail: commonalize send_r_n() mail: deobfuscate launch_helper() mail: launch_helper(): flush stdio before vfork, set G.helper_pid only in parent mail: move "opts" from globals man: implement SECTION parameters mdev: clear LOGMODE_STDIO only directly before daemonizing mount: add -o nostrictatime and -o [no]lazytime mount: implement -o nosymfollow, remove bogus -o union mount: do not guess bind mounts as NFS mount: do not guess mount as NFS if "hostname:" contains slashes mount: fix a race when a free loop device is snatched under us by another mount mount: fix incorrect "success" exitcode if loop device setup fails nsenter: stop option parsing on 1st non-option ntpd: allow non-root to run it (e.g. with -w option) ntpd: fix refid reported in server mode, closes 13056 ntpd: fix the case where two replies received at once and first one causes a step ping: fix -wN to not think that one packet is always lost tar: fix fallout of last_char_is(NULL) no longer being allowed traceroute: avoid collecting target local address if !VERBOSE traceroute: commonalize verbose printing traceroute: don't set SO_DONTROUTE on recv socket, it only affects send traceroute: even with -v, don't show other ping processes replies traceroute: fix traceroute6 -I (icmp mode) traceroute: make "ipv4 or ipv6?" cheaper to find out traceroute: set IP_PKTINFO to see correct local IP of received pkt (fixes -v display) traceroute: simpler hexdump() traceroute: untangle main loop udhcp: remove struct packing attribute, eliminates gcc-9.x warning udhcpc6: code shrink - sending functions do not need ifindex parameter uevent: increase netlink buffer sizes uevent: make it survive ENOBUFS uudecode: fix possible signed char bug volume_id: improve struct layout (smaller offesets, smaller insns on x86) wget: do not ftruncate if -O- is used, closes 13351 xargs: fix -I SUBSTR behaviour xxd: fix printing of trailing spaces xxd: compat: move hexdump -R functionality to xxd -rEddie James: hwclock: fix settimeofday for glibc v2.31+Gray Wolf: crontab: fix -e with editors saving using renaming strategyJan Klötzke: libbb: set netlink socket revbuf size before binding mdev: increase netlink buffer sizes mdev: move daemon setup to dedicated function mdev: re-initialize if uevent messages were lost mdev: add syslog logging mode mdev: add -v to increase log verbosityJoachim Nilsson: login: update UTMP before forking syslogd: delay PID file creation until syslogd is ready archival: avoid std namespace for local includesLauri Kasanen: mount: surround syslog.h with the config checkMartin Lewis: udhcp: add option scanner udhcpc: fix a TODO in fill_envp using option scanner procps: code shrink compare_string_array: code shrink domain_codec: optimize dname_dec and convert_dname udhcpc: add support for long optionsMichal Kazior: udhcp: bind to device even for ucast packetsNorbert Lange: nc_bloaty: support udp broadcast ports dpkg: prevent important directories from being removed dhcpd: remove hardcoded pidfile path acpid: only display -p if supported in usage util-linux: support erofs filesystemRon Yorston: build system: drop PLATFORM_LINUX lineedit: omit directories when tab-completing from PATH lineedit: match local directories when searching PATHRui Salvaterra: ip rule: add support for fwmark/fwmask for policy routingScott Court: wget: fix openssl options for cert verificationSergey Ponomarev: httpd_indexcgi.c: minimize style CSS httpd_indexcgi.c: use CSS for odd/even rows httpd: update to HTTP/1.1 httpd: don't add Date header to response httpd: don't add Last-Modified header to response httpd: support caching via ETag header httpd: make Deny/Allow by IP config support optionalSteffen Trumtrar: mount: support the sizelimit and offset option for loop devicesXabier Oneca: httpd: code shrink mkdtemp: proper error detection on mktemp