summaryrefslogtreecommitdiff
path: root/system
diff options
context:
space:
mode:
Diffstat (limited to 'system')
-rw-r--r--system/adelie-base/APKBUILD4
-rw-r--r--system/bc/APKBUILD4
-rw-r--r--system/bison/APKBUILD8
-rw-r--r--system/ca-certificates/APKBUILD9
-rw-r--r--system/curl/APKBUILD2
-rw-r--r--system/dash/APKBUILD4
-rw-r--r--system/debianutils/APKBUILD4
-rw-r--r--system/execline/APKBUILD7
-rw-r--r--system/groff/APKBUILD35
-rw-r--r--system/help2man/APKBUILD4
-rw-r--r--system/libgpg-error/APKBUILD4
-rw-r--r--system/libucontext/APKBUILD9
-rw-r--r--system/libucontext/git.patch115
-rw-r--r--system/man-db/APKBUILD44
-rw-r--r--system/man-db/man-db-2.8.5-iconv.patch65
-rw-r--r--system/man-db/man-db.trigger3
-rw-r--r--system/man-pages/APKBUILD4
-rw-r--r--system/mandoc/APKBUILD94
-rw-r--r--system/mandoc/cgi-adelie.patch60
-rw-r--r--system/mandoc/cgi-gz.patch77
-rw-r--r--system/mandoc/cgi-search.patch48
-rw-r--r--system/mandoc/configure.patch21
-rw-r--r--system/mandoc/doc.patch132
-rw-r--r--system/mandoc/empty-tbl-null-deref.patch62
-rw-r--r--system/mandoc/less.patch58
-rw-r--r--system/mandoc/mandoc.post-deinstall3
-rw-r--r--system/mandoc/mandoc.trigger3
-rw-r--r--system/mandoc/tbl-colwidth-oob.patch62
-rw-r--r--system/musl/APKBUILD4
-rw-r--r--system/musl/threads_minus_1.patch267
-rw-r--r--system/ncurses/APKBUILD2
-rw-r--r--system/nss/APKBUILD14
-rw-r--r--system/nss/add_spi+cacert_ca_certs.patch561
-rw-r--r--system/pax-utils/APKBUILD2
-rw-r--r--system/pkgconf/APKBUILD4
-rw-r--r--system/s6-linux-init/APKBUILD9
-rw-r--r--system/s6-rc/APKBUILD6
-rw-r--r--system/s6/APKBUILD7
-rw-r--r--system/sudo/APKBUILD23
-rw-r--r--system/unzip/APKBUILD16
-rw-r--r--system/unzip/cflags.patch20
-rw-r--r--system/unzip/format-secure.patch93
-rw-r--r--system/unzip/unzipsfx-bomb-32bit.patch14
-rw-r--r--system/utmps/APKBUILD4
-rw-r--r--system/vim/APKBUILD4
-rw-r--r--system/yaml/APKBUILD4
46 files changed, 1105 insertions, 894 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/bc/APKBUILD b/system/bc/APKBUILD
index 99fb584f3..b25801a20 100644
--- a/system/bc/APKBUILD
+++ b/system/bc/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: A. Wilcox <awilfox@adelielinux.org>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=bc
-pkgver=2.6.0
+pkgver=2.7.2
pkgrel=0
pkgdesc="An arbitrary precision numeric processing language (calculator)"
url="https://github.com/gavinhoward/bc"
@@ -25,4 +25,4 @@ package() {
make install
}
-sha512sums="809ca124d110bb96ded253fe8799786b48dc5ff8ab540aa97dc8ed43f5a835841d44a71ed082ded17c1df39b6fe5dc2ce7247be0c771b22d7d354aec40434411 bc-2.6.0.tar.xz"
+sha512sums="c2014b16165bf5f8bdadf42bb60ea967a060753c17e13a7c3569d16d218bb3fb644e6a46950e9e7b3aa5a9f6bee4da9b158694909a0ab1fe390b7bb4dc20b303 bc-2.7.2.tar.xz"
diff --git a/system/bison/APKBUILD b/system/bison/APKBUILD
index a053dd0b7..c0a5ed0c2 100644
--- a/system/bison/APKBUILD
+++ b/system/bison/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Łukasz Jendrysik <scadu@yandex.com>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=bison
-pkgver=3.5.3
+pkgver=3.5.4
pkgrel=0
pkgdesc="The GNU general-purpose parser generator"
arch="all"
@@ -15,6 +15,10 @@ provider_priority=1
subpackages="$pkgname-doc $pkgname-lang"
source="https://ftp.gnu.org/gnu/bison/${pkgname}-${pkgver}.tar.xz"
+# secfixes:
+# 3.5.4-r0:
+# - CVE-2020-14150
+
build() {
./configure \
--build=$CBUILD \
@@ -40,4 +44,4 @@ package() {
rmdir -p "$pkgdir"/usr/lib 2>/dev/null || true
}
-sha512sums="888a1e8d4aeda3ff2d7d0a3a88b63bbfe89bdb718cc64d48c244e05fe6c6cd39526fd88143db379fef3071cf6c2dc2ab2fd69834c24acb23ed5f739584ff6308 bison-3.5.3.tar.xz"
+sha512sums="92f59122dc4d5cae1debdd5567253f269ef001c98582a5763a2051424fecb78e8710c80a09fc488f6784705e679a8bc82874bc11cc03e4eb83445cb9f418b331 bison-3.5.4.tar.xz"
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/curl/APKBUILD b/system/curl/APKBUILD
index 8303e6d75..fdf8be1e2 100644
--- a/system/curl/APKBUILD
+++ b/system/curl/APKBUILD
@@ -10,7 +10,7 @@ url="https://curl.haxx.se"
arch="all"
license="MIT"
depends="ca-certificates"
-makedepends_build="groff perl"
+makedepends_build="perl"
makedepends_host="zlib-dev openssl-dev libssh2-dev"
makedepends="$makedepends_build $makedepends_host"
source="https://curl.haxx.se/download/$pkgname-$pkgver.tar.xz"
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/debianutils/APKBUILD b/system/debianutils/APKBUILD
index d3f7d1ce8..ef7ba098e 100644
--- a/system/debianutils/APKBUILD
+++ b/system/debianutils/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: A. Wilcox <awilfox@adelielinux.org>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=debianutils
-pkgver=4.9.1
+pkgver=4.11
pkgrel=0
pkgdesc="Miscellaneous utilities from Debian"
url="https://packages.qa.debian.org/d/debianutils.html"
@@ -37,4 +37,4 @@ which() {
mv "${pkgdir}-doc"/usr/share/man/man1/which* "$subpkgdir"/usr/share/man/man1/
}
-sha512sums="b442950febe6df9e15ec04a6fec0ee8be12d3eac38dc3f9331438d871e3382f4e0f599da0eaeff0e7e9ba0fa5136ce3c3b51c6718e4d7f11c1675f745052a9b1 debianutils_4.9.1.tar.xz"
+sha512sums="87f6b7d9fecbaff615a5529328d384d8adf4ed69c8cc00acc54681d91fc146f4241a761dde2c9b092cb279b63d30dcaa6c2d0309ef4d29d6a2b09600c53c0ac6 debianutils_4.11.tar.xz"
diff --git a/system/execline/APKBUILD b/system/execline/APKBUILD
index bc7328ea3..9565e76d5 100644
--- a/system/execline/APKBUILD
+++ b/system/execline/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Laurent Bercot <ska-adelie@skarnet.org>
# Maintainer: Laurent Bercot <ska-adelie@skarnet.org>
pkgname=execline
-pkgver=2.6.0.2
+pkgver=2.6.1.0
pkgrel=0
pkgdesc="A small scripting language for non-interactive scripts"
url="https://skarnet.org/software/$pkgname/"
arch="all"
options="!check" # No test suite.
license="ISC"
-_skalibs_version=2.9.1.0
+_skalibs_version=2.9.2.1
makedepends="skalibs-dev>=$_skalibs_version"
subpackages="$pkgname-libs $pkgname-dev $pkgname-libs-dev:libsdev $pkgname-doc"
source="https://skarnet.org/software/$pkgname/$pkgname-$pkgver.tar.gz"
@@ -61,5 +61,4 @@ doc() {
mkdir -p "$subpkgdir/usr/share/doc"
cp -a "$builddir/doc" "$subpkgdir/usr/share/doc/$pkgname"
}
-
-sha512sums="915823af0d557fc7a181e088ce319568e62ea4bf743704e498786422c97b991e6b09447c7cff7d7dda520d391773ef4b2fea68e44479c02766966256719bb4c0 execline-2.6.0.2.tar.gz"
+sha512sums="5bddf400f4cddeb8ddf8c80415c426553f14c879feeb4e69d5e21adb517c76a781581e8b4769c8560b56dc6f89f10a8b38fcf296baa6989b86c73bdb2cd6603e execline-2.6.1.0.tar.gz"
diff --git a/system/groff/APKBUILD b/system/groff/APKBUILD
deleted file mode 100644
index 1045af000..000000000
--- a/system/groff/APKBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributor: Natanael Copa <ncopa@alpinelinux.org>
-# Maintainer: A. Wilcox <awilfox@adelielinux.org>
-pkgname=groff
-pkgver=1.22.4
-pkgrel=0
-pkgdesc="GNU troff text-formatting system"
-url="https://www.gnu.org/software/groff/groff.html"
-arch="all"
-license="GPL-3.0+"
-depends=""
-makedepends="perl texinfo"
-subpackages="$pkgname-doc"
-source="https://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz"
-
-build () {
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --without-x
- # work around parallel build issue
- make arch/misc && make
-}
-
-check() {
- make check
-}
-
-package() {
- make DESTDIR="$pkgdir" install
- rm -rf "$pkgdir"/usr/lib/charset.alias
- rmdir -p "$pkgdir"/usr/lib 2>/dev/null || true
-}
-
-sha512sums="1c42d3cd71efaf067b5850945d9097fa1f0fadd5e2b6ba7446bd9d4f439fe1ad058e4ddb0d4e0f503682137dfc7c822944ce1e3e5cf981673f8ba197ea77126d groff-1.22.4.tar.gz"
diff --git a/system/help2man/APKBUILD b/system/help2man/APKBUILD
index 0bb2530e1..d3f811aad 100644
--- a/system/help2man/APKBUILD
+++ b/system/help2man/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=help2man
-pkgver=1.47.13
+pkgver=1.47.15
pkgrel=0
pkgdesc="Create simple man pages from --help output"
url="https://www.gnu.org/software/help2man"
@@ -28,4 +28,4 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="7bf4c75a42c103dd8413a94505f383c6e2b215f9a4cc506e11935acc7f108caad01a5fa489ee157ebef5fa02299145592f65cc828fc016417af557382975d57a help2man-1.47.13.tar.xz"
+sha512sums="2ab835610545f37eef2d77887371378decbac622196426a3444c5fb495596371d0151a92c79d3e3040e93acf3dbeefbc431dac1e76a370fdb5063b43192545ad help2man-1.47.15.tar.xz"
diff --git a/system/libgpg-error/APKBUILD b/system/libgpg-error/APKBUILD
index 31c22df59..a9ee99fdd 100644
--- a/system/libgpg-error/APKBUILD
+++ b/system/libgpg-error/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=libgpg-error
-pkgver=1.37
+pkgver=1.38
pkgrel=0
pkgdesc="GnuPG runtime library"
url="https://www.gnupg.org"
@@ -36,4 +36,4 @@ lisp() {
mv "$pkgdir"/usr/share "$subpkgdir"/usr/share/
}
-sha512sums="fa12977237fcc872e944cda39ca43ee7d2cc9c52e243ede6077f4a31ae135e322dc848b4b55cffdc4ec53f27601ba30ddb368b090a94cd00d9345a55b323f179 libgpg-error-1.37.tar.bz2"
+sha512sums="b936a4738c2cee111d855b1ba3ec433da8c77799a87d1f71275f974f871ebfa593c9db06ea53f0490b6cd6b94bef34f6052a587a4d13d839ec0128500c2dd9de libgpg-error-1.38.tar.bz2"
diff --git a/system/libucontext/APKBUILD b/system/libucontext/APKBUILD
index 78b079435..eb9f4a933 100644
--- a/system/libucontext/APKBUILD
+++ b/system/libucontext/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=libucontext
-pkgver=0.10
+pkgver=0.11
pkgrel=0
pkgdesc="Implementation of software-defined threading"
url=" "
@@ -9,9 +9,7 @@ license="ISC"
depends=""
makedepends=""
subpackages="$pkgname-dev"
-source="https://distfiles.dereferenced.org/libucontext/libucontext-$pkgver.tar.xz
- git.patch
- "
+source="https://distfiles.dereferenced.org/libucontext/libucontext-$pkgver.tar.xz"
case "$CTARGET_ARCH" in
aarch64_be) LIBUCONTEXT_ARCH="aarch64" ;;
@@ -33,5 +31,4 @@ package() {
make ARCH="$LIBUCONTEXT_ARCH" DESTDIR="$pkgdir" install
}
-sha512sums="ef04485f66edd94711a15681953aed12652ea3821036e6a5b10d1ba3c0371ffabd689c85ee2403bc6a94544932e64855d8f5412f46b50d8b5a934f70a771fcb1 libucontext-0.10.tar.xz
-f3f5da2f76302fb3aeba8cca6e3485f264714ad12160e83ef92785a5f2a318cb4cea88e350df71dd6c976d075525361f36e67467ffb82b30fed6acee11be8095 git.patch"
+sha512sums="afc8ea6e03b5f1757aec0035090e0553c58d84c03bab6809cf00df8f12a0a3d5aa6c3516f258f1fb531ff38ba7d39e3f72e450903a159df6e85d22da850cb3bb libucontext-0.11.tar.xz"
diff --git a/system/libucontext/git.patch b/system/libucontext/git.patch
deleted file mode 100644
index d42ee0803..000000000
--- a/system/libucontext/git.patch
+++ /dev/null
@@ -1,115 +0,0 @@
-From d7688a41df4cbe51e52bfebbab7d411548ed7738 Mon Sep 17 00:00:00 2001
-From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
-Date: Mon, 30 Mar 2020 02:22:43 -0500
-Subject: [PATCH 1/3] README: Remove support section
-
-This is no longer a member of the gcompat family of projects;
-remove the mention of that and the gcompat mailing list link.
----
- README.md | 5 -----
- 1 file changed, 5 deletions(-)
-
-diff --git a/README.md b/README.md
-index 97a03b6..1db0516 100644
---- a/README.md
-+++ b/README.md
-@@ -38,8 +38,3 @@ $ make ARCH=x86_64 check
- $ make ARCH=x86_64 DESTDIR=out install
- ```
-
--
--## support
--
--`libucontext` is offered as part of the `gcompat` project. Accordingly, please address all questions
--and bug reports to gcompat@lists.adelielinux.org.
-
-From e2178de76a7d3f41fed7cc5bef3e68eea623a72a Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 30 Mar 2020 08:21:20 +0000
-Subject: [PATCH 2/3] Makefile: Add LIBDIR variable
-
-This ensures that it can be installed into custom location and also
-
-Upstream-Status: Submitted
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- Makefile | 11 ++++++-----
- 1 file changed, 6 insertions(+), 5 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index a8dedc2..74ebdbf 100644
---- a/Makefile
-+++ b/Makefile
-@@ -3,6 +3,7 @@ ifeq ($(ARCH),$(filter $(ARCH),i386 i686))
- override ARCH = x86
- endif
-
-+LIBDIR := /lib
- CFLAGS = -ggdb3 -O2 -Wall -Iarch/${ARCH} -Iarch/common
-
- LIBUCONTEXT_C_SRC = $(wildcard arch/${ARCH}/*.c)
-@@ -13,8 +14,8 @@ LIBUCONTEXT_SOVERSION = 0
- LIBUCONTEXT_NAME = libucontext.so
- LIBUCONTEXT_STATIC_NAME = libucontext.a
- LIBUCONTEXT_SONAME = libucontext.so.${LIBUCONTEXT_SOVERSION}
--LIBUCONTEXT_PATH = /lib/${LIBUCONTEXT_SONAME}
--LIBUCONTEXT_STATIC_PATH = /lib/${LIBUCONTEXT_STATIC_NAME}
-+LIBUCONTEXT_PATH = ${LIBDIR}/${LIBUCONTEXT_SONAME}
-+LIBUCONTEXT_STATIC_PATH = ${LIBDIR}/${LIBUCONTEXT_STATIC_NAME}
-
- all: ${LIBUCONTEXT_SONAME} ${LIBUCONTEXT_STATIC_NAME}
-
-@@ -39,9 +40,9 @@ clean:
- ${LIBUCONTEXT_OBJ} test_libucontext
-
- install: all
-- install -D -m755 ${LIBUCONTEXT_NAME} ${DESTDIR}/${LIBUCONTEXT_PATH}
-- install -D -m664 ${LIBUCONTEXT_STATIC_NAME} ${DESTDIR}/${LIBUCONTEXT_STATIC_PATH}
-- ln -sf ${LIBUCONTEXT_SONAME} ${DESTDIR}/lib/${LIBUCONTEXT_NAME}
-+ install -D -m755 ${LIBUCONTEXT_NAME} ${DESTDIR}${LIBUCONTEXT_PATH}
-+ install -D -m664 ${LIBUCONTEXT_STATIC_NAME} ${DESTDIR}${LIBUCONTEXT_STATIC_PATH}
-+ ln -sf ${LIBUCONTEXT_SONAME} ${DESTDIR}${LIBDIR}/${LIBUCONTEXT_NAME}
-
- check: test_libucontext ${LIBUCONTEXT_SONAME}
- env LD_LIBRARY_PATH=$(shell pwd) ./test_libucontext
-
-From 467ee2916d0eacbd32af10ead14e5d86e365fa2b Mon Sep 17 00:00:00 2001
-From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
-Date: Mon, 30 Mar 2020 17:25:30 -0500
-Subject: [PATCH 3/3] x86: Update copyright statement
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Commit d0ccf2f96f12bfa040cc056f7dc26b3fd25c168d contains the makecontext
-fix from Adélie commit aaeb73ea701388e55b7640e32509a5f6a57f6350[1], as
-seen at AdelieLinux/libucontext@aaeb73ea – but it didn't include the
-addition of my author line.
-
-The full commit text, for future documentation/reference, was:
-
-```
-x86: Write link pointer at correct stack offset
-
-It must come *after* the parameters, not *before*.
-```
-
-Fixes: d0ccf2f96f12 ("x86: modernize")
-Signed-off-by: A. Wilcox <AWilcox@Wilcox-Tech.com>
-
-[1]: https://code.foxkit.us/adelie/libucontext/commit/aaeb73ea701388e55b7640e32509a5f6a57f6350
----
- arch/x86/makecontext.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/arch/x86/makecontext.c b/arch/x86/makecontext.c
-index ee9c2e2..bc8163c 100644
---- a/arch/x86/makecontext.c
-+++ b/arch/x86/makecontext.c
-@@ -1,5 +1,6 @@
- /*
- * Copyright (c) 2018 Ariadne Conill <ariadne@dereferenced.org>
-+ * Copyright (c) 2019 A. Wilcox <awilfox@adelielinux.org>
- *
- * Permission to use, copy, modify, and/or distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
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/man-pages/APKBUILD b/system/man-pages/APKBUILD
index b543f78c6..81f54970d 100644
--- a/system/man-pages/APKBUILD
+++ b/system/man-pages/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=man-pages
-pkgver=5.05
+pkgver=5.07
_posixver=2013-a
pkgrel=0
pkgdesc="Linux man pages"
@@ -49,5 +49,5 @@ package() {
rm -f "$pkgdir"/usr/share/man/man1/localedef*
}
-sha512sums="4f1b9f69c44fb054de9834ad4356fc633416ce98285d137fc616967129f326c8dd28eba05d4fe12a385aced9ff478ed42dde777631be124b2ddc7569ee27a395 man-pages-5.05.tar.xz
+sha512sums="701837b6a8dd3bf9e0fa3d0234384bcc8af4ba8b6a4fdce01a441a146c5101bb14b96cfd68b48613c2ddd2237d01c63fb24a8478c4fff5482265f6605bcbe2f5 man-pages-5.07.tar.xz
e6ec8eb57269fadf368aeaac31b5a98b9c71723d4d5cc189f9c4642d6e865c88e44f77481dccbdb72e31526488eb531f624d455016361687a834ccfcac19fa14 man-pages-posix-2013-a.tar.xz"
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/musl/APKBUILD b/system/musl/APKBUILD
index f7596ebb5..8517b148b 100644
--- a/system/musl/APKBUILD
+++ b/system/musl/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=musl
pkgver=1.2.0
-pkgrel=0
+pkgrel=1
pkgdesc="System library (libc) implementation"
url="https://www.musl-libc.org/"
arch="all"
@@ -26,6 +26,7 @@ source="https://musl.libc.org/releases/$pkgname-$pkgver.tar.gz
3001-make-real-lastlog-h.patch
handle-aux-at_base.patch
fgetspent_r.patch
+ threads_minus_1.patch
ldconfig
getent.c
@@ -121,6 +122,7 @@ f01ab92b9d385c15369c0bb7d95e1bc06a009c8851e363517d0ba1bae3fc2647af69fc2f363b5d96
88ae443dbb8e0a4368235bdc3a1c5c7b718495afa75e06deb8e01becc76cb1f0d6964589e2204fc749c9c1b3190b8b9ac1ae2c0099cab8e2ce3ec877103d4332 3001-make-real-lastlog-h.patch
6a7ff16d95b5d1be77e0a0fbb245491817db192176496a57b22ab037637d97a185ea0b0d19da687da66c2a2f5578e4343d230f399d49fe377d8f008410974238 handle-aux-at_base.patch
ded41235148930f8cf781538f7d63ecb0c65ea4e8ce792565f3649ee2523592a76b2a166785f0b145fc79f5852fd1fb1729a7a09110b3b8f85cba3912e790807 fgetspent_r.patch
+68830961e297d9a499f3b609be84848ad5d3326a1af56e9e54a40ecd972c48da11532c51da572d45e0df3574d63191e7ae0d3a1b84a029365f8d00691de96952 threads_minus_1.patch
cb71d29a87f334c75ecbc911becde7be825ab30d8f39fa6d64cb53812a7c9abaf91d9804c72540e5be3ddd3c84cfe7fd9632274309005cb8bcdf9a9b09b4b923 ldconfig
378d70e65bcc65bb4e1415354cecfa54b0c1146dfb24474b69e418cdbf7ad730472cd09f6f103e1c99ba6c324c9560bccdf287f5889bbc3ef0bdf0e08da47413 getent.c
9d42d66fb1facce2b85dad919be5be819ee290bd26ca2db00982b2f8e055a0196290a008711cbe2b18ec9eee8d2270e3b3a4692c5a1b807013baa5c2b70a2bbf iconv.c"
diff --git a/system/musl/threads_minus_1.patch b/system/musl/threads_minus_1.patch
new file mode 100644
index 000000000..05307d97c
--- /dev/null
+++ b/system/musl/threads_minus_1.patch
@@ -0,0 +1,267 @@
+https://www.openwall.com/lists/musl/2020/05/22/10
+
+From 4d5aa20a94a2d3fae3e69289dc23ecafbd0c16c4 Mon Sep 17 00:00:00 2001
+From: Rich Felker <dalias@aerifal.cx>
+Date: Fri, 22 May 2020 17:35:14 -0400
+Subject: [PATCH 1/4] reorder thread list unlink in pthread_exit after all
+ locks
+
+since the backend for LOCK() skips locking if single-threaded, it's
+unsafe to make the process appear single-threaded before the last use
+of lock.
+
+this fixes potential unsynchronized access to a linked list via
+__dl_thread_cleanup.
+---
+ src/thread/pthread_create.c | 19 +++++++++++--------
+ 1 file changed, 11 insertions(+), 8 deletions(-)
+
+diff --git a/src/thread/pthread_create.c b/src/thread/pthread_create.c
+index 5f491092..6a3b0c21 100644
+--- a/src/thread/pthread_create.c
++++ b/src/thread/pthread_create.c
+@@ -90,14 +90,7 @@ _Noreturn void __pthread_exit(void *result)
+ exit(0);
+ }
+
+- /* At this point we are committed to thread termination. Unlink
+- * the thread from the list. This change will not be visible
+- * until the lock is released, which only happens after SYS_exit
+- * has been called, via the exit futex address pointing at the lock. */
+- libc.threads_minus_1--;
+- self->next->prev = self->prev;
+- self->prev->next = self->next;
+- self->prev = self->next = self;
++ /* At this point we are committed to thread termination. */
+
+ /* Process robust list in userspace to handle non-pshared mutexes
+ * and the detached thread case where the robust list head will
+@@ -121,6 +114,16 @@ _Noreturn void __pthread_exit(void *result)
+ __do_orphaned_stdio_locks();
+ __dl_thread_cleanup();
+
++ /* Last, unlink thread from the list. This change will not be visible
++ * until the lock is released, which only happens after SYS_exit
++ * has been called, via the exit futex address pointing at the lock.
++ * This needs to happen after any possible calls to LOCK() that might
++ * skip locking if libc.threads_minus_1 is zero. */
++ libc.threads_minus_1--;
++ self->next->prev = self->prev;
++ self->prev->next = self->next;
++ self->prev = self->next = self;
++
+ /* This atomic potentially competes with a concurrent pthread_detach
+ * call; the loser is responsible for freeing thread resources. */
+ int state = a_cas(&self->detach_state, DT_JOINABLE, DT_EXITING);
+--
+2.21.0
+
+From e01b5939b38aea5ecbe41670643199825874b26c Mon Sep 17 00:00:00 2001
+From: Rich Felker <dalias@aerifal.cx>
+Date: Thu, 21 May 2020 23:32:45 -0400
+Subject: [PATCH 2/4] don't use libc.threads_minus_1 as relaxed atomic for
+ skipping locks
+
+after all but the last thread exits, the next thread to observe
+libc.threads_minus_1==0 and conclude that it can skip locking fails to
+synchronize with any changes to memory that were made by the
+last-exiting thread. this can produce data races.
+
+on some archs, at least x86, memory synchronization is unlikely to be
+a problem; however, with the inline locks in malloc, skipping the lock
+also eliminated the compiler barrier, and caused code that needed to
+re-check chunk in-use bits after obtaining the lock to reuse a stale
+value, possibly from before the process became single-threaded. this
+in turn produced corruption of the heap state.
+
+some uses of libc.threads_minus_1 remain, especially for allocation of
+new TLS in the dynamic linker; otherwise, it could be removed
+entirely. it's made non-volatile to reflect that the remaining
+accesses are only made under lock on the thread list.
+
+instead of libc.threads_minus_1, libc.threaded is now used for
+skipping locks. the difference is that libc.threaded is permanently
+true once an additional thread has been created. this will produce
+some performance regression in processes that are mostly
+single-threaded but occasionally creating threads. in the future it
+may be possible to bring back the full lock-skipping, but more care
+needs to be taken to produce a safe design.
+---
+ src/internal/libc.h | 2 +-
+ src/malloc/malloc.c | 2 +-
+ src/thread/__lock.c | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/internal/libc.h b/src/internal/libc.h
+index ac97dc7e..c0614852 100644
+--- a/src/internal/libc.h
++++ b/src/internal/libc.h
+@@ -21,7 +21,7 @@ struct __libc {
+ int can_do_threads;
+ int threaded;
+ int secure;
+- volatile int threads_minus_1;
++ int threads_minus_1;
+ size_t *auxv;
+ struct tls_module *tls_head;
+ size_t tls_size, tls_align, tls_cnt;
+diff --git a/src/malloc/malloc.c b/src/malloc/malloc.c
+index 96982596..2553a62e 100644
+--- a/src/malloc/malloc.c
++++ b/src/malloc/malloc.c
+@@ -26,7 +26,7 @@ int __malloc_replaced;
+
+ static inline void lock(volatile int *lk)
+ {
+- if (libc.threads_minus_1)
++ if (libc.threaded)
+ while(a_swap(lk, 1)) __wait(lk, lk+1, 1, 1);
+ }
+
+diff --git a/src/thread/__lock.c b/src/thread/__lock.c
+index 45557c88..5b9b144e 100644
+--- a/src/thread/__lock.c
++++ b/src/thread/__lock.c
+@@ -18,7 +18,7 @@
+
+ void __lock(volatile int *l)
+ {
+- if (!libc.threads_minus_1) return;
++ if (!libc.threaded) return;
+ /* fast path: INT_MIN for the lock, +1 for the congestion */
+ int current = a_cas(l, 0, INT_MIN + 1);
+ if (!current) return;
+--
+2.21.0
+
+From f12888e9eb9eed60cc266b899dcafecb4752964a Mon Sep 17 00:00:00 2001
+From: Rich Felker <dalias@aerifal.cx>
+Date: Fri, 22 May 2020 17:25:38 -0400
+Subject: [PATCH 3/4] cut down size of some libc struct members
+
+these are all flags that can be single-byte values.
+---
+ src/internal/libc.h | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/internal/libc.h b/src/internal/libc.h
+index c0614852..d47f58e0 100644
+--- a/src/internal/libc.h
++++ b/src/internal/libc.h
+@@ -18,9 +18,9 @@ struct tls_module {
+ };
+
+ struct __libc {
+- int can_do_threads;
+- int threaded;
+- int secure;
++ char can_do_threads;
++ char threaded;
++ char secure;
+ int threads_minus_1;
+ size_t *auxv;
+ struct tls_module *tls_head;
+--
+2.21.0
+
+From 8d81ba8c0bc6fe31136cb15c9c82ef4c24965040 Mon Sep 17 00:00:00 2001
+From: Rich Felker <dalias@aerifal.cx>
+Date: Fri, 22 May 2020 17:45:47 -0400
+Subject: [PATCH 4/4] restore lock-skipping for processes that return to
+ single-threaded state
+
+the design used here relies on the barrier provided by the first lock
+operation after the process returns to single-threaded state to
+synchronize with actions by the last thread that exited. by storing
+the intent to change modes in the same object used to detect whether
+locking is needed, it's possible to avoid an extra (possibly costly)
+memory load after the lock is taken.
+---
+ src/internal/libc.h | 1 +
+ src/malloc/malloc.c | 5 ++++-
+ src/thread/__lock.c | 4 +++-
+ src/thread/pthread_create.c | 8 ++++----
+ 4 files changed, 12 insertions(+), 6 deletions(-)
+
+diff --git a/src/internal/libc.h b/src/internal/libc.h
+index d47f58e0..619bba86 100644
+--- a/src/internal/libc.h
++++ b/src/internal/libc.h
+@@ -21,6 +21,7 @@ struct __libc {
+ char can_do_threads;
+ char threaded;
+ char secure;
++ volatile signed char need_locks;
+ int threads_minus_1;
+ size_t *auxv;
+ struct tls_module *tls_head;
+diff --git a/src/malloc/malloc.c b/src/malloc/malloc.c
+index 2553a62e..a803d4c9 100644
+--- a/src/malloc/malloc.c
++++ b/src/malloc/malloc.c
+@@ -26,8 +26,11 @@ int __malloc_replaced;
+
+ static inline void lock(volatile int *lk)
+ {
+- if (libc.threaded)
++ int need_locks = libc.need_locks;
++ if (need_locks) {
+ while(a_swap(lk, 1)) __wait(lk, lk+1, 1, 1);
++ if (need_locks < 0) libc.need_locks = 0;
++ }
+ }
+
+ static inline void unlock(volatile int *lk)
+diff --git a/src/thread/__lock.c b/src/thread/__lock.c
+index 5b9b144e..60eece49 100644
+--- a/src/thread/__lock.c
++++ b/src/thread/__lock.c
+@@ -18,9 +18,11 @@
+
+ void __lock(volatile int *l)
+ {
+- if (!libc.threaded) return;
++ int need_locks = libc.need_locks;
++ if (!need_locks) return;
+ /* fast path: INT_MIN for the lock, +1 for the congestion */
+ int current = a_cas(l, 0, INT_MIN + 1);
++ if (need_locks < 0) libc.need_locks = 0;
+ if (!current) return;
+ /* A first spin loop, for medium congestion. */
+ for (unsigned i = 0; i < 10; ++i) {
+diff --git a/src/thread/pthread_create.c b/src/thread/pthread_create.c
+index 6a3b0c21..6bdfb44f 100644
+--- a/src/thread/pthread_create.c
++++ b/src/thread/pthread_create.c
+@@ -118,8 +118,8 @@ _Noreturn void __pthread_exit(void *result)
+ * until the lock is released, which only happens after SYS_exit
+ * has been called, via the exit futex address pointing at the lock.
+ * This needs to happen after any possible calls to LOCK() that might
+- * skip locking if libc.threads_minus_1 is zero. */
+- libc.threads_minus_1--;
++ * skip locking if process appears single-threaded. */
++ if (!--libc.threads_minus_1) libc.need_locks = -1;
+ self->next->prev = self->prev;
+ self->prev->next = self->next;
+ self->prev = self->next = self;
+@@ -339,7 +339,7 @@ int __pthread_create(pthread_t *restrict res, const pthread_attr_t *restrict att
+ ~(1UL<<((SIGCANCEL-1)%(8*sizeof(long))));
+
+ __tl_lock();
+- libc.threads_minus_1++;
++ if (!libc.threads_minus_1++) libc.need_locks = 1;
+ ret = __clone((c11 ? start_c11 : start), stack, flags, args, &new->tid, TP_ADJ(new), &__thread_list_lock);
+
+ /* All clone failures translate to EAGAIN. If explicit scheduling
+@@ -363,7 +363,7 @@ int __pthread_create(pthread_t *restrict res, const pthread_attr_t *restrict att
+ new->next->prev = new;
+ new->prev->next = new;
+ } else {
+- libc.threads_minus_1--;
++ if (!--libc.threads_minus_1) libc.need_locks = 0;
+ }
+ __tl_unlock();
+ __restore_sigs(&set);
+--
+2.21.0
+
diff --git a/system/ncurses/APKBUILD b/system/ncurses/APKBUILD
index 67df0d1b7..73f5d922b 100644
--- a/system/ncurses/APKBUILD
+++ b/system/ncurses/APKBUILD
@@ -12,7 +12,7 @@ depends=""
makedepends_build="ncurses"
subpackages="$pkgname-static $pkgname-dev $pkgname-doc $pkgname-libs
$pkgname-terminfo-base:base:noarch $pkgname-terminfo:terminfo:noarch"
-source="https://invisible-mirror.net/archives/ncurses/current/ncurses-$_ver.tgz"
+source="https://mirrormaster.adelielinux.org/source/upstream/ncurses-$_ver.tgz"
builddir="$srcdir"/ncurses-$_ver
diff --git a/system/nss/APKBUILD b/system/nss/APKBUILD
index 944668272..65295d30d 100644
--- a/system/nss/APKBUILD
+++ b/system/nss/APKBUILD
@@ -1,9 +1,9 @@
# Contributor: Łukasz Jendrysik <scadu@yandex.com>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=nss
-pkgver=3.51
+pkgver=3.52
_ver=$(printf '%s' "$pkgver" | tr . _)
-pkgrel=1
+pkgrel=0
pkgdesc="Mozilla Network Security Services"
url="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS"
arch="all"
@@ -18,7 +18,6 @@ source="https://ftp.mozilla.org/pub/security/$pkgname/releases/NSS_${_ver}_RTM/s
nss-util.pc.in
nss-softokn.pc.in
nss-config.in
- add_spi+cacert_ca_certs.patch
"
# secfixes:
@@ -44,6 +43,7 @@ build() {
export FREEBL_NO_DEPEND=0
export NSS_USE_SYSTEM_SQLITE=1
export NSS_ENABLE_WERROR=0
+ export NSS_ENABLE_ECC=1
export NSPR_INCLUDE_DIR=`pkg-config --cflags-only-I nspr | sed 's/-I//'`
export NSPR_LIB_DIR=`pkg-config --libs-only-L nspr | sed 's/-L.//'`
case "$CARCH" in
@@ -61,8 +61,7 @@ build() {
export NSS_DISABLE_ALTIVEC=1
make -j 1 -C nss/coreconf
- make -j 1 -C nss/lib/dbm
- make -j 1 -C nss
+ make -C nss
}
package() {
@@ -157,9 +156,8 @@ tools() {
mv "$pkgdir"/usr/bin "$subpkgdir"/usr/
}
-sha512sums="9c894b1ea41449b000750a7b3a89fcb43dfc3d0d4d6dcc0dc288bc73996f76f1ee1ede927a8aecae6d4a07f9f3d3e3a042c6a60cf06e27e0cdc004fce2e510fd nss-3.51.tar.gz
+sha512sums="a45baf38717bceda03c292b2c01def680a24a846327e17d36044a85e30ed40c68220c78c0a2c3025c11778ee58f5d5eb0fff1b4cd274b95c408fb59e394e62c6 nss-3.52.tar.gz
75dbd648a461940647ff373389cc73bc8ec609139cd46c91bcce866af02be6bcbb0524eb3dfb721fbd5b0bc68c20081ed6f7debf6b24317f2a7ba823e8d3c531 nss.pc.in
0f2efa8563b11da68669d281b4459289a56f5a3a906eb60382126f3adcfe47420cdcedc6ab57727a3afeeffa2bbb4c750b43bef8b5f343a75c968411dfa30e09 nss-util.pc.in
09c69d4cc39ec9deebc88696a80d0f15eb2d8c94d9daa234a2adfec941b63805eb4ce7f2e1943857b938bddcaee1beac246a0ec627b71563d9f846e6119a4a15 nss-softokn.pc.in
-2971669e128f06a9af40a5ba88218fa7c9eecfeeae8b0cf42e14f31ed12bf6fa4c5ce60289e078f50e2669a9376b56b45d7c29d726a7eac69ebe1d1e22dc710b nss-config.in
-6e04556858499aec465d6670818465327ba2cb099061c2afee4b5cac8aa61938e0095906acfb38df6a1b70a6bde6dd69f08bb4c00a9d188e4cb3131b26c1bc16 add_spi+cacert_ca_certs.patch"
+2971669e128f06a9af40a5ba88218fa7c9eecfeeae8b0cf42e14f31ed12bf6fa4c5ce60289e078f50e2669a9376b56b45d7c29d726a7eac69ebe1d1e22dc710b nss-config.in"
diff --git a/system/nss/add_spi+cacert_ca_certs.patch b/system/nss/add_spi+cacert_ca_certs.patch
deleted file mode 100644
index ccf973103..000000000
--- a/system/nss/add_spi+cacert_ca_certs.patch
+++ /dev/null
@@ -1,561 +0,0 @@
---- a/nss/lib/ckfw/builtins/certdata.txt
-+++ b/nss/lib/ckfw/builtins/certdata.txt
-@@ -20926,3 +20926,558 @@ CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR
- CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR
- CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR
- CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
-+
-+#
-+# Certificate "CAcert.org Class 1 Root CA"
-+#
-+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
-+CKA_TOKEN CK_BBOOL CK_TRUE
-+CKA_PRIVATE CK_BBOOL CK_FALSE
-+CKA_MODIFIABLE CK_BBOOL CK_FALSE
-+CKA_LABEL UTF8 "CAcert.org Class 1 Root CA"
-+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
-+CKA_SUBJECT MULTILINE_OCTAL
-+\060\171\061\020\060\016\006\003\125\004\012\023\007\122\157\157
-+\164\040\103\101\061\036\060\034\006\003\125\004\013\023\025\150
-+\164\164\160\072\057\057\167\167\167\056\143\141\143\145\162\164
-+\056\157\162\147\061\042\060\040\006\003\125\004\003\023\031\103
-+\101\040\103\145\162\164\040\123\151\147\156\151\156\147\040\101
-+\165\164\150\157\162\151\164\171\061\041\060\037\006\011\052\206
-+\110\206\367\015\001\011\001\026\022\163\165\160\160\157\162\164
-+\100\143\141\143\145\162\164\056\157\162\147
-+END
-+CKA_ID UTF8 "0"
-+CKA_ISSUER MULTILINE_OCTAL
-+\060\171\061\020\060\016\006\003\125\004\012\023\007\122\157\157
-+\164\040\103\101\061\036\060\034\006\003\125\004\013\023\025\150
-+\164\164\160\072\057\057\167\167\167\056\143\141\143\145\162\164
-+\056\157\162\147\061\042\060\040\006\003\125\004\003\023\031\103
-+\101\040\103\145\162\164\040\123\151\147\156\151\156\147\040\101
-+\165\164\150\157\162\151\164\171\061\041\060\037\006\011\052\206
-+\110\206\367\015\001\011\001\026\022\163\165\160\160\157\162\164
-+\100\143\141\143\145\162\164\056\157\162\147
-+END
-+CKA_SERIAL_NUMBER MULTILINE_OCTAL
-+\002\001\000
-+END
-+CKA_VALUE MULTILINE_OCTAL
-+\060\202\007\075\060\202\005\045\240\003\002\001\002\002\001\000
-+\060\015\006\011\052\206\110\206\367\015\001\001\004\005\000\060
-+\171\061\020\060\016\006\003\125\004\012\023\007\122\157\157\164
-+\040\103\101\061\036\060\034\006\003\125\004\013\023\025\150\164
-+\164\160\072\057\057\167\167\167\056\143\141\143\145\162\164\056
-+\157\162\147\061\042\060\040\006\003\125\004\003\023\031\103\101
-+\040\103\145\162\164\040\123\151\147\156\151\156\147\040\101\165
-+\164\150\157\162\151\164\171\061\041\060\037\006\011\052\206\110
-+\206\367\015\001\011\001\026\022\163\165\160\160\157\162\164\100
-+\143\141\143\145\162\164\056\157\162\147\060\036\027\015\060\063
-+\060\063\063\060\061\062\062\071\064\071\132\027\015\063\063\060
-+\063\062\071\061\062\062\071\064\071\132\060\171\061\020\060\016
-+\006\003\125\004\012\023\007\122\157\157\164\040\103\101\061\036
-+\060\034\006\003\125\004\013\023\025\150\164\164\160\072\057\057
-+\167\167\167\056\143\141\143\145\162\164\056\157\162\147\061\042
-+\060\040\006\003\125\004\003\023\031\103\101\040\103\145\162\164
-+\040\123\151\147\156\151\156\147\040\101\165\164\150\157\162\151
-+\164\171\061\041\060\037\006\011\052\206\110\206\367\015\001\011
-+\001\026\022\163\165\160\160\157\162\164\100\143\141\143\145\162
-+\164\056\157\162\147\060\202\002\042\060\015\006\011\052\206\110
-+\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202\002
-+\012\002\202\002\001\000\316\042\300\342\106\175\354\066\050\007
-+\120\226\362\240\063\100\214\113\361\073\146\077\061\345\153\002
-+\066\333\326\174\366\361\210\217\116\167\066\005\101\225\371\011
-+\360\022\317\106\206\163\140\267\156\176\350\300\130\144\256\315
-+\260\255\105\027\014\143\372\147\012\350\326\322\277\076\347\230
-+\304\360\114\372\340\003\273\065\135\154\041\336\236\040\331\272
-+\315\146\062\067\162\372\367\010\365\307\315\130\311\216\347\016
-+\136\352\076\376\034\241\024\012\025\154\206\204\133\144\146\052
-+\172\251\113\123\171\365\210\242\173\356\057\012\141\053\215\262
-+\176\115\126\245\023\354\352\332\222\236\254\104\101\036\130\140
-+\145\005\146\370\300\104\275\313\224\367\102\176\013\367\145\150
-+\230\121\005\360\363\005\221\004\035\033\027\202\354\310\127\273
-+\303\153\172\210\361\260\162\314\045\133\040\221\354\026\002\022
-+\217\062\351\027\030\110\320\307\005\056\002\060\102\270\045\234
-+\005\153\077\252\072\247\353\123\110\367\350\322\266\007\230\334
-+\033\306\064\177\177\311\034\202\172\005\130\053\010\133\363\070
-+\242\253\027\135\146\311\230\327\236\020\213\242\322\335\164\232
-+\367\161\014\162\140\337\315\157\230\063\235\226\064\166\076\044
-+\172\222\260\016\225\036\157\346\240\105\070\107\252\327\101\355
-+\112\267\022\366\327\033\203\212\017\056\330\011\266\131\327\252
-+\004\377\322\223\175\150\056\335\213\113\253\130\272\057\215\352
-+\225\247\240\303\124\211\245\373\333\213\121\042\235\262\303\276
-+\021\276\054\221\206\213\226\170\255\040\323\212\057\032\077\306
-+\320\121\145\207\041\261\031\001\145\177\105\034\207\365\174\320
-+\101\114\117\051\230\041\375\063\037\165\014\004\121\372\031\167
-+\333\324\024\034\356\201\303\035\365\230\267\151\006\221\042\335
-+\000\120\314\201\061\254\022\007\173\070\332\150\133\346\053\324
-+\176\311\137\255\350\353\162\114\363\001\345\113\040\277\232\246
-+\127\312\221\000\001\213\241\165\041\067\265\143\015\147\076\106
-+\117\160\040\147\316\305\326\131\333\002\340\360\322\313\315\272
-+\142\267\220\101\350\335\040\344\051\274\144\051\102\310\042\334
-+\170\232\377\103\354\230\033\011\121\113\132\132\302\161\361\304
-+\313\163\251\345\241\013\002\003\001\000\001\243\202\001\316\060
-+\202\001\312\060\035\006\003\125\035\016\004\026\004\024\026\265
-+\062\033\324\307\363\340\346\216\363\275\322\260\072\356\262\071
-+\030\321\060\201\243\006\003\125\035\043\004\201\233\060\201\230
-+\200\024\026\265\062\033\324\307\363\340\346\216\363\275\322\260
-+\072\356\262\071\030\321\241\175\244\173\060\171\061\020\060\016
-+\006\003\125\004\012\023\007\122\157\157\164\040\103\101\061\036
-+\060\034\006\003\125\004\013\023\025\150\164\164\160\072\057\057
-+\167\167\167\056\143\141\143\145\162\164\056\157\162\147\061\042
-+\060\040\006\003\125\004\003\023\031\103\101\040\103\145\162\164
-+\040\123\151\147\156\151\156\147\040\101\165\164\150\157\162\151
-+\164\171\061\041\060\037\006\011\052\206\110\206\367\015\001\011
-+\001\026\022\163\165\160\160\157\162\164\100\143\141\143\145\162
-+\164\056\157\162\147\202\001\000\060\017\006\003\125\035\023\001
-+\001\377\004\005\060\003\001\001\377\060\062\006\003\125\035\037
-+\004\053\060\051\060\047\240\045\240\043\206\041\150\164\164\160
-+\163\072\057\057\167\167\167\056\143\141\143\145\162\164\056\157
-+\162\147\057\162\145\166\157\153\145\056\143\162\154\060\060\006
-+\011\140\206\110\001\206\370\102\001\004\004\043\026\041\150\164
-+\164\160\163\072\057\057\167\167\167\056\143\141\143\145\162\164
-+\056\157\162\147\057\162\145\166\157\153\145\056\143\162\154\060
-+\064\006\011\140\206\110\001\206\370\102\001\010\004\047\026\045
-+\150\164\164\160\072\057\057\167\167\167\056\143\141\143\145\162
-+\164\056\157\162\147\057\151\156\144\145\170\056\160\150\160\077
-+\151\144\075\061\060\060\126\006\011\140\206\110\001\206\370\102
-+\001\015\004\111\026\107\124\157\040\147\145\164\040\171\157\165
-+\162\040\157\167\156\040\143\145\162\164\151\146\151\143\141\164
-+\145\040\146\157\162\040\106\122\105\105\040\150\145\141\144\040
-+\157\166\145\162\040\164\157\040\150\164\164\160\072\057\057\167
-+\167\167\056\143\141\143\145\162\164\056\157\162\147\060\015\006
-+\011\052\206\110\206\367\015\001\001\004\005\000\003\202\002\001
-+\000\050\307\356\234\202\002\272\134\200\022\312\065\012\035\201
-+\157\211\152\231\314\362\150\017\177\247\341\215\130\225\076\275
-+\362\006\303\220\132\254\265\140\366\231\103\001\243\210\160\234
-+\235\142\235\244\207\257\147\130\015\060\066\073\346\255\110\323
-+\313\164\002\206\161\076\342\053\003\150\361\064\142\100\106\073
-+\123\352\050\364\254\373\146\225\123\212\115\135\375\073\331\140
-+\327\312\171\151\073\261\145\222\246\306\201\202\134\234\315\353
-+\115\001\212\245\337\021\125\252\025\312\037\067\300\202\230\160
-+\141\333\152\174\226\243\216\056\124\076\117\041\251\220\357\334
-+\202\277\334\350\105\255\115\220\163\010\074\224\145\260\004\231
-+\166\177\342\274\302\152\025\252\227\004\067\044\330\036\224\116
-+\155\016\121\276\326\304\217\312\226\155\367\103\337\350\060\145
-+\047\073\173\273\103\103\143\304\103\367\262\354\150\314\341\031
-+\216\042\373\230\341\173\132\076\001\067\073\213\010\260\242\363
-+\225\116\032\313\233\315\232\261\333\262\160\360\055\112\333\330
-+\260\343\157\105\110\063\022\377\376\074\062\052\124\367\304\367
-+\212\360\210\043\302\107\376\144\172\161\300\321\036\246\143\260
-+\007\176\244\057\323\001\217\334\237\053\266\306\010\251\017\223
-+\110\045\374\022\375\237\102\334\363\304\076\366\127\260\327\335
-+\151\321\006\167\064\012\113\322\312\240\377\034\306\214\311\026
-+\276\304\314\062\067\150\163\137\010\373\121\367\111\123\066\005
-+\012\225\002\114\362\171\032\020\366\330\072\165\234\363\035\361
-+\242\015\160\147\206\033\263\026\365\057\345\244\353\171\206\371
-+\075\013\302\163\013\245\231\254\157\374\147\270\345\057\013\246
-+\030\044\215\173\321\110\065\051\030\100\254\223\140\341\226\206
-+\120\264\172\131\330\217\041\013\237\317\202\221\306\073\277\153
-+\334\007\221\271\227\126\043\252\266\154\224\306\110\006\074\344
-+\316\116\252\344\366\057\011\334\123\157\056\374\164\353\072\143
-+\231\302\246\254\211\274\247\262\104\240\015\212\020\343\154\362
-+\044\313\372\233\237\160\107\056\336\024\213\324\262\040\011\226
-+\242\144\361\044\034\334\241\065\234\025\262\324\274\125\056\175
-+\006\365\234\016\125\364\132\326\223\332\166\255\045\163\114\305
-+\103
-+END
-+
-+# Trust for Certificate "CAcert.org Class 1 Root CA"
-+CKA_CLASS CK_OBJECT_CLASS CKO_NETSCAPE_TRUST
-+CKA_TOKEN CK_BBOOL CK_TRUE
-+CKA_PRIVATE CK_BBOOL CK_FALSE
-+CKA_MODIFIABLE CK_BBOOL CK_FALSE
-+CKA_LABEL UTF8 "CAcert.org Class 1 Root CA"
-+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
-+\023\134\354\066\364\234\270\351\073\032\262\160\315\200\210\106
-+\166\316\217\063
-+END
-+CKA_CERT_MD5_HASH MULTILINE_OCTAL
-+\246\033\067\136\071\015\234\066\124\356\275\040\061\106\037\153
-+END
-+CKA_ISSUER MULTILINE_OCTAL
-+\060\171\061\020\060\016\006\003\125\004\012\023\007\122\157\157
-+\164\040\103\101\061\036\060\034\006\003\125\004\013\023\025\150
-+\164\164\160\072\057\057\167\167\167\056\143\141\143\145\162\164
-+\056\157\162\147\061\042\060\040\006\003\125\004\003\023\031\103
-+\101\040\103\145\162\164\040\123\151\147\156\151\156\147\040\101
-+\165\164\150\157\162\151\164\171\061\041\060\037\006\011\052\206
-+\110\206\367\015\001\011\001\026\022\163\165\160\160\157\162\164
-+\100\143\141\143\145\162\164\056\157\162\147
-+END
-+CKA_SERIAL_NUMBER MULTILINE_OCTAL
-+\002\001\000
-+END
-+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR
-+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR
-+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR
-+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
-+
-+#
-+# Certificate "CAcert.org Class 3 Root CA"
-+#
-+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
-+CKA_TOKEN CK_BBOOL CK_TRUE
-+CKA_PRIVATE CK_BBOOL CK_FALSE
-+CKA_MODIFIABLE CK_BBOOL CK_FALSE
-+CKA_LABEL UTF8 "CAcert.org Class 3 Root CA"
-+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
-+CKA_SUBJECT MULTILINE_OCTAL
-+\060\124\061\024\060\022\006\003\125\004\012\023\013\103\101\143
-+\145\162\164\040\111\156\143\056\061\036\060\034\006\003\125\004
-+\013\023\025\150\164\164\160\072\057\057\167\167\167\056\103\101
-+\143\145\162\164\056\157\162\147\061\034\060\032\006\003\125\004
-+\003\023\023\103\101\143\145\162\164\040\103\154\141\163\163\040
-+\063\040\122\157\157\164
-+END
-+CKA_ID UTF8 "0"
-+CKA_ISSUER MULTILINE_OCTAL
-+\060\171\061\020\060\016\006\003\125\004\012\023\007\122\157\157
-+\164\040\103\101\061\036\060\034\006\003\125\004\013\023\025\150
-+\164\164\160\072\057\057\167\167\167\056\143\141\143\145\162\164
-+\056\157\162\147\061\042\060\040\006\003\125\004\003\023\031\103
-+\101\040\103\145\162\164\040\123\151\147\156\151\156\147\040\101
-+\165\164\150\157\162\151\164\171\061\041\060\037\006\011\052\206
-+\110\206\367\015\001\011\001\026\022\163\165\160\160\157\162\164
-+\100\143\141\143\145\162\164\056\157\162\147
-+END
-+CKA_SERIAL_NUMBER MULTILINE_OCTAL
-+\002\001\001
-+END
-+CKA_VALUE MULTILINE_OCTAL
-+\060\202\006\010\060\202\003\360\240\003\002\001\002\002\001\001
-+\060\015\006\011\052\206\110\206\367\015\001\001\004\005\000\060
-+\171\061\020\060\016\006\003\125\004\012\023\007\122\157\157\164
-+\040\103\101\061\036\060\034\006\003\125\004\013\023\025\150\164
-+\164\160\072\057\057\167\167\167\056\143\141\143\145\162\164\056
-+\157\162\147\061\042\060\040\006\003\125\004\003\023\031\103\101
-+\040\103\145\162\164\040\123\151\147\156\151\156\147\040\101\165
-+\164\150\157\162\151\164\171\061\041\060\037\006\011\052\206\110
-+\206\367\015\001\011\001\026\022\163\165\160\160\157\162\164\100
-+\143\141\143\145\162\164\056\157\162\147\060\036\027\015\060\065
-+\061\060\061\064\060\067\063\066\065\065\132\027\015\063\063\060
-+\063\062\070\060\067\063\066\065\065\132\060\124\061\024\060\022
-+\006\003\125\004\012\023\013\103\101\143\145\162\164\040\111\156
-+\143\056\061\036\060\034\006\003\125\004\013\023\025\150\164\164
-+\160\072\057\057\167\167\167\056\103\101\143\145\162\164\056\157
-+\162\147\061\034\060\032\006\003\125\004\003\023\023\103\101\143
-+\145\162\164\040\103\154\141\163\163\040\063\040\122\157\157\164
-+\060\202\002\042\060\015\006\011\052\206\110\206\367\015\001\001
-+\001\005\000\003\202\002\017\000\060\202\002\012\002\202\002\001
-+\000\253\111\065\021\110\174\322\046\176\123\224\317\103\251\335
-+\050\327\102\052\213\363\207\170\031\130\174\017\236\332\211\175
-+\341\373\353\162\220\015\164\241\226\144\253\237\240\044\231\163
-+\332\342\125\166\307\027\173\365\004\254\106\270\303\276\177\144
-+\215\020\154\044\363\141\234\300\362\220\372\121\346\365\151\001
-+\143\303\017\126\342\112\102\317\342\104\214\045\050\250\305\171
-+\011\175\106\271\212\363\351\363\064\051\010\105\344\034\237\313
-+\224\004\034\201\250\024\263\230\145\304\103\354\116\202\215\011
-+\321\275\252\133\215\222\320\354\336\220\305\177\012\302\343\353
-+\346\061\132\136\164\076\227\063\131\350\303\003\075\140\063\277
-+\367\321\157\107\304\315\356\142\203\122\156\056\010\232\244\331
-+\025\030\221\246\205\222\107\260\256\110\353\155\267\041\354\205
-+\032\150\162\065\253\377\360\020\135\300\364\224\247\152\325\073
-+\222\176\114\220\005\176\223\301\054\213\244\216\142\164\025\161
-+\156\013\161\003\352\257\025\070\232\324\322\005\162\157\214\371
-+\053\353\132\162\045\371\071\106\343\162\033\076\004\303\144\047
-+\042\020\052\212\117\130\247\003\255\276\264\056\023\355\135\252
-+\110\327\325\175\324\052\173\134\372\106\004\120\344\314\016\102
-+\133\214\355\333\362\317\374\226\223\340\333\021\066\124\142\064
-+\070\217\014\140\233\073\227\126\070\255\363\322\133\213\240\133
-+\352\116\226\270\174\327\325\240\206\160\100\323\221\051\267\242
-+\074\255\365\214\273\317\032\222\212\344\064\173\300\330\154\137
-+\351\012\302\303\247\040\232\132\337\054\135\122\134\272\107\325
-+\233\357\044\050\160\070\040\057\325\177\051\300\262\101\003\150
-+\222\314\340\234\314\227\113\105\357\072\020\012\253\160\072\230
-+\225\160\255\065\261\352\205\053\244\034\200\041\061\251\256\140
-+\172\200\046\110\000\270\001\300\223\143\125\042\221\074\126\347
-+\257\333\072\045\363\217\061\124\352\046\213\201\131\371\241\321
-+\123\021\305\173\235\003\366\164\021\340\155\261\054\077\054\206
-+\221\231\161\232\246\167\213\064\140\321\024\264\054\254\235\257
-+\214\020\323\237\304\152\370\157\023\374\163\131\367\146\102\164
-+\036\212\343\370\334\322\157\230\234\313\107\230\225\100\005\373
-+\351\002\003\001\000\001\243\201\277\060\201\274\060\017\006\003
-+\125\035\023\001\001\377\004\005\060\003\001\001\377\060\135\006
-+\010\053\006\001\005\005\007\001\001\004\121\060\117\060\043\006
-+\010\053\006\001\005\005\007\060\001\206\027\150\164\164\160\072
-+\057\057\157\143\163\160\056\103\101\143\145\162\164\056\157\162
-+\147\057\060\050\006\010\053\006\001\005\005\007\060\002\206\034
-+\150\164\164\160\072\057\057\167\167\167\056\103\101\143\145\162
-+\164\056\157\162\147\057\143\141\056\143\162\164\060\112\006\003
-+\125\035\040\004\103\060\101\060\077\006\010\053\006\001\004\001
-+\201\220\112\060\063\060\061\006\010\053\006\001\005\005\007\002
-+\001\026\045\150\164\164\160\072\057\057\167\167\167\056\103\101
-+\143\145\162\164\056\157\162\147\057\151\156\144\145\170\056\160
-+\150\160\077\151\144\075\061\060\060\015\006\011\052\206\110\206
-+\367\015\001\001\004\005\000\003\202\002\001\000\177\010\210\241
-+\332\032\120\111\332\211\373\241\010\162\363\212\367\036\304\072
-+\264\171\133\040\060\261\105\336\302\135\323\145\151\361\302\135
-+\124\124\074\205\137\271\173\102\221\302\231\375\033\121\233\253
-+\106\245\241\020\123\236\155\210\254\163\156\054\063\246\360\364
-+\236\340\165\301\076\210\105\251\341\146\103\376\126\132\321\172
-+\101\170\367\100\332\112\072\361\013\133\245\273\026\006\346\302
-+\347\223\271\205\115\227\117\261\036\070\103\200\357\233\015\214
-+\357\270\247\140\000\207\127\175\036\104\034\313\043\357\233\074
-+\231\235\257\265\051\034\105\171\026\226\115\047\155\361\034\154
-+\303\302\125\144\263\274\024\342\363\244\037\036\062\374\047\025
-+\005\317\335\056\256\076\202\141\173\360\041\020\030\366\104\352
-+\123\071\371\334\320\232\040\340\306\273\340\273\132\117\304\231
-+\310\007\275\265\275\242\333\056\142\015\102\064\101\274\377\213
-+\212\365\121\042\252\210\060\000\342\260\324\274\276\145\272\325
-+\003\127\171\233\350\334\310\115\370\120\355\221\245\122\050\242
-+\254\373\066\130\076\351\224\053\221\120\207\033\326\136\326\214
-+\314\367\017\020\014\122\116\320\026\141\345\345\012\154\277\027
-+\307\162\106\127\234\230\365\154\140\143\172\157\136\271\116\057
-+\310\271\271\273\152\205\274\230\015\355\371\076\227\204\064\224
-+\256\000\257\241\345\347\222\156\116\275\363\342\331\024\213\134
-+\322\353\001\154\240\027\245\055\020\353\234\172\112\275\275\356
-+\316\375\355\042\100\253\160\070\210\365\012\207\152\302\253\005
-+\140\311\110\005\332\123\301\336\104\167\152\263\363\074\074\355
-+\200\274\246\070\112\051\044\137\376\131\073\233\045\172\126\143
-+\000\144\271\135\244\142\175\127\066\117\255\203\357\037\222\123
-+\240\216\167\127\335\345\141\021\075\043\000\220\114\074\372\243
-+\140\223\004\243\257\065\366\016\152\217\117\112\140\247\205\005
-+\154\106\241\217\364\307\166\343\241\131\127\367\161\262\304\156
-+\024\134\155\155\101\146\337\033\223\261\324\000\303\356\313\317
-+\074\075\041\200\251\137\143\145\374\335\340\137\244\364\053\360
-+\205\161\101\324\147\045\373\032\261\227\256\326\231\202\023\101
-+\322\156\245\033\231\047\200\347\013\251\250\000
-+END
-+
-+# Trust for Certificate "CAcert.org Class 3 Root CA"
-+CKA_CLASS CK_OBJECT_CLASS CKO_NETSCAPE_TRUST
-+CKA_TOKEN CK_BBOOL CK_TRUE
-+CKA_PRIVATE CK_BBOOL CK_FALSE
-+CKA_MODIFIABLE CK_BBOOL CK_FALSE
-+CKA_LABEL UTF8 "CAcert.org Class 3 Root CA"
-+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
-+\333\114\102\151\007\077\351\302\243\175\211\012\134\033\030\304
-+\030\116\052\055
-+END
-+CKA_CERT_MD5_HASH MULTILINE_OCTAL
-+\163\077\065\124\035\104\311\351\132\112\357\121\255\003\006\266
-+END
-+CKA_ISSUER MULTILINE_OCTAL
-+\060\171\061\020\060\016\006\003\125\004\012\023\007\122\157\157
-+\164\040\103\101\061\036\060\034\006\003\125\004\013\023\025\150
-+\164\164\160\072\057\057\167\167\167\056\143\141\143\145\162\164
-+\056\157\162\147\061\042\060\040\006\003\125\004\003\023\031\103
-+\101\040\103\145\162\164\040\123\151\147\156\151\156\147\040\101
-+\165\164\150\157\162\151\164\171\061\041\060\037\006\011\052\206
-+\110\206\367\015\001\011\001\026\022\163\165\160\160\157\162\164
-+\100\143\141\143\145\162\164\056\157\162\147
-+END
-+CKA_SERIAL_NUMBER MULTILINE_OCTAL
-+\002\001\001
-+END
-+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR
-+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR
-+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR
-+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
-+
-+#
-+# Certificate "Software in the Public Interest, Inc. Root CA (2008)"
-+#
-+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
-+CKA_TOKEN CK_BBOOL CK_TRUE
-+CKA_PRIVATE CK_BBOOL CK_FALSE
-+CKA_MODIFIABLE CK_BBOOL CK_FALSE
-+CKA_LABEL UTF8 "Software in the Public Interest, Inc. Root CA (2008)"
-+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
-+CKA_SUBJECT MULTILINE_OCTAL
-+\060\201\274\061\013\060\011\006\003\125\004\006\023\002\125\123
-+\061\020\060\016\006\003\125\004\010\023\007\111\156\144\151\141
-+\156\141\061\025\060\023\006\003\125\004\007\023\014\111\156\144
-+\151\141\156\141\160\157\154\151\163\061\050\060\046\006\003\125
-+\004\012\023\037\123\157\146\164\167\141\162\145\040\151\156\040
-+\164\150\145\040\120\165\142\154\151\143\040\111\156\164\145\162
-+\145\163\164\061\023\060\021\006\003\125\004\013\023\012\150\157
-+\163\164\155\141\163\164\145\162\061\036\060\034\006\003\125\004
-+\003\023\025\103\145\162\164\151\146\151\143\141\164\145\040\101
-+\165\164\150\157\162\151\164\171\061\045\060\043\006\011\052\206
-+\110\206\367\015\001\011\001\026\026\150\157\163\164\155\141\163
-+\164\145\162\100\163\160\151\055\151\156\143\056\157\162\147
-+END
-+CKA_ID UTF8 "0"
-+CKA_ISSUER MULTILINE_OCTAL
-+\060\201\274\061\013\060\011\006\003\125\004\006\023\002\125\123
-+\061\020\060\016\006\003\125\004\010\023\007\111\156\144\151\141
-+\156\141\061\025\060\023\006\003\125\004\007\023\014\111\156\144
-+\151\141\156\141\160\157\154\151\163\061\050\060\046\006\003\125
-+\004\012\023\037\123\157\146\164\167\141\162\145\040\151\156\040
-+\164\150\145\040\120\165\142\154\151\143\040\111\156\164\145\162
-+\145\163\164\061\023\060\021\006\003\125\004\013\023\012\150\157
-+\163\164\155\141\163\164\145\162\061\036\060\034\006\003\125\004
-+\003\023\025\103\145\162\164\151\146\151\143\141\164\145\040\101
-+\165\164\150\157\162\151\164\171\061\045\060\043\006\011\052\206
-+\110\206\367\015\001\011\001\026\026\150\157\163\164\155\141\163
-+\164\145\162\100\163\160\151\055\151\156\143\056\157\162\147
-+END
-+CKA_SERIAL_NUMBER MULTILINE_OCTAL
-+\002\011\000\350\216\266\311\370\052\024\050
-+END
-+CKA_VALUE MULTILINE_OCTAL
-+\060\202\010\016\060\202\005\366\240\003\002\001\002\002\011\000
-+\350\216\266\311\370\052\024\050\060\015\006\011\052\206\110\206
-+\367\015\001\001\005\005\000\060\201\274\061\013\060\011\006\003
-+\125\004\006\023\002\125\123\061\020\060\016\006\003\125\004\010
-+\023\007\111\156\144\151\141\156\141\061\025\060\023\006\003\125
-+\004\007\023\014\111\156\144\151\141\156\141\160\157\154\151\163
-+\061\050\060\046\006\003\125\004\012\023\037\123\157\146\164\167
-+\141\162\145\040\151\156\040\164\150\145\040\120\165\142\154\151
-+\143\040\111\156\164\145\162\145\163\164\061\023\060\021\006\003
-+\125\004\013\023\012\150\157\163\164\155\141\163\164\145\162\061
-+\036\060\034\006\003\125\004\003\023\025\103\145\162\164\151\146
-+\151\143\141\164\145\040\101\165\164\150\157\162\151\164\171\061
-+\045\060\043\006\011\052\206\110\206\367\015\001\011\001\026\026
-+\150\157\163\164\155\141\163\164\145\162\100\163\160\151\055\151
-+\156\143\056\157\162\147\060\036\027\015\060\070\060\065\061\063
-+\060\070\060\067\065\066\132\027\015\061\070\060\065\061\061\060
-+\070\060\067\065\066\132\060\201\274\061\013\060\011\006\003\125
-+\004\006\023\002\125\123\061\020\060\016\006\003\125\004\010\023
-+\007\111\156\144\151\141\156\141\061\025\060\023\006\003\125\004
-+\007\023\014\111\156\144\151\141\156\141\160\157\154\151\163\061
-+\050\060\046\006\003\125\004\012\023\037\123\157\146\164\167\141
-+\162\145\040\151\156\040\164\150\145\040\120\165\142\154\151\143
-+\040\111\156\164\145\162\145\163\164\061\023\060\021\006\003\125
-+\004\013\023\012\150\157\163\164\155\141\163\164\145\162\061\036
-+\060\034\006\003\125\004\003\023\025\103\145\162\164\151\146\151
-+\143\141\164\145\040\101\165\164\150\157\162\151\164\171\061\045
-+\060\043\006\011\052\206\110\206\367\015\001\011\001\026\026\150
-+\157\163\164\155\141\163\164\145\162\100\163\160\151\055\151\156
-+\143\056\157\162\147\060\202\002\042\060\015\006\011\052\206\110
-+\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202\002
-+\012\002\202\002\001\000\334\066\346\107\102\302\304\121\165\051
-+\207\100\303\330\216\041\006\322\030\116\353\357\040\275\220\074
-+\205\020\023\214\051\133\224\143\366\364\055\361\006\102\221\271
-+\031\304\102\151\010\277\213\066\105\352\050\005\063\111\110\240
-+\047\103\223\065\212\101\330\170\263\360\357\263\156\055\335\321
-+\313\175\352\364\165\046\323\076\220\072\356\327\347\054\004\265
-+\174\341\365\174\305\116\357\167\275\134\242\223\063\222\316\175
-+\201\110\317\153\265\042\054\010\203\375\323\325\317\073\055\375
-+\265\111\220\133\366\255\115\023\312\336\323\246\235\123\121\161
-+\143\106\370\112\026\134\230\356\055\155\232\026\241\166\220\342
-+\140\103\231\326\211\326\154\056\172\230\262\013\003\054\343\172
-+\117\307\335\343\314\343\112\152\215\171\122\372\364\301\257\056
-+\217\052\010\313\033\051\202\222\162\103\274\316\210\251\252\247
-+\212\121\103\125\205\232\067\003\170\223\310\360\275\264\101\310
-+\007\102\232\313\065\227\172\212\201\145\336\035\124\010\001\361
-+\144\134\267\027\032\121\274\036\303\131\207\166\030\026\230\356
-+\277\366\147\201\213\006\065\305\113\155\131\031\307\322\306\110
-+\276\156\024\050\203\112\020\234\033\365\157\274\251\216\365\151
-+\376\262\301\125\314\347\024\311\371\133\024\123\121\007\352\316
-+\075\344\117\050\037\074\141\011\327\063\322\156\247\156\324\307
-+\023\011\157\153\135\024\356\235\211\033\245\152\362\366\370\320
-+\162\216\352\162\037\057\064\152\051\012\305\012\354\034\100\205
-+\022\367\246\245\323\117\255\300\205\214\114\174\163\040\314\123
-+\030\361\262\130\114\001\365\277\352\144\325\134\071\305\316\154
-+\314\123\132\126\272\101\017\045\337\153\120\266\307\212\240\275
-+\002\302\305\073\125\245\262\144\042\204\121\050\126\256\061\356
-+\136\373\013\026\115\106\005\221\200\104\355\254\155\360\127\250
-+\372\353\141\110\240\313\033\263\037\216\315\305\041\167\003\204
-+\036\374\254\243\103\010\143\214\355\371\047\357\264\260\135\147
-+\326\117\355\320\213\076\135\133\311\221\275\226\002\204\075\305
-+\115\274\102\077\164\375\074\135\254\134\110\066\136\207\061\057
-+\030\154\304\150\356\241\213\311\131\320\030\343\000\200\263\124
-+\047\056\231\360\025\123\002\003\001\000\001\243\202\002\017\060
-+\202\002\013\060\035\006\003\125\035\016\004\026\004\024\064\161
-+\321\070\327\025\066\203\107\153\327\067\144\102\073\216\215\122
-+\235\253\060\201\361\006\003\125\035\043\004\201\351\060\201\346
-+\200\024\064\161\321\070\327\025\066\203\107\153\327\067\144\102
-+\073\216\215\122\235\253\241\201\302\244\201\277\060\201\274\061
-+\013\060\011\006\003\125\004\006\023\002\125\123\061\020\060\016
-+\006\003\125\004\010\023\007\111\156\144\151\141\156\141\061\025
-+\060\023\006\003\125\004\007\023\014\111\156\144\151\141\156\141
-+\160\157\154\151\163\061\050\060\046\006\003\125\004\012\023\037
-+\123\157\146\164\167\141\162\145\040\151\156\040\164\150\145\040
-+\120\165\142\154\151\143\040\111\156\164\145\162\145\163\164\061
-+\023\060\021\006\003\125\004\013\023\012\150\157\163\164\155\141
-+\163\164\145\162\061\036\060\034\006\003\125\004\003\023\025\103
-+\145\162\164\151\146\151\143\141\164\145\040\101\165\164\150\157
-+\162\151\164\171\061\045\060\043\006\011\052\206\110\206\367\015
-+\001\011\001\026\026\150\157\163\164\155\141\163\164\145\162\100
-+\163\160\151\055\151\156\143\056\157\162\147\202\011\000\350\216
-+\266\311\370\052\024\050\060\017\006\003\125\035\023\001\001\377
-+\004\005\060\003\001\001\377\060\021\006\011\140\206\110\001\206
-+\370\102\001\001\004\004\003\002\000\007\060\011\006\003\125\035
-+\022\004\002\060\000\060\056\006\011\140\206\110\001\206\370\102
-+\001\015\004\041\026\037\123\157\146\164\167\141\162\145\040\151
-+\156\040\164\150\145\040\120\165\142\154\151\143\040\111\156\164
-+\145\162\145\163\164\060\060\006\011\140\206\110\001\206\370\102
-+\001\004\004\043\026\041\150\164\164\160\163\072\057\057\143\141
-+\056\163\160\151\055\151\156\143\056\157\162\147\057\143\141\055
-+\143\162\154\056\160\145\155\060\062\006\011\140\206\110\001\206
-+\370\102\001\003\004\045\026\043\150\164\164\160\163\072\057\057
-+\143\141\056\163\160\151\055\151\156\143\056\157\162\147\057\143
-+\145\162\164\055\143\162\154\056\160\145\155\060\041\006\003\125
-+\035\021\004\032\060\030\201\026\150\157\163\164\155\141\163\164
-+\145\162\100\163\160\151\055\151\156\143\056\157\162\147\060\016
-+\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060\015
-+\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202\002
-+\001\000\264\315\275\340\271\352\262\003\053\176\062\351\336\162
-+\077\311\113\202\136\235\342\257\125\011\242\014\124\350\317\030
-+\074\050\040\035\251\273\003\002\057\122\071\042\371\027\317\255
-+\147\220\263\003\177\330\025\343\153\176\273\233\126\001\257\065
-+\324\332\271\307\147\027\233\324\325\016\067\263\040\101\056\014
-+\001\304\133\371\145\076\302\141\350\322\360\152\225\160\303\306
-+\157\325\065\244\254\131\162\341\211\337\241\240\235\044\275\051
-+\171\351\141\052\331\323\036\311\106\244\010\170\101\222\162\017
-+\253\024\165\355\011\360\242\360\134\357\303\012\142\040\267\302
-+\050\146\256\114\057\056\217\105\143\046\226\360\356\061\346\213
-+\125\233\252\072\371\202\071\035\210\074\342\007\165\032\341\017
-+\261\060\274\161\062\322\072\376\372\241\211\363\103\054\326\162
-+\304\171\247\025\110\005\300\330\055\162\002\343\313\075\026\152
-+\272\311\270\021\020\342\111\205\314\226\107\140\005\045\056\357
-+\165\131\063\365\107\031\026\357\332\154\137\007\310\246\120\266
-+\035\313\146\064\045\374\146\203\353\305\266\060\101\370\106\104
-+\142\250\301\014\124\346\352\114\132\050\346\256\306\267\376\177
-+\073\226\250\056\356\307\150\076\335\000\075\051\257\052\143\253
-+\137\356\111\052\055\305\334\373\321\306\323\321\227\126\122\206
-+\266\224\353\324\140\121\267\374\036\233\314\002\233\324\037\217
-+\371\112\217\266\056\050\073\027\314\305\246\005\343\322\323\265
-+\306\003\311\341\110\102\233\313\077\344\027\340\376\015\001\225
-+\011\272\270\015\161\344\011\160\167\102\330\115\341\102\251\140
-+\203\327\027\211\103\322\324\335\247\030\266\253\324\044\045\207
-+\265\324\342\374\056\042\151\275\255\150\054\377\162\265\230\252
-+\006\234\347\052\152\270\241\223\166\316\260\363\177\234\341\340
-+\117\270\330\206\106\245\063\002\054\045\141\067\052\222\310\254
-+\201\164\150\143\207\063\166\275\005\177\136\325\325\002\155\275
-+\257\377\052\132\252\111\354\230\171\107\123\221\366\016\064\132
-+\311\245\306\353\262\343\305\254\266\240\160\065\273\310\121\151
-+\320\362\265\242\062\156\274\077\240\067\071\174\161\066\246\005
-+\337\014\022\344\026\247\305\326\313\143\243\225\160\077\346\004
-+\243\140
-+END
-+
-+# Trust for Certificate "Software in the Public Interest, Inc. Root CA (2008)"
-+CKA_CLASS CK_OBJECT_CLASS CKO_NETSCAPE_TRUST
-+CKA_TOKEN CK_BBOOL CK_TRUE
-+CKA_PRIVATE CK_BBOOL CK_FALSE
-+CKA_MODIFIABLE CK_BBOOL CK_FALSE
-+CKA_LABEL UTF8 "Software in the Public Interest, Inc. Root CA (2008)"
-+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
-+\257\160\210\103\203\202\002\025\315\141\306\274\354\375\067\044
-+\251\220\103\034
-+END
-+CKA_CERT_MD5_HASH MULTILINE_OCTAL
-+\052\107\237\140\273\203\164\157\001\003\327\013\015\366\015\170
-+END
-+CKA_ISSUER MULTILINE_OCTAL
-+\060\201\274\061\013\060\011\006\003\125\004\006\023\002\125\123
-+\061\020\060\016\006\003\125\004\010\023\007\111\156\144\151\141
-+\156\141\061\025\060\023\006\003\125\004\007\023\014\111\156\144
-+\151\141\156\141\160\157\154\151\163\061\050\060\046\006\003\125
-+\004\012\023\037\123\157\146\164\167\141\162\145\040\151\156\040
-+\164\150\145\040\120\165\142\154\151\143\040\111\156\164\145\162
-+\145\163\164\061\023\060\021\006\003\125\004\013\023\012\150\157
-+\163\164\155\141\163\164\145\162\061\036\060\034\006\003\125\004
-+\003\023\025\103\145\162\164\151\146\151\143\141\164\145\040\101
-+\165\164\150\157\162\151\164\171\061\045\060\043\006\011\052\206
-+\110\206\367\015\001\011\001\026\026\150\157\163\164\155\141\163
-+\164\145\162\100\163\160\151\055\151\156\143\056\157\162\147
-+END
-+CKA_SERIAL_NUMBER MULTILINE_OCTAL
-+\002\011\000\350\216\266\311\370\052\024\050
-+END
-+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR
-+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR
-+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NETSCAPE_TRUSTED_DELEGATOR
-+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
diff --git a/system/pax-utils/APKBUILD b/system/pax-utils/APKBUILD
index 6c121b48a..481a7077e 100644
--- a/system/pax-utils/APKBUILD
+++ b/system/pax-utils/APKBUILD
@@ -12,7 +12,7 @@ depends="scanelf"
makedepends_build=""
makedepends_host="linux-headers libcap-dev"
makedepends="$makedepends_build $makedepends_host"
-source="http://distfiles.gentoo.org/distfiles/${pkgname}-${pkgver}.tar.xz
+source="https://mirrormaster.adelielinux.org/source/upstream/pax-utils-$pkgver.tar.xz
fix-eitype.patch"
subpackages="$pkgname-doc scanelf:_scanelf"
diff --git a/system/pkgconf/APKBUILD b/system/pkgconf/APKBUILD
index 49d76d0ae..546f8b443 100644
--- a/system/pkgconf/APKBUILD
+++ b/system/pkgconf/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=pkgconf
-pkgver=1.6.3
+pkgver=1.7.2
pkgrel=0
pkgdesc="Toolkit for maintaining development package metadata"
url="http://pkgconf.org/"
@@ -46,4 +46,4 @@ dev() {
mv "$subpkgdir"/usr/share/aclocal/pkg.m4 "$pkgdir"/usr/share/aclocal/
}
-sha512sums="437c5a5c9866e2047e62e0592639930b2420d4afd41d98cef51f3475165418a39e916477860025314828a6ee0a4eefc10fdf26bda66f80c291f324d9674fa5c1 pkgconf-1.6.3.tar.xz"
+sha512sums="b0376178e93743fd844bdc94b5fa2678521ffe5022323e20f3c5196d500a87c3546d0edc2ac22e92cb528348116e2826d6f144bd7bd18d3f0afaa5cda74f25cd pkgconf-1.7.2.tar.xz"
diff --git a/system/s6-linux-init/APKBUILD b/system/s6-linux-init/APKBUILD
index c3985d7d3..2c67660c3 100644
--- a/system/s6-linux-init/APKBUILD
+++ b/system/s6-linux-init/APKBUILD
@@ -1,15 +1,16 @@
# Contributor: Laurent Bercot <ska-adelie@skarnet.org>
# Maintainer: Laurent Bercot <ska-adelie@skarnet.org>
pkgname=s6-linux-init
-pkgver=1.0.4.0
+pkgver=1.0.4.1
pkgrel=0
pkgdesc="A s6-based init system"
url="https://skarnet.org/software/$pkgname/"
arch="all"
options="!check" # No test suite.
license="ISC"
-_skalibs_version=2.9.1.0
-depends="execline s6 s6-linux-init-common"
+_skalibs_version=2.9.2.1
+_s6_version=2.9.2.0
+depends="execline s6>=$_s6_version s6-linux-init-common"
makedepends="skalibs-dev>=$_skalibs_version execline-dev s6-dev utmps-dev"
subpackages="$pkgname-common:common:noarch $pkgname-early-getty:earlygetty:noarch $pkgname-libs $pkgname-dev $pkgname-libs-dev:libsdev $pkgname-doc"
source="https://skarnet.org/software/$pkgname/$pkgname-$pkgver.tar.gz rc.init runlevel rc.shutdown reboot.sh earlygetty.run"
@@ -119,7 +120,7 @@ doc() {
cp -a "$builddir/doc" "$subpkgdir/usr/share/doc/$pkgname"
}
-sha512sums="791e376911c9217adace72c6048a295d4b486fc51c0a73578a40a0b020a735d9444f58e5f49d613e99a81aadd63d016ae60c8b056c49c1b50693a7b054890926 s6-linux-init-1.0.4.0.tar.gz
+sha512sums="b5935d87a7fd37d7d1a07c14130325b7b8f7f0b592becbf451c8a310f8a4743b60722f4ca94b5f8d845ca285136cb2cc1406fc8cfddd808cec4a63f55f78565b s6-linux-init-1.0.4.1.tar.gz
756b0cbbe5dabb4631380c3c7ea199cc213224b2e36e50a2d012a61948170078b78bf49b85d886319fecf59843087f937d3d804723b2553ac9f94d088a2f0fd8 rc.init
e73c3c32b118831074288d23fadace2158a2b15d5a13ffa73290b92a9e39c2a21c73d3b0eabea29bcbaa5f6381611fd8d0aaa6aa691ec7de91b8ef6ae404b6da runlevel
7bb050248a5c2ab6a56c50c35f87cde724f97ff9882f5e60b0f0f2f14bd93c1df7d99fedc3d81c8519cf1a1ed90e03f1cbb9bf891c7b3618aa9a5f5738d262f4 rc.shutdown
diff --git a/system/s6-rc/APKBUILD b/system/s6-rc/APKBUILD
index cc7148513..b56132a15 100644
--- a/system/s6-rc/APKBUILD
+++ b/system/s6-rc/APKBUILD
@@ -2,14 +2,14 @@
# Maintainer: Laurent Bercot <ska-adelie@skarnet.org>
pkgname=s6-rc
pkgver=0.5.1.2
-pkgrel=0
+pkgrel=1
pkgdesc="skarnet.org's service manager, working on top of s6"
url="https://skarnet.org/software/s6-rc/"
arch="all"
options="!check"
license="ISC"
-_skalibs_version=2.9.1.0
-_s6_version=2.9.0.1
+_skalibs_version=2.9.2.1
+_s6_version=2.9.2.0
depends="execline"
makedepends="skalibs-dev>=$_skalibs_version execline-dev s6-dev>=$_s6_version"
subpackages="$pkgname-libs $pkgname-dev $pkgname-libs-dev:libsdev $pkgname-doc"
diff --git a/system/s6/APKBUILD b/system/s6/APKBUILD
index e2a601690..4909c3daf 100644
--- a/system/s6/APKBUILD
+++ b/system/s6/APKBUILD
@@ -1,14 +1,14 @@
# Contributor: Laurent Bercot <ska-adelie@skarnet.org>
# Maintainer: Laurent Bercot <ska-adelie@skarnet.org>
pkgname=s6
-pkgver=2.9.1.0
+pkgver=2.9.2.0
pkgrel=0
pkgdesc="skarnet.org's small & secure supervision software suite"
url="https://skarnet.org/software/$pkgname/"
arch="all"
options="!check" # No test suite.
license="ISC"
-_skalibs_version=2.9.1.0
+_skalibs_version=2.9.2.1
depends="execline"
makedepends="skalibs-dev>=$_skalibs_version execline-dev"
install="$pkgname.post-upgrade"
@@ -66,5 +66,4 @@ doc() {
mkdir -p "$subpkgdir/usr/share/doc"
cp -a "$builddir/doc" "$subpkgdir/usr/share/doc/$pkgname"
}
-
-sha512sums="190660ed3af678b304230c688d3364a20dfb8d6e944314506bc27c90fc2ccf1062c7b2931df93620dd3b6f5f794d6119d984f28cb2f4562c1abb8609270b90f5 s6-2.9.1.0.tar.gz"
+sha512sums="ef814c0426d00112c793d4f8bb99319cde8e4ab91c24e98401559bbd28eafdb11a66d446a31816a50f67d607ed1e8c55383362e9761abca21ca24b3598929eee s6-2.9.2.0.tar.gz"
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/utmps/APKBUILD b/system/utmps/APKBUILD
index b60248950..c78339725 100644
--- a/system/utmps/APKBUILD
+++ b/system/utmps/APKBUILD
@@ -2,14 +2,14 @@
# Maintainer: Laurent Bercot <ska-adelie@skarnet.org>
pkgname=utmps
pkgver=0.0.3.2
-pkgrel=0
+pkgrel=1
pkgdesc="A secure utmp/wtmp implementation"
url="https://skarnet.org/software/$pkgname/"
arch="all"
options="!check" # No test suite
license="ISC"
depends="execline s6"
-_skalibs_version=2.9.1.0
+_skalibs_version=2.9.2.1
makedepends="skalibs-dev>=$_skalibs_version"
subpackages="$pkgname-libs $pkgname-dev $pkgname-libs-dev:libsdev $pkgname-doc"
install="$pkgname.post-upgrade"
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"
diff --git a/system/yaml/APKBUILD b/system/yaml/APKBUILD
index 7542e1305..c15955678 100644
--- a/system/yaml/APKBUILD
+++ b/system/yaml/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=yaml
-pkgver=0.2.2
+pkgver=0.2.5
pkgrel=0
pkgdesc="YAML 1.1 parser and emitter written in C"
url="https://pyyaml.org/wiki/LibYAML"
@@ -32,4 +32,4 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="13d2197135946204323dbfccafa0ac7b3d05437e920545a56f46811fd7319c01419a58083090ce85fccd4d6901a620ceb9f1190078cc0830bc0ce769bb024f51 yaml-0.2.2.tar.gz"
+sha512sums="dadd7d8e0d88b5ebab005e5d521d56d541580198aa497370966b98c904586e642a1cd4f3881094eb57624f218d50db77417bbfd0ffdce50340f011e35e8c4c02 yaml-0.2.5.tar.gz"