# HG changeset patch # User Pascal Bellard # Date 1547372416 -3600 # Node ID 03bd0cf0b57bb53ef98ba4d21f5d3146c7323d99 # Parent 49767a858e2c149d0932a5a3a376620c19090ca1 Up busybox (1.30.0) diff -r 49767a858e2c -r 03bd0cf0b57b busybox-boot/receipt --- a/busybox-boot/receipt Sun Jan 13 10:11:20 2019 +0100 +++ b/busybox-boot/receipt Sun Jan 13 10:40:16 2019 +0100 @@ -1,7 +1,7 @@ # SliTaz package receipt. PACKAGE="busybox-boot" -VERSION="1.27.2" +VERSION="1.30.0" CATEGORY="base-system" SHORT_DESC="Many common UNIX utilities for core-5in1/boot flavor." MAINTAINER="pascal.bellard@slitaz.org" diff -r 49767a858e2c -r 03bd0cf0b57b busybox-pam/receipt --- a/busybox-pam/receipt Sun Jan 13 10:11:20 2019 +0100 +++ b/busybox-pam/receipt Sun Jan 13 10:40:16 2019 +0100 @@ -1,7 +1,7 @@ # SliTaz package receipt. PACKAGE="busybox-pam" -VERSION="1.27.2" +VERSION="1.30.0" CATEGORY="base-system" SHORT_DESC="Busybox combines tiny versions of many common UNIX utilities." MAINTAINER="pascal.bellard@slitaz.org" diff -r 49767a858e2c -r 03bd0cf0b57b busybox-static/receipt --- a/busybox-static/receipt Sun Jan 13 10:11:20 2019 +0100 +++ b/busybox-static/receipt Sun Jan 13 10:40:16 2019 +0100 @@ -1,7 +1,7 @@ # SliTaz package receipt. PACKAGE="busybox-static" -VERSION="1.27.2" +VERSION="1.30.0" CATEGORY="base-system" SHORT_DESC="Busybox combines tiny versions of many common UNIX utilities." MAINTAINER="pascal.bellard@slitaz.org" diff -r 49767a858e2c -r 03bd0cf0b57b busybox/receipt --- a/busybox/receipt Sun Jan 13 10:11:20 2019 +0100 +++ b/busybox/receipt Sun Jan 13 10:40:16 2019 +0100 @@ -1,7 +1,7 @@ # SliTaz package receipt. PACKAGE="busybox" -VERSION="1.27.2" +VERSION="1.30.0" CATEGORY="base-system" SHORT_DESC="Busybox combines tiny versions of many common UNIX utilities." MAINTAINER="pascal.bellard@slitaz.org" @@ -27,6 +27,7 @@ # Busybox patches apply_bb_patchs() { + sed -i 's|march=|&i486 -mtune=|' arch/i386/Makefile while read file; do [ -f done.$file ] && continue echo "Apply $file..." @@ -46,10 +47,6 @@ shutdown.u scriptreplay.u mkfs_vfat.u -ash.u -httpd.u -df.u -arch.u EOT cp $stuff/$PACKAGE-${VERSION%.*}.config .config } diff -r 49767a858e2c -r 03bd0cf0b57b busybox/stuff/busybox-1.28-ash.u --- a/busybox/stuff/busybox-1.28-ash.u Sun Jan 13 10:11:20 2019 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,17 +0,0 @@ -Some SliTaz scripts (cook) need that... ---- busybox-1.28/shell/ash.c -+++ busybox-1.28/shell/ash.c -@@ -12897,7 +12897,13 @@ - if (strchr(name, '/')) - return name; - -+ /* IIRC standards do not say whether . is to be searched. */ -+ if (ENABLE_ASH_BASH_COMPAT) { -+ fullname = name; -+ goto try_cur_dir; -+ } - while ((fullname = path_advance(&path, name)) != NULL) { -+ try_cur_dir: - if ((stat(fullname, &statb) == 0) && S_ISREG(statb.st_mode)) { - /* - * Don't bother freeing here, since it will diff -r 49767a858e2c -r 03bd0cf0b57b busybox/stuff/busybox-1.28-cmdline.u --- a/busybox/stuff/busybox-1.28-cmdline.u Sun Jan 13 10:11:20 2019 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ -Display command line in usage output. Useful to debug scripts with variables. ---- busybox-1.28/libbb/appletlib.c -+++ busybox-1.28/libbb/appletlib.c -@@ -127,9 +127,16 @@ - - #endif /* FEATURE_COMPRESS_USAGE */ - -- -+static char **bb_argv; - void FAST_FUNC bb_show_usage(void) - { -+ full_write2_str("\nCommand line: "); -+ while (*bb_argv) { -+ full_write2_str(*bb_argv++); -+ full_write2_str(" "); -+ } -+ full_write2_str("\n\n"); -+ - if (ENABLE_SHOW_USAGE) { - #ifdef SINGLE_APPLET_STR - /* Imagine that this applet is "true". Dont suck in printf! */ -@@ -779,6 +786,7 @@ - # endif - int busybox_main(int argc UNUSED_PARAM, char **argv) - { -+ bb_argv = argv; - if (!argv[1]) { - /* Called without arguments */ - const char *a; -@@ -976,6 +984,7 @@ - int main(int argc UNUSED_PARAM, char **argv) - #endif - { -+ bb_argv = argv; - #if 0 - /* TODO: find a use for a block of memory between end of .bss - * and end of page. For example, I'm getting "_end:0x812e698 2408 bytes" diff -r 49767a858e2c -r 03bd0cf0b57b busybox/stuff/busybox-1.28-cpio.u --- a/busybox/stuff/busybox-1.28-cpio.u Sun Jan 13 10:11:20 2019 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ ---- busybox-1.28/archival/cpio.c -+++ busybox-1.28/archival/cpio.c -@@ -245,6 +245,9 @@ - if (!(S_ISLNK(st.st_mode) || S_ISREG(st.st_mode))) - st.st_size = 0; /* paranoia */ - -+ if (S_ISLNK(st.st_mode)) -+ st.st_nlink = 1; /* like GNU cpio */ -+ - /* Store hardlinks for later processing, dont output them */ - if (!S_ISDIR(st.st_mode) && st.st_nlink > 1) { - struct name_s *n; diff -r 49767a858e2c -r 03bd0cf0b57b busybox/stuff/busybox-1.28-df.u --- a/busybox/stuff/busybox-1.28-df.u Sun Jan 13 10:11:20 2019 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ -4TB+ support ---- busybox-1.28.1/coreutils/df.c -+++ busybox-1.28.1/coreutils/df.c -@@ -91,7 +91,7 @@ - int df_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; - int df_main(int argc UNUSED_PARAM, char **argv) - { -- unsigned long blocks_used; -+ unsigned long long blocks_used; - unsigned blocks_percent_used; - unsigned long df_disp_hr = 1024; - int status = EXIT_SUCCESS; diff -r 49767a858e2c -r 03bd0cf0b57b busybox/stuff/busybox-1.28-diet.u --- a/busybox/stuff/busybox-1.28-diet.u Sun Jan 13 10:11:20 2019 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,111 +0,0 @@ ---- busybox-1.28/include/platform.h -+++ busybox-1.28/include/platform.h -@@ -528,6 +528,21 @@ - # undef HAVE_PRINTF_PERCENTM - #endif - -+#if defined(__dietlibc__) -+# define __aligned_u64 __u64 __attribute__((aligned(8))) -+# define LOOP_SET_STATUS64 0x4C04 -+# define LOOP_GET_STATUS64 0x4C05 -+# define O_CLOEXEC 02000000 -+# define MAXSYMLINKS 20 -+# define S_TYPEISMQ(x) 0 -+# define S_TYPEISSEM(x) 0 -+# define S_TYPEISSHM(x) 0 -+# undef HAVE_STRVERSCMP -+# undef HAVE_DPRINTF -+# undef HAVE_STRCASESTR -+# define ttyname_r(a,b,c) (strlcpy(b, ttyname(a), c) == 0) -+#endif -+ - /* - * Now, define prototypes for all the functions defined in platform.c - * These must come after all the HAVE_* macros are defined (or not) ---- busybox-1.28/networking/ping.c -+++ busybox-1.28/networking/ping.c -@@ -119,6 +119,84 @@ - #include "libbb.h" - #include "common_bufsiz.h" - -+#ifdef __dietlibc__ -+/* Dietlibc is missing the BSD definition 'struct icmp' */ -+/* -+ * Internal of an ICMP Router Advertisement -+ */ -+struct icmp_ra_addr -+{ -+ uint32_t ira_addr; -+ uint32_t ira_preference; -+}; -+ -+struct icmp -+{ -+ uint8_t icmp_type; /* type of message, see below */ -+ uint8_t icmp_code; /* type sub code */ -+ uint16_t icmp_cksum; /* ones complement checksum of struct */ -+ union -+ { -+ uint8_t ih_pptr; /* ICMP_PARAMPROB */ -+ struct in_addr ih_gwaddr; /* gateway address */ -+ struct ih_idseq /* echo datagram */ -+ { -+ uint16_t icd_id; -+ uint16_t icd_seq; -+ } ih_idseq; -+ uint32_t ih_void; -+ -+ /* ICMP_UNREACH_NEEDFRAG -- Path MTU Discovery (RFC1191) */ -+ struct ih_pmtu -+ { -+ uint16_t ipm_void; -+ uint16_t ipm_nextmtu; -+ } ih_pmtu; -+ -+ struct ih_rtradv -+ { -+ uint8_t irt_num_addrs; -+ uint8_t irt_wpa; -+ uint16_t irt_lifetime; -+ } ih_rtradv; -+ } icmp_hun; -+#define icmp_pptr icmp_hun.ih_pptr -+#define icmp_gwaddr icmp_hun.ih_gwaddr -+#define icmp_id icmp_hun.ih_idseq.icd_id -+#define icmp_seq icmp_hun.ih_idseq.icd_seq -+#define icmp_void icmp_hun.ih_void -+#define icmp_pmvoid icmp_hun.ih_pmtu.ipm_void -+#define icmp_nextmtu icmp_hun.ih_pmtu.ipm_nextmtu -+#define icmp_num_addrs icmp_hun.ih_rtradv.irt_num_addrs -+#define icmp_wpa icmp_hun.ih_rtradv.irt_wpa -+#define icmp_lifetime icmp_hun.ih_rtradv.irt_lifetime -+ union -+ { -+ struct -+ { -+ uint32_t its_otime; -+ uint32_t its_rtime; -+ uint32_t its_ttime; -+ } id_ts; -+ struct -+ { -+ struct ip idi_ip; -+ /* options and then 64 bits of data */ -+ } id_ip; -+ struct icmp_ra_addr id_radv; -+ uint32_t id_mask; -+ uint8_t id_data[1]; -+ } icmp_dun; -+#define icmp_otime icmp_dun.id_ts.its_otime -+#define icmp_rtime icmp_dun.id_ts.its_rtime -+#define icmp_ttime icmp_dun.id_ts.its_ttime -+#define icmp_ip icmp_dun.id_ip.idi_ip -+#define icmp_radv icmp_dun.id_radv -+#define icmp_mask icmp_dun.id_mask -+#define icmp_data icmp_dun.id_data -+}; -+#endif /* __dietlibc__ */ -+ - #ifdef __BIONIC__ - /* should be in netinet/ip_icmp.h */ - # define ICMP_DEST_UNREACH 3 /* Destination Unreachable */ diff -r 49767a858e2c -r 03bd0cf0b57b busybox/stuff/busybox-1.28-diff.u --- a/busybox/stuff/busybox-1.28-diff.u Sun Jan 13 10:11:20 2019 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,53 +0,0 @@ ---- busybox-1.28/editors/diff.c -+++ busybox-1.28/editors/diff.c -@@ -109,6 +109,7 @@ - //usage: "\n -B Ignore changes whose lines are all blank" - //usage: "\n -d Try hard to find a smaller set of changes" - //usage: "\n -i Ignore case differences" -+//usage: "\n -l Ignore symbolic links" - //usage: "\n -L Use LABEL instead of the filename in the unified header" - //usage: "\n -N Treat absent files as empty" - //usage: "\n -q Output only whether files differ" -@@ -140,6 +141,7 @@ - FLAG_b, - FLAG_d, - FLAG_i, -+ FLAG_l, - FLAG_L, /* never used, handled by getopt32 */ - FLAG_N, - FLAG_q, -@@ -754,6 +756,14 @@ - j = fread(buf1, 1, sz, fp[1]); - if (i != j) { - differ = true; -+ /* Ensure we detect binary file even if a file is empty or very -+ short. */ -+ for (k = 0; k < i; k++) -+ if (!buf0[k]) -+ binary = true; -+ for (k = 0; k < j; k++) -+ if (!buf1[k]) -+ binary = true; - i = MIN(i, j); - } - if (i == 0) -@@ -867,7 +877,9 @@ - * Using list.len to specify its length, - * add_to_dirlist will remove it. */ - list[i].len = strlen(p[i]); -- recursive_action(p[i], ACTION_RECURSE | ACTION_FOLLOWLINKS, -+ recursive_action(p[i], -+ (option_mask32 & FLAG(l)) ? ACTION_RECURSE : -+ ACTION_RECURSE | ACTION_FOLLOWLINKS, - add_to_dirlist, skip_dir, &list[i], 0); - /* Sort dl alphabetically. - * GNU diff does this ignoring any number of trailing dots. -@@ -982,7 +994,7 @@ - INIT_G(); - - /* exactly 2 params; collect multiple -L