diff options
Diffstat (limited to 'system')
-rw-r--r-- | system/adelie-base/APKBUILD | 4 | ||||
-rw-r--r-- | system/ca-certificates/APKBUILD | 9 | ||||
-rw-r--r-- | system/dash/APKBUILD | 4 | ||||
-rw-r--r-- | system/man-db/APKBUILD | 44 | ||||
-rw-r--r-- | system/man-db/man-db-2.8.5-iconv.patch | 65 | ||||
-rw-r--r-- | system/man-db/man-db.trigger | 3 | ||||
-rw-r--r-- | system/mandoc/APKBUILD | 94 | ||||
-rw-r--r-- | system/mandoc/cgi-adelie.patch | 60 | ||||
-rw-r--r-- | system/mandoc/cgi-gz.patch | 77 | ||||
-rw-r--r-- | system/mandoc/cgi-search.patch | 48 | ||||
-rw-r--r-- | system/mandoc/configure.patch | 21 | ||||
-rw-r--r-- | system/mandoc/doc.patch | 132 | ||||
-rw-r--r-- | system/mandoc/empty-tbl-null-deref.patch | 62 | ||||
-rw-r--r-- | system/mandoc/less.patch | 58 | ||||
-rw-r--r-- | system/mandoc/mandoc.post-deinstall | 3 | ||||
-rw-r--r-- | system/mandoc/mandoc.trigger | 3 | ||||
-rw-r--r-- | system/mandoc/tbl-colwidth-oob.patch | 62 | ||||
-rw-r--r-- | system/sudo/APKBUILD | 23 | ||||
-rw-r--r-- | system/unzip/APKBUILD | 16 | ||||
-rw-r--r-- | system/unzip/cflags.patch | 20 | ||||
-rw-r--r-- | system/unzip/format-secure.patch | 93 | ||||
-rw-r--r-- | system/unzip/unzipsfx-bomb-32bit.patch | 14 | ||||
-rw-r--r-- | system/vim/APKBUILD | 4 |
23 files changed, 787 insertions, 132 deletions
diff --git a/system/adelie-base/APKBUILD b/system/adelie-base/APKBUILD index 8b06a3699..7cd92003d 100644 --- a/system/adelie-base/APKBUILD +++ b/system/adelie-base/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=adelie-base pkgver=0.9.4 -pkgrel=1 +pkgrel=2 pkgdesc="The Adélie Linux Base System" url="https://www.adelielinux.org/" arch="noarch" @@ -14,7 +14,7 @@ _core_depends="apk-tools adelie-keys musl-utils shadow util-linux net-tools nvi sed psmisc less tzdata" depends="adelie-core binutils debianutils file gettys-openrc - kbd libarchive-tools man-db patch sed sharutils sysklogd zsh" + kbd libarchive-tools mandoc patch sed sharutils sysklogd zsh" makedepends="" makedepends_host="$depends" subpackages="adelie-core:core $pkgname-doc $pkgname-posix $pkgname-lsb dev diff --git a/system/ca-certificates/APKBUILD b/system/ca-certificates/APKBUILD index 0785ec441..5e75d13d8 100644 --- a/system/ca-certificates/APKBUILD +++ b/system/ca-certificates/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=ca-certificates -pkgver=20190131 -pkgrel=1 +pkgver=20200603 +pkgrel=0 pkgdesc="CA root certificates" url="https://www.mozilla.org/en-US/about/governance/policies/security-group/certs/" arch="all" @@ -13,12 +13,11 @@ makedepends_host="openssl-dev" subpackages="$pkgname-doc" triggers="ca-certificates.trigger=/usr/share/ca-certificates:/usr/local/share/ca-certificates:/etc/ssl/certs:/etc/ca-certificates/update.d" install="$pkgname.post-deinstall" -source="https://distfiles.adelielinux.org/source/$pkgname-$pkgver.tar.xz +source="https://dev.sick.bike/dist/$pkgname-$pkgver.tar.gz certhash " build() { - export CFLAGS="$CFLAGS -DSYMLINK_MAX=PATH_MAX" make } @@ -43,5 +42,5 @@ package() { install -D -m755 "$srcdir"/certhash "$pkgdir"/etc/ca-certificates/update.d/certhash } -sha512sums="aec43296636887a8ebefc08abe60c123b67002eb8cf450662b5ff8fcbd2ea10d3d24d17080b5924b13aed9a52b91ba55e93d306e27ed3196ca67cbbe30146328 ca-certificates-20190131.tar.xz +sha512sums="0125600481666979e0b736572aca7d0e3c4bf01169bc67638ef7bdd4fc97a0ebbb70798df7275eac92dfc2d03b16de3f0adc8ad382fc9e2fb4d8223c923b2eef ca-certificates-20200603.tar.gz 1efe48235f150052da6b872d2ebff174359825ab3bd66086c9d7f4c18dcd8aa8953c634dbf1aa8416d30d5623babf589660a25cf6e3a4cdcce707c14cc2f348a certhash" diff --git a/system/dash/APKBUILD b/system/dash/APKBUILD index 8abd44b65..a21f42a2f 100644 --- a/system/dash/APKBUILD +++ b/system/dash/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Kiyoshi Aman <adelie@aerdan.vulpine.house> pkgname=dash -pkgver=0.5.10.2 +pkgver=0.5.11 pkgrel=0 pkgdesc="Small and fast POSIX-compliant shell" url="http://gondor.apana.org.au/~herbert/dash/" @@ -41,4 +41,4 @@ binsh() { ln -s /bin/dash "$subpkgdir"/bin/sh } -sha512sums="0ae29be77794df0ba254967649b9728611a75fbb3acd32ab6634d76399d1ce97c7d12d31da465482a7e4f3207093415c496c39525cace9b78ab3cb9444dd7640 dash-0.5.10.2.tar.gz" +sha512sums="41c3afa8aa4788f7899b9a4c1bce2dc8629f4405184cdc7269993e72c695cf9537c9e68b654d56f06c604a82ffa73c9160b91368e82a3593a12ff7dea10505d1 dash-0.5.11.tar.gz" diff --git a/system/man-db/APKBUILD b/system/man-db/APKBUILD deleted file mode 100644 index 136e0720d..000000000 --- a/system/man-db/APKBUILD +++ /dev/null @@ -1,44 +0,0 @@ -# Contributor: A. Wilcox <awilfox@adelielinux.org> -# Maintainer: A. Wilcox <awilfox@adelielinux.org> -pkgname=man-db -pkgver=2.9.1 -pkgrel=0 -pkgdesc="The man command and related utilities for examining on-line help files" -url="https://www.nongnu.org/man-db/" -arch="all" -options="!check" # requires //IGNORE in iconv -license="GPL-2.0+" -depends="groff gzip less" -makedepends_host="db-dev libpipeline-dev zlib-dev" -subpackages="$pkgname-doc $pkgname-lang" -triggers="man-db.trigger=/usr/share/man" -source="https://download.savannah.nongnu.org/releases/man-db/man-db-$pkgver.tar.xz - man-db-2.8.5-iconv.patch - " - -build() { - ./configure \ - --build=$CBUILD \ - --host=$CHOST \ - --prefix=/usr \ - --sysconfdir=/etc \ - --mandir=/usr/share/man \ - --localstatedir=/var \ - --disable-setuid \ - --with-sections="1 1p 1x 2 2x 3 3p 3x 4 4x 5 5x 6 6x 7 7x 8 8x 9 0p tcl n l p o" \ - --enable-nls \ - --with-db=db - make -} - -check() { - make check -} - -package() { - make DESTDIR="$pkgdir" install - rm -r "${pkgdir}"/usr/lib/tmpfiles.d # systemd -} - -sha512sums="ae2d1e9f293795c63f5a9a1a765478a9a59cbe5fe6f759647be5057c1ae53f90baee8d5467921f3d0102300f2111a5026eeb25f78401bcb16ce45ad790634977 man-db-2.9.1.tar.xz -0a68260fc48488408dc11855858aa2569efa3aeefd765c425b8fc988e7fee3e1d42e19eb299e518afc9b2ae54c5d37911176127124a43d5041f1137af0457097 man-db-2.8.5-iconv.patch" diff --git a/system/man-db/man-db-2.8.5-iconv.patch b/system/man-db/man-db-2.8.5-iconv.patch deleted file mode 100644 index c2232920d..000000000 --- a/system/man-db/man-db-2.8.5-iconv.patch +++ /dev/null @@ -1,65 +0,0 @@ ---- man-db-2.8.5/src/man.c 2018-06-18 22:44:35.672743065 -0500 -+++ man-db-2.8.5/src/man.c 2018-06-18 22:46:35.032624890 -0500 -@@ -1516,15 +1516,13 @@ - { - debug ("add_output_iconv: source %s, target %s\n", source, target); - if (source && target && !STREQ (source, target)) { -- char *target_translit = xasprintf ("%s//TRANSLIT", target); - pipecmd *iconv_cmd; - iconv_cmd = pipecmd_new_args -- ("iconv", "-c", "-f", source, "-t", target_translit, -+ ("iconv", "-c", "-f", source, "-t", target, - (void *) 0); - pipecmd_pre_exec (iconv_cmd, sandbox_load, sandbox_free, - sandbox); - pipeline_command (p, iconv_cmd); -- free (target_translit); - } - } - ---- man-db-2.8.5/src/manconv.c -+++ man-db-2.8.5/src/manconv.c -@@ -111,6 +111,5 @@ static int try_iconv (pipeline *p, const char *try_from_code, const char *to, - iconv_t cd_utf8, cd = NULL; -- bool to_utf8 = STREQ (try_to_code, "UTF-8") || -- STRNEQ (try_to_code, "UTF-8//", 7); -- const char *utf8_target = last ? "UTF-8//IGNORE" : "UTF-8"; -- bool ignore_errors = (strstr (try_to_code, "//IGNORE") != NULL); -+ bool to_utf8 = STREQ (try_to_code, "UTF-8"); -+ const char *utf8_target = "UTF-8"; -+ bool ignore_errors = 0; - int ret = 0; ---- man-db-2.8.5/src/manconv_client.c -+++ man-db-2.8.5/src/manconv_client.c -@@ -102,7 +102,7 @@ void add_manconv (pipeline *p, const char *source, const char *target) - codes->from[2] = NULL; - name = appendstr (name, "UTF-8:", source, (void *) 0); - } -- codes->to = xasprintf ("%s//IGNORE", target); -+ codes->to = xstrdup (target); - /* informational only; no shell quoting concerns */ - name = appendstr (name, " -t ", codes->to, (void *) 0); - if (quiet >= 2) ---- man-db-2.8.5/src/manconv_main.c -+++ man-db-2.8.5/src/manconv_main.c -@@ -106,9 +106,6 @@ static error_t parse_opt (int key, char *arg, struct argp_state *state) - return 0; - case 't': - to_code = xstrdup (arg); -- if (!strstr (to_code, "//")) -- to_code = appendstr (to_code, "//TRANSLIT", -- (void *) 0); - return 0; - case 'd': - debug_level = 1; ---- man-db-2.8.5/src/whatis.c -+++ man-db-2.8.5/src/whatis.c -@@ -945,7 +945,7 @@ int main (int argc, char *argv[]) - display_seen = hashtable_create (&null_hashtable_free); - - #ifdef HAVE_ICONV -- locale_charset = xasprintf ("%s//IGNORE", get_locale_charset ()); -+ locale_charset = xstrdup (get_locale_charset ()); - conv_to_locale = iconv_open (locale_charset, "UTF-8"); - free (locale_charset); - #endif /* HAVE_ICONV */ diff --git a/system/man-db/man-db.trigger b/system/man-db/man-db.trigger deleted file mode 100644 index f9de5961c..000000000 --- a/system/man-db/man-db.trigger +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -exec /usr/bin/mandb /usr/share/man >/dev/null diff --git a/system/mandoc/APKBUILD b/system/mandoc/APKBUILD new file mode 100644 index 000000000..b3a4c018c --- /dev/null +++ b/system/mandoc/APKBUILD @@ -0,0 +1,94 @@ +# Maintainer: Max Rees <maxcrees@me.com> +pkgname=mandoc +pkgver=1.14.5 +pkgrel=0 +pkgdesc="Manual page database, compiler, and viewer" +url="https://mandoc.bsd.lv/" +arch="all" +license="ISC AND BSD-2-Clause AND BSD-3-Clause" +replaces="man-db" +depends="less" +makedepends="zlib-dev" +checkdepends="perl" +subpackages="$pkgname-doc $pkgname-cgi" +install="$pkgname.post-deinstall" +triggers="$pkgname.trigger=/usr/share/man" +source="https://mandoc.bsd.lv/snapshots/mandoc-$pkgver.tar.gz + configure.patch + empty-tbl-null-deref.patch + tbl-colwidth-oob.patch + less.patch + doc.patch + cgi-adelie.patch + cgi-gz.patch + cgi-search.patch + " + +prepare() { + default_prepare + cat >"configure.local" <<-EOF + PREFIX=/usr + MANDIR=/usr/share/man + WWWPREFIX=/var/lib/mandoc-cgi + # remove /usr/X11R6 from the following. + MANPATH_BASE=/usr/share/man + MANPATH_DEFAULT=/usr/share/man:/usr/local/share/man + # groff also provides a soelim. + BINM_SOELIM=mandoc-soelim + + CFLAGS="$CFLAGS" + LDFLAGS="$LDFLAGS" + LN="ln -sf" + OSNAME="Adelie Linux" + UTF8_LOCALE=C.UTF-8 + + BUILD_CATMAN=1 + BUILD_CGI=1 + EOF + + cat >"cgi.h" <<-EOF + #define SCRIPT_NAME "" + #define MAN_DIR "/var/lib/mandoc-cgi" + #define CSS_DIR "" + #define CUSTOMIZE_TITLE "Adelie Linux manual pages" + EOF +} + +build() { + ./configure + make +} + +check() { + make regress +} + +package() { + make DESTDIR="$pkgdir" install + install -Dm644 -t "$pkgdir"/usr/share/man/man8 man.cgi.8 + + mkdir -p "$pkgdir"/etc + cat >"$pkgdir"/etc/man.conf <<-EOF + # See man.conf(5). + #manpath /usr/share/man + #manpath /usr/local/share/man + EOF +} + +cgi() { + pkgdesc="$pkgdesc (web interface)" + depends="$pkgname=$pkgver-r$pkgrel" + mkdir -p "$subpkgdir"/var/lib + mv "$pkgdir"/var/lib/mandoc-cgi \ + "$subpkgdir"/var/lib +} + +sha512sums="848f290847f3095757f25647e6d73eb7044018b145bf6f9dc8b5db164b1421911efdc5b3b9022ec3a2c5af9687a84d5acedee810f2bd2f7caaa9242dadb2cc52 mandoc-1.14.5.tar.gz +074dc73b45c71b5c178750db6c7a4a45e97d97b5388fa5d6028faa90600358dd2b954781280ca41d17da3c577ad5a1a7a13ddc4dbea72ac5e86f1652e03ecde7 configure.patch +c4055371a92be958f0d385c83b4788dc4c18bc990b1f780137309c83e174b8d3e65cae077aba3c5286a97fcee1514d61f6b7507ca25bd5155b8d577a7e8acd3a empty-tbl-null-deref.patch +9a8953f17e2db75bf3667e1d51c7db21ccc5e3042c59035ed6178094963eac919b7367f96708c9bcc81450ffc13842d12c23edd9bca3330be730149625db88e7 tbl-colwidth-oob.patch +4b17b144b53ee30f9aae87c7824597151e16e6f5ad795e7b03e701f2d13ca47a62c696cb837689c75d5f34d3c190255c8f0583bc91a0f83f61afde7563a6fb2b less.patch +f35268ed507d5c6431f8cafe5a311d1ffe990083c6e1d22f5db479e19745d486cd45a699b64c4fb6757d1c0ab588c3e8d0778bfd75e98e751d1a786e89e8b925 doc.patch +0dfe9e39570a2b6764303708b98f29b2b57114e124a0f37e9c77d4d33f25d474a79d271df46babd700e4cc93e3385a02356f19caa44ebe4e9b056fa4be96b95b cgi-adelie.patch +957bbaef888fb2ea15f9b795b15952332e65aed70d2e70f3142305a4fb9313ade455eae6dfc923af3ef008834e771b1a85d71389b86cd0ff9a1c31e84fef861c cgi-gz.patch +37be119308814b060ed9d5517b54eb02b210d677ffb085385929b6aa0e8e8bef2c6c1ab2055713ed8c72f2bc85593bf8744d2d0f163dd1aff65ce439c474b640 cgi-search.patch" diff --git a/system/mandoc/cgi-adelie.patch b/system/mandoc/cgi-adelie.patch new file mode 100644 index 000000000..66ce6a9ba --- /dev/null +++ b/system/mandoc/cgi-adelie.patch @@ -0,0 +1,60 @@ +Adjustments for Adélie manual sections and architecture names. + +--- mandoc-1.14.5/cgi.c 2019-03-10 04:56:43.000000000 -0500 ++++ mandoc-1.14.5/cgi.c 2020-06-05 15:54:05.681060852 -0500 +@@ -101,36 +101,28 @@ static const char *scriptname = SCRIPT_ + + static const int sec_prios[] = {1, 4, 5, 8, 6, 3, 7, 2, 9}; + static const char *const sec_numbers[] = { +- "0", "1", "2", "3", "3p", "4", "5", "6", "7", "8", "9" ++ "0", "0p", "1", "1p", "2", "3", "3p", "3pm", "4", "5", "6", "7", "8" + }; + static const char *const sec_names[] = { + "All Sections", ++ "0p - POSIX C Headers", + "1 - General Commands", ++ "1p - POSIX Commands", + "2 - System Calls", + "3 - Library Functions", +- "3p - Perl Library", ++ "3p - POSIX C Library Functions", ++ "3pm - Perl Library", + "4 - Device Drivers", +- "5 - File Formats", ++ "5 - File formats and configuration files", + "6 - Games", +- "7 - Miscellaneous Information", +- "8 - System Manager\'s Manual", +- "9 - Kernel Developer\'s Manual" ++ "7 - Overview, conventions, and miscellaneous", ++ "8 - System Administrator\'s Manual" + }; + static const int sec_MAX = sizeof(sec_names) / sizeof(char *); + + static const char *const arch_names[] = { +- "amd64", "alpha", "armv7", "arm64", +- "hppa", "i386", "landisk", +- "loongson", "luna88k", "macppc", "mips64", +- "octeon", "sgi", "socppc", "sparc64", +- "amiga", "arc", "armish", "arm32", +- "atari", "aviion", "beagle", "cats", +- "hppa64", "hp300", +- "ia64", "mac68k", "mvme68k", "mvme88k", +- "mvmeppc", "palm", "pc532", "pegasos", +- "pmax", "powerpc", "solbourne", "sparc", +- "sun3", "vax", "wgrisc", "x68k", +- "zaurus" ++ "aarch64", "armv7", "pmmx", ++ "ppc", "ppc64", "x86_64", + }; + static const int arch_MAX = sizeof(arch_names) / sizeof(char *); + +@@ -655,7 +661,7 @@ pg_searchres(const struct req *req, stru + == NULL) ? 3 : + ((archend = strchr(arch + 1, '/')) + == NULL) ? 0 : +- strncmp(arch, "amd64/", ++ strncmp(arch, "ppc64/", + archend - arch) ? 2 : 1; + if (archprio < archpriouse) { + archpriouse = archprio; diff --git a/system/mandoc/cgi-gz.patch b/system/mandoc/cgi-gz.patch new file mode 100644 index 000000000..ac506b797 --- /dev/null +++ b/system/mandoc/cgi-gz.patch @@ -0,0 +1,77 @@ +Handle the case where some of the entries in the manpath are gzipped by +removing the .gz extension and allowing mparse_open to add it back and +mark the page as gzipped. This is part of the documented contract for +mparse_open, see mandoc(3). + +--- mandoc-1.14.5/cgi.c 2019-03-10 04:56:43.000000000 -0500 ++++ mandoc-1.14.5/cgi.c 2020-06-05 15:54:05.681060852 -0500 +@@ -93,7 +93,7 @@ static void resp_searchform(const stru + static void resp_show(const struct req *, const char *); + static void set_query_attr(char **, char **); + static int validate_arch(const char *); +-static int validate_filename(const char *); ++static int validate_filename(char *); + static int validate_manpath(const struct req *, const char *); + static int validate_urifrag(const char *); + +@@ -517,8 +509,13 @@ validate_arch(const char *arch) + } + + static int +-validate_filename(const char *file) ++validate_filename(char *file) + { ++ char *cp; ++ ++ cp = strrchr(file, '.'); ++ if (cp != NULL && ! strcmp(cp + 1, "gz")) ++ *cp = '\0'; + + if ('.' == file[0] && '/' == file[1]) + file += 2; +@@ -854,14 +862,15 @@ resp_format(const struct req *req, const + int fd; + int usepath; + +- if (-1 == (fd = open(file, O_RDONLY, 0))) { +- puts("<p>You specified an invalid manual file.</p>"); +- return; +- } +- + mchars_alloc(); + mp = mparse_alloc(MPARSE_SO | MPARSE_UTF8 | MPARSE_LATIN1 | + MPARSE_VALIDATE, MANDOC_OS_OTHER, req->q.manpath); ++ ++ if (-1 == (fd = mparse_open(mp, file))) { ++ puts("<p>You specified an invalid manual file.</p>"); ++ goto out; ++ } ++ + mparse_readfd(mp, fd, file); + close(fd); + meta = mparse_result(mp); +@@ -882,10 +891,11 @@ resp_format(const struct req *req, const + html_man(vp, meta); + + html_free(vp); +- mparse_free(mp); +- mchars_free(); + free(conf.man); + free(conf.style); ++out: ++ mparse_free(mp); ++ mchars_free(); + } + + static void +@@ -904,8 +914,8 @@ resp_show(const struct req *req, const c + static void + pg_show(struct req *req, const char *fullpath) + { +- char *manpath; +- const char *file; ++ char *manpath; ++ char *file; + + if ((file = strchr(fullpath, '/')) == NULL) { + pg_error_badrequest( diff --git a/system/mandoc/cgi-search.patch b/system/mandoc/cgi-search.patch new file mode 100644 index 000000000..dd74be9ef --- /dev/null +++ b/system/mandoc/cgi-search.patch @@ -0,0 +1,48 @@ +Don't exit immediately if mansearch returns some paths that man.cgi +considers invalid, in particular translated manpages (e.g. +./de/man1/chfn.1). Just mark them as invalid (section 10, see struct +manpage in mansearch.h) and skip them later. + +--- mandoc-1.14.5/cgi.c 2019-03-10 04:56:43.000000000 -0500 ++++ mandoc-1.14.5/cgi.c 2020-06-05 15:54:05.681060852 -0500 +@@ -605,13 +602,20 @@ pg_searchres(const struct req *req, stru + size_t i, iuse; + int archprio, archpriouse; + int prio, priouse; ++ int results = 0; + + for (i = 0; i < sz; i++) { +- if (validate_filename(r[i].file)) ++ if (validate_filename(r[i].file)) { ++ results = 1; + continue; ++ } + warnx("invalid filename %s in %s database", + r[i].file, req->q.manpath); +- pg_error_internal(); ++ r[i].sec = 10; ++ } ++ ++ if (! results) { ++ pg_noresult(req, "No results found."); + return; + } + +@@ -642,6 +646,8 @@ pg_searchres(const struct req *req, stru + priouse = 20; + archpriouse = 3; + for (i = 0; i < sz; i++) { ++ if (r[i].sec == 10) ++ continue; + sec = r[i].file; + sec += strcspn(sec, "123456789"); + if (sec[0] == '\0') +@@ -681,6 +687,8 @@ pg_searchres(const struct req *req, stru + if (sz > 1) { + puts("<table class=\"results\">"); + for (i = 0; i < sz; i++) { ++ if (r[i].sec == 10) ++ continue; + printf(" <tr>\n" + " <td>" + "<a class=\"Xr\" href=\"/"); diff --git a/system/mandoc/configure.patch b/system/mandoc/configure.patch new file mode 100644 index 000000000..2fda25409 --- /dev/null +++ b/system/mandoc/configure.patch @@ -0,0 +1,21 @@ +--- mandoc-1.14.5/test-recvmsg.c 2019-03-10 04:56:43.000000000 -0500 ++++ mandoc-1.14.5/test-recvmsg.c 2020-06-04 20:08:33.420299034 -0500 +@@ -4,5 +4,6 @@ + int + main(void) + { +- return recvmsg(-1, NULL, 0) != -1; ++ struct msghdr buf; ++ return recvmsg(-1, &buf, 0) != -1; + } +--- mandoc-1.14.5/configure 2019-03-10 04:56:43.000000000 -0500 ++++ mandoc-1.14.5/configure 2020-06-04 20:03:24.790295729 -0500 +@@ -41,7 +41,7 @@ OSENUM= + OSNAME= + UTF8_LOCALE= + +-CC=`printf "all:\\n\\t@echo \\\$(CC)\\n" | env -i make -sf -` ++CC=cc + CFLAGS= + LDADD= + LDFLAGS= diff --git a/system/mandoc/doc.patch b/system/mandoc/doc.patch new file mode 100644 index 000000000..955a5f205 --- /dev/null +++ b/system/mandoc/doc.patch @@ -0,0 +1,132 @@ +--- mandoc-1.14.5/mandoc.1 2019-03-10 04:56:43.000000000 -0500 ++++ mandoc-1.14.5/mandoc.1 2020-06-05 02:12:50.320533119 -0500 +@@ -897,7 +897,7 @@ An + macro references a manual page that is not found in the base system. + The path to look for base system manuals is configurable at compile + time and defaults to +-.Pa /usr/share/man : /usr/X11R6/man . ++.Pa /usr/share/man . + .El + .Ss Style suggestions + .Bl -ohang +--- mandoc-1.14.5/mandoc.db.5 2019-03-10 04:56:43.000000000 -0500 ++++ mandoc-1.14.5/mandoc.db.5 2020-06-05 02:14:48.380534383 -0500 +@@ -189,10 +189,6 @@ followed by the number 0. + .Bl -tag -width /usr/share/man/mandoc.db -compact + .It Pa /usr/share/man/mandoc.db + The manual page database for the base system. +-.It Pa /usr/X11R6/man/mandoc.db +-The same for the +-.Xr X 7 +-Window System. + .It Pa /usr/local/man/mandoc.db + The same for + .Xr packages 7 . +--- mandoc-1.14.5/man.conf.5 2019-03-10 04:56:43.000000000 -0500 ++++ mandoc-1.14.5/man.conf.5 2020-06-05 02:11:34.650532308 -0500 +@@ -117,7 +117,6 @@ installing it is equivalent to not havin + file at all. + .Bd -literal -offset indent + manpath /usr/share/man +-manpath /usr/X11R6/man + manpath /usr/local/man + .Ed + .Sh SEE ALSO + +--- mandoc-1.14.5/man.1 2019-03-10 04:56:43.000000000 -0500 ++++ mandoc-1.14.5/man.1 2020-06-05 02:51:15.910557811 -0500 +@@ -174,28 +174,32 @@ Only select manuals from the specified + The currently available sections are: + .Pp + .Bl -tag -width "localXXX" -offset indent -compact ++.It 0p ++POSIX C headers. + .It 1 + General commands + .Pq tools and utilities . ++.It 1p ++POSIX commands. + .It 2 + System calls and error numbers. + .It 3 + Library functions. + .It 3p ++POSIX C library functions. ++.It 3pm + .Xr perl 1 + programmer's reference guide. + .It 4 + Device drivers. + .It 5 +-File formats. ++File formats and configuration files. + .It 6 + Games. + .It 7 +-Miscellaneous information. ++Overview, conventions, and miscellaneous information. + .It 8 + System maintenance and operation commands. +-.It 9 +-Kernel internals. + .El + .Pp + If not specified and a match is found in more than one section, +--- mandoc-1.14.5/man.cgi.8 2019-03-10 04:56:43.000000000 -0500 ++++ mandoc-1.14.5/man.cgi.8 2020-06-05 16:26:12.541081488 -0500 +@@ -342,7 +342,7 @@ page to acquire the named parameters it + .El + .Sh FILES + .Bl -tag -width Ds +-.It Pa /var/www ++.It Pa /var/lib/mandoc-cgi + Default web server + .Xr chroot 2 + directory. +@@ -366,13 +366,7 @@ This is part of the web server configura + A style sheet for + .Xr mandoc 1 + HTML styling, referenced from each generated HTML page. +-.It Pa /man +-Default +-.Nm +-data directory containing all the manual trees. +-Can be overridden by +-.Dv MAN_DIR . +-.It Pa /man/manpath.conf ++.It Pa /manpath.conf + The list of available manpaths, one per line. + If any of the lines in this file contains a slash + .Pq Sq / +@@ -380,13 +374,13 @@ or any character not contained in the + .Sx Restricted character set , + .Nm + reports an internal server error and exits without doing anything. +-.It Pa /man/header.html ++.It Pa /header.html + An optional file containing static HTML code to be inserted right + after opening the <BODY> element. +-.It Pa /man/footer.html ++.It Pa /footer.html + An optional file containing static HTML code to be inserted right + before closing the <BODY> element. +-.It Pa /man/OpenBSD-current/man1/mandoc.1 ++.It Pa /OpenBSD-current/man1/mandoc.1 + An example + .Xr mdoc 7 + source file located below the +--- mandoc-1.14.5/soelim.1 2019-03-10 04:56:43.000000000 -0500 ++++ mandoc-1.14.5/soelim.1 2020-06-05 16:38:40.101089494 -0500 +@@ -25,10 +25,10 @@ + .\" SUCH DAMAGE. + .\" + .Dd $Mdocdate: July 4 2017 $ +-.Dt SOELIM 1 ++.Dt MANDOC-SOELIM 1 + .Os + .Sh NAME +-.Nm soelim ++.Nm mandoc-soelim + .Nd interpret .so requests in manpages + .Sh SYNOPSIS + .Nm diff --git a/system/mandoc/empty-tbl-null-deref.patch b/system/mandoc/empty-tbl-null-deref.patch new file mode 100644 index 000000000..3e14ce32b --- /dev/null +++ b/system/mandoc/empty-tbl-null-deref.patch @@ -0,0 +1,62 @@ +From mboxrd@z Thu Jan 1 00:00:00 1970 +Received: from localhost (fantadrom.bsd.lv [local]) + by fantadrom.bsd.lv (OpenSMTPD) with ESMTPA id 25e99424 + for <source@mandoc.bsd.lv>; + Mon, 18 Mar 2019 03:01:04 -0500 (EST) +Date: Mon, 18 Mar 2019 03:01:04 -0500 (EST) +X-Mailinglist: mandoc-source +Reply-To: source@mandoc.bsd.lv +MIME-Version: 1.0 +From: schwarze@mandoc.bsd.lv +To: source@mandoc.bsd.lv +Subject: mandoc: fix a NULL pointer access on empty tbl(7) data cells that +X-Mailer: activitymail 1.26, http://search.cpan.org/dist/activitymail/ +Content-Type: text/plain; charset=utf-8 +Message-ID: <e3f22222366ad31d@fantadrom.bsd.lv> +Archived-At: <http://inbox.vuxu.org/mandoc-source/e3f22222366ad31d@fantadrom.bsd.lv/> +List-Archive: <http://inbox.vuxu.org/mandoc-source/> +List-Post: <mailto:source@mandoc.bsd.lv> + +Log Message: +----------- +fix a NULL pointer access on empty tbl(7) data cells +that bentley@ found in syncthing-bep(7) + +Modified Files: +-------------- + mandoc: + tbl_term.c + +Revision Data +------------- +Index: tbl_term.c +=================================================================== +RCS file: /home/cvs/mandoc/mandoc/tbl_term.c,v +retrieving revision 1.69 +retrieving revision 1.70 +diff -Ltbl_term.c -Ltbl_term.c -u -p -r1.69 -r1.70 +--- a/tbl_term.c ++++ b/tbl_term.c +@@ -629,7 +629,8 @@ tbl_hrule(struct termp *tp, const struct + + lw = cpp == NULL || cpn == NULL || + (cpn->pos != TBL_CELL_DOWN && +- (dpn == NULL || strcmp(dpn->string, "\\^") != 0)) ++ (dpn == NULL || dpn->string == NULL || ++ strcmp(dpn->string, "\\^") != 0)) + ? hw : 0; + tbl_direct_border(tp, BHORIZ * lw, + col->width + col->spacing / 2); +@@ -675,7 +676,8 @@ tbl_hrule(struct termp *tp, const struct + + rw = cpp == NULL || cpn == NULL || + (cpn->pos != TBL_CELL_DOWN && +- (dpn == NULL || strcmp(dpn->string, "\\^") != 0)) ++ (dpn == NULL || dpn->string == NULL || ++ strcmp(dpn->string, "\\^") != 0)) + ? hw : 0; + + /* The line crossing at the end of this column. */ +-- + To unsubscribe send an email to source+unsubscribe@mandoc.bsd.lv + diff --git a/system/mandoc/less.patch b/system/mandoc/less.patch new file mode 100644 index 000000000..19d567365 --- /dev/null +++ b/system/mandoc/less.patch @@ -0,0 +1,58 @@ +Default to using less(1) instead of more(1) if MANPAGER and PAGER are +unset, and also set a pretty prompt and smart case searching like man-db +does if less is used as a pager. + +The name of the manpage is not available in the scope of the patched +function - maybe add it at some point. + +--- mandoc-1.14.5/main.c 2019-03-10 04:56:43.000000000 -0500 ++++ mandoc-1.14.5/main.c 2020-06-05 01:59:10.640524340 -0500 +@@ -1170,8 +1170,9 @@ spawn_pager(struct tag_files *tag_files) + pager = getenv("MANPAGER"); + if (pager == NULL || *pager == '\0') + pager = getenv("PAGER"); +- if (pager == NULL || *pager == '\0') +- pager = "more -s"; ++ if (pager == NULL || *pager == '\0') { ++ pager = "less"; ++ } + cp = mandoc_strdup(pager); + + /* +@@ -1195,10 +1196,24 @@ spawn_pager(struct tag_files *tag_files) + /* For less(1), use the tag file. */ + + use_ofn = 1; +-#if HAVE_LESS_T + if ((cmdlen = strlen(argv[0])) >= 4) { + cp = argv[0] + cmdlen - 4; + if (strcmp(cp, "less") == 0) { ++ /* ++ * Set a few options like man-db does. ++ * -i: smart case search ++ * -mPm: set prompt to following string terminated by $ ++ */ ++ argv[argc++] = "-imPm" \ ++ " Manual page" \ ++ /* ++ * print " (END)" if EOF, else % in file followed by % sign. ++ * ?X if X:else not X. ++ */ ++ "?e (END):?pB %pB\\%.. " \ ++ "(press h for help or q to quit)" \ ++ "$"; ++#if HAVE_LESS_T + argv[argc++] = mandoc_strdup("-T"); + argv[argc++] = tag_files->tfn; + if (tag_files->tagname != NULL) { +@@ -1206,9 +1221,9 @@ spawn_pager(struct tag_files *tag_files) + argv[argc++] = tag_files->tagname; + use_ofn = 0; + } ++#endif + } + } +-#endif + if (use_ofn) + argv[argc++] = tag_files->ofn; + argv[argc] = NULL; diff --git a/system/mandoc/mandoc.post-deinstall b/system/mandoc/mandoc.post-deinstall new file mode 100644 index 000000000..0a8d5b9df --- /dev/null +++ b/system/mandoc/mandoc.post-deinstall @@ -0,0 +1,3 @@ +#!/bin/sh + +exec rm -f /usr/share/man/mandoc.db 2>/dev/null diff --git a/system/mandoc/mandoc.trigger b/system/mandoc/mandoc.trigger new file mode 100644 index 000000000..34fc1decc --- /dev/null +++ b/system/mandoc/mandoc.trigger @@ -0,0 +1,3 @@ +#!/bin/sh + +exec makewhatis -a -T utf8 "$@" diff --git a/system/mandoc/tbl-colwidth-oob.patch b/system/mandoc/tbl-colwidth-oob.patch new file mode 100644 index 000000000..0b7b0acad --- /dev/null +++ b/system/mandoc/tbl-colwidth-oob.patch @@ -0,0 +1,62 @@ +From mboxrd@z Thu Jan 1 00:00:00 1970 +Received: from localhost (fantadrom.bsd.lv [local]) + by fantadrom.bsd.lv (OpenSMTPD) with ESMTPA id 0ff00a97 + for <source@mandoc.bsd.lv>; + Fri, 29 Mar 2019 16:27:36 -0500 (EST) +Date: Fri, 29 Mar 2019 16:27:36 -0500 (EST) +X-Mailinglist: mandoc-source +Reply-To: source@mandoc.bsd.lv +MIME-Version: 1.0 +From: schwarze@mandoc.bsd.lv +To: source@mandoc.bsd.lv +Subject: mandoc: Set the maximum column index in a tbl(7) to the maximum *right* +X-Mailer: activitymail 1.26, http://search.cpan.org/dist/activitymail/ +Content-Type: text/plain; charset=utf-8 +Message-ID: <e3fceff42218668d@fantadrom.bsd.lv> +Archived-At: <http://inbox.vuxu.org/mandoc-source/e3fceff42218668d@fantadrom.bsd.lv/> +List-Archive: <http://inbox.vuxu.org/mandoc-source/> +List-Post: <mailto:source@mandoc.bsd.lv> + +Log Message: +----------- +Set the maximum column index in a tbl(7) to the maximum *right* edge +of any cell span, not to the maximum *left* edge, which may be smaller +if the last column of the table is only reached by horizontal spans, +but not by any regular cell in any row of the table. +Otherwise, the algorithm calculating column widths accessed memomy +after the end of the colwidth[] array, while it was trying to handle +the rightmost column(s). + +Crash reported by Jason Thorpe <thorpej at NetBSD> +via https://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=54069 +and via Thomas Klausner (wiz@). +Christos@ Zoulas sent a (correct, but slightly confusing) patch. +The patch i'm committing here is easier to understand. + +Modified Files: +-------------- + mandoc: + out.c + +Revision Data +------------- +Index: out.c +=================================================================== +RCS file: /home/cvs/mandoc/mandoc/out.c,v +retrieving revision 1.77 +retrieving revision 1.78 +diff -Lout.c -Lout.c -u -p -r1.77 -r1.78 +--- a/out.c ++++ b/out.c +@@ -149,7 +149,7 @@ tblcalc(struct rofftbl *tbl, const struc + gp = &first_group; + for (dp = sp->first; dp != NULL; dp = dp->next) { + icol = dp->layout->col; +- while (icol > maxcol) ++ while (maxcol < icol + dp->hspans) + tbl->cols[++maxcol].spacing = SIZE_MAX; + col = tbl->cols + icol; + col->flags |= dp->layout->flags; +-- + To unsubscribe send an email to source+unsubscribe@mandoc.bsd.lv + diff --git a/system/sudo/APKBUILD b/system/sudo/APKBUILD index 3bad54e5e..00acefd4f 100644 --- a/system/sudo/APKBUILD +++ b/system/sudo/APKBUILD @@ -3,13 +3,13 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Horst Burkhardt <horst@adelielinux.org> pkgname=sudo -pkgver=1.8.28 +pkgver=1.9.0 if [ "${pkgver%_*}" != "$pkgver" ]; then _realver=${pkgver%_*}${pkgver#*_} else _realver=$pkgver fi -pkgrel=1 +pkgrel=0 pkgdesc="Give certain users the ability to run some commands as root" url="https://www.sudo.ws/sudo/" arch="all" @@ -26,12 +26,22 @@ source="https://www.sudo.ws/dist/sudo-${_realver}.tar.gz SIGUNUSED.patch " builddir="$srcdir"/$pkgname-$_realver +somask="audit_json.so + group_file.so + libsudo_noexec.so + libsudo_util.so.0 + sample_approval.so + sudoers.so + system_group.so + " # secfixes: # 1.8.20_p2-r0: # - CVE-2017-1000368 -# 1.8.28: +# 1.8.28-r0: # - CVE-2019-14287 +# 1.9.0-r0: +# - CVE-2019-19232 build() { ./configure \ @@ -46,7 +56,10 @@ build() { --without-skey \ --with-passprompt="[sudo] Password for %p: " \ --with-insults=disabled \ - --with-all-insults + --with-all-insults \ + --enable-python=no \ + --disable-log-server \ + --disable-log-client # Workaround until SIGUNUSED.patch is not needed anymore rm lib/util/mksiglist.h lib/util/mksigname.h @@ -67,7 +80,7 @@ package() { rm -rf "$pkgdir"/var/run } -sha512sums="09e589cdfd18d7c43b0859a0e11c008b3cb995ae4f8c89c717c5242db9e5696361eb574ebe74a0b5316afffb3a8037f7a7f3c249176e8ed9caffeb4cd860ddc7 sudo-1.8.28.tar.gz +sha512sums="f2a191ea5fc65865718b110d4aca187cb5e2cd55c9c891fab32f21401e56f825f34c373e346c55c64fa49cec4d802efb63ccebf3d4a4e31d9a433077daf013b1 sudo-1.9.0.tar.gz f0f462f40502da2194310fe4a72ec1a16ba40f95a821ba9aa6aabaa423d28c4ab26b684afa7fb81c2407cf60de9327bdab01de51b878c5d4de49b0d62645f53c fix-cross-compile.patch dcc03abdd672c934f90dfd3683b3f81a8d39cfff91307d2dbd20a31a852022ab605d034c4fe11860ba99b78d391a9812fca1d6e052620b8ff2c42e4f0c7a1a62 musl-fix-headers.patch 2733c220ccbdaf61a32d8c72a5bc0209673733014f0d71b568f1523b71416e9d1754dd8c95bc6cd99aa7f935ed6e93c5f19b1a1dbb7dfc2daf9917fd37f96e78 SIGUNUSED.patch" diff --git a/system/unzip/APKBUILD b/system/unzip/APKBUILD index ea8f7e6fa..9b3f696f3 100644 --- a/system/unzip/APKBUILD +++ b/system/unzip/APKBUILD @@ -5,7 +5,7 @@ pkgname=unzip pkgver=6.0 _pkgver=$(printf '%s' "$pkgver" | tr -d .) _debver=25 -pkgrel=4 +pkgrel=5 pkgdesc="Extract PKZIP-compatible .zip files" url="http://www.info-zip.org/UnZip.html" arch="all" @@ -14,6 +14,9 @@ subpackages="$pkgname-doc" # normally ftp://ftp.info-zip.org/pub/infozip/src/$pkgname$_pkgver.zip source="$pkgname-$pkgver.tgz::https://distfiles.adelielinux.org/source/$pkgname$_pkgver.tgz http://deb.debian.org/debian/pool/main/u/unzip/unzip_$pkgver-$_debver.debian.tar.xz + cflags.patch + format-secure.patch + unzipsfx-bomb-32bit.patch " builddir="$srcdir/$pkgname$_pkgver" @@ -30,17 +33,19 @@ builddir="$srcdir/$pkgname$_pkgver" # - CVE-2019-13232 prepare() { - default_prepare + cd "$builddir" while read -r i; do msg "$i" patch -p1 -i "../debian/patches/$i" done < ../debian/patches/series + default_prepare } build() { make -f unix/Makefile \ CC="${CHOST}-gcc" \ - LOCAL_ZIP="${CFLAGS} ${CPPFLAGS}" \ + LOCAL_UNZIP="${CFLAGS} ${CPPFLAGS}" \ + STRIP=: \ prefix=/usr generic } @@ -57,4 +62,7 @@ package() { } sha512sums="0694e403ebc57b37218e00ec1a406cae5cc9c5b52b6798e0d4590840b6cdbf9ddc0d9471f67af783e960f8fa2e620394d51384257dca23d06bcd90224a80ce5d unzip-6.0.tgz -13c16db420fa4a34be3090a9acdd79b01320da40ac5aa89a9dfca03e64b914b28eb72aff3882d02a8197457bcb8eeb9473c998cf6920e511883c9289a949fb21 unzip_6.0-25.debian.tar.xz" +13c16db420fa4a34be3090a9acdd79b01320da40ac5aa89a9dfca03e64b914b28eb72aff3882d02a8197457bcb8eeb9473c998cf6920e511883c9289a949fb21 unzip_6.0-25.debian.tar.xz +029447a48972234e60c6b45c58b01dbe411594b1ffe0db00d028810b0bcfa7244dcc89f765e1ee6e8805ba2d2db9bc1d05a1e30ef0d9dd08d33ff6f04af811ab cflags.patch +4bdf55937a181d496261a8f426a97d63844ba96f23beea7906c5e4f7064f55c188ee5ec3ae2d6f2011b5f26b6ac0941dcffb83c06370ed9648b2262917cde64d format-secure.patch +81777dfa1ad707046b238fa9205f8be0f48363f0f23bc0d2d83b67b143ceeba6818cc11058355195a03432cdd6ed4f392202ff3029e14d4b1435c9e2cb5ca6bf unzipsfx-bomb-32bit.patch" diff --git a/system/unzip/cflags.patch b/system/unzip/cflags.patch new file mode 100644 index 000000000..f85192155 --- /dev/null +++ b/system/unzip/cflags.patch @@ -0,0 +1,20 @@ +--- unzip60/unix/configure 2009-04-16 14:25:12.000000000 -0500 ++++ unzip60/unix/configure 2020-06-13 22:59:57.259771113 -0500 +@@ -17,7 +17,7 @@ CFLAGSR=${CFLAGS} + IZ_BZIP2=${3} + CFLAGS="${CFLAGS} -I. -DUNIX" + LFLAGS1="" +-LFLAGS2="-s" ++LFLAGS2="" + LN="ln -s" + + CFLAGS_OPT='' +@@ -130,6 +130,8 @@ _EOF_ + fi + fi + ++CFLAGS_OPT="" ++ + # optimization flags + if test -n "${CFLAGS_OPT}"; then + CFLAGSR="${CFLAGSR} ${CFLAGS_OPT}" diff --git a/system/unzip/format-secure.patch b/system/unzip/format-secure.patch new file mode 100644 index 000000000..5b766f31d --- /dev/null +++ b/system/unzip/format-secure.patch @@ -0,0 +1,93 @@ +Cherry picked from Fedora +https://src.fedoraproject.org/rpms/unzip/blob/874f1688f1662bb3baf76021969277cafeea6ea8/f/unzip-6.0-format-secure.patch + +diff --git a/extract.c b/extract.c +index eeb2f57..a0a4929 100644 +--- a/extract.c ++++ b/extract.c +@@ -472,8 +472,8 @@ int extract_or_test_files(__G) /* return PK-type error code */ + */ + Info(slide, 0x401, ((char *)slide, + LoadFarString(CentSigMsg), j + blknum*DIR_BLKSIZ + 1)); +- Info(slide, 0x401, ((char *)slide, +- LoadFarString(ReportMsg))); ++ Info(slide, 0x401, ++ ((char *)slide,"%s", LoadFarString(ReportMsg))); + error_in_archive = PK_BADERR; + } + reached_end = TRUE; /* ...so no more left to do */ +@@ -752,8 +752,8 @@ int extract_or_test_files(__G) /* return PK-type error code */ + + #ifndef SFX + if (no_endsig_found) { /* just to make sure */ +- Info(slide, 0x401, ((char *)slide, LoadFarString(EndSigMsg))); +- Info(slide, 0x401, ((char *)slide, LoadFarString(ReportMsg))); ++ Info(slide, 0x401, ((char *)slide,"%s", LoadFarString(EndSigMsg))); ++ Info(slide, 0x401, ((char *)slide,"%s", LoadFarString(ReportMsg))); + if (!error_in_archive) /* don't overwrite stronger error */ + error_in_archive = PK_WARN; + } +diff --git a/list.c b/list.c +index 15e0011..f7359c3 100644 +--- a/list.c ++++ b/list.c +@@ -181,7 +181,7 @@ int list_files(__G) /* return PK-type error code */ + Info(slide, 0x401, + ((char *)slide, LoadFarString(CentSigMsg), j)); + Info(slide, 0x401, +- ((char *)slide, LoadFarString(ReportMsg))); ++ ((char *)slide,"%s", LoadFarString(ReportMsg))); + return PK_BADERR; /* sig not found */ + } + } +@@ -507,7 +507,8 @@ int list_files(__G) /* return PK-type error code */ + && (!G.ecrec.is_zip64_archive) + && (memcmp(G.sig, end_central_sig, 4) != 0) + ) { /* just to make sure again */ +- Info(slide, 0x401, ((char *)slide, LoadFarString(EndSigMsg))); ++ Info(slide, 0x401, ++ ((char *)slide,"%s", LoadFarString(EndSigMsg))); + error_in_archive = PK_WARN; /* didn't find sig */ + } + +@@ -591,7 +592,7 @@ int get_time_stamp(__G__ last_modtime, nmember) /* return PK-type error code */ + Info(slide, 0x401, + ((char *)slide, LoadFarString(CentSigMsg), j)); + Info(slide, 0x401, +- ((char *)slide, LoadFarString(ReportMsg))); ++ ((char *)slide,"%s", LoadFarString(ReportMsg))); + return PK_BADERR; /* sig not found */ + } + } +@@ -674,7 +675,7 @@ int get_time_stamp(__G__ last_modtime, nmember) /* return PK-type error code */ + ---------------------------------------------------------------------------*/ + + if (memcmp(G.sig, end_central_sig, 4)) { /* just to make sure again */ +- Info(slide, 0x401, ((char *)slide, LoadFarString(EndSigMsg))); ++ Info(slide, 0x401, ((char *)slide,"%s", LoadFarString(EndSigMsg))); + error_in_archive = PK_WARN; + } + if (*nmember == 0L && error_in_archive <= PK_WARN) +diff --git a/zipinfo.c b/zipinfo.c +index 6e22cc8..ac5c61b 100644 +--- a/zipinfo.c ++++ b/zipinfo.c +@@ -771,7 +771,7 @@ int zipinfo(__G) /* return PK-type error code */ + Info(slide, 0x401, + ((char *)slide, LoadFarString(CentSigMsg), j)); + Info(slide, 0x401, +- ((char *)slide, LoadFarString(ReportMsg))); ++ ((char *)slide,"%s", LoadFarString(ReportMsg))); + error_in_archive = PK_BADERR; /* sig not found */ + break; + } +@@ -960,7 +960,8 @@ int zipinfo(__G) /* return PK-type error code */ + && (!G.ecrec.is_zip64_archive) + && (memcmp(G.sig, end_central_sig, 4) != 0) + ) { /* just to make sure again */ +- Info(slide, 0x401, ((char *)slide, LoadFarString(EndSigMsg))); ++ Info(slide, 0x401, ++ ((char *)slide,"%s", LoadFarString(EndSigMsg))); + error_in_archive = PK_WARN; /* didn't find sig */ + } + diff --git a/system/unzip/unzipsfx-bomb-32bit.patch b/system/unzip/unzipsfx-bomb-32bit.patch new file mode 100644 index 000000000..f834a919b --- /dev/null +++ b/system/unzip/unzipsfx-bomb-32bit.patch @@ -0,0 +1,14 @@ +Explicitly cast literal 0 to the expected bound_t type because K&R C is +awful. + +--- unzip60/extract.c 2020-06-13 22:51:33.799778287 -0500 ++++ unzip60/extract.c 2020-06-14 00:00:50.669719055 -0500 +@@ -520,7 +520,7 @@ int extract_or_test_files(__G) /* ret + return PK_MEM; + } + if ((G.extra_bytes != 0 && +- cover_add((cover_t *)G.cover, 0, G.extra_bytes) != 0) || ++ cover_add((cover_t *)G.cover, (bound_t)0, G.extra_bytes) != 0) || + (G.ecrec.have_ecr64 && + cover_add((cover_t *)G.cover, G.ecrec.ec64_start, + G.ecrec.ec64_end) != 0) || diff --git a/system/vim/APKBUILD b/system/vim/APKBUILD index cb2f7090f..09888c25e 100644 --- a/system/vim/APKBUILD +++ b/system/vim/APKBUILD @@ -4,7 +4,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Kiyoshi Aman <adelie@aerdan.vulpine.house> pkgname=vim -pkgver=8.2.0529 +pkgver=8.2.0959 _pkgver=${pkgver%.*.*}${pkgver#*.} _pkgver=${_pkgver%.*} pkgrel=0 @@ -79,5 +79,5 @@ vimdiff() { mv "$pkgdir"/usr/bin/vimdiff "$subpkgdir"/usr/bin } -sha512sums="73cd3eb1522189f603c65ef1e80c0d1c860ce7332817967ab289aa8f2fdf376235fc9c30af53a66164cfe83a882b55003b4073b27852061295ca9b5fe203501d vim-8.2.0529.tar.gz +sha512sums="040c0a72bb27dfd428c06f103e7f0b919f9680b91da798a91c34634c559f349332fc8ebd3d9c6889cd6319666005bb889322e9541d62754ed6d839bb06b06b49 vim-8.2.0959.tar.gz 12ee3f96c94d74215159fba379ed61907ec5982a9f1643575dcb7c3d5e30824665d683de95f97b5067718b3f2a1238fb7534a70803bc170614498ad026f352d8 vimrc" |