aboutsummaryrefslogtreecommitdiffstats
path: root/main/musl
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2016-02-16 06:16:38 +0000
committerTimo Teräs <timo.teras@iki.fi>2016-02-16 06:16:38 +0000
commit8daae2d91da7ea2065b57e71950970efbeba80a2 (patch)
treecf4e8ec07e53ecc83f1fce05dd0b56a71234ce07 /main/musl
parentb794eecf4cda65b993101985b5cbacf1ee263a12 (diff)
downloadaports-8daae2d91da7ea2065b57e71950970efbeba80a2.tar.bz2
aports-8daae2d91da7ea2065b57e71950970efbeba80a2.tar.xz
main/musl: upgrade to 1.1.13
Diffstat (limited to 'main/musl')
-rw-r--r--main/musl/0001-fix-single-byte-overflow-of-malloc-d-buffer-in-getde.patch32
-rw-r--r--main/musl/0002-safely-handle-failure-to-open-hosts-services-resolv..patch119
-rw-r--r--main/musl/0003-getnameinfo-make-size-check-not-fail-for-bigger-size.patch45
-rw-r--r--main/musl/0004-properly-access-mcontext_t-program-counter-in-cancel.patch165
-rw-r--r--main/musl/0005-use-explicit-__cp_cancel-label-in-cancellable-syscal.patch220
-rw-r--r--main/musl/0006-prevent-allocs-than-PTRDIFF_MAX-via-mremap.patch39
-rw-r--r--main/musl/0007-fix-mremap-memory-synchronization-and-use-of-variadi.patch61
-rw-r--r--main/musl/0008-have-configure-check-add-ffunction-sections-and-fdat.patch50
-rw-r--r--main/musl/0009-have-configure-check-add-linker-options-to-reduce-si.patch33
-rw-r--r--main/musl/0010-have-configure-check-add-gc-sections-linker-option.patch32
-rw-r--r--main/musl/0011-work-around-toolchains-with-broken-visibility-in-lib.patch29
-rw-r--r--main/musl/0012-fix-return-value-of-nl_langinfo-for-invalid-item-arg.patch46
-rw-r--r--main/musl/0013-math-explicitly-promote-expressions-to-excess-precis.patch84
-rw-r--r--main/musl/0014-ldso-fix-the-dtv-update-logic-in-__tls_get_new.patch34
-rw-r--r--main/musl/0015-properly-handle-point-to-point-interfaces-in-getifad.patch59
-rw-r--r--main/musl/0016-fix-tdelete-to-properly-balance-the-tree.patch53
-rw-r--r--main/musl/0017-fix-tsearch-to-avoid-crash-on-oom.patch28
-rw-r--r--main/musl/0018-tsearch-code-cleanup.patch90
-rw-r--r--main/musl/0019-fix-tsearch-tfind-tdelete-to-handle-null-pointer-inp.patch45
-rw-r--r--main/musl/0020-fix-crash-when-signal-number-0-is-passed-to-sigactio.patch39
-rw-r--r--main/musl/0021-avoid-updating-caller-s-size-when-getdelim-fails-to-.patch46
-rw-r--r--main/musl/0022-fix-overly-pessimistic-realloc-strategy-in-getdelim.patch46
-rw-r--r--main/musl/0023-add-missing-protocols-to-protoent-lookup-functions.patch54
-rw-r--r--main/musl/APKBUILD102
24 files changed, 5 insertions, 1546 deletions
diff --git a/main/musl/0001-fix-single-byte-overflow-of-malloc-d-buffer-in-getde.patch b/main/musl/0001-fix-single-byte-overflow-of-malloc-d-buffer-in-getde.patch
deleted file mode 100644
index 4d950ab3dd..0000000000
--- a/main/musl/0001-fix-single-byte-overflow-of-malloc-d-buffer-in-getde.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From b114190b29417fff6f701eea3a3b3b6030338280 Mon Sep 17 00:00:00 2001
-From: Rich Felker <dalias@aerifal.cx>
-Date: Sat, 24 Oct 2015 22:42:10 -0400
-Subject: [PATCH] fix single-byte overflow of malloc'd buffer in getdelim
-
-the buffer enlargement logic here accounted for the terminating null
-byte, but not for the possibility of hitting the delimiter in the
-buffer-refill code path that uses getc_unlocked, in which case two
-additional bytes (the delimiter and the null termination) are written
-without another chance to enlarge the buffer.
-
-this patch and the corresponding bug report are by Felix Janda.
----
- src/stdio/getdelim.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/stdio/getdelim.c b/src/stdio/getdelim.c
-index a88c393..3077490 100644
---- a/src/stdio/getdelim.c
-+++ b/src/stdio/getdelim.c
-@@ -27,7 +27,7 @@ ssize_t getdelim(char **restrict s, size_t *restrict n, int delim, FILE *restric
- for (;;) {
- z = memchr(f->rpos, delim, f->rend - f->rpos);
- k = z ? z - f->rpos + 1 : f->rend - f->rpos;
-- if (i+k >= *n) {
-+ if (i+k+1 >= *n) {
- if (k >= SIZE_MAX/2-i) goto oom;
- *n = i+k+2;
- if (*n < SIZE_MAX/4) *n *= 2;
---
-2.7.0
-
diff --git a/main/musl/0002-safely-handle-failure-to-open-hosts-services-resolv..patch b/main/musl/0002-safely-handle-failure-to-open-hosts-services-resolv..patch
deleted file mode 100644
index 14dc3ada98..0000000000
--- a/main/musl/0002-safely-handle-failure-to-open-hosts-services-resolv..patch
+++ /dev/null
@@ -1,119 +0,0 @@
-From 2683e267fa6c20d2e7a498a85f79a1dfc4301f23 Mon Sep 17 00:00:00 2001
-From: Rich Felker <dalias@aerifal.cx>
-Date: Mon, 26 Oct 2015 18:42:22 -0400
-Subject: [PATCH] safely handle failure to open hosts, services, resolv.conf
- files
-
-previously, transient failures like fd exhaustion or other
-resource-related errors were treated the same as non-existence of
-these files, leading to fallbacks or false-negative results. in
-particular:
-
-- failure to open hosts resulted in fallback to dns, possibly yielding
- EAI_NONAME for a hostname that should be defined locally, or an
- unwanted result from dns that the hosts file was intended to
- replace.
-
-- failure to open services resulted in EAI_SERVICE.
-
-- failure to open resolv.conf resulted in querying localhost rather
- than the configured nameservers.
-
-now, only permanent errors trigger the fallback behaviors above; all
-other errors are reportable to the caller as EAI_SYSTEM.
----
- src/network/lookup_name.c | 10 +++++++++-
- src/network/lookup_serv.c | 10 +++++++++-
- src/network/res_msend.c | 13 +++++++++++--
- 3 files changed, 29 insertions(+), 4 deletions(-)
-
-diff --git a/src/network/lookup_name.c b/src/network/lookup_name.c
-index 0225a93..df9e623 100644
---- a/src/network/lookup_name.c
-+++ b/src/network/lookup_name.c
-@@ -9,6 +9,7 @@
- #include <fcntl.h>
- #include <unistd.h>
- #include <pthread.h>
-+#include <errno.h>
- #include "lookup.h"
- #include "stdio_impl.h"
- #include "syscall.h"
-@@ -51,7 +52,14 @@ static int name_from_hosts(struct address buf[static MAXADDRS], char canon[stati
- int cnt = 0;
- unsigned char _buf[1032];
- FILE _f, *f = __fopen_rb_ca("/etc/hosts", &_f, _buf, sizeof _buf);
-- if (!f) return 0;
-+ if (!f) switch (errno) {
-+ case ENOENT:
-+ case ENOTDIR:
-+ case EACCES:
-+ return 0;
-+ default:
-+ return EAI_SYSTEM;
-+ }
- while (fgets(line, sizeof line, f) && cnt < MAXADDRS) {
- char *p, *z;
-
-diff --git a/src/network/lookup_serv.c b/src/network/lookup_serv.c
-index 4faa5bc..66ebaea 100644
---- a/src/network/lookup_serv.c
-+++ b/src/network/lookup_serv.c
-@@ -4,6 +4,7 @@
- #include <ctype.h>
- #include <string.h>
- #include <fcntl.h>
-+#include <errno.h>
- #include "lookup.h"
- #include "stdio_impl.h"
-
-@@ -69,7 +70,14 @@ int __lookup_serv(struct service buf[static MAXSERVS], const char *name, int pro
-
- unsigned char _buf[1032];
- FILE _f, *f = __fopen_rb_ca("/etc/services", &_f, _buf, sizeof _buf);
-- if (!f) return EAI_SERVICE;
-+ if (!f) switch (errno) {
-+ case ENOENT:
-+ case ENOTDIR:
-+ case EACCES:
-+ return EAI_SERVICE;
-+ default:
-+ return EAI_SYSTEM;
-+ }
-
- while (fgets(line, sizeof line, f) && cnt < MAXSERVS) {
- if ((p=strchr(line, '#'))) *p++='\n', *p=0;
-diff --git a/src/network/res_msend.c b/src/network/res_msend.c
-index 35f106d..d0e8e48 100644
---- a/src/network/res_msend.c
-+++ b/src/network/res_msend.c
-@@ -54,7 +54,15 @@ int __res_msend(int nqueries, const unsigned char *const *queries,
-
- /* Get nameservers from resolv.conf, fallback to localhost */
- f = __fopen_rb_ca("/etc/resolv.conf", &_f, _buf, sizeof _buf);
-- if (f) for (nns=0; nns<3 && fgets(line, sizeof line, f); ) {
-+ if (!f) switch (errno) {
-+ case ENOENT:
-+ case ENOTDIR:
-+ case EACCES:
-+ goto no_resolv_conf;
-+ default:
-+ return -1;
-+ }
-+ for (nns=0; nns<3 && fgets(line, sizeof line, f); ) {
- if (!strncmp(line, "options", 7) && isspace(line[7])) {
- unsigned long x;
- char *p, *z;
-@@ -92,7 +100,8 @@ int __res_msend(int nqueries, const unsigned char *const *queries,
- }
- }
- }
-- if (f) __fclose_ca(f);
-+ __fclose_ca(f);
-+no_resolv_conf:
- if (!nns) {
- ns[0].sin.sin_family = AF_INET;
- ns[0].sin.sin_port = htons(53);
---
-2.7.0
-
diff --git a/main/musl/0003-getnameinfo-make-size-check-not-fail-for-bigger-size.patch b/main/musl/0003-getnameinfo-make-size-check-not-fail-for-bigger-size.patch
deleted file mode 100644
index 1b4192a740..0000000000
--- a/main/musl/0003-getnameinfo-make-size-check-not-fail-for-bigger-size.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 6eada2edb302ff061be8546b23c9cb836621d122 Mon Sep 17 00:00:00 2001
-From: Hauke Mehrtens <hauke@hauke-m.de>
-Date: Mon, 26 Oct 2015 23:03:55 +0100
-Subject: [PATCH] getnameinfo: make size check not fail for bigger sizes
-
-getnameinfo() compares the size of the given struct sockaddr with
-sizeof(struct sockaddr_in) and sizeof(struct sockaddr_in6) depending on
-the net family. When you add a sockaddr of size sizeof(struct
-sockaddr_storage) this function will fail because the size of the
-sockaddr is too big. Change the check that it only fails if the size is
-too small, but make it work when it is too big for example when someone
-calls this function with a struct sockaddr_storage and its size.
-This fixes a problem with IoTivity 1.0.0 and musl.
-
-glibc and bionic are only failing if it is smaller, net/freebsd
-implemented the != check.
-
-Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
----
- src/network/getnameinfo.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/network/getnameinfo.c b/src/network/getnameinfo.c
-index 3484fc6..5e6fae3 100644
---- a/src/network/getnameinfo.c
-+++ b/src/network/getnameinfo.c
-@@ -135,13 +135,13 @@ int getnameinfo(const struct sockaddr *restrict sa, socklen_t sl,
- switch (af) {
- case AF_INET:
- a = (void *)&((struct sockaddr_in *)sa)->sin_addr;
-- if (sl != sizeof(struct sockaddr_in)) return EAI_FAMILY;
-+ if (sl < sizeof(struct sockaddr_in)) return EAI_FAMILY;
- mkptr4(ptr, a);
- scopeid = 0;
- break;
- case AF_INET6:
- a = (void *)&((struct sockaddr_in6 *)sa)->sin6_addr;
-- if (sl != sizeof(struct sockaddr_in6)) return EAI_FAMILY;
-+ if (sl < sizeof(struct sockaddr_in6)) return EAI_FAMILY;
- if (memcmp(a, "\0\0\0\0\0\0\0\0\0\0\xff\xff", 12))
- mkptr6(ptr, a);
- else
---
-2.7.0
-
diff --git a/main/musl/0004-properly-access-mcontext_t-program-counter-in-cancel.patch b/main/musl/0004-properly-access-mcontext_t-program-counter-in-cancel.patch
deleted file mode 100644
index d699892c08..0000000000
--- a/main/musl/0004-properly-access-mcontext_t-program-counter-in-cancel.patch
+++ /dev/null
@@ -1,165 +0,0 @@
-From cb1bf2f321b45a06447133b3db00621b7300c456 Mon Sep 17 00:00:00 2001
-From: Rich Felker <dalias@aerifal.cx>
-Date: Mon, 2 Nov 2015 12:39:28 -0500
-Subject: [PATCH] properly access mcontext_t program counter in cancellation
- handler
-
-using the actual mcontext_t definition rather than an overlaid pointer
-array both improves correctness/readability and eliminates some ugly
-hacks for archs with 64-bit registers bit 32-bit program counter.
-
-also fix UB due to comparison of pointers not in a common array
-object.
----
- arch/aarch64/pthread_arch.h | 2 +-
- arch/arm/pthread_arch.h | 2 +-
- arch/i386/pthread_arch.h | 2 +-
- arch/microblaze/pthread_arch.h | 2 +-
- arch/mips/pthread_arch.h | 2 +-
- arch/or1k/pthread_arch.h | 3 +--
- arch/powerpc/pthread_arch.h | 3 +--
- arch/sh/pthread_arch.h | 2 +-
- arch/x32/pthread_arch.h | 2 +-
- arch/x86_64/pthread_arch.h | 2 +-
- src/thread/pthread_cancel.c | 7 ++++---
- 11 files changed, 14 insertions(+), 15 deletions(-)
-
-diff --git a/arch/aarch64/pthread_arch.h b/arch/aarch64/pthread_arch.h
-index 74276f4..b2e2d8f 100644
---- a/arch/aarch64/pthread_arch.h
-+++ b/arch/aarch64/pthread_arch.h
-@@ -8,4 +8,4 @@ static inline struct pthread *__pthread_self()
- #define TLS_ABOVE_TP
- #define TP_ADJ(p) ((char *)(p) + sizeof(struct pthread) - 16)
-
--#define CANCEL_REG_IP 33
-+#define MC_PC pc
-diff --git a/arch/arm/pthread_arch.h b/arch/arm/pthread_arch.h
-index 4a4dd09..8b8a7fb 100644
---- a/arch/arm/pthread_arch.h
-+++ b/arch/arm/pthread_arch.h
-@@ -27,4 +27,4 @@ static inline pthread_t __pthread_self()
- #define TLS_ABOVE_TP
- #define TP_ADJ(p) ((char *)(p) + sizeof(struct pthread) - 8)
-
--#define CANCEL_REG_IP 18
-+#define MC_PC arm_pc
-diff --git a/arch/i386/pthread_arch.h b/arch/i386/pthread_arch.h
-index 1c06c76..7f38a56 100644
---- a/arch/i386/pthread_arch.h
-+++ b/arch/i386/pthread_arch.h
-@@ -7,4 +7,4 @@ static inline struct pthread *__pthread_self()
-
- #define TP_ADJ(p) (p)
-
--#define CANCEL_REG_IP 14
-+#define MC_PC gregs[REG_EIP]
-diff --git a/arch/microblaze/pthread_arch.h b/arch/microblaze/pthread_arch.h
-index 259d3d6..08d1ba7 100644
---- a/arch/microblaze/pthread_arch.h
-+++ b/arch/microblaze/pthread_arch.h
-@@ -7,4 +7,4 @@ static inline struct pthread *__pthread_self()
-
- #define TP_ADJ(p) (p)
-
--#define CANCEL_REG_IP 32
-+#define MC_PC regs.pc
-diff --git a/arch/mips/pthread_arch.h b/arch/mips/pthread_arch.h
-index 93edbd4..8a49965 100644
---- a/arch/mips/pthread_arch.h
-+++ b/arch/mips/pthread_arch.h
-@@ -16,4 +16,4 @@ static inline struct pthread *__pthread_self()
-
- #define DTP_OFFSET 0x8000
-
--#define CANCEL_REG_IP (3-(union {int __i; char __b;}){1}.__b)
-+#define MC_PC pc
-diff --git a/arch/or1k/pthread_arch.h b/arch/or1k/pthread_arch.h
-index ad63169..7decd76 100644
---- a/arch/or1k/pthread_arch.h
-+++ b/arch/or1k/pthread_arch.h
-@@ -14,5 +14,4 @@ static inline struct pthread *__pthread_self()
- #define TLS_ABOVE_TP
- #define TP_ADJ(p) ((char *)(p) + sizeof(struct pthread))
-
--/* word-offset to 'pc' in mcontext_t */
--#define CANCEL_REG_IP 32
-+#define MC_PC regs.pc
-diff --git a/arch/powerpc/pthread_arch.h b/arch/powerpc/pthread_arch.h
-index bb7405d..7c5c4fa 100644
---- a/arch/powerpc/pthread_arch.h
-+++ b/arch/powerpc/pthread_arch.h
-@@ -15,9 +15,8 @@ static inline struct pthread *__pthread_self()
-
- #define DTP_OFFSET 0x8000
-
--// offset of the PC register in mcontext_t, divided by the system wordsize
- // the kernel calls the ip "nip", it's the first saved value after the 32
- // GPRs.
--#define CANCEL_REG_IP 32
-+#define MC_PC gregs[32]
-
- #define CANARY canary_at_end
-diff --git a/arch/sh/pthread_arch.h b/arch/sh/pthread_arch.h
-index 65c389f..2756e7e 100644
---- a/arch/sh/pthread_arch.h
-+++ b/arch/sh/pthread_arch.h
-@@ -8,4 +8,4 @@ static inline struct pthread *__pthread_self()
- #define TLS_ABOVE_TP
- #define TP_ADJ(p) ((char *)(p) + sizeof(struct pthread) - 8)
-
--#define CANCEL_REG_IP 17
-+#define MC_PC sc_pc
-diff --git a/arch/x32/pthread_arch.h b/arch/x32/pthread_arch.h
-index 033bfd6..ecb0bbf 100644
---- a/arch/x32/pthread_arch.h
-+++ b/arch/x32/pthread_arch.h
-@@ -7,6 +7,6 @@ static inline struct pthread *__pthread_self()
-
- #define TP_ADJ(p) (p)
-
--#define CANCEL_REG_IP 32
-+#define MC_PC gregs[REG_RIP]
-
- #define CANARY canary2
-diff --git a/arch/x86_64/pthread_arch.h b/arch/x86_64/pthread_arch.h
-index 29e4590..c61509c 100644
---- a/arch/x86_64/pthread_arch.h
-+++ b/arch/x86_64/pthread_arch.h
-@@ -7,4 +7,4 @@ static inline struct pthread *__pthread_self()
-
- #define TP_ADJ(p) (p)
-
--#define CANCEL_REG_IP 16
-+#define MC_PC gregs[REG_RIP]
-diff --git a/src/thread/pthread_cancel.c b/src/thread/pthread_cancel.c
-index 0151a1a..6eaf72c 100644
---- a/src/thread/pthread_cancel.c
-+++ b/src/thread/pthread_cancel.c
-@@ -1,3 +1,4 @@
-+#define _GNU_SOURCE
- #include <string.h>
- #include "pthread_impl.h"
- #include "syscall.h"
-@@ -61,15 +62,15 @@ static void cancel_handler(int sig, siginfo_t *si, void *ctx)
- {
- pthread_t self = __pthread_self();
- ucontext_t *uc = ctx;
-- const char *ip = ((char **)&uc->uc_mcontext)[CANCEL_REG_IP];
-+ uintptr_t pc = uc->uc_mcontext.MC_PC;
-
- a_barrier();
- if (!self->cancel || self->canceldisable == PTHREAD_CANCEL_DISABLE) return;
-
- _sigaddset(&uc->uc_sigmask, SIGCANCEL);
-
-- if (self->cancelasync || ip >= __cp_begin && ip < __cp_end) {
-- ((char **)&uc->uc_mcontext)[CANCEL_REG_IP] = (char *)__cp_cancel;
-+ if (self->cancelasync || pc >= (uintptr_t)__cp_begin && pc < (uintptr_t)__cp_end) {
-+ uc->uc_mcontext.MC_PC = (uintptr_t)__cp_cancel;
- return;
- }
-
---
-2.7.0
-
diff --git a/main/musl/0005-use-explicit-__cp_cancel-label-in-cancellable-syscal.patch b/main/musl/0005-use-explicit-__cp_cancel-label-in-cancellable-syscal.patch
deleted file mode 100644
index f4d7637d00..0000000000
--- a/main/musl/0005-use-explicit-__cp_cancel-label-in-cancellable-syscal.patch
+++ /dev/null
@@ -1,220 +0,0 @@
-From 36e8b6a28be5d4ffad966386b1e1c0d0dc6ca11a Mon Sep 17 00:00:00 2001
-From: Rich Felker <dalias@aerifal.cx>
-Date: Mon, 2 Nov 2015 16:16:00 -0500
-Subject: [PATCH] use explicit __cp_cancel label in cancellable syscall asm for
- all archs
-
-previously, only archs that needed to do stack cleanup defined a
-__cp_cancel label for acting on cancellation in their syscall asm, and
-a default definition was provided by a weak alias to __cancel, the C
-function. this resulted in wrong codegen for arm on gcc versions
-affected by pr 68178 and possibly similar issues (like pr 66609) on
-other archs, and also created an inconsistency where the __cp_begin
-and __cp_end labels were treated as const data but __cp_cancel was
-treated as a function. this in turn caused incorrect code generation
-on archs where function pointers point to function descriptors rather
-than code (for now, only sh/fdpic).
----
- src/thread/aarch64/syscall_cp.s | 7 +++----
- src/thread/microblaze/syscall_cp.s | 4 +++-
- src/thread/or1k/syscall_cp.s | 5 ++++-
- src/thread/powerpc/syscall_cp.s | 4 +++-
- src/thread/pthread_cancel.c | 10 ++--------
- src/thread/sh/syscall_cp.s | 22 +++++++++++-----------
- src/thread/x32/syscall_cp.s | 4 +++-
- src/thread/x86_64/syscall_cp.s | 4 +++-
- 8 files changed, 32 insertions(+), 28 deletions(-)
-
-diff --git a/src/thread/aarch64/syscall_cp.s b/src/thread/aarch64/syscall_cp.s
-index 30e677c..41db68a 100644
---- a/src/thread/aarch64/syscall_cp.s
-+++ b/src/thread/aarch64/syscall_cp.s
-@@ -17,7 +17,7 @@
- __syscall_cp_asm:
- __cp_begin:
- ldr w0,[x0]
-- cbnz w0,1f
-+ cbnz w0,__cp_cancel
- mov x8,x1
- mov x0,x2
- mov x1,x3
-@@ -28,6 +28,5 @@ __cp_begin:
- svc 0
- __cp_end:
- ret
--
-- // cbnz might not be able to jump far enough
--1: b __cancel
-+__cp_cancel:
-+ b __cancel
-diff --git a/src/thread/microblaze/syscall_cp.s b/src/thread/microblaze/syscall_cp.s
-index 51599c9..b0df61c 100644
---- a/src/thread/microblaze/syscall_cp.s
-+++ b/src/thread/microblaze/syscall_cp.s
-@@ -11,7 +11,7 @@
- __syscall_cp_asm:
- __cp_begin:
- lwi r5, r5, 0
-- bnei r5, __cancel
-+ bnei r5, __cp_cancel
- addi r12, r6, 0
- add r5, r7, r0
- add r6, r8, r0
-@@ -23,3 +23,5 @@ __cp_begin:
- __cp_end:
- rtsd r15, 8
- nop
-+__cp_cancel:
-+ bri __cancel
-diff --git a/src/thread/or1k/syscall_cp.s b/src/thread/or1k/syscall_cp.s
-index 2c0bf0e..7951166 100644
---- a/src/thread/or1k/syscall_cp.s
-+++ b/src/thread/or1k/syscall_cp.s
-@@ -12,7 +12,7 @@ __syscall_cp_asm:
- __cp_begin:
- l.lwz r3, 0(r3)
- l.sfeqi r3, 0
-- l.bnf __cancel
-+ l.bnf __cp_cancel
- l.ori r11, r4, 0
- l.ori r3, r5, 0
- l.ori r4, r6, 0
-@@ -24,3 +24,6 @@ __cp_begin:
- __cp_end:
- l.jr r9
- l.nop
-+__cp_cancel:
-+ l.j __cancel
-+ l.nop
-diff --git a/src/thread/powerpc/syscall_cp.s b/src/thread/powerpc/syscall_cp.s
-index 20b5e0a..77f8938 100644
---- a/src/thread/powerpc/syscall_cp.s
-+++ b/src/thread/powerpc/syscall_cp.s
-@@ -38,7 +38,7 @@ __cp_begin:
- cmpwi cr7, 0, 0 #compare r0 with 0, store result in cr7.
- beq+ cr7, 1f #jump to label 1 if r0 was 0
-
-- b __cancel #else call cancel
-+ b __cp_cancel #else call cancel
- 1:
- #ok, the cancel flag was not set
- # syscall: number goes to r0, the rest 3-8
-@@ -55,3 +55,5 @@ __cp_end:
- #else negate result.
- neg 3, 3
- blr
-+__cp_cancel:
-+ b __cancel
-diff --git a/src/thread/pthread_cancel.c b/src/thread/pthread_cancel.c
-index 6eaf72c..c4631f0 100644
---- a/src/thread/pthread_cancel.c
-+++ b/src/thread/pthread_cancel.c
-@@ -7,7 +7,7 @@
- #ifdef SHARED
- __attribute__((__visibility__("hidden")))
- #endif
--long __cancel(), __cp_cancel(), __syscall_cp_asm(), __syscall_cp_c();
-+long __cancel(), __syscall_cp_asm(), __syscall_cp_c();
-
- long __cancel()
- {
-@@ -18,12 +18,6 @@ long __cancel()
- return -ECANCELED;
- }
-
--/* If __syscall_cp_asm has adjusted the stack pointer, it must provide a
-- * definition of __cp_cancel to undo those adjustments and call __cancel.
-- * Otherwise, __cancel provides a definition for __cp_cancel. */
--
--weak_alias(__cancel, __cp_cancel);
--
- long __syscall_cp_asm(volatile void *, syscall_arg_t,
- syscall_arg_t, syscall_arg_t, syscall_arg_t,
- syscall_arg_t, syscall_arg_t, syscall_arg_t);
-@@ -56,7 +50,7 @@ static void _sigaddset(sigset_t *set, int sig)
- #ifdef SHARED
- __attribute__((__visibility__("hidden")))
- #endif
--extern const char __cp_begin[1], __cp_end[1];
-+extern const char __cp_begin[1], __cp_end[1], __cp_cancel[1];
-
- static void cancel_handler(int sig, siginfo_t *si, void *ctx)
- {
-diff --git a/src/thread/sh/syscall_cp.s b/src/thread/sh/syscall_cp.s
-index c3cafac..bb848ef 100644
---- a/src/thread/sh/syscall_cp.s
-+++ b/src/thread/sh/syscall_cp.s
-@@ -14,17 +14,8 @@ __syscall_cp_asm:
- __cp_begin:
- mov.l @r4, r4
- tst r4, r4
-- bt 2f
--
-- mov.l L1, r0
-- braf r0
-- nop
--1:
--
--.align 2
--L1: .long __cancel@PLT-(1b-.)
--
--2: mov r5, r3
-+ bf __cp_cancel
-+ mov r5, r3
- mov r6, r4
- mov r7, r5
- mov.l @r15, r6
-@@ -43,3 +34,12 @@ __cp_end:
-
- rts
- nop
-+
-+__cp_cancel:
-+ mov.l 2f, r0
-+ braf r0
-+ nop
-+1:
-+
-+.align 2
-+2: .long __cancel@PCREL-(1b-.)
-diff --git a/src/thread/x32/syscall_cp.s b/src/thread/x32/syscall_cp.s
-index 79709a5..9805af0 100644
---- a/src/thread/x32/syscall_cp.s
-+++ b/src/thread/x32/syscall_cp.s
-@@ -14,7 +14,7 @@ __syscall_cp_internal:
- __cp_begin:
- mov (%rdi),%eax
- test %eax,%eax
-- jnz __cancel
-+ jnz __cp_cancel
- mov %rdi,%r11
- mov %rsi,%rax
- mov %rdx,%rdi
-@@ -27,3 +27,5 @@ __cp_begin:
- syscall
- __cp_end:
- ret
-+__cp_cancel:
-+ jmp __cancel
-diff --git a/src/thread/x86_64/syscall_cp.s b/src/thread/x86_64/syscall_cp.s
-index 1a0fd5d..4f10171 100644
---- a/src/thread/x86_64/syscall_cp.s
-+++ b/src/thread/x86_64/syscall_cp.s
-@@ -14,7 +14,7 @@ __syscall_cp_asm:
- __cp_begin:
- mov (%rdi),%eax
- test %eax,%eax
-- jnz __cancel
-+ jnz __cp_cancel
- mov %rdi,%r11
- mov %rsi,%rax
- mov %rdx,%rdi
-@@ -27,3 +27,5 @@ __cp_begin:
- syscall
- __cp_end:
- ret
-+__cp_cancel:
-+ jmp __cancel
---
-2.7.0
-
diff --git a/main/musl/0006-prevent-allocs-than-PTRDIFF_MAX-via-mremap.patch b/main/musl/0006-prevent-allocs-than-PTRDIFF_MAX-via-mremap.patch
deleted file mode 100644
index d373ac9114..0000000000
--- a/main/musl/0006-prevent-allocs-than-PTRDIFF_MAX-via-mremap.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From f9ecb6bfa1dc9f93a10dad97a158e6b8334c586c Mon Sep 17 00:00:00 2001
-From: Daniel Micay <danielmicay@gmail.com>
-Date: Sat, 31 Oct 2015 05:14:45 -0400
-Subject: [PATCH] prevent allocs than PTRDIFF_MAX via mremap
-
-It's quite feasible for this to happen via MREMAP_MAYMOVE.
----
- src/mman/mremap.c | 9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
-diff --git a/src/mman/mremap.c b/src/mman/mremap.c
-index 596c45f..1096ace 100644
---- a/src/mman/mremap.c
-+++ b/src/mman/mremap.c
-@@ -1,5 +1,7 @@
- #include <unistd.h>
- #include <sys/mman.h>
-+#include <errno.h>
-+#include <stdint.h>
- #include <stdarg.h>
- #include "syscall.h"
- #include "libc.h"
-@@ -8,7 +10,12 @@ void *__mremap(void *old_addr, size_t old_len, size_t new_len, int flags, ...)
- {
- va_list ap;
- void *new_addr;
--
-+
-+ if (new_len >= PTRDIFF_MAX) {
-+ errno = ENOMEM;
-+ return MAP_FAILED;
-+ }
-+
- va_start(ap, flags);
- new_addr = va_arg(ap, void *);
- va_end(ap);
---
-2.7.0
-
diff --git a/main/musl/0007-fix-mremap-memory-synchronization-and-use-of-variadi.patch b/main/musl/0007-fix-mremap-memory-synchronization-and-use-of-variadi.patch
deleted file mode 100644
index f88888f10d..0000000000
--- a/main/musl/0007-fix-mremap-memory-synchronization-and-use-of-variadi.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From fda365a53074f97f3213caefe70ea13297acecb2 Mon Sep 17 00:00:00 2001
-From: Rich Felker <dalias@aerifal.cx>
-Date: Mon, 2 Nov 2015 16:37:51 -0500
-Subject: [PATCH] fix mremap memory synchronization and use of variadic
- argument
-
-since mremap with the MREMAP_FIXED flag is an operation that unmaps
-existing mappings, it needs to use the vm lock mechanism to ensure
-that any in-progress synchronization operations using vm identities
-from before the call have finished.
-
-also, the variadic argument was erroneously being read even if the
-MREMAP_FIXED flag was not passed. in practice this didn't break
-anything, but it's UB and in theory LTO could turn it into a hard
-error.
----
- src/mman/mremap.c | 15 +++++++++++----
- 1 file changed, 11 insertions(+), 4 deletions(-)
-
-diff --git a/src/mman/mremap.c b/src/mman/mremap.c
-index 1096ace..ce4e8ea 100644
---- a/src/mman/mremap.c
-+++ b/src/mman/mremap.c
-@@ -1,3 +1,4 @@
-+#define _GNU_SOURCE
- #include <unistd.h>
- #include <sys/mman.h>
- #include <errno.h>
-@@ -6,19 +7,25 @@
- #include "syscall.h"
- #include "libc.h"
-
-+static void dummy(void) { }
-+weak_alias(dummy, __vm_wait);
-+
- void *__mremap(void *old_addr, size_t old_len, size_t new_len, int flags, ...)
- {
- va_list ap;
-- void *new_addr;
-+ void *new_addr = 0;
-
- if (new_len >= PTRDIFF_MAX) {
- errno = ENOMEM;
- return MAP_FAILED;
- }
-
-- va_start(ap, flags);
-- new_addr = va_arg(ap, void *);
-- va_end(ap);
-+ if (flags & MREMAP_FIXED) {
-+ __vm_wait();
-+ va_start(ap, flags);
-+ new_addr = va_arg(ap, void *);
-+ va_end(ap);
-+ }
-
- return (void *)syscall(SYS_mremap, old_addr, old_len, new_len, flags, new_addr);
- }
---
-2.7.0
-
diff --git a/main/musl/0008-have-configure-check-add-ffunction-sections-and-fdat.patch b/main/musl/0008-have-configure-check-add-ffunction-sections-and-fdat.patch
deleted file mode 100644
index d74f5bd10f..0000000000
--- a/main/musl/0008-have-configure-check-add-ffunction-sections-and-fdat.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 27c1eccf33ce5cb7508ef5e541daa9b6441b4a51 Mon Sep 17 00:00:00 2001
-From: Rich Felker <dalias@aerifal.cx>
-Date: Wed, 4 Nov 2015 13:24:11 -0500
-Subject: [PATCH] have configure check/add -ffunction-sections and
- -fdata-sections
-
-based on patch by Denys Vlasenko. the original intent for using these
-options was to enable linking optimizations. these are immediately
-available for static linking applications to libc.a, and will also be
-used for linking libc.so in a subsequent commit.
-
-in addition to the original motives, this change works around a whole
-class of toolchain bugs where the compiler generates relative address
-expressions using a weak symbol and the assembler "optimizes out" the
-relocation which should result by using the weak definition. (see gas
-pr 18561 and gcc pr 66609, 68178, etc. for examples.) by having
-different functions and data objects in their own sections, all
-relative address expressions are cross-section and thus cannot be
-resolved to constants until link time. this allows us to retain
-support for affected compiler/assembler versions without invasive
-and fragile source-level workarounds.
----
- configure | 11 +++++++++++
- 1 file changed, 11 insertions(+)
-
-diff --git a/configure b/configure
-index 3e536f5..1e5c4b3 100755
---- a/configure
-+++ b/configure
-@@ -437,6 +437,17 @@ tryflag CFLAGS_AUTO -fno-unwind-tables
- tryflag CFLAGS_AUTO -fno-asynchronous-unwind-tables
-
- #
-+# Attempt to put each function and each data object in its own
-+# section. This both allows additional size optimizations at link
-+# time and works around a dangerous class of compiler/assembler bugs
-+# whereby relative address expressions are constant-folded by the
-+# assembler even when one or more of the symbols involved is
-+# replaceable. See gas pr 18561 and gcc pr 66609, 68178, etc.
-+#
-+tryflag CFLAGS_AUTO -ffunction-sections
-+tryflag CFLAGS_AUTO -fdata-sections
-+
-+#
- # On x86, make sure we don't have incompatible instruction set
- # extensions enabled by default. This is bad for making static binaries.
- # We cheat and use i486 rather than i386 because i386 really does not
---
-2.7.0
-
diff --git a/main/musl/0009-have-configure-check-add-linker-options-to-reduce-si.patch b/main/musl/0009-have-configure-check-add-linker-options-to-reduce-si.patch
deleted file mode 100644
index a9307e62d9..0000000000
--- a/main/musl/0009-have-configure-check-add-linker-options-to-reduce-si.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 2efd38e8c70f00ca6bbc1eb5199aa507d45436cf Mon Sep 17 00:00:00 2001
-From: Rich Felker <dalias@aerifal.cx>
-Date: Wed, 4 Nov 2015 21:39:13 -0500
-Subject: [PATCH] have configure check/add linker options to reduce size lost
- to padding
-
-based on patch by Denys Vlasenko. sorting sections and common data
-symbols by alignment acts as an approximation for optimal packing,
-which the linker does not actually support.
----
- configure | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/configure b/configure
-index 1e5c4b3..d04c860 100755
---- a/configure
-+++ b/configure
-@@ -515,6 +515,12 @@ CFLAGS_AUTO="$CFLAGS_AUTO -include vis.h"
- CFLAGS_AUTO="${CFLAGS_AUTO# }"
- fi
-
-+# Reduce space lost to padding for alignment purposes by sorting data
-+# objects according to their alignment reqirements. This approximates
-+# optimal packing.
-+tryldflag LDFLAGS_AUTO -Wl,--sort-section,alignment
-+tryldflag LDFLAGS_AUTO -Wl,--sort-common
-+
- # Some patched GCC builds have these defaults messed up...
- tryldflag LDFLAGS_AUTO -Wl,--hash-style=both
-
---
-2.7.0
-
diff --git a/main/musl/0010-have-configure-check-add-gc-sections-linker-option.patch b/main/musl/0010-have-configure-check-add-gc-sections-linker-option.patch
deleted file mode 100644
index a9549a2a61..0000000000
--- a/main/musl/0010-have-configure-check-add-gc-sections-linker-option.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 6a851e3ab8a1ae524b2aa6218615ec1c86528e9c Mon Sep 17 00:00:00 2001
-From: Rich Felker <dalias@aerifal.cx>
-Date: Wed, 4 Nov 2015 21:40:36 -0500
-Subject: [PATCH] have configure check/add --gc-sections linker option
-
-this allowing the linker to drop certain weak definitions that are
-only used as dummies for static linking. they could be eliminated for
-shared library builds using the preprocessor instead, but we are
-trying to transition to using the same object files for shared and
-static libc, so a link-time solution is preferable.
----
- configure | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/configure b/configure
-index d04c860..dece1d0 100755
---- a/configure
-+++ b/configure
-@@ -521,6 +521,10 @@ fi
- tryldflag LDFLAGS_AUTO -Wl,--sort-section,alignment
- tryldflag LDFLAGS_AUTO -Wl,--sort-common
-
-+# When linking shared library, drop dummy weak definitions that were
-+# replaced by strong definitions from other translation units.
-+tryldflag LDFLAGS_AUTO -Wl,--gc-sections
-+
- # Some patched GCC builds have these defaults messed up...
- tryldflag LDFLAGS_AUTO -Wl,--hash-style=both
-
---
-2.7.0
-
diff --git a/main/musl/0011-work-around-toolchains-with-broken-visibility-in-lib.patch b/main/musl/0011-work-around-toolchains-with-broken-visibility-in-lib.patch
deleted file mode 100644
index d871e8b991..0000000000
--- a/main/musl/0011-work-around-toolchains-with-broken-visibility-in-lib.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From ea1e2c5e18dd0790fb9b2af2bd947f4981736dc2 Mon Sep 17 00:00:00 2001
-From: Rich Felker <dalias@aerifal.cx>
-Date: Sat, 7 Nov 2015 20:23:49 -0500
-Subject: [PATCH] work around toolchains with broken visibility in
- libgcc/libpcc
-
----
- configure | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/configure b/configure
-index dece1d0..ee21771 100755
---- a/configure
-+++ b/configure
-@@ -534,6 +534,11 @@ tryldflag LDFLAGS_AUTO -Wl,--hash-style=both
- # runtime library; implementation error is also a possibility.
- tryldflag LDFLAGS_AUTO -Wl,--no-undefined
-
-+# Avoid exporting symbols from compiler runtime libraries. They
-+# should be hidden anyway, but some toolchains including old gcc
-+# versions built without shared library support and pcc are broken.
-+tryldflag LDFLAGS_AUTO -Wl,--exclude-libs=ALL
-+
- test "$shared" = "no" || {
- # Disable dynamic linking if ld is broken and can't do -Bsymbolic-functions
- LDFLAGS_DUMMY=
---
-2.7.0
-
diff --git a/main/musl/0012-fix-return-value-of-nl_langinfo-for-invalid-item-arg.patch b/main/musl/0012-fix-return-value-of-nl_langinfo-for-invalid-item-arg.patch
deleted file mode 100644
index 69a17689de..0000000000
--- a/main/musl/0012-fix-return-value-of-nl_langinfo-for-invalid-item-arg.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From a946e8117ed51dd771bd8cac3575fc28a0399a32 Mon Sep 17 00:00:00 2001
-From: Rich Felker <dalias@aerifal.cx>
-Date: Tue, 10 Nov 2015 23:07:17 -0500
-Subject: [PATCH] fix return value of nl_langinfo for invalid item arguments
-
-it was wrongly returning a null pointer instead of an empty string.
----
- src/locale/langinfo.c | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/src/locale/langinfo.c b/src/locale/langinfo.c
-index d3c90d9..b2c8569 100644
---- a/src/locale/langinfo.c
-+++ b/src/locale/langinfo.c
-@@ -37,23 +37,23 @@ char *__nl_langinfo_l(nl_item item, locale_t loc)
-
- switch (cat) {
- case LC_NUMERIC:
-- if (idx > 1) return NULL;
-+ if (idx > 1) return "";
- str = c_numeric;
- break;
- case LC_TIME:
-- if (idx > 0x31) return NULL;
-+ if (idx > 0x31) return "";
- str = c_time;
- break;
- case LC_MONETARY:
-- if (idx > 0) return NULL;
-+ if (idx > 0) return "";
- str = "";
- break;
- case LC_MESSAGES:
-- if (idx > 3) return NULL;
-+ if (idx > 3) return "";
- str = c_messages;
- break;
- default:
-- return NULL;
-+ return "";
- }
-
- for (; idx; idx--, str++) for (; *str; str++);
---
-2.7.0
-
diff --git a/main/musl/0013-math-explicitly-promote-expressions-to-excess-precis.patch b/main/musl/0013-math-explicitly-promote-expressions-to-excess-precis.patch
deleted file mode 100644
index c98d9b52b7..0000000000
--- a/main/musl/0013-math-explicitly-promote-expressions-to-excess-precis.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From 8eead3ef18ea71a64ef3cbff8c09bac3b82f1242 Mon Sep 17 00:00:00 2001
-From: Rich Felker <dalias@aerifal.cx>
-Date: Sat, 21 Nov 2015 21:23:30 +0000
-Subject: [PATCH] math: explicitly promote expressions to excess-precision
- types
-
-a conforming compiler for an arch with excess precision floating point
-(FLT_EVAL_METHOD!=0; presently i386 is the only such arch supported)
-computes all intermediate results in the types float_t and double_t
-rather than the nominal type of the expression. some incorrect
-compilers, however, only keep excess precision in registers, and
-convert down to the nominal type when spilling intermediate results to
-memory, yielding unpredictable results that depend on the compiler's
-choices of what/when to spill. in particular, this happens on old gcc
-versions with -ffloat-store, which we need in order to work around
-bugs where the compiler wrongly keeps explicitly-dropped excess
-precision.
-
-by explicitly converting to double_t where expressions are expected be
-be evaluated in double_t precision, we can avoid depending on the
-compiler to get types correct when spilling; the nominal and
-intermediate precision now match. this commit should not change the
-code generated by correct compilers, or by old ones on non-i386 archs
-where double_t is defined as double.
-
-this fixes a serious bug in argument reduction observed on i386 with
-gcc 4.2: for values of x outside the unit circle, sin(x) was producing
-results outside the interval [-1,1]. changes made in commit
-0ce946cf808274c2d6e5419b139e130c8ad4bd30 were likely responsible for
-breaking compatibility with this and other old gcc versions.
-
-patch by Szabolcs Nagy.
----
- src/math/__rem_pio2.c | 2 +-
- src/math/__rem_pio2f.c | 2 +-
- src/math/hypot.c | 4 ++--
- 3 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/src/math/__rem_pio2.c b/src/math/__rem_pio2.c
-index a40db9f..d403f81 100644
---- a/src/math/__rem_pio2.c
-+++ b/src/math/__rem_pio2.c
-@@ -118,7 +118,7 @@ int __rem_pio2(double x, double *y)
- if (ix < 0x413921fb) { /* |x| ~< 2^20*(pi/2), medium size */
- medium:
- /* rint(x/(pi/2)), Assume round-to-nearest. */
-- fn = x*invpio2 + toint - toint;
-+ fn = (double_t)x*invpio2 + toint - toint;
- n = (int32_t)fn;
- r = x - fn*pio2_1;
- w = fn*pio2_1t; /* 1st round, good to 85 bits */
-diff --git a/src/math/__rem_pio2f.c b/src/math/__rem_pio2f.c
-index f516385..4473c1c 100644
---- a/src/math/__rem_pio2f.c
-+++ b/src/math/__rem_pio2f.c
-@@ -51,7 +51,7 @@ int __rem_pio2f(float x, double *y)
- /* 25+53 bit pi is good enough for medium size */
- if (ix < 0x4dc90fdb) { /* |x| ~< 2^28*(pi/2), medium size */
- /* Use a specialized rint() to get fn. Assume round-to-nearest. */
-- fn = x*invpio2 + toint - toint;
-+ fn = (double_t)x*invpio2 + toint - toint;
- n = (int32_t)fn;
- *y = x - fn*pio2_1 - fn*pio2_1t;
- return n;
-diff --git a/src/math/hypot.c b/src/math/hypot.c
-index 29ec6a4..6071bf1 100644
---- a/src/math/hypot.c
-+++ b/src/math/hypot.c
-@@ -12,10 +12,10 @@ static void sq(double_t *hi, double_t *lo, double x)
- {
- double_t xh, xl, xc;
-
-- xc = x*SPLIT;
-+ xc = (double_t)x*SPLIT;
- xh = x - xc + xc;
- xl = x - xh;
-- *hi = x*x;
-+ *hi = (double_t)x*x;
- *lo = xh*xh - *hi + 2*xh*xl + xl*xl;
- }
-
---
-2.7.0
-
diff --git a/main/musl/0014-ldso-fix-the-dtv-update-logic-in-__tls_get_new.patch b/main/musl/0014-ldso-fix-the-dtv-update-logic-in-__tls_get_new.patch
deleted file mode 100644
index 852cc46732..0000000000
--- a/main/musl/0014-ldso-fix-the-dtv-update-logic-in-__tls_get_new.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 12978acb3066db738c8c15121e81adbb63739876 Mon Sep 17 00:00:00 2001
-From: Szabolcs Nagy <nsz@port70.net>
-Date: Thu, 26 Nov 2015 19:59:46 +0100
-Subject: [PATCH] ldso: fix the dtv update logic in __tls_get_new
-
-if two or more threads accessed tls in a dso that was loaded after
-the threads were created, then __tls_get_new could do out-of-bound
-memory access (leading to segfault).
-
-accidentally byte count was used instead of element count when
-the new dtv pointer was computed. (dso->new_dtv is (void**).)
-
-it is rare that the same dso provides dtv for several threads,
-the crash was not observed in practice, but possible to trigger.
----
- src/ldso/dynlink.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/ldso/dynlink.c b/src/ldso/dynlink.c
-index 4648e9a..93e7d67 100644
---- a/src/ldso/dynlink.c
-+++ b/src/ldso/dynlink.c
-@@ -1280,7 +1280,7 @@ void *__tls_get_new(size_t *v)
- /* Get new DTV space from new DSO if needed */
- if (v[0] > (size_t)self->dtv[0]) {
- void **newdtv = p->new_dtv +
-- (v[0]+1)*sizeof(void *)*a_fetch_add(&p->new_dtv_idx,1);
-+ (v[0]+1)*a_fetch_add(&p->new_dtv_idx,1);
- memcpy(newdtv, self->dtv,
- ((size_t)self->dtv[0]+1) * sizeof(void *));
- newdtv[0] = (void *)v[0];
---
-2.7.0
-
diff --git a/main/musl/0015-properly-handle-point-to-point-interfaces-in-getifad.patch b/main/musl/0015-properly-handle-point-to-point-interfaces-in-getifad.patch
deleted file mode 100644
index 88279d07f9..0000000000
--- a/main/musl/0015-properly-handle-point-to-point-interfaces-in-getifad.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 7b712844e38bdfc1ef728e257fb8616c16ec4cc8 Mon Sep 17 00:00:00 2001
-From: Jo-Philipp Wich <jow@openwrt.org>
-Date: Thu, 19 Nov 2015 21:43:10 +0100
-Subject: [PATCH] properly handle point-to-point interfaces in getifaddrs()
-
-With point-to-point interfaces, the IFA_ADDRESS netlink attribute
-contains the peer address while an extra attribute IFA_LOCAL carries
-the actual local interface address.
-
-Both the glibc and uclibc implementations of getifaddrs() handle this
-case by moving the ifa_addr contents to the broadcast/remote address
-union and overwriting ifa_addr upon receipt of an IFA_LOCAL attribute.
-
-This patch adds the same special treatment logic of IFA_LOCAL to
-musl's implementation of getifaddrs() in order to align its behaviour
-with that of uclibc and glibc.
-
-Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
----
- src/network/getifaddrs.c | 19 ++++++++++++++++---
- 1 file changed, 16 insertions(+), 3 deletions(-)
-
-diff --git a/src/network/getifaddrs.c b/src/network/getifaddrs.c
-index 89a8f72..fed75bd 100644
---- a/src/network/getifaddrs.c
-+++ b/src/network/getifaddrs.c
-@@ -162,13 +162,26 @@ static int netlink_msg_to_ifaddr(void *pctx, struct nlmsghdr *h)
- for (rta = NLMSG_RTA(h, sizeof(*ifa)); NLMSG_RTAOK(rta, h); rta = RTA_NEXT(rta)) {
- switch (rta->rta_type) {
- case IFA_ADDRESS:
-- copy_addr(&ifs->ifa.ifa_addr, ifa->ifa_family, &ifs->addr, RTA_DATA(rta), RTA_DATALEN(rta), ifa->ifa_index);
-+ /* If ifa_addr is already set we, received an IFA_LOCAL before
-+ * so treat this as destination address */
-+ if (ifs->ifa.ifa_addr)
-+ copy_addr(&ifs->ifa.ifa_dstaddr, ifa->ifa_family, &ifs->ifu, RTA_DATA(rta), RTA_DATALEN(rta), ifa->ifa_index);
-+ else
-+ copy_addr(&ifs->ifa.ifa_addr, ifa->ifa_family, &ifs->addr, RTA_DATA(rta), RTA_DATALEN(rta), ifa->ifa_index);
- break;
- case IFA_BROADCAST:
-- /* For point-to-point links this is peer, but ifa_broadaddr
-- * and ifa_dstaddr are union, so this works for both. */
- copy_addr(&ifs->ifa.ifa_broadaddr, ifa->ifa_family, &ifs->ifu, RTA_DATA(rta), RTA_DATALEN(rta), ifa->ifa_index);
- break;
-+ case IFA_LOCAL:
-+ /* If ifa_addr is set and we get IFA_LOCAL, assume we have
-+ * a point-to-point network. Move address to correct field. */
-+ if (ifs->ifa.ifa_addr) {
-+ ifs->ifu = ifs->addr;
-+ ifs->ifa.ifa_dstaddr = &ifs->ifu.sa;
-+ memset(&ifs->addr, 0, sizeof(ifs->addr));
-+ }
-+ copy_addr(&ifs->ifa.ifa_addr, ifa->ifa_family, &ifs->addr, RTA_DATA(rta), RTA_DATALEN(rta), ifa->ifa_index);
-+ break;
- case IFA_LABEL:
- if (RTA_DATALEN(rta) < sizeof(ifs->name)) {
- memcpy(ifs->name, RTA_DATA(rta), RTA_DATALEN(rta));
---
-2.7.0
-
diff --git a/main/musl/0016-fix-tdelete-to-properly-balance-the-tree.patch b/main/musl/0016-fix-tdelete-to-properly-balance-the-tree.patch
deleted file mode 100644
index bb3c79cfbf..0000000000
--- a/main/musl/0016-fix-tdelete-to-properly-balance-the-tree.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From e4f9d811684011d8a67e363827de39d5f2d3ae5a Mon Sep 17 00:00:00 2001
-From: Szabolcs Nagy <nsz@port70.net>
-Date: Sat, 5 Dec 2015 21:02:34 +0100
-Subject: [PATCH] fix tdelete to properly balance the tree
-
-the tsearch data structure is an avl tree, but it did not implement
-the deletion operation correctly so the tree could become unbalanced.
-
-reported by Ed Schouten.
----
- src/search/tsearch_avl.c | 19 ++++++++++++++-----
- 1 file changed, 14 insertions(+), 5 deletions(-)
-
-diff --git a/src/search/tsearch_avl.c b/src/search/tsearch_avl.c
-index 8620092..0864460 100644
---- a/src/search/tsearch_avl.c
-+++ b/src/search/tsearch_avl.c
-@@ -105,10 +105,13 @@ static struct node *insert(struct node **n, const void *k,
- return r;
- }
-
--static struct node *movr(struct node *n, struct node *r) {
-- if (!n)
-- return r;
-- n->right = movr(n->right, r);
-+static struct node *remove_rightmost(struct node *n, struct node **rightmost)
-+{
-+ if (!n->right) {
-+ *rightmost = n;
-+ return n->left;
-+ }
-+ n->right = remove_rightmost(n->right, rightmost);
- return balance(n);
- }
-
-@@ -122,7 +125,13 @@ static struct node *remove(struct node **n, const void *k,
- c = cmp(k, (*n)->key);
- if (c == 0) {
- struct node *r = *n;
-- *n = movr(r->left, r->right);
-+ if (r->left) {
-+ r->left = remove_rightmost(r->left, n);
-+ (*n)->left = r->left;
-+ (*n)->right = r->right;
-+ *n = balance(*n);
-+ } else
-+ *n = r->right;
- free(r);
- return parent;
- }
---
-2.7.0
-
diff --git a/main/musl/0017-fix-tsearch-to-avoid-crash-on-oom.patch b/main/musl/0017-fix-tsearch-to-avoid-crash-on-oom.patch
deleted file mode 100644
index 135d365ad9..0000000000
--- a/main/musl/0017-fix-tsearch-to-avoid-crash-on-oom.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From bc9744763afe72d626e7b9f461001d425582fe9c Mon Sep 17 00:00:00 2001
-From: Szabolcs Nagy <nsz@port70.net>
-Date: Sat, 5 Dec 2015 21:04:18 +0100
-Subject: [PATCH] fix tsearch to avoid crash on oom
-
-malloc failure was not properly propagated in the insertion method
-which led to null pointer dereference.
----
- src/search/tsearch_avl.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/search/tsearch_avl.c b/src/search/tsearch_avl.c
-index 0864460..8c2f347 100644
---- a/src/search/tsearch_avl.c
-+++ b/src/search/tsearch_avl.c
-@@ -89,8 +89,8 @@ static struct node *insert(struct node **n, const void *k,
- r->key = k;
- r->left = r->right = 0;
- r->height = 1;
-+ *new = 1;
- }
-- *new = 1;
- return r;
- }
- c = cmp(k, r->key);
---
-2.7.0
-
diff --git a/main/musl/0018-tsearch-code-cleanup.patch b/main/musl/0018-tsearch-code-cleanup.patch
deleted file mode 100644
index 261b32553b..0000000000
--- a/main/musl/0018-tsearch-code-cleanup.patch
+++ /dev/null
@@ -1,90 +0,0 @@
-From 8994908b199a57097f420707b1fca75fc30236fa Mon Sep 17 00:00:00 2001
-From: Szabolcs Nagy <nsz@port70.net>
-Date: Sat, 5 Dec 2015 21:06:02 +0100
-Subject: [PATCH] tsearch code cleanup
-
-changed the insertion method to simplify the recursion logic and
-reduce code size a bit.
----
- src/search/tsearch_avl.c | 52 ++++++++++++++++++++++++++----------------------
- 1 file changed, 28 insertions(+), 24 deletions(-)
-
-diff --git a/src/search/tsearch_avl.c b/src/search/tsearch_avl.c
-index 8c2f347..e4fb131 100644
---- a/src/search/tsearch_avl.c
-+++ b/src/search/tsearch_avl.c
-@@ -77,31 +77,35 @@ static struct node *find(struct node *n, const void *k,
- return find(n->right, k, cmp);
- }
-
--static struct node *insert(struct node **n, const void *k,
-- int (*cmp)(const void *, const void *), int *new)
-+static struct node *insert(struct node *n, const void *k,
-+ int (*cmp)(const void *, const void *), struct node **found)
- {
-- struct node *r = *n;
-+ struct node *r;
- int c;
-
-- if (!r) {
-- *n = r = malloc(sizeof **n);
-- if (r) {
-- r->key = k;
-- r->left = r->right = 0;
-- r->height = 1;
-- *new = 1;
-+ if (!n) {
-+ n = malloc(sizeof *n);
-+ if (n) {
-+ n->key = k;
-+ n->left = n->right = 0;
-+ n->height = 1;
- }
-- return r;
-+ *found = n;
-+ return n;
-+ }
-+ c = cmp(k, n->key);
-+ if (c == 0) {
-+ *found = n;
-+ return 0;
-+ }
-+ r = insert(c < 0 ? n->left : n->right, k, cmp, found);
-+ if (r) {
-+ if (c < 0)
-+ n->left = r;
-+ else
-+ n->right = r;
-+ r = balance(n);
- }
-- c = cmp(k, r->key);
-- if (c == 0)
-- return r;
-- if (c < 0)
-- r = insert(&r->left, k, cmp, new);
-- else
-- r = insert(&r->right, k, cmp, new);
-- if (*new)
-- *n = balance(*n);
- return r;
- }
-
-@@ -165,11 +169,11 @@ void *tfind(const void *key, void *const *rootp,
- void *tsearch(const void *key, void **rootp,
- int (*compar)(const void *, const void *))
- {
-- int new = 0;
-- struct node *n = *rootp;
-+ struct node *update;
- struct node *ret;
-- ret = insert(&n, key, compar, &new);
-- *rootp = n;
-+ update = insert(*rootp, key, compar, &ret);
-+ if (update)
-+ *rootp = update;
- return ret;
- }
-
---
-2.7.0
-
diff --git a/main/musl/0019-fix-tsearch-tfind-tdelete-to-handle-null-pointer-inp.patch b/main/musl/0019-fix-tsearch-tfind-tdelete-to-handle-null-pointer-inp.patch
deleted file mode 100644
index a6ea0ad753..0000000000
--- a/main/musl/0019-fix-tsearch-tfind-tdelete-to-handle-null-pointer-inp.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 3abb094d19ca4c7c4adcf373d971fb5aa05c5252 Mon Sep 17 00:00:00 2001
-From: Szabolcs Nagy <nsz@port70.net>
-Date: Sat, 5 Dec 2015 21:53:59 +0100
-Subject: [PATCH] fix tsearch, tfind, tdelete to handle null pointer input
-
-POSIX specifies the behaviour for null rootp input, but it
-was not implemented correctly.
----
- src/search/tsearch_avl.c | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/src/search/tsearch_avl.c b/src/search/tsearch_avl.c
-index e4fb131..57194c8 100644
---- a/src/search/tsearch_avl.c
-+++ b/src/search/tsearch_avl.c
-@@ -151,6 +151,8 @@ static struct node *remove(struct node **n, const void *k,
- void *tdelete(const void *restrict key, void **restrict rootp,
- int(*compar)(const void *, const void *))
- {
-+ if (!rootp)
-+ return 0;
- struct node *n = *rootp;
- struct node *ret;
- /* last argument is arbitrary non-null pointer
-@@ -163,6 +165,8 @@ void *tdelete(const void *restrict key, void **restrict rootp,
- void *tfind(const void *key, void *const *rootp,
- int(*compar)(const void *, const void *))
- {
-+ if (!rootp)
-+ return 0;
- return find(*rootp, key, compar);
- }
-
-@@ -171,6 +175,8 @@ void *tsearch(const void *key, void **rootp,
- {
- struct node *update;
- struct node *ret;
-+ if (!rootp)
-+ return 0;
- update = insert(*rootp, key, compar, &ret);
- if (update)
- *rootp = update;
---
-2.7.0
-
diff --git a/main/musl/0020-fix-crash-when-signal-number-0-is-passed-to-sigactio.patch b/main/musl/0020-fix-crash-when-signal-number-0-is-passed-to-sigactio.patch
deleted file mode 100644
index 89c9c40394..0000000000
--- a/main/musl/0020-fix-crash-when-signal-number-0-is-passed-to-sigactio.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 42216742cd69e52e70aeb1d14498a8145872de52 Mon Sep 17 00:00:00 2001
-From: Rich Felker <dalias@aerifal.cx>
-Date: Tue, 15 Dec 2015 23:20:36 -0500
-Subject: [PATCH] fix crash when signal number 0 is passed to sigaction
-
-this error case was overlooked in the old range checking logic. new
-check is moved out of __libc_sigaction to the public wrapper in order
-to unify the error path and reduce code size.
----
- src/signal/sigaction.c | 6 +-----
- 1 file changed, 1 insertion(+), 5 deletions(-)
-
-diff --git a/src/signal/sigaction.c b/src/signal/sigaction.c
-index ab23a6f..6eca06f 100644
---- a/src/signal/sigaction.c
-+++ b/src/signal/sigaction.c
-@@ -17,10 +17,6 @@ void __get_handler_set(sigset_t *set)
- int __libc_sigaction(int sig, const struct sigaction *restrict sa, struct sigaction *restrict old)
- {
- struct k_sigaction ksa, ksa_old;
-- if (sig >= (unsigned)_NSIG) {
-- errno = EINVAL;
-- return -1;
-- }
- if (sa) {
- if ((uintptr_t)sa->sa_handler > 1UL) {
- a_or_l(handler_set+(sig-1)/(8*sizeof(long)),
-@@ -57,7 +53,7 @@ int __libc_sigaction(int sig, const struct sigaction *restrict sa, struct sigact
-
- int __sigaction(int sig, const struct sigaction *restrict sa, struct sigaction *restrict old)
- {
-- if (sig-32U < 3) {
-+ if (sig-32U < 3 || sig-1U >= _NSIG-1) {
- errno = EINVAL;
- return -1;
- }
---
-2.7.0
-
diff --git a/main/musl/0021-avoid-updating-caller-s-size-when-getdelim-fails-to-.patch b/main/musl/0021-avoid-updating-caller-s-size-when-getdelim-fails-to-.patch
deleted file mode 100644
index ea1d50aeca..0000000000
--- a/main/musl/0021-avoid-updating-caller-s-size-when-getdelim-fails-to-.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From d87f0a9a95f0a1228ee5579e5822a8c93bc96823 Mon Sep 17 00:00:00 2001
-From: Rich Felker <dalias@aerifal.cx>
-Date: Sat, 19 Dec 2015 23:43:31 -0500
-Subject: [PATCH] avoid updating caller's size when getdelim fails to realloc
-
-getdelim was updating *n, the caller's stored buffer size, before
-calling realloc. if getdelim then failed due to realloc failure, the
-caller would see in *n a value larger than the actual size of the
-allocated block, and use of that value is unsafe. in particular,
-passing it again to getdelim is unsafe.
-
-now, temporary storage is used for the desired new size, and *n is not
-written until realloc succeeds.
----
- src/stdio/getdelim.c | 11 ++++++-----
- 1 file changed, 6 insertions(+), 5 deletions(-)
-
-diff --git a/src/stdio/getdelim.c b/src/stdio/getdelim.c
-index 3077490..813b09f 100644
---- a/src/stdio/getdelim.c
-+++ b/src/stdio/getdelim.c
-@@ -29,15 +29,16 @@ ssize_t getdelim(char **restrict s, size_t *restrict n, int delim, FILE *restric
- k = z ? z - f->rpos + 1 : f->rend - f->rpos;
- if (i+k+1 >= *n) {
- if (k >= SIZE_MAX/2-i) goto oom;
-- *n = i+k+2;
-- if (*n < SIZE_MAX/4) *n *= 2;
-- tmp = realloc(*s, *n);
-+ size_t m = i+k+2;
-+ if (m < SIZE_MAX/4) m *= 2;
-+ tmp = realloc(*s, m);
- if (!tmp) {
-- *n = i+k+2;
-- tmp = realloc(*s, *n);
-+ m = i+k+2;
-+ tmp = realloc(*s, m);
- if (!tmp) goto oom;
- }
- *s = tmp;
-+ *n = m;
- }
- memcpy(*s+i, f->rpos, k);
- f->rpos += k;
---
-2.7.0
-
diff --git a/main/musl/0022-fix-overly-pessimistic-realloc-strategy-in-getdelim.patch b/main/musl/0022-fix-overly-pessimistic-realloc-strategy-in-getdelim.patch
deleted file mode 100644
index c5aec3cc54..0000000000
--- a/main/musl/0022-fix-overly-pessimistic-realloc-strategy-in-getdelim.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From c673158d91ad995ed59dd910777cd6464f61fe8e Mon Sep 17 00:00:00 2001
-From: Rich Felker <dalias@aerifal.cx>
-Date: Sun, 20 Dec 2015 00:32:46 -0500
-Subject: [PATCH] fix overly pessimistic realloc strategy in getdelim
-
-previously, getdelim was allocating twice the space needed every time
-it expanded its buffer to implement exponential buffer growth (in
-order to avoid quadratic run time). however, this doubling was
-performed even when the final buffer length needed was already known,
-which is the common case that occurs whenever the delimiter is in the
-FILE's buffer.
-
-this patch makes two changes to remedy the situation:
-
-1. over-allocation is no longer performed if the delimiter has already
-been found when realloc is needed.
-
-2. growth factor is reduced from 2x to 1.5x to reduce the relative
-excess allocation in cases where the delimiter is not initially in the
-buffer, including unbuffered streams.
-
-in theory these changes could lead to quadratic time if the same
-buffer is reused to process a sequence of lines successively
-increasing in length, but once this length exceeds the stdio buffer
-size, the delimiter will not be found in the buffer right away and
-exponential growth will still kick in.
----
- src/stdio/getdelim.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/stdio/getdelim.c b/src/stdio/getdelim.c
-index 813b09f..1ccd802 100644
---- a/src/stdio/getdelim.c
-+++ b/src/stdio/getdelim.c
-@@ -30,7 +30,7 @@ ssize_t getdelim(char **restrict s, size_t *restrict n, int delim, FILE *restric
- if (i+k+1 >= *n) {
- if (k >= SIZE_MAX/2-i) goto oom;
- size_t m = i+k+2;
-- if (m < SIZE_MAX/4) m *= 2;
-+ if (!z && m < SIZE_MAX/4) m += m/2;
- tmp = realloc(*s, m);
- if (!tmp) {
- m = i+k+2;
---
-2.7.0
-
diff --git a/main/musl/0023-add-missing-protocols-to-protoent-lookup-functions.patch b/main/musl/0023-add-missing-protocols-to-protoent-lookup-functions.patch
deleted file mode 100644
index 4b22402d82..0000000000
--- a/main/musl/0023-add-missing-protocols-to-protoent-lookup-functions.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From d5f8394f6ea9549607567bd92de12a2446c15614 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
-Date: Tue, 5 Jan 2016 16:58:40 +0200
-Subject: [PATCH] add missing protocols to protoent lookup functions
-
----
- src/network/proto.c | 17 ++++++++++++++++-
- 1 file changed, 16 insertions(+), 1 deletion(-)
-
-diff --git a/src/network/proto.c b/src/network/proto.c
-index 43aa17a..a42d145 100644
---- a/src/network/proto.c
-+++ b/src/network/proto.c
-@@ -9,21 +9,36 @@ static const unsigned char protos[] = {
- "\001icmp\0"
- "\002igmp\0"
- "\003ggp\0"
-+ "\004ipencap\0"
-+ "\005st\0"
- "\006tcp\0"
-+ "\008egp\0"
- "\014pup\0"
- "\021udp\0"
-- "\026idp\0"
-+ "\024hmp\0"
-+ "\026xns-idp\0"
-+ "\033rdp\0"
-+ "\035iso-tp4\0"
-+ "\044xtp\0"
-+ "\045ddp\0"
-+ "\046idpr-cmtp\0"
- "\051ipv6\0"
- "\053ipv6-route\0"
- "\054ipv6-frag\0"
-+ "\055idrp\0"
-+ "\056rsvp\0"
- "\057gre\0"
- "\062esp\0"
- "\063ah\0"
-+ "\071skip\0"
- "\072ipv6-icmp\0"
- "\073ipv6-nonxt\0"
- "\074ipv6-opts\0"
-+ "\111rspf\0"
-+ "\121vmtp\0"
- "\131ospf\0"
- "\136ipip\0"
-+ "\142encap\0"
- "\147pim\0"
- "\377raw"
- };
---
-2.7.0
-
diff --git a/main/musl/APKBUILD b/main/musl/APKBUILD
index bb51443abe..457f6a41c3 100644
--- a/main/musl/APKBUILD
+++ b/main/musl/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: William Pitcock <nenolod@dereferenced.org>
# Maintainer: Timo Teräs <timo.teras@iki.fi>
pkgname=musl
-pkgver=1.1.12
-pkgrel=2
+pkgver=1.1.13
+pkgrel=0
pkgdesc="the musl c library (libc) implementation"
url="http://www.musl-libc.org/"
arch="all"
@@ -12,29 +12,6 @@ depends_dev="!uclibc-dev"
makedepends="$depends_dev"
subpackages="$pkgname-dev $pkgname-utils $pkgname-dbg libc6-compat:compat"
source="http://www.musl-libc.org/releases/musl-$pkgver.tar.gz
- 0001-fix-single-byte-overflow-of-malloc-d-buffer-in-getde.patch
- 0002-safely-handle-failure-to-open-hosts-services-resolv..patch
- 0003-getnameinfo-make-size-check-not-fail-for-bigger-size.patch
- 0004-properly-access-mcontext_t-program-counter-in-cancel.patch
- 0005-use-explicit-__cp_cancel-label-in-cancellable-syscal.patch
- 0006-prevent-allocs-than-PTRDIFF_MAX-via-mremap.patch
- 0007-fix-mremap-memory-synchronization-and-use-of-variadi.patch
- 0008-have-configure-check-add-ffunction-sections-and-fdat.patch
- 0009-have-configure-check-add-linker-options-to-reduce-si.patch
- 0010-have-configure-check-add-gc-sections-linker-option.patch
- 0011-work-around-toolchains-with-broken-visibility-in-lib.patch
- 0012-fix-return-value-of-nl_langinfo-for-invalid-item-arg.patch
- 0013-math-explicitly-promote-expressions-to-excess-precis.patch
- 0014-ldso-fix-the-dtv-update-logic-in-__tls_get_new.patch
- 0015-properly-handle-point-to-point-interfaces-in-getifad.patch
- 0016-fix-tdelete-to-properly-balance-the-tree.patch
- 0017-fix-tsearch-to-avoid-crash-on-oom.patch
- 0018-tsearch-code-cleanup.patch
- 0019-fix-tsearch-tfind-tdelete-to-handle-null-pointer-inp.patch
- 0020-fix-crash-when-signal-number-0-is-passed-to-sigactio.patch
- 0021-avoid-updating-caller-s-size-when-getdelim-fails-to-.patch
- 0022-fix-overly-pessimistic-realloc-strategy-in-getdelim.patch
- 0023-add-missing-protocols-to-protoent-lookup-functions.patch
ldconfig
__stack_chk_fail_local.c
@@ -150,88 +127,19 @@ compat() {
done
}
-md5sums="42875e0c111aa1cb9d08663f8d42c799 musl-1.1.12.tar.gz
-02d3339c59ed2996aec7909d3c45c655 0001-fix-single-byte-overflow-of-malloc-d-buffer-in-getde.patch
-0893b094870823046db1b19786ddae22 0002-safely-handle-failure-to-open-hosts-services-resolv..patch
-a340ce73f0e77440c546163cfe4e0e87 0003-getnameinfo-make-size-check-not-fail-for-bigger-size.patch
-3fb065e44e1fcaef160f897a8b4650c1 0004-properly-access-mcontext_t-program-counter-in-cancel.patch
-79a29b7dad83283adca8e68dfd3bc59f 0005-use-explicit-__cp_cancel-label-in-cancellable-syscal.patch
-e13993cb4786fd692e33e1406ad2b216 0006-prevent-allocs-than-PTRDIFF_MAX-via-mremap.patch
-c693ab04bb7ff779f5e94ecf94cdc7d6 0007-fix-mremap-memory-synchronization-and-use-of-variadi.patch
-fc6a1e682050520e1ae3f45b3d922a1e 0008-have-configure-check-add-ffunction-sections-and-fdat.patch
-76c29ad893c80191cee395493430f385 0009-have-configure-check-add-linker-options-to-reduce-si.patch
-ce46e304c8e54ee44473b94643a7fcde 0010-have-configure-check-add-gc-sections-linker-option.patch
-5f051185cb80074708c9d9d4ed09b999 0011-work-around-toolchains-with-broken-visibility-in-lib.patch
-b231d5033566c5d4afc936fe52f5e2d4 0012-fix-return-value-of-nl_langinfo-for-invalid-item-arg.patch
-a636889b40dd3d4d48687aba2d07d8eb 0013-math-explicitly-promote-expressions-to-excess-precis.patch
-469bcc5b68f39112748e59af8c6e9dd4 0014-ldso-fix-the-dtv-update-logic-in-__tls_get_new.patch
-ecb2784515da574cb829713f6d05221f 0015-properly-handle-point-to-point-interfaces-in-getifad.patch
-5c60f8931354e219e73a6f068786821a 0016-fix-tdelete-to-properly-balance-the-tree.patch
-9f34e1c6d510e3c461dc83ab28a52ef5 0017-fix-tsearch-to-avoid-crash-on-oom.patch
-197ecc83ff71f081e41e3dca8d7e9c6c 0018-tsearch-code-cleanup.patch
-ca459c4237bdafb9d0047cc104bf1376 0019-fix-tsearch-tfind-tdelete-to-handle-null-pointer-inp.patch
-cc6a97327c6d16da0b8416f61266ef83 0020-fix-crash-when-signal-number-0-is-passed-to-sigactio.patch
-a9bd9d9659a359d5bd330aa42fc62d5e 0021-avoid-updating-caller-s-size-when-getdelim-fails-to-.patch
-99f93be1cc75bc35ce51d6b221b9c7c1 0022-fix-overly-pessimistic-realloc-strategy-in-getdelim.patch
-cde5cb6872b78efd8748e379b0865861 0023-add-missing-protocols-to-protoent-lookup-functions.patch
+md5sums="b8cb33a04ab461b55edcc807abf82241 musl-1.1.13.tar.gz
830d01f7821b978df770b06db3790921 ldconfig
0df687757221bbb0fc1aa67f1bd646f9 __stack_chk_fail_local.c
57ef2c63b9ec6a2041694ace97d4ffa2 getconf.c
2b941c4251cac44988a4abfc50e21267 getent.c
45f92f8d59cf84d765de698a9578dbf4 iconv.c"
-sha256sums="720b83c7e276b4b679c0bffe9509340d5f81fd601508e607e708177df0d31c0e musl-1.1.12.tar.gz
-ee51a2ae17e123e5363cd8c09c121263d1b4e0c2484515ae0d9b2c666e3863e6 0001-fix-single-byte-overflow-of-malloc-d-buffer-in-getde.patch
-2ee9a4d8085e1a35aff8874d3dc021c3a0ffd2842b6835383aa8d8a24ec558ed 0002-safely-handle-failure-to-open-hosts-services-resolv..patch
-c165876c6a744768f842e0a4c66a3817f3a50464ad1549f62214819149e70019 0003-getnameinfo-make-size-check-not-fail-for-bigger-size.patch
-5be81238a8995ea02a9251b2ec514ab6fbb293abd093f542dde6c110b9ad8a74 0004-properly-access-mcontext_t-program-counter-in-cancel.patch
-765b7d653680793bf607a14965444af42a2b75b89401b0265996cdce58873859 0005-use-explicit-__cp_cancel-label-in-cancellable-syscal.patch
-2ea9de6eebc02ddc6ef36083467e8b38700e94acff03dc954f4f7fd8b996eb90 0006-prevent-allocs-than-PTRDIFF_MAX-via-mremap.patch
-9f464642f19298a13bc0b8d1964489275fa1526bd12212322d0d021beb1960a8 0007-fix-mremap-memory-synchronization-and-use-of-variadi.patch
-b49213cabb1323f75891c6cedb0388ef8a36527326b263863f09f9a6e041c9b3 0008-have-configure-check-add-ffunction-sections-and-fdat.patch
-8f66ec53c0bcc2eaf48d8893df537b9b3b800c2b5b11a8ac4426517b17e7e561 0009-have-configure-check-add-linker-options-to-reduce-si.patch
-47ae56a03d509dca5767de38dad77ffbd28f820e7b6c5ebb6a62ef58443fc74d 0010-have-configure-check-add-gc-sections-linker-option.patch
-1f545670eb4c3d8dc95930cfa2e0bd2b5fdb7a0dd7fc7cbf53423566cb1a2642 0011-work-around-toolchains-with-broken-visibility-in-lib.patch
-970a22adfc08d8f2685fdf5b47f1b52bce97a12094f048ca50e42ca70187cbbe 0012-fix-return-value-of-nl_langinfo-for-invalid-item-arg.patch
-d5b15f2dd9305e16f562c5daae3d08e1aa17b16954c76efa62922e5fb30a1061 0013-math-explicitly-promote-expressions-to-excess-precis.patch
-09d6a5518d7c2185117b7240222efbd58f8e02600c00960f4dcf08841b49313a 0014-ldso-fix-the-dtv-update-logic-in-__tls_get_new.patch
-adbd062b398a4effcbaf9c451ed48faab152b1a9cffcc7cc36c749e91ba66f72 0015-properly-handle-point-to-point-interfaces-in-getifad.patch
-3924429c0475bd14e7109539281b5011f6f3dd27257bbce3fd6e1232d6b12c61 0016-fix-tdelete-to-properly-balance-the-tree.patch
-c26d7070c5cff59ae8383d74d6b7919e26876b448b8be9df44b92ae983a4d1c6 0017-fix-tsearch-to-avoid-crash-on-oom.patch
-6913e0d2d7a04ae813847125e2dda1399502c76b679c4caf25510a43d7b1642e 0018-tsearch-code-cleanup.patch
-f8b10603a9e6ab53c7a6a90ac79eceee67aef2a3a2467a9c05b3eb6a0c661f7a 0019-fix-tsearch-tfind-tdelete-to-handle-null-pointer-inp.patch
-11e27faaf0f795ce89e772746d0575f5ff506a4c82e2595b68238c3d44153a61 0020-fix-crash-when-signal-number-0-is-passed-to-sigactio.patch
-abbc746c46c96478c9ccc7ac3e61142e5dde63a00d80787d24e79802a4cd32b6 0021-avoid-updating-caller-s-size-when-getdelim-fails-to-.patch
-3469865c391422dc56806c32b5ba373f2f0e67476235a69c172c8d9f866125cd 0022-fix-overly-pessimistic-realloc-strategy-in-getdelim.patch
-b9c4ca23898d8f57c7ad26bd8214df2294b2ef06bf7a517dad3750ddd0581f75 0023-add-missing-protocols-to-protoent-lookup-functions.patch
+sha256sums="bbacdc64f557d0c4857f7d2daf592c32c29aec1babbb94fcf01a2e05bed15013 musl-1.1.13.tar.gz
b4a2c06db38742e8c42c3c9838b285a7d8cdac6c091ff3df5ff9a15f1e41b9c7 ldconfig
299a7d75a09de3e2e11e7fb4acc3182e4a14e868093d2f30938fce9bfcff13da __stack_chk_fail_local.c
d87d0cbb3690ae2c5d8cc218349fd8278b93855dd625deaf7ae50e320aad247c getconf.c
68373a55e89ce85c562d941ccf588337d6cc6c9c17689d695f65cd7607134bbe getent.c
f79a2930a2e5bb0624321589edf8b889d1e9b603e01e6b7ae214616605b3fdd7 iconv.c"
-sha512sums="7cabbe2665e32bd3408c8865f89f474106e982b4e5de81d0cdeea19e19e20b4d2496faf1adc6b2811d996f30f39258184ba347e8eb5f3811eab89179e8f52d70 musl-1.1.12.tar.gz
-ec23ce27f1c2b4c8dae4c76b38da2795d46df55dce6a159e98b2755c0a6d391749626e65862b46d36d8473edc71ad01f2bf3521e41666895f705c7dad27a12bc 0001-fix-single-byte-overflow-of-malloc-d-buffer-in-getde.patch
-36bc9d2a236a9cc8e0e4de87c47abb887891b29c9f67b5e708c25373f9c060080f8bde95d1dac313e02de5a76fd4b22ad2f34eb5cb5506d9e44386d6473f7cdb 0002-safely-handle-failure-to-open-hosts-services-resolv..patch
-9d651de100a68c87bdb427e034717c6f885d395d63a5337f185da0a7ff10502dbee9234dc952e014f1362d78fd44752ac10eef78a9d3a81e33f2e2374132693e 0003-getnameinfo-make-size-check-not-fail-for-bigger-size.patch
-f1e627690aaf494052b573c16d17901edbefe99a2ff216b68b1261024c28e5c049de35bdddf018e826e8971fe34e328bd6507a6f8d3810d4179f2662cc7794fc 0004-properly-access-mcontext_t-program-counter-in-cancel.patch
-19fafc5a62150a9500e8495b7ebb71b680e8c827002e863f641ff5631812fe242981b452932c2759c6cf0150151393d1ed1a213a7ce8dd7e6de3e2ffd6c9f280 0005-use-explicit-__cp_cancel-label-in-cancellable-syscal.patch
-2c73458719e68fea6684905c4b2632e67d83674da7e92d37794939d277efc7469471aae4b7ade395214e4a7061f1027b87e3cdf664085bc473089d72f38d8baf 0006-prevent-allocs-than-PTRDIFF_MAX-via-mremap.patch
-d17d9deedbed9a2fa7d7988a2b13f9c3273faf19543a8b184c2f0b4e1740403199bc8884399abe15ce65143a9277b53c77231f176808b7f15ee9f0c479b8c93d 0007-fix-mremap-memory-synchronization-and-use-of-variadi.patch
-21eb9d66f93276bf46fb2dead1b9bf73d5703ceae3dff6e8bb9e9d273e39515623cde71a4728b7c6557fe39a7fd1229b92fe41af13b7df6a05f781c4cca2ac14 0008-have-configure-check-add-ffunction-sections-and-fdat.patch
-abdeece8b2a64d45607ee513949e8a788e7f54a4f3e2111926a354e5b5af2c932ef0b5cc1d1ad8db48d168cee34e21b918ef01e1a9f3efadc5b6ef2c4c22c508 0009-have-configure-check-add-linker-options-to-reduce-si.patch
-c49071c8014a5a8407c6df006a8874481a97f03f95a14420f66457e20446085e173ec12a2f161fd9bc3d85a2b1f40972092d89d339498fb7890e0512cb13d0ca 0010-have-configure-check-add-gc-sections-linker-option.patch
-1ef9e77b9f17e9cd1dd77487005ff08b9fda357380d70dedb9752bfdf071cc077a8b93eae84f08ce27af7f0e4f8cb7f2b09d17d2e953a6429e20959decce517a 0011-work-around-toolchains-with-broken-visibility-in-lib.patch
-636cc187f96916aef02e1bab8ceafb0ce02a087f8358b36e8ded0a5db431bb5d26c90234e21e85742e2dad90fa8315c80ac818c26777cbd1f55d8b6d1d7a5eeb 0012-fix-return-value-of-nl_langinfo-for-invalid-item-arg.patch
-49a0a51f652e818769380eeccaab1e58e58afecfe99277a157391c8038cbc101eaefc11f1440461834e2f428c02ead740b89afeaece7966efbb9a2f053fd4d29 0013-math-explicitly-promote-expressions-to-excess-precis.patch
-270e40a25012d2ccd9d5ec53eba7089b920aa68de0e75baf69cb658bfe42837f0546bf5323fa7bf248c0bbe5e76e8d4df789da3cda89f29dab75346e9ed63723 0014-ldso-fix-the-dtv-update-logic-in-__tls_get_new.patch
-15f5061ccb11413c98e8cbf9b39533496a2326e69256234902f0e954350247ff4fdcc1acec482ceb5d96a835bb3bf62e79d14cfffc8c7b4806abf19250afe688 0015-properly-handle-point-to-point-interfaces-in-getifad.patch
-cd3178963bb0ea3c4bc670ab75fad15d85cf157cbf22f6b24a16d31f6c78b57aac58af4756a0e2ecddff38e383552134cc666e14955e0dedfdd0f2853afe7e0a 0016-fix-tdelete-to-properly-balance-the-tree.patch
-dd14c638499a9364c64371f45183bc01b078594291da8b11a4a8bedf58cdb853502b8e871f52aae7bbcd71e930c6abda7aa6ea280d5ea226091a5256836f7ef1 0017-fix-tsearch-to-avoid-crash-on-oom.patch
-12c9ad56768cd97768f7be51784b7df3ef9041ad568252d9e5f6ba725836d9aa8bdc2a53d17b4161395e5e10ad08acc03237bb0d48eafe93eb46f5967bc4f2ab 0018-tsearch-code-cleanup.patch
-6136a11408ccd58427507841773fb73e3755f073ae22cfb1b41ff6228f6b9b9719e7313b24c5198a32f7d6aa0601f2792aa4ccd558aaf2a6311ac896c89b7c1c 0019-fix-tsearch-tfind-tdelete-to-handle-null-pointer-inp.patch
-5a754335dfa9b8856aa04876c4dc8c98a27630c670242b77f3fdcf1dd1133edb1661c124c60a594ee1c1fbf9401d481a6be186a00b53120ba83644a835799e2c 0020-fix-crash-when-signal-number-0-is-passed-to-sigactio.patch
-7b9618242ae75767a5eb7dc3ea83e2fb44ab073c1062cb1f7c3b2168f7185f442ff1438755e3e8bab8eee9406d08ba4bed0a39ec9c4b8fb7ff523424a020c920 0021-avoid-updating-caller-s-size-when-getdelim-fails-to-.patch
-d166fabf4178c4f74113182a9294e1b864c78be1123bf0c5a59ec627017440369cabc31fe69c570df672a9eccfe891bddf5306fb9d638b0b69e5a2416af015ee 0022-fix-overly-pessimistic-realloc-strategy-in-getdelim.patch
-feda1aa70f6bf70d00da1d633ad9b5a539abaa3638707a4c9ff624d2492086af381963c3ec021fc67c67c314967c66148fd6a8852ec1538936170f40c6f81525 0023-add-missing-protocols-to-protoent-lookup-functions.patch
+sha512sums="d5f4a6fdb6a2cdbd7ab1ad5a8d91b1c690b3bd31d9049dfc022067019bba11952e375374eed982a0ddac7347d17f9ff2300178c4d5f27bdd8480933cc6e67802 musl-1.1.13.tar.gz
8d3a2d5315fc56fee7da9abb8b89bb38c6046c33d154c10d168fb35bfde6b0cf9f13042a3bceee34daf091bc409d699223735dcf19f382eeee1f6be34154f26f ldconfig
062bb49fa54839010acd4af113e20f7263dde1c8a2ca359b5fb2661ef9ed9d84a0f7c3bc10c25dcfa10bb3c5a4874588dff636ac43d5dbb3d748d75400756d0b __stack_chk_fail_local.c
0d80f37b34a35e3d14b012257c50862dfeb9d2c81139ea2dfa101d981d093b009b9fa450ba27a708ac59377a48626971dfc58e20a3799084a65777a0c32cbc7d getconf.c