--- tsl-0.2.13-clean/system/linux/version.sh 2020-11-12 10:45:40.215097040 +0000 +++ tsl-0.2.14-clean/system/linux/version.sh 2020-12-11 22:10:02.652225850 +0000 @@ -1,2 +1,2 @@ PACKAGE=linux -VERSION=5.4.76 +VERSION=5.4.83 --- tsl-0.2.13-clean/system/musl/expand.sh 2020-11-12 10:45:40.215097040 +0000 +++ tsl-0.2.14-clean/system/musl/expand.sh 2020-12-11 22:10:02.652225850 +0000 @@ -7,2 +7,10 @@ exit 1 fi +if cd src; then + if ! patch -p1 < ../musl-wcsnrtombs-cve-2020-28928.diff; then + exit 1 + fi + cd .. +else + exit 1 +fi --- /dev/null 2020-11-12 10:45:40.215097040 +0000 +++ tsl-0.2.14-clean/system/musl/musl-wcsnrtombs-cve-2020-28928.diff 2020-12-11 22:10:02.652225850 +0000 @@ -0,0 +1,65 @@ +diff --git a/src/multibyte/wcsnrtombs.c b/src/multibyte/wcsnrtombs.c +index 676932b5..95e25e70 100644 +--- a/src/multibyte/wcsnrtombs.c ++++ b/src/multibyte/wcsnrtombs.c +@@ -1,41 +1,33 @@ + #include ++#include ++#include + + size_t wcsnrtombs(char *restrict dst, const wchar_t **restrict wcs, size_t wn, size_t n, mbstate_t *restrict st) + { +- size_t l, cnt=0, n2; +- char *s, buf[256]; + const wchar_t *ws = *wcs; +- const wchar_t *tmp_ws; +- +- if (!dst) s = buf, n = sizeof buf; +- else s = dst; +- +- while ( ws && n && ( (n2=wn)>=n || n2>32 ) ) { +- if (n2>=n) n2=n; +- tmp_ws = ws; +- l = wcsrtombs(s, &ws, n2, 0); +- if (!(l+1)) { +- cnt = l; +- n = 0; ++ size_t cnt = 0; ++ if (!dst) n=0; ++ while (ws && wn) { ++ char tmp[MB_LEN_MAX]; ++ size_t l = wcrtomb(nn) break; ++ memcpy(dst, tmp, l); ++ } ++ dst += l; + n -= l; + } +- wn = ws ? wn - (ws - tmp_ws) : 0; +- cnt += l; +- } +- if (ws) while (n && wn) { +- l = wcrtomb(s, *ws, 0); +- if ((l+1)<=1) { +- if (!l) ws = 0; +- else cnt = l; ++ if (!*ws) { ++ ws = 0; + break; + } +- ws++; wn--; +- /* safe - this loop runs fewer than sizeof(buf) times */ +- s+=l; n-=l; ++ ws++; ++ wn--; + cnt += l; + } + if (dst) *wcs = ws; --- tsl-0.2.13-clean/version.sh 2020-11-12 10:45:40.215097040 +0000 +++ tsl-0.2.14-clean/version.sh 2020-12-11 22:10:02.652225850 +0000 @@ -1,2 +1,2 @@ -SYSVERSION=0.2.13 -VERTAG=02d +SYSVERSION=0.2.14 +VERTAG=02e