aboutsummaryrefslogtreecommitdiffstats
path: root/main
diff options
context:
space:
mode:
Diffstat (limited to 'main')
-rw-r--r--main/a52dec/APKBUILD49
-rw-r--r--main/a52dec/a52dec-0.7.4-build.patch27
-rw-r--r--main/a52dec/automake.patch11
-rw-r--r--main/a52dec/fix-globals-test-x86-pie.patch11
-rw-r--r--main/abuild/APKBUILD10
-rw-r--r--main/acpica/APKBUILD8
-rw-r--r--main/alpine-base/APKBUILD2
-rw-r--r--main/alpine-baselayout/APKBUILD4
-rw-r--r--main/alpine-baselayout/blacklist.conf4
-rw-r--r--main/alpine-baselayout/protocols45
-rw-r--r--main/amavisd-milter/APKBUILD10
-rw-r--r--main/ansible-base/0001-new-module-lbu.patch151
-rw-r--r--main/ansible-base/APKBUILD69
-rw-r--r--main/ansible/APKBUILD33
-rw-r--r--main/apache2/APKBUILD19
-rw-r--r--main/apcupsd/APKBUILD6
-rw-r--r--main/apcupsd/apcupsd.powerfail.initd17
-rw-r--r--main/apk-tools/APKBUILD13
-rw-r--r--main/apr-util/APKBUILD4
-rw-r--r--main/arm-trusted-firmware/APKBUILD4
-rw-r--r--main/arpwatch/APKBUILD19
-rw-r--r--main/arpwatch/arpwatch.initd2
-rw-r--r--main/asciidoc/APKBUILD6
-rw-r--r--main/asciidoctor/APKBUILD4
-rw-r--r--main/asterisk/APKBUILD68
-rw-r--r--main/asterisk/CVE-2021-32558.patch126
-rw-r--r--main/at-spi2-core/APKBUILD4
-rw-r--r--main/audit/APKBUILD10
-rw-r--r--main/automake/0001-automake-add-install-dep-on-install-libLTLIBRARIES-t.patch70
-rw-r--r--main/automake/APKBUILD7
-rw-r--r--main/awall/APKBUILD4
-rw-r--r--main/axel/APKBUILD4
-rw-r--r--main/bacula/APKBUILD4
-rw-r--r--main/bats/APKBUILD6
-rw-r--r--main/bctoolbox/APKBUILD4
-rw-r--r--main/bind/APKBUILD12
-rw-r--r--main/bind/bind-9.16.20-map-format-fix.patch8
-rw-r--r--main/binutils/0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch65
-rw-r--r--main/binutils/APKBUILD22
-rw-r--r--main/binutils/CVE-2021-3487.patch72
-rw-r--r--main/binutils/bfd-close-file-desriptor-if-there-is-no-archive-fd.patch234
-rw-r--r--main/binutils/defang-no-split.patch38
-rw-r--r--main/bluez/APKBUILD6
-rw-r--r--main/bluez/bluetooth.initd2
-rw-r--r--main/bluez/mpris-proxy.desktop1
-rw-r--r--main/boost1.75/boost-context-mips-softfloat.patch72
-rw-r--r--main/boost1.75/build-undefine-statx-syscall.patch17
-rw-r--r--main/boost1.76/APKBUILD31
-rw-r--r--main/boost1.77/0001-revert-cease-dependence-on-range.patch (renamed from main/boost1.75/0001-revert-cease-dependence-on-range.patch)0
-rw-r--r--main/boost1.77/APKBUILD (renamed from main/boost1.75/APKBUILD)50
-rw-r--r--main/boost1.77/boost-1.57.0-python-abi_letters.patch (renamed from main/boost1.75/boost-1.57.0-python-abi_letters.patch)0
-rw-r--r--main/boost1.77/boost-1.57.0-python-libpython_dep.patch (renamed from main/boost1.75/boost-1.57.0-python-libpython_dep.patch)0
-rw-r--r--main/botan/APKBUILD16
-rw-r--r--main/botan/CVE-2021-40529.patch132
-rw-r--r--main/botan/dl-exponents.patch304
-rw-r--r--main/brotli/APKBUILD5
-rw-r--r--main/btrfs-progs/APKBUILD11
-rw-r--r--main/btrfs-progs/fix-ppc64le.patch11
-rw-r--r--main/bubblewrap/APKBUILD19
-rw-r--r--main/busybox-initscripts/APKBUILD12
-rw-r--r--main/busybox-initscripts/mdev.conf3
-rw-r--r--main/busybox/0001-echo-do-not-assume-that-free-leaves-errno-unmodified.patch63
-rw-r--r--main/busybox/0001-lineedit-fix-tab-completion-with-equal-sign.patch29
-rw-r--r--main/busybox/0001-properly-fix-wget-https-support.patch16
-rw-r--r--main/busybox/0001-rev-correct-output-for-long-input-lines.patch91
-rw-r--r--main/busybox/0004-app-location-for-cpio-vi-and-lspci.patch16
-rw-r--r--main/busybox/0005-udhcpc-set-default-discover-retries-to-5.patch41
-rw-r--r--main/busybox/0012-udhcpc-Don-t-background-if-n-is-given.patch22
-rw-r--r--main/busybox/APKBUILD32
-rw-r--r--main/busybox/busyboxconfig15
-rw-r--r--main/busybox/busyboxconfig-extras20
-rw-r--r--main/byacc/APKBUILD6
-rw-r--r--main/c-ares/APKBUILD12
-rw-r--r--main/ca-certificates/APKBUILD4
-rw-r--r--main/cgit/APKBUILD4
-rw-r--r--main/charybdis/APKBUILD4
-rw-r--r--main/cifs-utils/APKBUILD8
-rw-r--r--main/cjson/APKBUILD8
-rw-r--r--main/ckbcomp/APKBUILD4
-rw-r--r--main/clang/APKBUILD10
-rw-r--r--main/clucene/APKBUILD2
-rw-r--r--main/cmake/APKBUILD4
-rw-r--r--main/compiler-rt/APKBUILD2
-rw-r--r--main/coreutils/APKBUILD17
-rw-r--r--main/coreutils/fix-chmod-exit-code.patch111
-rw-r--r--main/coreutils/ls.patch25
-rw-r--r--main/cryptsetup/APKBUILD20
-rw-r--r--main/cryptsetup/flush-stdout.patch12
-rw-r--r--main/ctags/APKBUILD8
-rw-r--r--main/ctags/disable-check-genfile.patch19
-rw-r--r--main/cups/APKBUILD12
-rw-r--r--main/cups/cups-nostrip.patch68
-rw-r--r--main/curl/APKBUILD11
-rw-r--r--main/cvs/APKBUILD24
-rw-r--r--main/cvs/add-libbsd.patch12
-rw-r--r--main/cvs/cvs_1.12.13+real-26.patch (renamed from main/cvs/cvs_1.12.13+real-26.diff)0
-rw-r--r--main/cyrus-sasl/APKBUILD4
-rw-r--r--main/dahdi-linux-lts/APKBUILD4
-rw-r--r--main/datefudge/APKBUILD3
-rw-r--r--main/debootstrap/APKBUILD2
-rw-r--r--main/dhcpcd/APKBUILD6
-rw-r--r--main/dhcpcd/musl.patch24
-rw-r--r--main/diffutils/APKBUILD29
-rw-r--r--main/diffutils/disable-mbrtowc-test.patch10
-rw-r--r--main/diffutils/skip-test-presue-output-tty.patch24
-rw-r--r--main/dns-root-hints/APKBUILD4
-rw-r--r--main/dnsmasq/APKBUILD42
-rw-r--r--main/doas/APKBUILD21
-rw-r--r--main/doas/configuration-directory.patch509
-rwxr-xr-xmain/doas/doas.post-install30
-rwxr-xr-xmain/doas/doas.post-upgrade30
-rw-r--r--main/doas/manpage-example-path.patch16
-rw-r--r--main/dovecot/APKBUILD18
-rw-r--r--main/dovecot/fix-check-s390x.patch52
-rw-r--r--main/dovecot/fix-test-file-cache.patch22
-rw-r--r--main/doxygen/APKBUILD13
-rw-r--r--main/doxygen/fix-segfault.patch83
-rw-r--r--main/drbd-utils/APKBUILD6
-rw-r--r--main/e2fsprogs/APKBUILD9
-rw-r--r--main/e2fsprogs/ensure-small-filesystems-are-Y2038-ok.patch36
-rw-r--r--main/efitools/APKBUILD6
-rw-r--r--main/eggdrop/APKBUILD11
-rw-r--r--main/elinks/APKBUILD4
-rw-r--r--main/ell/APKBUILD4
-rw-r--r--main/email/APKBUILD4
-rw-r--r--main/encfs/APKBUILD4
-rw-r--r--main/ethtool/APKBUILD4
-rw-r--r--main/execline/APKBUILD8
-rw-r--r--main/expect/07-file-handle.patch24
-rw-r--r--main/expect/09-unsafe-traps.patch24
-rw-r--r--main/expect/10-manpage.patch384
-rw-r--r--main/expect/12-fdout.patch22
-rw-r--r--main/expect/22-segfault-with-stubs.patch71
-rw-r--r--main/expect/24-format.patch24
-rw-r--r--main/expect/APKBUILD26
-rw-r--r--main/fakeroot/APKBUILD2
-rw-r--r--main/fftw/APKBUILD8
-rw-r--r--main/fish/APKBUILD10
-rw-r--r--main/freeradius/APKBUILD21
-rw-r--r--main/freeradius/default-config.patch10
-rw-r--r--main/freeradius/freeradius.logrotated10
-rw-r--r--main/freeradius/radacct-rotate87
-rw-r--r--main/freeradius/radacct-rotate.conf26
-rw-r--r--main/freeradius/radacct-rotate.crond10
-rw-r--r--main/freeswitch/APKBUILD4
-rw-r--r--main/freetds/APKBUILD8
-rw-r--r--main/fribidi/APKBUILD6
-rw-r--r--main/fuse3/APKBUILD4
-rw-r--r--main/gc/APKBUILD15
-rw-r--r--main/gcc/0001-posix_memalign.patch4
-rw-r--r--main/gcc/0002-gcc-poison-system-directories.patch8
-rw-r--r--main/gcc/0003-Turn-on-Wl-z-relro-z-now-by-default.patch8
-rw-r--r--main/gcc/0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch8
-rw-r--r--main/gcc/0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch4
-rw-r--r--main/gcc/0006-Enable-Wformat-and-Wformat-security-by-default.patch4
-rw-r--r--main/gcc/0007-Enable-Wtrampolines-by-default.patch4
-rw-r--r--main/gcc/0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch4
-rw-r--r--main/gcc/0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch4
-rw-r--r--main/gcc/0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch4
-rw-r--r--main/gcc/0011-libiberty-copy-PIC-objects-during-build-process.patch4
-rw-r--r--main/gcc/0012-libitm-disable-FORTIFY.patch4
-rw-r--r--main/gcc/0013-libgcc_s.patch4
-rw-r--r--main/gcc/0014-nopie.patch4
-rw-r--r--main/gcc/0015-libffi-use-__linux__-instead-of-__gnu_linux__-for-mu.patch4
-rw-r--r--main/gcc/0016-dlang-update-zlib-binding.patch4
-rw-r--r--main/gcc/0017-dlang-fix-fcntl-on-mips-add-libucontext-dep.patch4
-rw-r--r--main/gcc/0018-ada-fix-shared-linking.patch4
-rw-r--r--main/gcc/0019-build-fix-CXXFLAGS_FOR_BUILD-passing.patch4
-rw-r--r--main/gcc/0020-add-fortify-headers-paths.patch4
-rw-r--r--main/gcc/0021-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch4
-rw-r--r--main/gcc/0022-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch4
-rw-r--r--main/gcc/0023-Pure-64-bit-MIPS.patch4
-rw-r--r--main/gcc/0024-use-pure-64-bit-configuration-where-appropriate.patch4
-rw-r--r--main/gcc/0025-always-build-libgcc_eh.a.patch4
-rw-r--r--main/gcc/0026-ada-libgnarl-compatibility-for-musl.patch4
-rw-r--r--main/gcc/0027-ada-musl-support-fixes.patch4
-rw-r--r--main/gcc/0028-gcc-go-Use-_off_t-type-instead-of-_loff_t.patch4
-rw-r--r--main/gcc/0029-gcc-go-Don-t-include-sys-user.h.patch4
-rw-r--r--main/gcc/0030-gcc-go-Fix-ucontext_t-on-PPC64.patch4
-rw-r--r--main/gcc/0031-gcc-go-Fix-handling-of-signal-34-on-musl.patch4
-rw-r--r--main/gcc/0032-gcc-go-Use-int64-type-as-offset-argument-for-mmap.patch4
-rw-r--r--main/gcc/0033-gcc-go-Fix-st_-a-m-c-tim-fields-in-generated-sysinfo.patch4
-rw-r--r--main/gcc/0034-gcc-go-signal-34-is-special-on-musl-libc.patch4
-rw-r--r--main/gcc/0035-gcc-go-Prefer-_off_t-over-_off64_t.patch4
-rw-r--r--main/gcc/0036-gcc-go-undef-SETCONTEXT_CLOBBERS_TLS-in-proc.c.patch4
-rw-r--r--main/gcc/0037-gcc-go-link-to-libucontext.patch4
-rw-r--r--main/gcc/0038-gcc-go-Disable-printing-of-unaccessible-ppc64-struct.patch4
-rw-r--r--main/gcc/0039-CRuntime_Musl-Support-v1.2.0-for-32-bits.patch4
-rw-r--r--main/gcc/0040-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch4
-rw-r--r--main/gcc/0041-Use-generic-errstr.go-implementation-on-musl.patch4
-rw-r--r--main/gcc/0042-configure-fix-detection-of-atomic-builtins-in-libato.patch57
-rw-r--r--main/gcc/APKBUILD90
-rw-r--r--main/gd/APKBUILD24
-rw-r--r--main/gd/CVE-2021-38115.patch26
-rw-r--r--main/gd/CVE-2021-40145.patch124
-rw-r--r--main/gdb/APKBUILD11
-rw-r--r--main/gdbm/APKBUILD12
-rw-r--r--main/gdl/APKBUILD6
-rw-r--r--main/geoip/APKBUILD16
-rwxr-xr-xmain/geoip/geoip.cron7
-rw-r--r--main/ghostscript/APKBUILD12
-rw-r--r--main/ghostscript/CVE-2021-3781.patch232
-rw-r--r--main/git/APKBUILD50
-rw-r--r--main/glib/APKBUILD8
-rw-r--r--main/glib/musl-libintl.patch11
-rw-r--r--main/glslang/APKBUILD13
-rw-r--r--main/glslang/default-resources.patch12
-rw-r--r--main/glslang/pkgconfig.patch143
-rw-r--r--main/gnu-efi/0001-Initial-support-for-RISCV64.patch636
-rw-r--r--main/gnu-efi/APKBUILD8
-rw-r--r--main/gnupg/0010-avoid-beta-warning.patch46
-rw-r--r--main/gnupg/0020-avoid-regenerating-defsincdate-use-shipped-file.patch41
-rw-r--r--main/gnupg/0110-avoid-simple-memory-dumps-via-ptrace.patch91
-rw-r--r--main/gnupg/0210-dirmngr-hkp-avoid-potential-race-condition-when-some-host-die.patch83
-rw-r--r--main/gnupg/0220-dirmngr-avoid-need-for-hkp-housekeeping.patch232
-rw-r--r--main/gnupg/0230-dirmngr-avoid-automatically-checking-upstream-swdb.patch51
-rw-r--r--main/gnupg/0310-gpg-default-to-3072-bit-keys.patch93
-rw-r--r--main/gnupg/0320-gpg-default-to-aes256.patch37
-rw-r--r--main/gnupg/0330-gpg-default-to-sha512-for-all-signature-types-on-rsa-keys.patch66
-rw-r--r--main/gnupg/0340-gpg-prefer-sha512-and-sha384-in-personal-digest.patch48
-rw-r--r--main/gnupg/0410-make-gpg-zip-use-tar-from-path.patch29
-rw-r--r--main/gnupg/0420-gpg-drop-import-clean-from-default-keyserver-import-options.patch51
-rw-r--r--main/gnupg/APKBUILD209
-rw-r--r--main/goaccess/APKBUILD4
-rw-r--r--main/gobject-introspection/APKBUILD8
-rw-r--r--main/gpsd/APKBUILD89
-rw-r--r--main/gpsd/gpsd.confd7
-rw-r--r--main/gpsd/gpsd.initd39
-rw-r--r--main/gpsd/timepps.h216
-rw-r--r--main/graphene/APKBUILD31
-rw-r--r--main/graphene/fix-gnome-shell-touch-issues.patch14
-rw-r--r--main/graphviz/0001-clone-nameclash.patch20
-rw-r--r--main/graphviz/APKBUILD6
-rw-r--r--main/grep/APKBUILD8
-rw-r--r--main/grub/0001-loader-drop-argv-argument-in-grub_initrd_load.patch178
-rw-r--r--main/grub/0002-efi-add-definition-of-LoadFile2-protocol.patch64
-rw-r--r--main/grub/0003-efi-implemented-LoadFile2-initrd-loading-protocol-fo.patch187
-rw-r--r--main/grub/0004-linux-ignore-FDT-unless-we-need-to-modify-it.patch83
-rw-r--r--main/grub/0005-loader-Move-arm64-linux-loader-to-common-code.patch79
-rw-r--r--main/grub/0006-RISC-V-Update-image-header.patch87
-rw-r--r--main/grub/0007-RISC-V-Use-common-linux-loader.patch123
-rw-r--r--main/grub/APKBUILD14
-rw-r--r--main/gst-plugins-base/APKBUILD10
-rw-r--r--main/gst-plugins-base/meson-0.58.patch45
-rw-r--r--main/gstreamer/APKBUILD6
-rw-r--r--main/gtk+3.0/3614.patch91
-rw-r--r--main/gtk+3.0/APKBUILD10
-rw-r--r--main/gtk-doc/APKBUILD4
-rw-r--r--main/guile/APKBUILD2
-rw-r--r--main/gvpe/APKBUILD4
-rw-r--r--main/gzip/APKBUILD8
-rw-r--r--main/haproxy/APKBUILD13
-rw-r--r--main/haproxy/haproxy-openssl-3.patch42
-rw-r--r--main/harfbuzz/APKBUILD6
-rw-r--r--main/heimdal/APKBUILD4
-rw-r--r--main/help2man/APKBUILD6
-rw-r--r--main/highlight/APKBUILD2
-rw-r--r--main/hiredis/APKBUILD8
-rw-r--r--main/hostapd/APKBUILD4
-rw-r--r--main/htop/APKBUILD8
-rw-r--r--main/hylafaxplus/APKBUILD12
-rw-r--r--main/hylafaxplus/libtiff-version.patch13
-rw-r--r--main/iaxmodem/APKBUILD7
-rw-r--r--main/icecast/APKBUILD4
-rw-r--r--main/icu/APKBUILD10
-rw-r--r--main/ifupdown/APKBUILD2
-rw-r--r--main/imap/APKBUILD4
-rw-r--r--main/imlib2/APKBUILD6
-rw-r--r--main/iperf/APKBUILD4
-rw-r--r--main/iproute2/APKBUILD12
-rw-r--r--main/ipset/APKBUILD8
-rw-r--r--main/irssi/APKBUILD4
-rw-r--r--main/isl/APKBUILD2
-rw-r--r--main/isl22/APKBUILD2
-rw-r--r--main/iso-codes/APKBUILD11
-rw-r--r--main/itstool/APKBUILD10
-rw-r--r--main/jansson/APKBUILD8
-rw-r--r--main/jitterentropy-library/01-disable-gcc-optimisation.patch26
-rwxr-xr-xmain/jitterentropy-library/APKBUILD19
-rw-r--r--main/kamailio/APKBUILD4
-rw-r--r--main/kmod/APKBUILD4
-rw-r--r--main/knot/APKBUILD4
-rw-r--r--main/krb5/APKBUILD4
-rw-r--r--main/ldb/APKBUILD11
-rw-r--r--main/ldns/APKBUILD22
-rw-r--r--main/lftp/APKBUILD4
-rw-r--r--main/libao/APKBUILD42
-rw-r--r--main/libao/CVE-2017-11548.patch177
-rw-r--r--main/libarchive/APKBUILD12
-rw-r--r--main/libasr/APKBUILD4
-rw-r--r--main/libatomic_ops/APKBUILD6
-rw-r--r--main/libbsd/APKBUILD4
-rw-r--r--main/libcap/APKBUILD11
-rw-r--r--main/libcbor/APKBUILD38
-rw-r--r--main/libedit/APKBUILD4
-rw-r--r--main/libepoxy/APKBUILD4
-rw-r--r--main/libevent/APKBUILD4
-rw-r--r--main/libffi/APKBUILD29
-rw-r--r--main/libfido2/APKBUILD44
-rw-r--r--main/libgcrypt/APKBUILD14
-rw-r--r--main/libgpg-error/APKBUILD8
-rw-r--r--main/libical/APKBUILD8
-rw-r--r--main/libisoburn/APKBUILD4
-rw-r--r--main/libisofs/APKBUILD4
-rw-r--r--main/libjpeg-turbo/APKBUILD6
-rw-r--r--main/libmaxminddb/APKBUILD8
-rw-r--r--main/libmilter/APKBUILD18
-rw-r--r--main/libnetfilter_acct/APKBUILD14
-rw-r--r--main/libnetfilter_conntrack/APKBUILD4
-rw-r--r--main/libnetfilter_cthelper/APKBUILD26
-rw-r--r--main/libnetfilter_cttimeout/APKBUILD26
-rw-r--r--main/libnetfilter_log/APKBUILD4
-rw-r--r--main/libnetfilter_queue/APKBUILD4
-rw-r--r--main/libnfnetlink/APKBUILD4
-rw-r--r--main/libpaper/APKBUILD6
-rw-r--r--main/librelp/APKBUILD4
-rw-r--r--main/libretls/APKBUILD26
-rw-r--r--main/libshout/APKBUILD4
-rw-r--r--main/libspf2/APKBUILD14
-rw-r--r--main/libspf2/CVE-2021-20314.patch22
-rw-r--r--main/libsrtp/APKBUILD13
-rw-r--r--main/libsrtp/gcc-10.patch29
-rw-r--r--main/libssh2/APKBUILD17
-rw-r--r--main/libssh2/CVE-2019-17498.patch72
-rw-r--r--main/liburing/APKBUILD6
-rw-r--r--main/libutempter/APKBUILD2
-rw-r--r--main/libva/APKBUILD4
-rw-r--r--main/libwebp/APKBUILD8
-rw-r--r--main/libwebsockets/APKBUILD10
-rw-r--r--main/libxft/APKBUILD12
-rw-r--r--main/libxft/emoji.patch617
-rw-r--r--main/libxi/APKBUILD9
-rw-r--r--main/libxkbcommon/APKBUILD4
-rw-r--r--main/lighttpd/APKBUILD4
-rw-r--r--main/links/APKBUILD10
-rw-r--r--main/linux-firmware/APKBUILD8
-rw-r--r--main/linux-lts/APKBUILD32
-rw-r--r--main/linux-lts/config-lts.aarch6411
-rw-r--r--main/linux-lts/config-lts.armv713
-rw-r--r--main/linux-lts/config-lts.mips645
-rw-r--r--main/linux-lts/config-lts.ppc64le8
-rw-r--r--main/linux-lts/config-lts.s390x8
-rw-r--r--main/linux-lts/config-lts.x8612
-rw-r--r--main/linux-lts/config-lts.x86_649
-rw-r--r--main/linux-lts/config-virt.aarch6410
-rw-r--r--main/linux-lts/config-virt.armv710
-rw-r--r--main/linux-lts/config-virt.ppc64le10
-rw-r--r--main/linux-lts/config-virt.x869
-rw-r--r--main/linux-lts/config-virt.x86_644
-rw-r--r--main/linux-octeon/APKBUILD4
-rw-r--r--main/linux-pam/APKBUILD13
-rw-r--r--main/linux-rpi/APKBUILD10
-rw-r--r--main/llvm10/APKBUILD2
-rw-r--r--main/llvm11/APKBUILD2
-rw-r--r--main/lmdb/APKBUILD14
-rw-r--r--main/lockfile-progs/APKBUILD16
-rw-r--r--main/logcheck/APKBUILD6
-rw-r--r--main/lua-cqueues/APKBUILD4
-rw-r--r--main/lua-ossl/APKBUILD5
-rw-r--r--main/lua-posix/APKBUILD6
-rw-r--r--main/lua-resty-core/APKBUILD8
-rw-r--r--main/lua-sec/APKBUILD10
-rw-r--r--main/lxc/APKBUILD6
-rw-r--r--main/lxc/add-riscv64.patch12
-rw-r--r--main/lynx/APKBUILD26
-rw-r--r--main/lynx/CVE-2021-38165.patch45
-rw-r--r--main/man-pages/APKBUILD6
-rw-r--r--main/mandoc/APKBUILD19
-rw-r--r--main/mandoc/fix-tbl-null-pointer.patch27
-rw-r--r--main/mandoc/mandoc_configure.patch12
-rw-r--r--main/mandoc/outdated-warn-disable.patch19
-rw-r--r--main/mandoc/shared-libmandoc.patch64
-rw-r--r--main/mandoc/simplify-compat.patch275
-rw-r--r--main/mariadb-connector-c/APKBUILD4
-rw-r--r--main/mariadb/APKBUILD11
-rw-r--r--main/mariadb/fix-cmake.patch13
-rw-r--r--main/mc/APKBUILD11
-rw-r--r--main/memcached/APKBUILD11
-rw-r--r--main/memcached/fix-bsd-headers.patch22
-rw-r--r--main/mesa/APKBUILD6
-rw-r--r--main/meson/APKBUILD4
-rw-r--r--main/mini_httpd/APKBUILD4
-rw-r--r--main/monit/APKBUILD12
-rw-r--r--main/mosh/APKBUILD6
-rw-r--r--main/mosquitto/APKBUILD27
-rw-r--r--main/mpg123/APKBUILD4
-rw-r--r--main/mrtg/APKBUILD31
-rw-r--r--main/mtd-utils/APKBUILD10
-rw-r--r--main/mtools/APKBUILD4
-rw-r--r--main/multipath-tools/0001-Disable-Werror-and-O2.patch20
-rw-r--r--main/multipath-tools/APKBUILD8
-rw-r--r--main/musl-nscd/0001-Fix-build-under-GCC-fno-common.patch41
-rw-r--r--main/musl-nscd/APKBUILD14
-rw-r--r--main/musl-nscd/musl-nscd.initd2
-rw-r--r--main/musl/0001-fix-TZ-parsing-logic-for-identifying-POSIX-form-stri.patch57
-rw-r--r--main/musl/APKBUILD6
-rw-r--r--main/musl/qsort_r.patch213
-rw-r--r--main/nagios-plugins/APKBUILD22
-rw-r--r--main/nagios-plugins/check_openrc2
-rw-r--r--main/nagios-plugins/nagios-openrc.doasd (renamed from main/nagios-plugins/nagios-openrc.sudoers)3
-rw-r--r--main/nano/APKBUILD6
-rw-r--r--main/ncurses/APKBUILD5
-rw-r--r--main/neon/APKBUILD8
-rw-r--r--main/net-snmp/0001-snmpd-always-exit-after-displaying-usage.patch50
-rw-r--r--main/net-snmp/APKBUILD8
-rw-r--r--main/nettle/APKBUILD2
-rw-r--r--main/nfs-utils/APKBUILD10
-rw-r--r--main/nftables/APKBUILD6
-rw-r--r--main/nghttp2/APKBUILD4
-rw-r--r--main/nginx/APKBUILD10
-rw-r--r--main/ngircd/APKBUILD4
-rw-r--r--main/nmap/APKBUILD32
-rw-r--r--main/nodejs/APKBUILD23
-rw-r--r--main/nodejs/fix-build-with-system-c-ares.patch535
-rw-r--r--main/npm/APKBUILD6
-rw-r--r--main/npm/smoke-tests-npm-location.patch8
-rw-r--r--main/nrpe/APKBUILD4
-rw-r--r--main/nsd/APKBUILD14
-rw-r--r--main/nsd/openssl3.patch85
-rw-r--r--main/nsd/tsig-openssl.patch11
-rw-r--r--main/ntfs-3g/APKBUILD24
-rw-r--r--main/ntfs-3g/CVE-2019-9755.patch62
-rw-r--r--main/numactl/APKBUILD3
-rw-r--r--main/open-iscsi/APKBUILD12
-rw-r--r--main/open-isns/APKBUILD4
-rw-r--r--main/openjpeg/APKBUILD33
-rw-r--r--main/openldap/APKBUILD10
-rw-r--r--main/openrc/0001-checkpath-fix-allocation-size-of-path-buffer.patch33
-rw-r--r--main/openrc/0002-force-root-be-rw-before-localmount.patch22
-rw-r--r--main/openrc/0002-move-rc_bindir-and-rc_sbindir-definitions-to-the-top.patch40
-rw-r--r--main/openrc/0003-call-sbin-mkmntdirs-in-localmount-OpenRC-service.patch (renamed from main/openrc/0001-call-sbin-mkmntdirs-in-localmount-OpenRC-service.patch)8
-rw-r--r--main/openrc/0004-fsck-don-t-add-C0-to-busybox-fsck.patch (renamed from main/openrc/0001-fsck-don-t-add-C0-to-busybox-fsck.patch)4
-rw-r--r--main/openrc/0004-hide-error-when-migrating-var-run-to-run.patch28
-rw-r--r--main/openrc/0005-rc-pull-in-sysinit-and-boot-as-stacked-levels-when-n.patch19
-rw-r--r--main/openrc/0006-make-consolefont-service-compatible-with-busyboxs-se.patch (renamed from main/openrc/0007-make-consolefont-service-compatible-with-busyboxs-se.patch)8
-rw-r--r--main/openrc/0007-Support-early-loading-of-keymap-if-kbd-is-installed.patch (renamed from main/openrc/0009-Support-early-loading-of-keymap-if-kdb-is-installed.patch)7
-rw-r--r--main/openrc/0008-Add-support-for-starting-services-in-a-specified-VRF.patch (renamed from main/openrc/0011-vrf.patch)27
-rw-r--r--main/openrc/0008-fix-undeclared-UT_LINESIZE.patch28
-rw-r--r--main/openrc/0009-Clean-up-staticroute-config-remove-irrelevant-parts-.patch (renamed from main/openrc/0020-staticroute-confd.patch)16
-rw-r--r--main/openrc/0010-bootmisc-switch-wipe_tmp-setting-to-no-by-default.patch44
-rw-r--r--main/openrc/0010-rc-mount-make-timeout-invocation-compatible-with-bus.patch27
-rw-r--r--main/openrc/0011-bootmisc-warn-about-potential-data-loss-when-wipe_tm.patch30
-rw-r--r--main/openrc/0014-time_t-64bit.patch30
-rw-r--r--main/openrc/APKBUILD54
-rw-r--r--main/opensbi/APKBUILD26
-rw-r--r--main/opensmtpd/APKBUILD4
-rw-r--r--main/openssh/APKBUILD10
-rw-r--r--main/openssl/APKBUILD25
-rw-r--r--main/openssl/man-section.patch51
-rw-r--r--main/openssl1.1-compat/APKBUILD161
-rw-r--r--main/openssl1.1-compat/man-section.patch54
-rw-r--r--main/openssl1.1-compat/ppc64.patch (renamed from main/openssl/ppc64.patch)0
-rw-r--r--main/openvpn-auth-ldap/APKBUILD2
-rw-r--r--main/openvpn/APKBUILD4
-rw-r--r--main/opusfile/APKBUILD38
-rw-r--r--main/opusfile/fix-conflict.patch9
-rw-r--r--main/ortp/APKBUILD4
-rw-r--r--main/p11-kit/APKBUILD8
-rw-r--r--main/pango/APKBUILD6
-rw-r--r--main/pango/fix-x86.patch107
-rw-r--r--main/parallel/APKBUILD4
-rw-r--r--main/partimage/APKBUILD4
-rw-r--r--main/pax-utils/APKBUILD3
-rw-r--r--main/paxmark/APKBUILD19
-rw-r--r--main/paxmark/paxmark34
-rw-r--r--main/pcre/APKBUILD19
-rw-r--r--main/pcsc-lite/APKBUILD50
-rw-r--r--main/perdition/APKBUILD4
-rw-r--r--main/perl-apache-session/APKBUILD2
-rw-r--r--main/perl-astro-suntime/APKBUILD2
-rw-r--r--main/perl-async-mergepoint/APKBUILD2
-rw-r--r--main/perl-cgi-fast/APKBUILD20
-rw-r--r--main/perl-class-data-inheritable/APKBUILD32
-rw-r--r--main/perl-class-mix/APKBUILD2
-rw-r--r--main/perl-convert-asn1/APKBUILD4
-rw-r--r--main/perl-convert-color/APKBUILD8
-rw-r--r--main/perl-crypt-openssl-guess/APKBUILD6
-rw-r--r--main/perl-crypt-openssl-random/APKBUILD4
-rw-r--r--main/perl-crypt-openssl-rsa/APKBUILD33
-rw-r--r--main/perl-crypt-openssl-rsa/no-sslv23-padding.patch15
-rw-r--r--main/perl-crypt-ssleay/APKBUILD4
-rw-r--r--main/perl-data-guid/APKBUILD34
-rw-r--r--main/perl-datetime-timezone/APKBUILD11
-rw-r--r--main/perl-dbd-sqlite/APKBUILD36
-rw-r--r--main/perl-dbi/APKBUILD22
-rw-r--r--main/perl-encode/APKBUILD8
-rw-r--r--main/perl-exception-class/APKBUILD26
-rw-r--r--main/perl-fcgi/APKBUILD4
-rw-r--r--main/perl-file-remove/APKBUILD2
-rw-r--r--main/perl-future/APKBUILD2
-rw-r--r--main/perl-html-formattext-withlinks/APKBUILD2
-rw-r--r--main/perl-html-tree/APKBUILD14
-rw-r--r--main/perl-io-async/APKBUILD11
-rw-r--r--main/perl-io-socket-inet6/APKBUILD8
-rw-r--r--main/perl-io-socket-ssl/APKBUILD4
-rw-r--r--main/perl-io/APKBUILD30
-rw-r--r--main/perl-libwww/APKBUILD6
-rw-r--r--main/perl-list-utilsby/APKBUILD9
-rw-r--r--main/perl-log-any/APKBUILD6
-rw-r--r--main/perl-mail-spf/APKBUILD7
-rw-r--r--main/perl-mime-types/APKBUILD6
-rw-r--r--main/perl-module-runtime/APKBUILD2
-rw-r--r--main/perl-module-util/APKBUILD8
-rw-r--r--main/perl-net-async-http/APKBUILD5
-rw-r--r--main/perl-net-dns/APKBUILD7
-rw-r--r--main/perl-net-snmp/APKBUILD4
-rw-r--r--main/perl-net-ssleay/APKBUILD5
-rw-r--r--main/perl-net-telnet/APKBUILD32
-rw-r--r--main/perl-path-class/APKBUILD8
-rw-r--r--main/perl-role-basic/APKBUILD8
-rw-r--r--main/perl-scalar-list-utils/APKBUILD8
-rw-r--r--main/perl-server-starter/APKBUILD9
-rw-r--r--main/perl-socket-getaddrinfo/APKBUILD4
-rw-r--r--main/perl-struct-dumb/APKBUILD3
-rw-r--r--main/perl-sub-exporter/APKBUILD34
-rw-r--r--main/perl-test-fork/APKBUILD2
-rw-r--r--main/perl-test-identity/APKBUILD3
-rw-r--r--main/perl-test-metrics-any/APKBUILD2
-rw-r--r--main/perl-test-mockmodule/APKBUILD37
-rw-r--r--main/perl-test-needs/APKBUILD23
-rw-r--r--main/perl-test-nowarnings/APKBUILD41
-rw-r--r--main/perl-test-refcount/APKBUILD3
-rw-r--r--main/perl-test-simple/APKBUILD10
-rw-r--r--main/perl-test-warnings/APKBUILD9
-rw-r--r--main/perl-text-wikiformat/APKBUILD8
-rw-r--r--main/perl-type-tiny/APKBUILD4
-rw-r--r--main/perl-yaml-libyaml/APKBUILD8
-rw-r--r--main/perl/APKBUILD6
-rw-r--r--main/perl/CVE-2021-36770.patch29
-rw-r--r--main/pgpool/APKBUILD8
-rw-r--r--main/pinentry/APKBUILD47
-rw-r--r--main/pinentry/pinentry-curses-ss.post-install9
-rw-r--r--main/pinentry/pinentry.post-install9
-rw-r--r--main/pinentry/pinentry.post-upgrade12
-rw-r--r--main/pixman/APKBUILD14
-rw-r--r--main/pjproject/APKBUILD4
-rw-r--r--main/po4a/APKBUILD6
-rw-r--r--main/poppler/APKBUILD9
-rw-r--r--main/poppler/dont-enforce-build-type.patch26
-rw-r--r--main/portaudio/APKBUILD47
-rw-r--r--main/portaudio/portaudio-audacity.patch100
-rw-r--r--main/postfix/APKBUILD4
-rw-r--r--main/postgresql-bdr/APKBUILD34
-rw-r--r--main/postgresql/APKBUILD32
-rw-r--r--main/postgresql/czech-snowball-stemmer.patch38
-rw-r--r--main/postgresql/disable-test-collate.icu.utf8.patch6
-rw-r--r--main/postgresql/initdb.patch16
-rw-r--r--main/pound/APKBUILD14
-rw-r--r--main/pound/dhparam.patch15
-rw-r--r--main/powertop/APKBUILD10
-rw-r--r--main/ppp/APKBUILD4
-rw-r--r--main/protobuf-c/APKBUILD8
-rw-r--r--main/protobuf/APKBUILD16
-rw-r--r--main/protobuf/musl-fix.patch22
-rw-r--r--main/protobuf/ruby-fix-cflags.patch4
-rw-r--r--main/protobuf/skip-failing-tests.patch37
-rw-r--r--main/protobuf/trim-rakefile.patch28
-rw-r--r--main/pspg/APKBUILD4
-rw-r--r--main/psqlodbc/APKBUILD6
-rw-r--r--main/py3-babel/APKBUILD8
-rw-r--r--main/py3-bcrypt/APKBUILD2
-rw-r--r--main/py3-cffi/APKBUILD2
-rw-r--r--main/py3-coverage/APKBUILD8
-rw-r--r--main/py3-cryptography/APKBUILD48
-rw-r--r--main/py3-distlib/APKBUILD4
-rw-r--r--main/py3-gobject3/APKBUILD8
-rw-r--r--main/py3-hypothesis/APKBUILD4
-rw-r--r--main/py3-iso8601/APKBUILD11
-rw-r--r--main/py3-mako/APKBUILD8
-rw-r--r--main/py3-monotonic/APKBUILD15
-rw-r--r--main/py3-more-itertools/APKBUILD4
-rw-r--r--main/py3-paramiko/APKBUILD56
-rw-r--r--main/py3-pygments/APKBUILD4
-rw-r--r--main/py3-pynacl/APKBUILD2
-rw-r--r--main/py3-pytest/0001-remove-setuptools_scm.patch4
-rw-r--r--main/py3-pytest/APKBUILD6
-rw-r--r--main/py3-urllib3/APKBUILD4
-rw-r--r--main/py3-virtualenv/APKBUILD8
-rw-r--r--main/python3/APKBUILD12
-rw-r--r--main/rabbitmq-c/APKBUILD8
-rw-r--r--main/radvd/APKBUILD10
-rw-r--r--main/radvd/radvd.confd5
-rw-r--r--main/radvd/radvd.initd18
-rw-r--r--main/raspberrypi-bootloader/APKBUILD4
-rw-r--r--main/rdesktop/APKBUILD63
-rw-r--r--main/rdiff-backup/0003-fix-version.patch11
-rw-r--r--main/rdiff-backup/APKBUILD16
-rw-r--r--main/readline/APKBUILD14
-rw-r--r--main/readline/fix-ncurses-underlinking.patch4
-rw-r--r--main/redis/APKBUILD13
-rw-r--r--main/rhash/APKBUILD4
-rw-r--r--main/rng-tools/01-fix-pthread-setaffinity-call.patch54
-rw-r--r--main/rng-tools/APKBUILD22
-rw-r--r--main/rsyslog/APKBUILD6
-rw-r--r--main/ruby-bundler/APKBUILD4
-rw-r--r--main/ruby/APKBUILD5
-rw-r--r--main/run-parts/APKBUILD2
-rw-r--r--main/s390-tools/APKBUILD4
-rw-r--r--main/s6-dns/APKBUILD11
-rw-r--r--main/s6-linux-init/APKBUILD6
-rw-r--r--main/s6-linux-utils/APKBUILD8
-rw-r--r--main/s6-networking/APKBUILD10
-rw-r--r--main/s6-portable-utils/APKBUILD8
-rw-r--r--main/s6-rc/APKBUILD8
-rw-r--r--main/s6/APKBUILD10
-rw-r--r--main/s6/s6.trigger2
-rw-r--r--main/samba/APKBUILD9
-rw-r--r--main/samba/vfs_btrfs_14790.patch45
-rw-r--r--main/sbsigntool/APKBUILD4
-rw-r--r--main/scons/APKBUILD6
-rw-r--r--main/serf/APKBUILD4
-rw-r--r--main/shorewall/APKBUILD10
-rw-r--r--main/shorewall/shorewall-find.patch58
-rw-r--r--main/sipp/APKBUILD4
-rw-r--r--main/sipsak/APKBUILD4
-rw-r--r--main/skalibs/APKBUILD11
-rw-r--r--main/smokeping/APKBUILD4
-rw-r--r--main/sngtc_client/APKBUILD4
-rw-r--r--main/socat/APKBUILD4
-rw-r--r--main/sofia-sip/APKBUILD10
-rw-r--r--main/source-highlight/APKBUILD4
-rw-r--r--main/spamassassin/APKBUILD16
-rw-r--r--main/spamassassin/taint.patch27
-rw-r--r--main/spandsp/APKBUILD2
-rw-r--r--main/spice/APKBUILD18
-rw-r--r--main/spice/CVE-2021-20201.patch36
-rw-r--r--main/spice/failing-tests.patch34
-rw-r--r--main/spice/fix-build.patch7
-rw-r--r--main/sqlite-tcl/APKBUILD2
-rw-r--r--main/sqlite/APKBUILD11
-rw-r--r--main/sqlite/license.txt33
-rw-r--r--main/squashfs-tools/APKBUILD4
-rw-r--r--main/squashfs-tools/gcc-10.patch14
-rw-r--r--main/squid/APKBUILD10
-rw-r--r--main/ssmtp/APKBUILD6
-rw-r--r--main/strace/APKBUILD7
-rw-r--r--main/strongswan/APKBUILD4
-rw-r--r--main/subversion/APKBUILD2
-rw-r--r--main/sudo/APKBUILD11
-rw-r--r--main/sudo/SIGUNUSED.patch19
-rw-r--r--main/sudo/fix-cross-compile.patch18
-rw-r--r--main/swig/APKBUILD2
-rw-r--r--main/syslog-ng/APKBUILD4
-rw-r--r--main/talloc/APKBUILD10
-rw-r--r--main/tarsnap/APKBUILD4
-rw-r--r--main/tcl-tls/APKBUILD4
-rw-r--r--main/tcpdump/APKBUILD6
-rw-r--r--main/tcpflow/APKBUILD4
-rw-r--r--main/tdb/APKBUILD8
-rw-r--r--main/testdisk/APKBUILD2
-rw-r--r--main/tevent/APKBUILD12
-rw-r--r--main/thin-provisioning-tools/APKBUILD35
-rw-r--r--main/thin-provisioning-tools/page-size.patch11
-rw-r--r--main/thin-provisioning-tools/paths.patch30
-rw-r--r--main/tiff/APKBUILD10
-rw-r--r--main/tinc/APKBUILD4
-rw-r--r--main/tolua++/APKBUILD21
-rw-r--r--main/tzdata/APKBUILD12
-rw-r--r--main/u-boot/APKBUILD36
-rw-r--r--main/u-boot/hifive-unmatched-ramdisk.patch19
-rw-r--r--main/udev-init-scripts/APKBUILD8
-rw-r--r--main/udev-init-scripts/modloop.patch10
-rw-r--r--main/ulogd/APKBUILD4
-rw-r--r--main/umurmur/APKBUILD13
-rw-r--r--main/umurmur/remove-crypto-mem-ctrl.patch11
-rw-r--r--main/unbound/APKBUILD6
-rw-r--r--main/unrar/APKBUILD31
-rw-r--r--main/unrar/makefile.patch30
-rw-r--r--main/usbutils/APKBUILD14
-rw-r--r--main/util-linux/APKBUILD13
-rw-r--r--main/utmps/APKBUILD14
-rw-r--r--main/vala/APKBUILD6
-rw-r--r--main/valgrind/APKBUILD10
-rw-r--r--main/varnish/APKBUILD26
-rw-r--r--main/varnish/maxminddb.vcl78
-rw-r--r--main/varnish/musl-include-vpf.patch15
-rw-r--r--main/varnish/musl-include-vsb.patch15
-rw-r--r--main/varnish/varnishd.confd2
-rw-r--r--main/varnish/varnishd.initd25
-rw-r--r--main/vde2/APKBUILD4
-rw-r--r--main/vim/APKBUILD40
-rw-r--r--main/wayland-protocols/APKBUILD4
-rw-r--r--main/wayland/APKBUILD2
-rw-r--r--main/wget/APKBUILD10
-rw-r--r--main/wireguard-tools/APKBUILD6
-rw-r--r--main/wireless-regdb/APKBUILD6
-rw-r--r--main/wpa_supplicant/APKBUILD6
-rw-r--r--main/wpa_supplicant/config2
-rw-r--r--main/xen/0001-xen-arm-Create-dom0less-domUs-earlier.patch85
-rw-r--r--main/xen/0002-xen-arm-Boot-modules-should-always-be-scrubbed-if-bo.patch59
-rw-r--r--main/xen/APKBUILD43
-rw-r--r--main/xen/stubdom-hack.patch11
-rw-r--r--main/xen/xsa373-4.15-1.patch120
-rw-r--r--main/xen/xsa373-4.15-2.patch102
-rw-r--r--main/xen/xsa373-4.15-3.patch163
-rw-r--r--main/xen/xsa373-4.15-4.patch79
-rw-r--r--main/xen/xsa373-4.15-5.patch141
-rw-r--r--main/xen/xsa375.patch50
-rw-r--r--main/xen/xsa377.patch27
-rw-r--r--main/xfsprogs/APKBUILD4
-rw-r--r--main/xkeyboard-config/APKBUILD4
-rw-r--r--main/xorgproto/APKBUILD4
-rw-r--r--main/xtables-addons-lts/APKBUILD4
-rw-r--r--main/yajl/APKBUILD4
-rw-r--r--main/zfs-lts/APKBUILD8
-rw-r--r--main/zfs-rpi/APKBUILD4
-rw-r--r--main/zfs/APKBUILD4
-rw-r--r--main/zstd/APKBUILD4
708 files changed, 10906 insertions, 6830 deletions
diff --git a/main/a52dec/APKBUILD b/main/a52dec/APKBUILD
deleted file mode 100644
index 78fb877a7f..0000000000
--- a/main/a52dec/APKBUILD
+++ /dev/null
@@ -1,49 +0,0 @@
-# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
-pkgname=a52dec
-pkgver=0.7.4
-pkgrel=7
-pkgdesc="A free library for decoding ATSC A/52 streams."
-url="http://liba52.sourceforge.net/"
-arch="all"
-license="GPL-2.0-or-later"
-subpackages="$pkgname-dev $pkgname-doc"
-makedepends="autoconf automake libtool linux-headers"
-source="http://liba52.sourceforge.net/files/$pkgname-$pkgver.tar.gz
- automake.patch
- fix-globals-test-x86-pie.patch
- $pkgname-$pkgver-build.patch
- "
-
-builddir="$srcdir/$pkgname-$pkgver"
-prepare() {
- default_prepare
- update_config_sub
- libtoolize --force && \
- aclocal && autoconf && automake --add-missing
-}
-
-build() {
- cd "$builddir"
- ./configure \
- --build=$CBUILD \
- --host=$CHOST \
- --prefix=/usr \
- --enable-shared
- make
-}
-
-check() {
- cd "$builddir"
- make check
-}
-
-package() {
- cd "$builddir"
- make DESTDIR="$pkgdir" install
- install -m644 liba52/a52_internal.h "$pkgdir"/usr/include/a52dec/
-}
-
-sha512sums="4b26fe9492f218b775fb190b76ecf06edaeb656adfe6dcbd24d0a0f86871c3ba917edb88a398eb12dccedaa1605b6f0a0be06b09f9fddd9a46e457b7dd244848 a52dec-0.7.4.tar.gz
-4a832b7e13e19ba00b1fcf5ddbdcca416ee71818f2fd77f19114d7f98fb41dbd04f906eb78f403dc27324d7e8bd8ec4e0b670139a27b49a7acdb2e3cf88d8d12 automake.patch
-b8dbcdc817531bc737ee689a1a8fc76ba40462397ca95286fe834795a09df04cd68010ca6105c8e56392328bec00c838372ab28324c5428421d44824109ea6ec fix-globals-test-x86-pie.patch
-eee40a2871c00fc704fa49d3192a41ceadc4cf7e80d7d7cf368aa2a3e7ebb786f39ef835bdffca5685bf054316a9bacf87556b9a0c90868dbf29e7269873806e a52dec-0.7.4-build.patch"
diff --git a/main/a52dec/a52dec-0.7.4-build.patch b/main/a52dec/a52dec-0.7.4-build.patch
deleted file mode 100644
index f3a29f303c..0000000000
--- a/main/a52dec/a52dec-0.7.4-build.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff -Naur a52dec-0.7.4.orig/liba52/Makefile.am a52dec-0.7.4/liba52/Makefile.am
---- a52dec-0.7.4.orig/liba52/Makefile.am 2002-01-27 20:36:48.000000000 -0800
-+++ a52dec-0.7.4/liba52/Makefile.am 2004-11-05 01:10:21.317401872 -0800
-@@ -1,4 +1,3 @@
--CFLAGS = @CFLAGS@ @LIBA52_CFLAGS@
-
- lib_LTLIBRARIES = liba52.la
-
-diff -Naur a52dec-0.7.4.orig/liba52/configure.incl a52dec-0.7.4/liba52/configure.incl
---- a52dec-0.7.4.orig/liba52/configure.incl 2002-01-27 20:36:48.000000000 -0800
-+++ a52dec-0.7.4/liba52/configure.incl 2004-11-05 01:11:38.172672216 -0800
-@@ -2,7 +2,6 @@
- AC_SUBST([LIBA52_LIBS])
-
- dnl avoid -fPIC when possible
--LIBA52_CFLAGS="$LIBA52_CFLAGS -prefer-non-pic"
-
- AC_ARG_ENABLE([double],
- [ --enable-double use double-precision samples])
-diff -Naur a52dec-0.7.4.orig/src/Makefile.am a52dec-0.7.4/src/Makefile.am
---- a52dec-0.7.4.orig/src/Makefile.am 2002-06-22 18:51:57.000000000 -0700
-+++ a52dec-0.7.4/src/Makefile.am 2004-11-05 01:10:21.320401375 -0800
-@@ -1,4 +1,3 @@
--CFLAGS = @A52DEC_CFLAGS@
-
- bin_PROGRAMS = a52dec extract_a52
- a52dec_SOURCES = a52dec.c getopt.c gettimeofday.c
diff --git a/main/a52dec/automake.patch b/main/a52dec/automake.patch
deleted file mode 100644
index 42231e040b..0000000000
--- a/main/a52dec/automake.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./configure.in.orig 2013-04-23 12:43:16.258733686 +0000
-+++ ./configure.in 2013-04-23 12:43:32.922233281 +0000
-@@ -6,7 +6,7 @@
- AC_CONFIG_FILES([Makefile autotools/Makefile include/Makefile test/Makefile
- doc/Makefile src/Makefile liba52/Makefile libao/Makefile vc++/Makefile])
- AM_INIT_AUTOMAKE([a52dec],[0.7.4])
--AM_CONFIG_HEADER(include/config.h)
-+AC_CONFIG_HEADERS(include/config.h)
- AM_MAINTAINER_MODE
- AC_CANONICAL_HOST
-
diff --git a/main/a52dec/fix-globals-test-x86-pie.patch b/main/a52dec/fix-globals-test-x86-pie.patch
deleted file mode 100644
index da227a1397..0000000000
--- a/main/a52dec/fix-globals-test-x86-pie.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a52dec-0.7.4.orig/test/globals
-+++ a52dec-0.7.4/test/globals
-@@ -13,7 +13,7 @@
- builddir=`cd $builddir;pwd`
-
- bad_globals=`nm -g --defined-only $builddir/../liba52/*.o|\
-- awk '{if ($3) print $3}'|grep -v '^_\?a52_'`
-+ awk '{if ($3) print $3}'|grep -v '^_\?a52_'`|grep -v '^__x86.get_pc_thunk.'
-
- if test x"$bad_globals" != x""; then
- echo BAD GLOBAL SYMBOLS:
diff --git a/main/abuild/APKBUILD b/main/abuild/APKBUILD
index 5308962506..4e5181c5c0 100644
--- a/main/abuild/APKBUILD
+++ b/main/abuild/APKBUILD
@@ -1,8 +1,8 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=abuild
-pkgver=3.8.0_rc4
+pkgver=3.9.0_rc2
_ver=${pkgver%_git*}
-pkgrel=0
+pkgrel=1
pkgdesc="Script to build Alpine Packages"
url="https://git.alpinelinux.org/cgit/abuild/"
arch="all"
@@ -12,8 +12,8 @@ depends="fakeroot scanelf openssl apk-tools>=2.0.7-r1 libc-utils
if [ "$CBUILD" = "$CHOST" ]; then
depends="$depends curl"
fi
-makedepends_build="pkgconfig"
-makedepends_host="openssl-dev zlib-dev"
+makedepends_build="pkgconfig scdoc"
+makedepends_host="openssl1.1-compat-dev zlib-dev"
makedepends="$makedepends_host $makedepends_build"
checkdepends="bats"
install="$pkgname.pre-install $pkgname.pre-upgrade"
@@ -84,5 +84,5 @@ _rootbld() {
}
sha512sums="
-687c21c233570b1e06f1298b24d5bcbf5925dfb9e9e00d0fb1626a7e0983dc6c2079cba96408033210b562c1cf08c2cd149379b22f86e0a255e2dde1c6886d48 abuild-3.8.0_rc4.tar.xz
+a90daf72cd1f1c5fb31d998786fd418355e2ff03ab1f3c6b9bf0d1a0b94538f34d37d405de8615d596f866e31adaad14662eee93d5342ee41bf1ee898dc7d915 abuild-3.9.0_rc2.tar.xz
"
diff --git a/main/acpica/APKBUILD b/main/acpica/APKBUILD
index 6dbec75f36..4129ae6ed5 100644
--- a/main/acpica/APKBUILD
+++ b/main/acpica/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Roger Pau Monne <roger.pau@entel.upc.edu>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=acpica
-pkgver=20210331
+pkgver=20210930
pkgrel=0
pkgdesc="ACPI Component Architecture utilities"
url="https://www.acpica.org"
@@ -29,5 +29,7 @@ iasl() {
mv "$pkgdir"/usr/bin/iasl "$subpkgdir"/usr/bin/
}
-sha512sums="f247162db70181b6c2b294dab2c7e220a7a125ae474ebeeea9243faca361b1ab392b62f58d66719bcb54f09e37ed533e9f68f56d9ea23976e41f274966207949 acpica-unix-20210331.tar.gz
-1f5049568d612d4debf3690e0d918d8d56abbed14ade7b2e6282eba17b25934b695d1a9fe10f99469efe8d4382c4546481d0579afdf5cdb9695fcdc93559fbab disable-werror.patch"
+sha512sums="
+b02470bdda891eb7ca556ec4eee3387f80535b43b213f61e68e3913f4f8173dbf4c2dadaf28ad181ecc76171d40175d5ea5734dbc1237b3c3d2fba3072314c9e acpica-unix-20210930.tar.gz
+1f5049568d612d4debf3690e0d918d8d56abbed14ade7b2e6282eba17b25934b695d1a9fe10f99469efe8d4382c4546481d0579afdf5cdb9695fcdc93559fbab disable-werror.patch
+"
diff --git a/main/alpine-base/APKBUILD b/main/alpine-base/APKBUILD
index bf75a3586a..2992992554 100644
--- a/main/alpine-base/APKBUILD
+++ b/main/alpine-base/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=alpine-base
-pkgver=3.14.0
+pkgver=3.15.0_alpha20210804
pkgrel=0
pkgdesc="Meta package for minimal alpine base"
url="https://alpinelinux.org"
diff --git a/main/alpine-baselayout/APKBUILD b/main/alpine-baselayout/APKBUILD
index af40c15663..4825ea730c 100644
--- a/main/alpine-baselayout/APKBUILD
+++ b/main/alpine-baselayout/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=alpine-baselayout
pkgver=3.2.0
-pkgrel=17
+pkgrel=18
pkgdesc="Alpine base dir structure and init scripts"
url="https://git.alpinelinux.org/cgit/aports/tree/main/alpine-baselayout"
arch="all"
@@ -238,7 +238,7 @@ sha512sums="
7fcb5df98b0f19e609cb9444b2e6ca5ee97f5f308eb407436acdd0115781623fd89768a9285e9816e36778e565b6f27055f2a586a58f19d6d880de5446d263c4 color_prompt.sh.disabled
b2fc9b72846a43a45ba9a8749e581cef34d1915836833b51b7919dfbf4e275b7d55fec4dea7b23df3796380910971a41331e53e8cf0d304834e3da02cc135e5a locale.sh
bfe947bdd69e7d93b32c8cb4e2cabe5717cb6c1e1f49a74015ac2cfb13e96d1f12c4be23ae93a1d61aaa3760d33a032fa9bd99f227fb21223a76b5f5908acc65 aliases.conf
-0b93db8ba1b5d16b2c23f9b6daea27a3a76c059a1f5ea0369af526ea3f4ff92a6040face89e95c45cf7daaa7a663f229df0f6c1ba24073ef4b2f7b74b298fdae blacklist.conf
+0a1e1afa580751e80bf26057b65fadffe269c0552e7a1903de498f94973ba3da8453b51f25e649968ca5f4841266f5ccf951700fa28465a8614b83d07344de60 blacklist.conf
49109d434b577563849c43dd8141961ca798dada74d4d3f49003dac1911f522c43438b8241fa254e4faacdd90058f4d39a7d69b1f493f6d57422c1f706547c95 i386.conf
9dda8c9d1896baf1217aa05ae2936e909300a22a98da9f4c3ba29136852477bf4764321b6a1abb15e93ee58f4a6e77ddfc42cbb12cbbb53cf0f431ace444f72f kms.conf
806b8f23f823a9471846d12fa6b55690b95eedb4c613b82aefaba7ffef23f83e17552befd891a487864f72ef24e395d8611738933f684a85eb4c336cb20994f8 group
diff --git a/main/alpine-baselayout/blacklist.conf b/main/alpine-baselayout/blacklist.conf
index 76c3fb75cd..1cf7e1aa24 100644
--- a/main/alpine-baselayout/blacklist.conf
+++ b/main/alpine-baselayout/blacklist.conf
@@ -78,3 +78,7 @@ blacklist hfcsusb
blacklist e_powersaver
blacklist microcode
+
+# needs init config, not compatible with acpid
+# https://gitlab.alpinelinux.org/alpine/aports/-/issues/12999
+blacklist tiny_power_button
diff --git a/main/alpine-baselayout/protocols b/main/alpine-baselayout/protocols
deleted file mode 100644
index 03f049d067..0000000000
--- a/main/alpine-baselayout/protocols
+++ /dev/null
@@ -1,45 +0,0 @@
-# /etc/protocols:
-# $Id: protocols,v 1.1 2004/02/04 03:32:40 pebenito Exp $
-# $Header: /home/cvsroot/gentoo-projects/embedded/baselayout-lite/protocols,v 1.1 2004/02/04 03:32:40 pebenito Exp $
-#
-# Internet (IP) protocols
-#
-# from: @(#)protocols 5.1 (Berkeley) 4/17/89
-#
-# Updated for NetBSD based on RFC 1340, Assigned Numbers (July 1992).
-
-ip 0 IP # internet protocol, pseudo protocol number
-icmp 1 ICMP # internet control message protocol
-igmp 2 IGMP # Internet Group Management
-ggp 3 GGP # gateway-gateway protocol
-ipencap 4 IP-ENCAP # IP encapsulated in IP (officially ``IP'')
-st 5 ST # ST datagram mode
-tcp 6 TCP # transmission control protocol
-egp 8 EGP # exterior gateway protocol
-pup 12 PUP # PARC universal packet protocol
-udp 17 UDP # user datagram protocol
-hmp 20 HMP # host monitoring protocol
-xns-idp 22 XNS-IDP # Xerox NS IDP
-rdp 27 RDP # "reliable datagram" protocol
-iso-tp4 29 ISO-TP4 # ISO Transport Protocol class 4
-xtp 36 XTP # Xpress Tranfer Protocol
-ddp 37 DDP # Datagram Delivery Protocol
-idpr-cmtp 38 IDPR-CMTP # IDPR Control Message Transport
-ipv6 41 IPv6 # IPv6
-ipv6-route 43 IPv6-Route # Routing Header for IPv6
-ipv6-frag 44 IPv6-Frag # Fragment Header for IPv6
-idrp 45 IDRP # Inter-Domain Routing Protocol
-rsvp 46 RSVP # Reservation Protocol
-gre 47 GRE # General Routing Encapsulation
-esp 50 ESP # Encap Security Payload for IPv6
-ah 51 AH # Authentication Header for IPv6
-skip 57 SKIP # SKIP
-ipv6-icmp 58 IPv6-ICMP # ICMP for IPv6
-ipv6-nonxt 59 IPv6-NoNxt # No Next Header for IPv6
-ipv6-opts 60 IPv6-Opts # Destination Options for IPv6
-rspf 73 RSPF # Radio Shortest Path First.
-vmtp 81 VMTP # Versatile Message Transport
-ospf 89 OSPFIGP # Open Shortest Path First IGP
-ipip 94 IPIP # IP-within-IP Encapsulation Protocol
-encap 98 ENCAP # Yet Another IP encapsulation
-pim 103 PIM # Protocol Independent Multicast
diff --git a/main/amavisd-milter/APKBUILD b/main/amavisd-milter/APKBUILD
index eafffd3740..45299851b6 100644
--- a/main/amavisd-milter/APKBUILD
+++ b/main/amavisd-milter/APKBUILD
@@ -2,23 +2,21 @@
# Maintainer: Noel Kuntze <noel.kuntze@thermi.consulting>
pkgname=amavisd-milter
pkgver=1.7.1
-pkgrel=1
+pkgrel=2
pkgdesc="sendmail milter for amavisd-new using the AM.PDP protocol"
url="https://github.com/prehor/amavisd-milter"
arch="all !x86" #amavis isn't build for x86
license="BSD-3-Clause"
-depends="amavis libmilter"
+depends="amavis"
makedepends="libmilter-dev"
-subpackages="$pkgname-doc"
+subpackages="$pkgname-doc $pkgname-openrc"
source="
https://github.com/prehor/amavisd-milter/releases/download/$pkgver/amavisd-milter-$pkgver.tar.gz
amavisd-milter.initd
amavisd-milter.confd
"
-builddir="$srcdir/$pkgname-$pkgver"
build() {
- cd "$builddir"
./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -28,12 +26,10 @@ build() {
}
check() {
- cd "$builddir"
make check
}
package() {
- cd "$builddir"
make DESTDIR="$pkgdir" install
install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
diff --git a/main/ansible-base/0001-new-module-lbu.patch b/main/ansible-base/0001-new-module-lbu.patch
deleted file mode 100644
index 6147d3d3dd..0000000000
--- a/main/ansible-base/0001-new-module-lbu.patch
+++ /dev/null
@@ -1,151 +0,0 @@
-From a419a9539ddff10fa4d3fd7460b117a9f4dd2691 Mon Sep 17 00:00:00 2001
-From: Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>
-Date: Thu, 19 Sep 2019 10:58:07 +0300
-Subject: [PATCH] new module: lbu
-
-Alpine Linux Local Backup Utility
----
- lib/ansible/modules/system/lbu.py | 131 ++++++++++++++++++++++++++++++
- 1 file changed, 131 insertions(+)
- create mode 100644 lib/ansible/modules/system/lbu.py
-
-diff --git a/lib/ansible/modules/system/lbu.py b/lib/ansible/modules/system/lbu.py
-new file mode 100644
-index 0000000000..9952ec29f1
---- /dev/null
-+++ b/lib/ansible/modules/lbu.py
-@@ -0,0 +1,131 @@
-+#!/usr/bin/python
-+
-+# Copyright: (c) 2019, Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>
-+# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-+
-+from __future__ import absolute_import, division, print_function
-+__metaclass__ = type
-+
-+ANSIBLE_METADATA = {
-+ 'metadata_version': '1.1',
-+ 'status': ['preview'],
-+ 'supported_by': 'community'
-+}
-+
-+DOCUMENTATION = '''
-+---
-+module: lbu
-+
-+short_description: Local Backup Utility for Alpine Linux
-+
-+version_added: "2.10"
-+
-+description:
-+- Manage Local Backup Utility of Alpine Linux in run-from-RAM mode
-+
-+options:
-+ commit:
-+ description:
-+ - Control whether to commit changed files.
-+ type: bool
-+ exclude:
-+ description:
-+ - List of paths to exclude.
-+ type: list
-+ include:
-+ description:
-+ - List of paths to include.
-+ type: list
-+
-+author:
-+- Kaarle Ritvanen (@kunkku)
-+'''
-+
-+EXAMPLES = '''
-+# Commit changed files (if any)
-+- name: Commit
-+ lbu:
-+ commit: true
-+
-+# Exclude path and commit
-+- name: Exclude directory
-+ lbu:
-+ commit: true
-+ exclude:
-+ - /etc/opt
-+
-+# Include paths without committing
-+- name: Include file and directory
-+ lbu:
-+ include:
-+ - /root/.ssh/authorized_keys
-+ - /var/lib/misc
-+'''
-+
-+RETURN = '''
-+msg:
-+ description: Error message
-+ type: str
-+ returned: on failure
-+'''
-+
-+from ansible.module_utils.basic import AnsibleModule
-+
-+import os.path
-+
-+
-+def run_module():
-+ module = AnsibleModule(
-+ argument_spec={
-+ 'commit': {'type': 'bool'},
-+ 'exclude': {'type': 'list', 'elements': 'str'},
-+ 'include': {'type': 'list', 'elements': 'str'}
-+ },
-+ supports_check_mode=True
-+ )
-+
-+ changed = False
-+
-+ def run_lbu(*args):
-+ code, stdout, stderr = module.run_command(
-+ [module.get_bin_path('lbu', required=True)] + list(args)
-+ )
-+ if code:
-+ module.fail_json(changed=changed, msg=stderr)
-+ return stdout
-+
-+ update = False
-+ commit = False
-+
-+ for param in ('include', 'exclude'):
-+ if module.params[param]:
-+ paths = run_lbu(param, '-l').split('\n')
-+ for path in module.params[param]:
-+ if os.path.normpath('/' + path)[1:] not in paths:
-+ update = True
-+
-+ if module.params['commit']:
-+ commit = update or run_lbu('status') > ''
-+
-+ if module.check_mode:
-+ module.exit_json(changed=update or commit)
-+
-+ if update:
-+ for param in ('include', 'exclude'):
-+ if module.params[param]:
-+ run_lbu(param, *module.params[param])
-+ changed = True
-+
-+ if commit:
-+ run_lbu('commit')
-+ changed = True
-+
-+ module.exit_json(changed=changed)
-+
-+
-+def main():
-+ run_module()
-+
-+
-+if __name__ == '__main__':
-+ main()
---
-2.20.1
-
diff --git a/main/ansible-base/APKBUILD b/main/ansible-base/APKBUILD
deleted file mode 100644
index a856540dcb..0000000000
--- a/main/ansible-base/APKBUILD
+++ /dev/null
@@ -1,69 +0,0 @@
-# Contributor: Łukasz Jendrysik <scadu@yandex.com>
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Contributor: Takuya Noguchi <takninnovationresearch@gmail.com>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=ansible-base
-pkgver=2.10.5
-pkgrel=1
-pkgdesc="A configuration-management, deployment, task-execution, and multinode orchestration framework"
-url="https://ansible.com/"
-options="!check" # TODO: enable tests
-arch="noarch"
-license="GPL-3.0-or-later"
-depends="python3 py3-jinja2 py3-packaging py3-yaml py3-cryptography py3-paramiko"
-makedepends="py3-setuptools"
-subpackages="$pkgname-doc"
-source="https://pypi.python.org/packages/source/a/ansible-base/ansible-base-$pkgver.tar.gz
- 0001-new-module-lbu.patch
- "
-
-# secfixes:
-# 2.9.13-r0:
-# - CVE-2020-14330
-# - CVE-2020-14332
-# - CVE-2020-14365
-# 2.9.7-r0:
-# - CVE-2019-3828
-# - CVE-2020-1733
-# - CVE-2020-1739
-# - CVE-2020-1740
-# - CVE-2020-1746
-# - CVE-2020-10691
-# 2.9.6-r0:
-# - CVE-2020-1737
-# 2.9.3-r0:
-# - CVE-2019-14904
-# - CVE-2019-14905
-# 2.8.6-r0:
-# - CVE-2019-14846
-# - CVE-2019-14856
-# - CVE-2019-14858
-# 2.8.4-r0:
-# - CVE-2019-10206
-# - CVE-2019-10217
-# 2.8.2-r0:
-# - CVE-2019-10156
-# 2.7.9-r0:
-# - CVE-2018-16876
-# 2.6.3-r0:
-# - CVE-2018-10875
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-
- mkdir -p "$pkgdir"/usr/share/man/man1
- install -Dm644 "$builddir"/docs/man/man1/*.1 \
- "$pkgdir"/usr/share/man/man1/
-
- mkdir -p "$pkgdir"/usr/share/doc/$pkgname/examples/
- cp -r examples/* \
- "$pkgdir"/usr/share/doc/$pkgname/examples/
- install -m644 README.rst "$pkgdir"/usr/share/doc/$pkgname
-}
-
-sha512sums="2449a36bdea7242a3f4e248e42388339299340cd6c377d6a20b02803db527895912e49040f3931a1aa2ebf04e3d4d5594cfc08aec28da44b73c8206dc81ddb89 ansible-base-2.10.5.tar.gz
-57364eb94bd5fa1add6fb2f60d4e3790a6f1d7582f92ec1e25ea9459704d12ffe49b09ebde4aef91463d1950cfc9a4a34ab2ef83c60f1bc1c1fb6399e900369d 0001-new-module-lbu.patch"
diff --git a/main/ansible/APKBUILD b/main/ansible/APKBUILD
deleted file mode 100644
index f7e327866b..0000000000
--- a/main/ansible/APKBUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-# Contributor: Łukasz Jendrysik <scadu@yandex.com>
-# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
-# Contributor: Takuya Noguchi <takninnovationresearch@gmail.com>
-# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
-pkgname=ansible
-pkgver=2.10.7
-pkgrel=0
-pkgdesc="A configuration-management, deployment, task-execution, and multinode orchestration framework"
-url="https://ansible.com/"
-options="!check" # TODO: enable tests
-arch="noarch"
-license="GPL-3.0-or-later"
-depends="python3 ansible-base"
-makedepends="py3-setuptools"
-source="https://pypi.python.org/packages/source/a/ansible/ansible-$pkgver.tar.gz"
-
-# secfixes:
-# 2.10.7-r0:
-# - CVE-2021-20191
-# 2.10.1-r0:
-# - CVE-2020-25646
-
-build() {
- python3 setup.py build
-}
-
-package() {
- python3 setup.py install --prefix=/usr --root="$pkgdir"
-}
-
-sha512sums="
-7a6522bcc57c178c9c6e87e313f6f175d5c74ac0d1b9dd0cad5506c7fa0efb16d4a627dc2d9c73f988177544bd9ccfdbec162d0feacc757edeb20280d7414191 ansible-2.10.7.tar.gz
-"
diff --git a/main/apache2/APKBUILD b/main/apache2/APKBUILD
index dde873aec7..4f5099ccc3 100644
--- a/main/apache2/APKBUILD
+++ b/main/apache2/APKBUILD
@@ -2,7 +2,7 @@
# Contributor: Valery Kartel <valery.kartel@gmail.com>
pkgname=apache2
_pkgreal=httpd
-pkgver=2.4.48
+pkgver=2.4.51
pkgrel=0
pkgdesc="A high performance Unix-based HTTP server"
url="https://httpd.apache.org/"
@@ -12,7 +12,7 @@ install="$pkgname.pre-install $pkgname.pre-upgrade"
pkgusers="apache"
pkggroups="apache"
makedepends="apr-dev apr-util-dev autoconf automake brotli-dev libxml2-dev
- lua-dev nghttp2-dev openssl-dev pcre-dev sed zlib-dev"
+ lua-dev nghttp2-dev openssl1.1-compat-dev pcre-dev sed zlib-dev"
subpackages="$pkgname-ctl
$pkgname-error:_error:noarch
$pkgname-dev
@@ -27,7 +27,7 @@ subpackages="$pkgname-ctl
$pkgname-ssl
$pkgname-utils
$pkgname-webdav"
-source="https://archive.apache.org/dist/$_pkgreal/$_pkgreal-$pkgver.tar.bz2
+source="https://dlcdn.apache.org/$_pkgreal/$_pkgreal-$pkgver.tar.bz2
apache2.confd
apache2.logrotate
apache2.initd
@@ -51,6 +51,17 @@ options="suid"
builddir="$srcdir"/$_pkgreal-$pkgver
# secfixes:
+# 2.4.51-r0:
+# - CVE-2021-42013
+# 2.4.50-r0:
+# - CVE-2021-41524
+# - CVE-2021-41773
+# 2.4.49-r0:
+# - CVE-2021-40438
+# - CVE-2021-39275
+# - CVE-2021-36160
+# - CVE-2021-34798
+# - CVE-2021-33193
# 2.4.48-r0:
# - CVE-2019-17657
# - CVE-2020-13938
@@ -367,7 +378,7 @@ _lua() {
_load_mods
}
sha512sums="
-6c250626f1e7d10428a92d984fd48ff841effcc8705f7816ab71b681bbd51d0012ad158dcd13763fe7d630311f2de258b27574603140d648be42796ab8326724 httpd-2.4.48.tar.bz2
+9fb07c4b176f5c0485a143e2b1bb1085345ca9120b959974f68c37a8911a57894d2cb488b1b42fdf3102860b99e890204f5e9fa7ae3828b481119c563812cc66 httpd-2.4.51.tar.bz2
8e62b101f90c67babe864bcb74f711656180b011df3fd4b541dc766b980b72aa409e86debf3559a55be359471c1cad81b8779ef3a55add8d368229fc7e9544fc apache2.confd
18e8859c7d99c4483792a5fd20127873aad8fa396cafbdb6f2c4253451ffe7a1093a3859ce719375e0769739c93704c88897bd087c63e1ef585e26dcc1f5dd9b apache2.logrotate
81a2d2a297d8049ba1b021b879ec863767149e056d9bdb2ac8acf63572b254935ec96c2e1580eba86639ea56433eec5c41341e4f1501f9072745dccdb3602701 apache2.initd
diff --git a/main/apcupsd/APKBUILD b/main/apcupsd/APKBUILD
index ed3b38ade2..fda125aa29 100644
--- a/main/apcupsd/APKBUILD
+++ b/main/apcupsd/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=apcupsd
pkgver=3.14.14
-pkgrel=1
+pkgrel=2
pkgdesc="A Daemon to control APC UPSes"
subpackages="$pkgname-doc $pkgname-webif $pkgname-openrc"
url="http://www.apcupsd.org"
@@ -12,6 +12,7 @@ makedepends="net-snmp-dev linux-headers gd-dev libusb-compat-dev"
options="!check" # no test suite included
source="https://sourceforge.net/projects/apcupsd/files/apcupsd%20-%20Stable/$pkgver/apcupsd-$pkgver.tar.gz
apcupsd.initd
+ apcupsd.powerfail.initd
apcupsd-alpine.patch
"
@@ -46,6 +47,8 @@ package() {
cd "$_builddir"
make DESTDIR=$pkgdir install
install -D -m755 "$srcdir"/apcupsd.initd "$pkgdir"/etc/init.d/apcupsd
+ install -D -m755 "$srcdir"/apcupsd.powerfail.initd \
+ "$pkgdir"/etc/init.d/apcupsd.powerfail
}
webif() {
@@ -56,4 +59,5 @@ webif() {
sha512sums="c953bbf3e08f809748a7978a3952604176390d1cd276f187fe096d9bc3c8993b52127e8350c0363387da41318e24b4d1e00ea58df71f3bb8f50c9a5a64cd2d7f apcupsd-3.14.14.tar.gz
cd9cb3c812dfd72660007807965cac866dfb2ce4bd8200668f08e94fdcce874cce2ec87a0d832b8f37f254908d093aff0cc2db26e9403d5e613dc192072da617 apcupsd.initd
+8d1c266bd86cd1cdf4fccdd171a877957bf5e26e1bb8c20e4c9c6b362a63d8cc1b887a1661939e4e56228a8d23dfc81fe782806b5d1527423c2ef7872cbeb881 apcupsd.powerfail.initd
4f0712519213c4ef14f41eeef681c5498fac7bf42f205de8a855938f8e834d9488d86820d7c883e89d0d305ee287e17e2d321dbbc98ae12f8487bf58aa0d4a6b apcupsd-alpine.patch"
diff --git a/main/apcupsd/apcupsd.powerfail.initd b/main/apcupsd/apcupsd.powerfail.initd
new file mode 100644
index 0000000000..cd7a1e9210
--- /dev/null
+++ b/main/apcupsd/apcupsd.powerfail.initd
@@ -0,0 +1,17 @@
+#!/sbin/openrc-run
+# Copyright 2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description='Signal the UPS to kill power in a power failure condition'
+
+depend() {
+ need mount-ro
+}
+
+start() {
+ if [ "$RC_RUNLEVEL" = "shutdown" -a -f /etc/apcupsd/powerfail ] ; then
+ ebegin 'Signaling UPS to kill power'
+ /sbin/apcupsd --killpower
+ eend $?
+ fi
+}
diff --git a/main/apk-tools/APKBUILD b/main/apk-tools/APKBUILD
index 7c0976cbc9..6bd813c552 100644
--- a/main/apk-tools/APKBUILD
+++ b/main/apk-tools/APKBUILD
@@ -1,23 +1,26 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=apk-tools
-pkgver=2.12.6
-pkgrel=0
+pkgver=2.12.7
+pkgrel=3
pkgdesc="Alpine Package Keeper - package manager for alpine"
arch="all"
url="https://gitlab.alpinelinux.org/alpine/apk-tools"
license="GPL-2.0-only"
-subpackages="$pkgname-dev $pkgname-static $pkgname-doc $pkgname-zsh-completion"
+subpackages="$pkgname-dbg $pkgname-dev $pkgname-static $pkgname-doc $pkgname-zsh-completion"
# Musl 1.2 introduced new ABI for time64 => upgrading apk-tools
# while staying on musl <1.2 causes missing symbols
depends="musl>=1.2"
makedepends_build="openssl lua5.3 lua5.3-lzlib scdoc"
-makedepends_host="zlib-dev openssl-dev zlib-static openssl-libs-static linux-headers"
+makedepends_host="zlib-dev openssl1.1-compat-dev zlib-static openssl1.1-compat-libs-static linux-headers"
makedepends="$makedepends_build $makedepends_host"
_lua="no"
if [ "$CBUILD" = "$CHOST" ]; then
_lua="lua5.3"
subpackages="$subpackages $_lua-apk:luaapk"
makedepends="$makedepends $_lua-dev"
+
+ # ca-certificates-bundle needed for https certificate validation
+ depends="$depends ca-certificates-bundle"
fi
source="https://gitlab.alpinelinux.org/alpine/$pkgname/-/archive/v$pkgver/$pkgname-v$pkgver.tar.gz
_apk
@@ -83,6 +86,6 @@ luaapk() {
}
sha512sums="
-ebdda710ed11ef404cf0e68a3842fcb7f12b329e870f1341039b3f1a0de12dfcad31228f59bc291e0542f1c1cf4e587e1613478f0d0fd930900bb689fbf52251 apk-tools-v2.12.6.tar.gz
+1297bb969a4d27164b38e64f4d2c00b00758d8d83c7ba658eeddccdd549dc6ba8f26a60a9e71c88f4bca87b2746a8fb4b7bb41e0096cf459e1b841203f903681 apk-tools-v2.12.7.tar.gz
102e6d01a984fb7a84c9432f797e4d8d2c90e9570dd26208b8485569ab471ea88a2cc81eabd3b3f7e4c9685a37afc458dec172a65b03c19c78a7efb598c54f45 _apk
"
diff --git a/main/apr-util/APKBUILD b/main/apr-util/APKBUILD
index 656bf1bf37..fc6efbe259 100644
--- a/main/apr-util/APKBUILD
+++ b/main/apr-util/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=apr-util
pkgver=1.6.1
-pkgrel=7
+pkgrel=9
pkgdesc="The Apache Portable Runtime Utility Library"
url="http://apr.apache.org/"
arch="all"
@@ -9,7 +9,7 @@ license="Apache-2.0"
subpackages="$pkgname-dev $pkgname-dbd_pgsql $pkgname-dbd_mysql
$pkgname-dbd_sqlite3 $pkgname-ldap"
depends_dev="expat-dev openldap-dev sqlite-dev postgresql-dev
- openssl-dev mariadb-dev"
+ openssl1.1-compat-dev mariadb-dev"
makedepends="$depends_dev apr-dev bash chrpath openssl"
source="https://www.apache.org/dist/apr/apr-util-$pkgver.tar.bz2
musl-fix-testsuite.patch"
diff --git a/main/arm-trusted-firmware/APKBUILD b/main/arm-trusted-firmware/APKBUILD
index a5302307c4..b6a1b77213 100644
--- a/main/arm-trusted-firmware/APKBUILD
+++ b/main/arm-trusted-firmware/APKBUILD
@@ -3,12 +3,12 @@
# Maintainer: Bart Ribbers <bribbers@disroot.org>
pkgname=arm-trusted-firmware
pkgver=2.5
-pkgrel=0
+pkgrel=2
pkgdesc="ARM Trusted Firmware-A (TF-A)"
url="https://github.com/ARM-software/arm-trusted-firmware"
arch="aarch64"
license="BSD-3-Clause"
-makedepends="dtc openssl-dev gcc-arm-none-eabi"
+makedepends="dtc openssl1.1-compat-dev gcc-arm-none-eabi"
source="https://github.com/ARM-software/arm-trusted-firmware/archive/v$pkgver/arm-trusted-firmware-v$pkgver.tar.gz
rk3399-baudrate.patch"
options="!check" # No tests
diff --git a/main/arpwatch/APKBUILD b/main/arpwatch/APKBUILD
index 30f367d4c2..2c64257c23 100644
--- a/main/arpwatch/APKBUILD
+++ b/main/arpwatch/APKBUILD
@@ -2,10 +2,10 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=arpwatch
pkgver=3.1
-pkgrel=0
+pkgrel=1
pkgdesc="Ethernet monitoring program"
url="https://www-nrg.ee.lbl.gov/"
-arch="all !riscv64"
+arch="all"
license="BSD-4-Clause-Shortened"
pkgusers="arpwatch"
depends="python3"
@@ -21,6 +21,13 @@ source="https://ee.lbl.gov/downloads/arpwatch/arpwatch-$pkgver.tar.gz
remove-freebsd-arpwatch.patch
"
+prepare() {
+ default_prepare
+
+ update_config_sub
+ update_config_guess
+}
+
build() {
export PYTHON=python3
./configure \
@@ -47,9 +54,11 @@ package() {
done
}
-sha512sums="2e6f6e388e1828e34626e36356a89f3bc95d268b9242955d6636ac05041bcf533e7625ed73b37b6ea5eab8cfed54b8c483547556c98664efff63c18639efa282 arpwatch-3.1.tar.gz
+sha512sums="
+2e6f6e388e1828e34626e36356a89f3bc95d268b9242955d6636ac05041bcf533e7625ed73b37b6ea5eab8cfed54b8c483547556c98664efff63c18639efa282 arpwatch-3.1.tar.gz
854f6361bf02586516db4f50afdee729c047cd788985f72f475e592e0e744c24d7d765f0391d733dbf417048c26b6d43c00eb63c58e6798bdb2366b93cbfe03a arpwatch.confd
-d60d8d07c5572ba645f037d2d8a9b028f8cd434d99e76a9f75a046d00959d6b4544ab6d866d3c88b4861175c5407d83ecd954b5f5dad0b2ec3894411e83e5e2f arpwatch.initd
+83fc559aecd82cefd430104df23fc7680ac14d2c27f74d4543585382166e16a65563e00122281e886278993a9ca574daa5b2b2100884369c3a3146a66b68a0f7 arpwatch.initd
b537220b7a19f7f28d1b60cfea6ef2e4d0c852ac83907fdd2515e467c3d16529b0c5a25ee653536e674c63d47a00709fc89fd6085efc5ba4a12f392df5ae5788 22_alpine_bihourly_script.patch
6eae9b143deea1655b3adb45640329d1c6d15c0bf6172a229ed142bb59e6c53b73ad19dc38adc42fe547f0bae1310394b19c9f8efe1af3a7dbf889c3742008c1 53_stop-using-_getshort.patch
-68298d7967c281bbda6fe7d64f9af427eb39ac1a0011283b14ea1004396949595acc6947ddcabb385acdc83abe6255bf79ff92e5b8b1c33c67c26830b82ecd64 remove-freebsd-arpwatch.patch"
+68298d7967c281bbda6fe7d64f9af427eb39ac1a0011283b14ea1004396949595acc6947ddcabb385acdc83abe6255bf79ff92e5b8b1c33c67c26830b82ecd64 remove-freebsd-arpwatch.patch
+"
diff --git a/main/arpwatch/arpwatch.initd b/main/arpwatch/arpwatch.initd
index 437633effe..c6f2a18c51 100644
--- a/main/arpwatch/arpwatch.initd
+++ b/main/arpwatch/arpwatch.initd
@@ -24,7 +24,7 @@ start() {
else
chown ${ARPUSER} ${DATAFILE}
start-stop-daemon --start --quiet --pidfile=/var/run/arpwatch/arpwatch.${IFACE}.pid --exec \
- /usr/sbin/arpwatch -- -i $IFACE -u ${ARPUSER} -f ${DATAFILE} -P /var/run/arpwatch/arpwatch.${IFACE}.pid ${OPTIONS}
+ /usr/sbin/arpwatch -- -i $IFACE -f ${DATAFILE} -P /var/run/arpwatch/arpwatch.${IFACE}.pid ${OPTIONS}
fi
eend $?
done
diff --git a/main/asciidoc/APKBUILD b/main/asciidoc/APKBUILD
index 2a6e892c78..9aafab2c19 100644
--- a/main/asciidoc/APKBUILD
+++ b/main/asciidoc/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=asciidoc
-pkgver=9.1.0
+pkgver=9.1.1
pkgrel=0
pkgdesc="Text based documentation"
url="https://asciidoc.org/"
@@ -40,4 +40,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="c4565cfb30a8789ed64b7b9293019a6528eb93341ab109c9a6cb4985bf4a65117516e03b84340eb84ea07981650f50f52c0ae85eba2956fcbde23e46b3cf228e asciidoc-9.1.0.tar.gz"
+sha512sums="
+444de69e3b87af984327873d5be1162157db5f7fb353e1fbbd24b4938ce0238fd474a67c9d3461fb7b069e7b029c63fbaf1ba8dd9cf7b91fbfa81e5429db404c asciidoc-9.1.1.tar.gz
+"
diff --git a/main/asciidoctor/APKBUILD b/main/asciidoctor/APKBUILD
index 4833db001b..f139c3661a 100644
--- a/main/asciidoctor/APKBUILD
+++ b/main/asciidoctor/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Seung Soo Mun <hamletmun@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=asciidoctor
-pkgver=2.0.15
+pkgver=2.0.16
pkgrel=0
pkgdesc="Converter for AsciiDoc to HTML5, DocBook 5 (or 4.5) and other formats"
url="https://rubygems.org/gems/$pkgname"
@@ -34,5 +34,5 @@ package() {
}
sha512sums="
-55ab7ceb85e219a36fdcb21d5620199e1d46281742cf52ce5892f36ee5db1119b535f488fae57aa360cbaee762f903d6bd957e3a65781eacd810b41eafcaa8f1 asciidoctor-2.0.15.gem
+2e164a0d24374e0c5461926c865c8900d3fb3f27606af5aac1a0a5f53102ca758f6421a113a9bb100fe7dba2e1accec04ca6ca16670e4b85e373f729bdaba6cd asciidoctor-2.0.16.gem
"
diff --git a/main/asterisk/APKBUILD b/main/asterisk/APKBUILD
index aef31b4e8e..c06db3c38b 100644
--- a/main/asterisk/APKBUILD
+++ b/main/asterisk/APKBUILD
@@ -4,7 +4,7 @@
# Maintainer: Timo Teras <timo.teras@iki.fi>
pkgname=asterisk
pkgver=18.2.2
-pkgrel=1
+pkgrel=4
pkgdesc="Modular Open Source PBX System"
pkgusers="asterisk"
pkggroups="asterisk"
@@ -12,32 +12,70 @@ url="https://www.asterisk.org/"
arch="all"
license="GPL-2.0-only WITH OpenSSL-Exception"
options="!check" # Test suite is separate, and require separate build
-makedepends="findutils tar bsd-compat-headers libtool
- ncurses-dev popt-dev newt-dev zlib-dev libedit-dev tiff-dev curl-dev
- openssl-dev lua-dev libcap-dev jansson-dev util-linux-dev
- sqlite-dev postgresql-dev unixodbc-dev freetds-dev mariadb-connector-c-dev
- alsa-lib-dev pjproject-dev dahdi-tools-dev libpri-dev libsrtp-dev
- spandsp-dev libresample speex-dev speexdsp-dev libogg-dev
- bluez-dev libxml2-dev imap-dev unbound-dev"
+makedepends="
+ alsa-lib-dev
+ bluez-dev
+ bsd-compat-headers
+ curl-dev
+ dahdi-tools-dev
+ findutils
+ freetds-dev
+ imap-dev
+ jansson-dev
+ libcap-dev
+ libedit-dev
+ libogg-dev
+ libpri-dev
+ libresample
+ libsrtp-dev
+ libtool
+ libxml2-dev
+ lua-dev
+ mariadb-connector-c-dev
+ ncurses-dev
+ newt-dev
+ openssl1.1-compat-dev
+ opus-dev
+ opusfile-dev
+ pjproject-dev
+ popt-dev
+ postgresql-dev
+ spandsp-dev
+ speexdsp-dev
+ speex-dev
+ sqlite-dev
+ tar
+ tiff-dev
+ unbound-dev
+ unixodbc-dev
+ util-linux-dev
+ zlib-dev
+ "
install="$pkgname.pre-install $pkgname.pre-upgrade"
subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc $pkgname-pgsql $pkgname-odbc
$pkgname-tds $pkgname-fax $pkgname-sample-config:config:noarch
$pkgname-sounds-moh:sound_moh:noarch $pkgname-sounds-en:sound_en:noarch
$pkgname-mobile $pkgname-curl:_curl $pkgname-srtp $pkgname-dahdi
- $pkgname-speex $pkgname-alsa $pkgname-cdr-mysql:cdr_mysql $pkgname-openrc"
+ $pkgname-speex $pkgname-opus $pkgname-alsa $pkgname-cdr-mysql:cdr_mysql
+ $pkgname-openrc"
_download="https://downloads.asterisk.org/pub/telephony/asterisk/releases"
source="$_download/asterisk-$pkgver.tar.gz
https://dev.alpinelinux.org/~tteras/asterisk-addon-mp3-r201.patch.gz
+ https://github.com/traud/asterisk-opus/archive/asterisk-13.7.tar.gz
10-musl-mutex-init.patch
20-musl-astmm-fix.patch
30-asterisk-mariadb.patch
40-asterisk-cdefs.patch
+ CVE-2021-32558.patch
asterisk.initd
asterisk.confd
- asterisk.logrotate"
+ asterisk.logrotate
+ "
# secfixes:
+# 18.2.2-r2:
+# - CVE-2021-32558
# 18.2.1-r0:
# - CVE-2021-26712
# - CVE-2021-26713
@@ -68,6 +106,10 @@ prepare() {
# asteriskssl does not have direct references to libssl, but looks up
# symbols from it using dlsym(RTLD_NEXT), so use --no-as-needed for it.
sed -i -e 's/ASTSSL_LIBS:=$(OPENSSL_LIB)/ASTSSL_LIBS:=-Wl,--no-as-needed $(OPENSSL_LIB) -Wl,--as-needed/g' main/Makefile
+
+ # copy codec_opus_open_source files
+ # res/* and include/asterisk/* are not needed as asterisk is new enough
+ cp --verbose ../asterisk-opus*/codecs/* codecs
}
build() {
@@ -104,6 +146,8 @@ build() {
--with-libedit \
--with-srtp \
--with-imap=system \
+ --with-opus \
+ --with-opusfile \
CFLAGS="$CFLAGS -DENABLE_SRTP_AES_256"
# get default modules to build
@@ -117,6 +161,7 @@ build() {
--enable cdr_mysql \
--disable BUILD_NATIVE \
--enable IMAP_STORAGE \
+ --enable codec_opus_open_source \
menuselect.makeopts
# build
@@ -162,6 +207,7 @@ cdr_mysql() { amove usr/lib/asterisk/modules/*cdr_mysql*; }
srtp() { amove usr/lib/asterisk/modules/*_srtp*; }
dahdi() { amove usr/lib/asterisk/modules/*_dahdi*; }
speex() { amove usr/lib/asterisk/modules/*_speex*; }
+opus() { amove usr/lib/asterisk/modules/codec_opus_open_source.so; }
alsa() { amove usr/lib/asterisk/modules/*_alsa*; }
config() {
@@ -192,10 +238,12 @@ sound_en() {
sha512sums="
e15fe3c7f46d49991bcb6f6f565f15e4af0d658b4cd6b091079209dd95a8027858effdc2f2314d72ed46a73cdebc089d3c27d5cf8db50d2d21f3c317a8a4a546 asterisk-18.2.2.tar.gz
aacef3f4796fb1abd33266998b53909cb4b36e7cc5ad2f7bac68bdc43e9a9072d9a4e2e7e681bddfa31f3d04575eb248afe6ea95da780c67e4829c1e22adfe1b asterisk-addon-mp3-r201.patch.gz
+156fa77b2864c439fbdfd4be302657dc8264bfc1d5a8f3647a9a5184f5c8651913038dc917db0d2d396dc173d6f1491065a7c81e25b2a67e1bea22c79f5b640e asterisk-13.7.tar.gz
771237ba6d42ab62d914f2702234b23fd0bc8c22f2aa33b0e745c9170163c8046f6d48ecb299faab3d6fb397f1aa046421083c3cc88510c9779861c522f357dd 10-musl-mutex-init.patch
0fae11b42894ab3d405bc50e9275b9084712b482fbf9b4259ea938667fc5cbe413655f3ff83da0f607151bb2b6e49c2f741b5ada6944dbb478f076ef8d86380a 20-musl-astmm-fix.patch
616de74bdd3c4a6e899128c73e31f5ff219095d2afe321f85a51f518ec2e9dac9b63396eed8e2568c295f1beb90f9a506c72d28211a973b35185bfffd24af37e 30-asterisk-mariadb.patch
ba33f11169284f190b7dabab1da7d2751cb65d7976408db635a892fa17d7552e1660350017e7aada3464ecc7d9d6e99d6ad76d66c0036de062a386cffbc948e6 40-asterisk-cdefs.patch
+87df7c97c0963f41a6d61ed80c7b9996d7f38fa39bbca50c3157f4bb68146e1c977459dfdff734395aca4fd9d801c15d6c996bfabdd81be16b96f3bbe92ff480 CVE-2021-32558.patch
0044c5db468ec8f2385d18d476f89976f6d036448583a4ef8017ce7a6f8f72105337e6b20037ffe47f561d2877fc9c86720aef23ab037df89b36dc140a5924c4 asterisk.initd
ab6b6f08ff43268cbb1abb7ed7d678949991ba495682a644bbaeb017d6adbff0a43297905fd73ae8db1786a28d5b5904f1bc253209a0e388c8a27f26c6ce14ed asterisk.confd
449b5808d90c813c23432274fba47e53227e3a924a55719d2f9e5a90fd2dfb33660a5c85c7e8f11fbb1cd93387e5c68329ed5583f7a64c2451fadad62a9f87dd asterisk.logrotate
diff --git a/main/asterisk/CVE-2021-32558.patch b/main/asterisk/CVE-2021-32558.patch
new file mode 100644
index 0000000000..522d8d6f4f
--- /dev/null
+++ b/main/asterisk/CVE-2021-32558.patch
@@ -0,0 +1,126 @@
+From 852a8780cb45db0dca7c18b364cb0485a1e09840 Mon Sep 17 00:00:00 2001
+From: Kevin Harwell <kharwell@sangoma.com>
+Date: Mon, 10 May 2021 17:59:00 -0500
+Subject: [PATCH] AST-2021-008 - chan_iax2: remote crash on unsupported media format
+
+If chan_iax2 received a packet with an unsupported media format, for
+example vp9, then it would set the frame's format to NULL. This could
+then result in a crash later when an attempt was made to access the
+format.
+
+This patch makes it so chan_iax2 now ignores/drops frames received
+with unsupported media format types.
+
+ASTERISK-29392 #close
+
+Change-Id: Ifa869a90dafe33eed8fd9463574fe6f1c0ad3eb1
+---
+
+diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c
+index 4122c04..c57434b 100644
+--- a/channels/chan_iax2.c
++++ b/channels/chan_iax2.c
+@@ -4132,6 +4132,7 @@
+ long ms;
+ long next;
+ struct timeval now = ast_tvnow();
++ struct ast_format *voicefmt;
+
+ /* Make sure we have a valid private structure before going on */
+ ast_mutex_lock(&iaxsl[callno]);
+@@ -4151,10 +4152,9 @@
+
+ ms = ast_tvdiff_ms(now, pvt->rxcore);
+
+- if(ms >= (next = jb_next(pvt->jb))) {
+- struct ast_format *voicefmt;
+- voicefmt = ast_format_compatibility_bitfield2format(pvt->voiceformat);
+- ret = jb_get(pvt->jb, &frame, ms, voicefmt ? ast_format_get_default_ms(voicefmt) : 20);
++ voicefmt = ast_format_compatibility_bitfield2format(pvt->voiceformat);
++ if (voicefmt && ms >= (next = jb_next(pvt->jb))) {
++ ret = jb_get(pvt->jb, &frame, ms, ast_format_get_default_ms(voicefmt));
+ switch(ret) {
+ case JB_OK:
+ fr = frame.data;
+@@ -4182,7 +4182,7 @@
+ pvt = iaxs[callno];
+ }
+ }
+- break;
++ break;
+ case JB_DROP:
+ iax2_frame_free(frame.data);
+ break;
+@@ -6451,8 +6451,14 @@
+ f->frametype = fh->type;
+ if (f->frametype == AST_FRAME_VIDEO) {
+ f->subclass.format = ast_format_compatibility_bitfield2format(uncompress_subclass(fh->csub & ~0x40) | ((fh->csub >> 6) & 0x1));
++ if (!f->subclass.format) {
++ f->subclass.format = ast_format_none;
++ }
+ } else if (f->frametype == AST_FRAME_VOICE) {
+ f->subclass.format = ast_format_compatibility_bitfield2format(uncompress_subclass(fh->csub));
++ if (!f->subclass.format) {
++ f->subclass.format = ast_format_none;
++ }
+ } else {
+ f->subclass.integer = uncompress_subclass(fh->csub);
+ }
+@@ -9929,8 +9935,8 @@
+ } else if (iaxs[fr->callno]->voiceformat == 0) {
+ ast_log(LOG_WARNING, "Received trunked frame before first full voice frame\n");
+ iax2_vnak(fr->callno);
+- } else {
+- f.subclass.format = ast_format_compatibility_bitfield2format(iaxs[fr->callno]->voiceformat);
++ } else if ((f.subclass.format = ast_format_compatibility_bitfield2format(
++ iaxs[fr->callno]->voiceformat))) {
+ f.datalen = len;
+ if (f.datalen >= 0) {
+ if (f.datalen)
+@@ -10173,11 +10179,17 @@
+ f.frametype = fh->type;
+ if (f.frametype == AST_FRAME_VIDEO) {
+ f.subclass.format = ast_format_compatibility_bitfield2format(uncompress_subclass(fh->csub & ~0x40));
++ if (!f.subclass.format) {
++ return 1;
++ }
+ if ((fh->csub >> 6) & 0x1) {
+ f.subclass.frame_ending = 1;
+ }
+ } else if (f.frametype == AST_FRAME_VOICE) {
+ f.subclass.format = ast_format_compatibility_bitfield2format(uncompress_subclass(fh->csub));
++ if (!f.subclass.format) {
++ return 1;
++ }
+ } else {
+ f.subclass.integer = uncompress_subclass(fh->csub);
+ }
+@@ -11795,6 +11807,11 @@
+ f.subclass.frame_ending = 1;
+ }
+ f.subclass.format = ast_format_compatibility_bitfield2format(iaxs[fr->callno]->videoformat);
++ if (!f.subclass.format) {
++ ast_variables_destroy(ies.vars);
++ ast_mutex_unlock(&iaxsl[fr->callno]);
++ return 1;
++ }
+ } else {
+ ast_log(LOG_WARNING, "Received mini frame before first full video frame\n");
+ iax2_vnak(fr->callno);
+@@ -11816,9 +11833,14 @@
+ } else {
+ /* A mini frame */
+ f.frametype = AST_FRAME_VOICE;
+- if (iaxs[fr->callno]->voiceformat > 0)
++ if (iaxs[fr->callno]->voiceformat > 0) {
+ f.subclass.format = ast_format_compatibility_bitfield2format(iaxs[fr->callno]->voiceformat);
+- else {
++ if (!f.subclass.format) {
++ ast_variables_destroy(ies.vars);
++ ast_mutex_unlock(&iaxsl[fr->callno]);
++ return 1;
++ }
++ } else {
+ ast_debug(1, "Received mini frame before first full voice frame\n");
+ iax2_vnak(fr->callno);
+ ast_variables_destroy(ies.vars);
diff --git a/main/at-spi2-core/APKBUILD b/main/at-spi2-core/APKBUILD
index b48ee4deaf..3a811bfadd 100644
--- a/main/at-spi2-core/APKBUILD
+++ b/main/at-spi2-core/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
pkgname=at-spi2-core
-pkgver=2.40.3
+pkgver=2.42.0
pkgrel=0
pkgdesc="Protocol definitions and daemon for D-Bus at-spi"
url="https://www.freedesktop.org/wiki/Accessibility/AT-SPI2/"
@@ -28,5 +28,5 @@ package() {
}
sha512sums="
-85adf3da0a369d7f3481646a495a9c4c3337da3ae6a20ce8c924f8621d3d6ed1d9461bfac0e821dfe86e4ad6b930e4fd65d24c26401cbea644ef4951e5dda5ce at-spi2-core-2.40.3.tar.xz
+befcab94b3aa99471723238d9666fc6667041b058a2bac3b012cfa15a91950996431296f33c921764e0ec4ffd0cc41ebe00be461a8460d6f4d2bafff19a38e10 at-spi2-core-2.42.0.tar.xz
"
diff --git a/main/audit/APKBUILD b/main/audit/APKBUILD
index bd9c723667..56c58146b3 100644
--- a/main/audit/APKBUILD
+++ b/main/audit/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Dermot Bradley <dermot_bradley@yahoo.com>
# Maintainer: Tycho Andersen <tycho@docker.com>
pkgname=audit
-pkgver=3.0.1
-pkgrel=1
+pkgver=3.0.5
+pkgrel=0
pkgdesc="User space tools for 2.6 kernel auditing"
url="https://people.redhat.com/sgrubb/audit/"
arch="all"
@@ -62,8 +62,10 @@ static() {
mv "$pkgdir"/usr/lib/*.a "$subpkgdir"/usr/lib/
}
-sha512sums="ad2897c9f539681f0f65b08cd0e650c528957fd4799755c2bcc47f869e04272aad31684c46847124d7b42dde243a16ba2754936890189610814c7007c0381d8c audit-3.0.1.tar.gz
+sha512sums="
+147b8aab7801ac286d8d634736b90b94cf497c5d3a6142f521e527dec9b989ed884caf0ac08aa533635276da46e78a65b14ebf165cd847a8500e29a2829a890d audit-3.0.5.tar.gz
f3f2c4ee745e99877c981d889c5cbb0379d073a9b7634c1480ae603a21a13045f9978b51f8cb53c8d0ba414d249bb859af7bca7e302c464b3fc3c6463ecca762 0003-all-get-rid-of-strndupa.patch
6a0e1fb81d7defe6ad84da447a55e1e0b90299fcbd1ca679934a1dfa1a211986ea4642a1c69abe0619120b64b16546a41fa028f55f27c79819d896178aac6df7 0004-fix-path-in-au-remote-conf.patch
b3d7ceba02b6b4406222c3b142fcfdf2b612dc52eebc490cfd121d696e4ef7c6cc5e27813d67937c464ed4c3cd283de9ccfcb75e63405a447523fa4641e79da3 auditd.initd
-69d8777772ded7a8c0db2bcf84961b121bb355fa0d4ba0e14e311f8a8bfe665cbd2b7ac632d73477f9dfa9a6eec357a7ed458fe9b3e7b5ede75b166f3f092ab7 auditd.confd"
+69d8777772ded7a8c0db2bcf84961b121bb355fa0d4ba0e14e311f8a8bfe665cbd2b7ac632d73477f9dfa9a6eec357a7ed458fe9b3e7b5ede75b166f3f092ab7 auditd.confd
+"
diff --git a/main/automake/0001-automake-add-install-dep-on-install-libLTLIBRARIES-t.patch b/main/automake/0001-automake-add-install-dep-on-install-libLTLIBRARIES-t.patch
new file mode 100644
index 0000000000..9923474f4c
--- /dev/null
+++ b/main/automake/0001-automake-add-install-dep-on-install-libLTLIBRARIES-t.patch
@@ -0,0 +1,70 @@
+From 3009ad094f5807c512e79224a8acee5a81a736b0 Mon Sep 17 00:00:00 2001
+From: Jan Engelhardt <jengelh@inai.de>
+Date: Sun, 29 Aug 2021 13:02:33 +0200
+Subject: [PATCH] automake: add install dep on install-libLTLIBRARIES to all
+ targets
+
+A Makefile.am like
+
+ bin_PROGRAMS =
+ lib_LTLIBRARIES = library1.la
+ pkglib_LTLIBRARIES = library2.la
+ library2_LIBADD = library1.la
+
+produces, in Makefile.in,
+
+ install-binPROGRAMS: install-libLTLIBRARIES
+
+but no
+
+ install-pkglibLTLIBRARIES: install-libLTLIBRARIES
+
+therefore potentially breaking `make install -j`. Rectify this by
+depending on install-libLTLIBRARIES not just for bin_PROGRAMS, but
+all PROGRAMS and LTLIBRARIES.
+
+Signed-off-by: Jan Engelhardt <jengelh@inai.de>
+---
+ bin/automake.in | 25 +++++++++++++++++++------
+ 1 file changed, 19 insertions(+), 6 deletions(-)
+
+diff --git a/bin/automake.in b/bin/automake.in
+index f04f5d5f5..30babd607 100644
+--- a/bin/automake.in
++++ b/bin/automake.in
+@@ -8042,13 +8042,26 @@ sub generate_makefile
+ handle_all ($makefile);
+
+ # FIXME: Gross!
+- if (var ('lib_LTLIBRARIES') && var ('bin_PROGRAMS'))
++ my $have_lt1 = !!var("lib_LTLIBRARIES");
++ my $have_lt2 = !!var("nobase_lib_LTLIBRARIES");
++ for my $var (variables("PROGRAMS"), variables("LTLIBRARIES"))
+ {
+- $output_rules .= "install-binPROGRAMS: install-libLTLIBRARIES\n\n";
+- }
+- if (var ('nobase_lib_LTLIBRARIES') && var ('bin_PROGRAMS'))
+- {
+- $output_rules .= "install-binPROGRAMS: install-nobase_libLTLIBRARIES\n\n";
++ if ($var->name eq "lib_LTLIBRARIES"
++ || $var->name eq "nobase_lib_LTLIBRARIES"
++ || substr($var->name, 0, 7) eq "noinst_")
++ {
++ next;
++ }
++ my $shortname = $var->name;
++ $shortname =~ tr{_}{}d;
++ if ($have_lt1)
++ {
++ $output_rules .= "install-$shortname: install-libLTLIBRARIES\n\n";
++ }
++ if ($have_lt2)
++ {
++ $output_rules .= "install-$shortname: install-nobase_libLTLIBRARIES\n\n";
++ }
+ }
+
+ handle_install;
+--
+2.33.0
+
diff --git a/main/automake/APKBUILD b/main/automake/APKBUILD
index 8a2ffe673c..b046b621f7 100644
--- a/main/automake/APKBUILD
+++ b/main/automake/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=automake
pkgver=1.16.4
-pkgrel=0
+pkgrel=1
pkgdesc="GNU tool for automatically creating Makefiles"
url="https://www.gnu.org/software/automake"
arch="noarch"
@@ -9,7 +9,9 @@ license="GPL-2.0-or-later MIT Public-Domain"
depends="perl"
makedepends="autoconf"
subpackages="$pkgname-doc"
-source="https://ftp.gnu.org/gnu/automake/automake-$pkgver.tar.xz"
+source="https://ftp.gnu.org/gnu/automake/automake-$pkgver.tar.xz
+ 0001-automake-add-install-dep-on-install-libLTLIBRARIES-t.patch
+ "
# many tests have bashisms
options="!check"
@@ -32,4 +34,5 @@ package() {
sha512sums="
5a8883657e73b75bfa1ee59ab04af6bf4d43f390ab62fb7a9e8e2ac66159dfe4947b2ac7bc1028afffe6a09d88f388339500e03f6cdfa1226985be45ec033246 automake-1.16.4.tar.xz
+ff5fc38987afd00076f32f42bb58f5cffca8de246f8354321f2c8564e1465b9f5d373b4fe6a54f18962c8850717a2d955bdab50ea59068f1ab285da18035b7fd 0001-automake-add-install-dep-on-install-libLTLIBRARIES-t.patch
"
diff --git a/main/awall/APKBUILD b/main/awall/APKBUILD
index 013c1709b3..4358af12d0 100644
--- a/main/awall/APKBUILD
+++ b/main/awall/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>
# Maintainer: Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>
pkgname=awall
-pkgver=1.10.0
+pkgver=1.10.1
pkgrel=0
pkgdesc="Alpine Wall"
url="https://gitlab.alpinelinux.org/alpine/awall"
@@ -51,7 +51,7 @@ policies() {
}
sha512sums="
-ef846cf04221d0c6474992d1a31465693988afbdd18d02652566abe704b282674044b6c818d9c35fdc6aa456a5e04fdba00154969a716e20e935b9cd5027ec52 awall-v1.10.0.tar.bz2
+0105eda3429526e4c5af84617ecccdecb5044024b830adb005746981ca7924deacc13e211751fa8d57ac1eb6fd6aca2270348c8ee1806ceb459ef9a7acf2697e awall-v1.10.1.tar.bz2
e83ea3281c298092530e45fa5b62f6f85b9e5109b11e109799465ea832608294c7d9c4c3f5b0f321dfc0e82040daf3a17d066e9dea65cb0dbae2c453ea9e62cd awall-init
1cd4b7fa5fc6c9ac6667dff5cc00d96a3cc42aaccafe3c5562d3dcfd9f22ddec9cfe5a9339fee8001b67ccb8e8b81c9417f39a461e5052af9bf74a2753559bf7 setup-firewall
"
diff --git a/main/axel/APKBUILD b/main/axel/APKBUILD
index 811ffd998e..3f2ee25250 100644
--- a/main/axel/APKBUILD
+++ b/main/axel/APKBUILD
@@ -2,13 +2,13 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=axel
pkgver=2.17.10
-pkgrel=0
+pkgrel=2
pkgdesc="A multiple-connection concurrent downloader"
url="https://github.com/axel-download-accelerator/axel"
arch="all"
options="!check" # has no checks
license="GPL-2.0-or-later WITH OpenSSL-Exception"
-makedepends="openssl-dev"
+makedepends="openssl1.1-compat-dev"
subpackages="$pkgname-doc"
source="$url/releases/download/v$pkgver/axel-$pkgver.tar.xz"
diff --git a/main/bacula/APKBUILD b/main/bacula/APKBUILD
index 72d2d3232f..578120e2b6 100644
--- a/main/bacula/APKBUILD
+++ b/main/bacula/APKBUILD
@@ -2,12 +2,12 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=bacula
pkgver=9.6.7
-pkgrel=1
+pkgrel=2
pkgdesc="Enterprise ready, network based backup program"
url="https://www.bacula.org"
#arch="all"
license="AGPL-3.0-or-later WITH OpenSSL-Exception"
-makedepends="autoconf automake libtool mariadb-connector-c-dev ncurses-dev openssl-dev postgresql-dev
+makedepends="autoconf automake libtool mariadb-connector-c-dev ncurses-dev openssl1.1-compat-dev postgresql-dev
sqlite-dev zlib-dev lzo-dev acl-dev postgresql"
install="$pkgname.pre-install $pkgname.post-upgrade"
subpackages="$pkgname-doc $pkgname-mysql $pkgname-pgsql $pkgname-sqlite
diff --git a/main/bats/APKBUILD b/main/bats/APKBUILD
index 689c6a6c23..2920281f41 100644
--- a/main/bats/APKBUILD
+++ b/main/bats/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Jose-Luis Rivas <ghostbar@riseup.net>
pkgname=bats
-pkgver=1.3.0
+pkgver=1.4.1
pkgrel=0
pkgdesc="Bash Automated Testing System"
options="!check" # Test passes CI/locally, fails on builders
@@ -19,4 +19,6 @@ check() {
package() {
./install.sh "$pkgdir"/usr
}
-sha512sums="5d5bf4d4eee0bed5bcb2a8d7ddacdd12e221c04723a9bcc2be8e5679f5a9384b00439ed5da316386f3efdd7643bd06f1e56ba9f938dce1e69a81330939980451 bats-1.3.0.zip"
+sha512sums="
+c8d7cb2c088a8bfbe5fa639be6b5d0eeb89f273dea4bbc0a004e0f62f43222418b002c20f229be69b84f0e94bab5bf9a0d10d7bb1acde33a373fb79ab9ac4c83 bats-1.4.1.zip
+"
diff --git a/main/bctoolbox/APKBUILD b/main/bctoolbox/APKBUILD
index 3c1db7b577..7e64e51228 100644
--- a/main/bctoolbox/APKBUILD
+++ b/main/bctoolbox/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=bctoolbox
-pkgver=5.0.0
+pkgver=5.0.23
pkgrel=0
pkgdesc="Utilities library used by Belledonne Communications softwares like belle-sip, mediastreamer2 and linphone"
url="https://github.com/BelledonneCommunications/bctoolbox"
@@ -47,6 +47,6 @@ dev() {
}
sha512sums="
-347230e992cd543c01fa75e99ea45faef30edac51ec6f006ce5c6c795d322be0f4241afe88797407a7a9a10c0c0c2d343019eb8376327e84c3856840124452d1 bctoolbox-5.0.0.tar.gz
+efb5c4390e3ad0a602be8b2f2c53f3d4541075c09d6b5c4d812c22be7e4416c02229135b54ffb6411e931a379fb14ae7e91e50a70b75032e246e8e4457d62870 bctoolbox-5.0.23.tar.gz
466d2a7aa33952c8086c698030af0addc79373aa31104cbe6133d352682439ae5c30055ea4f162cc9b6b9fc54bf3dea0ddcff78e0042e7ce43833d82b9487116 cmake-bcunit-fix.patch
"
diff --git a/main/bind/APKBUILD b/main/bind/APKBUILD
index 86af5b3d2c..cb9b574c71 100644
--- a/main/bind/APKBUILD
+++ b/main/bind/APKBUILD
@@ -5,12 +5,12 @@
# Contributor: ungleich <alpinelinux@ungleich.ch>
# Maintainer:
pkgname=bind
-pkgver=9.16.19
+pkgver=9.16.20
_ver=${pkgver%_p*}
_p=${pkgver#*_p}
_major=${pkgver%%.*}
[ "$_p" != "$pkgver" ] && _ver="$_ver-P$_p"
-pkgrel=0
+pkgrel=3
pkgdesc="The ISC DNS server"
url="https://www.isc.org/"
arch="all"
@@ -34,7 +34,7 @@ makedepends="
libxml2-dev
linux-headers
openldap-dev
- openssl-dev
+ openssl1.1-compat-dev
perl
protobuf-c-dev
$_py3deps
@@ -64,9 +64,12 @@ source="
named.conf.recursive
127.zone
localhost.zone
+ bind-9.16.20-map-format-fix.patch
"
# secfixes:
+# 9.16.20-r0:
+# - CVE-2021-25218
# 9.16.15-r0:
# - CVE-2021-25214
# - CVE-2021-25215
@@ -278,7 +281,7 @@ _gpgfingerprints="
"
sha512sums="
-47a0867a34c73dd939f6e24ab63e1a9cc7ba3e4d42987dbf1be424afe320734587b09b26c3b3371861fe79e3ddc08a81a019bba0cadecf76e20f717103578dca bind-9.16.19.tar.xz
+bd4ffcc2589ca8f1ac228576ec11e86f317d5a78d7964a0a7ae70b2fa38831d5bd65c2e8c35d8190502de7139f85d8b080b3b8ee968811a8df78e5761781525d bind-9.16.20.tar.xz
2b32d1e7f62cd1e01bb4fdd92d15460bc14761b933d5acc463a91f5ecd4773d7477c757c5dd2738e8e433693592cf3f623ffc142241861c91848f01aa84640d6 bind.plugindir.patch
7167dccdb2833643dfdb92994373d2cc087e52ba23b51bd68bd322ff9aca6744f01fa9d8a4b9cd8c4ce471755a85c03ec956ec0d8a1d4fae02124ddbed6841f6 bind.so_bsdcompat.patch
53db80f7ee4902f42fb1d0bc959242bcb6f20d95256bda99ce2c206af8b4703c7f72bb26d026c633f70451b84a37c3946b210951e34dd5d6620b181cd0183de4 named.initd
@@ -287,4 +290,5 @@ d2f61d02d7829af51faf14fbe2bafe8bc90087e6b6697c6275a269ebbddcaa14a234fff5c41da793
3aba9763cfaf0880a89fd01202f41406b465547296ce91373eb999ea7719040bc1ac4e47b0de025a8060f693d3d88774a20d09a43fa7ac6aa43989b58b5ee8fe named.conf.recursive
eed9886717539399518e011ae5eae6335aed4fae019e1def088c5be26bdc896c99c07adf84ee61babafa31d31ff3b028263d1c88d2eee17ecf4c95a9d77d524c 127.zone
340e86472a2c2746fe585c0aa5f079d3a9b46e828c1f53d48026533a169b7f77ded7d0a13d291d6962607bb9481456e6fa69df1834603e7555332615fb998f0b localhost.zone
+d9224712ee2c6f6d0ff483ed253497548935fe35f45e5bdf26c9bd25c6234adde00727df7eb49fbfbfb34aad9d9fa0f112e900804794ad90a5cd8a64e9db61c6 bind-9.16.20-map-format-fix.patch
"
diff --git a/main/bind/bind-9.16.20-map-format-fix.patch b/main/bind/bind-9.16.20-map-format-fix.patch
new file mode 100644
index 0000000000..f6e3c9b378
--- /dev/null
+++ b/main/bind/bind-9.16.20-map-format-fix.patch
@@ -0,0 +1,8 @@
+--- a/lib/dns/mapapi
++++ b/lib/dns/mapapi
+@@ -13,4 +13,4 @@
+ # Whenever releasing a new major release of BIND9, set this value
+ # back to 1.0 when releasing the first alpha. Map files are *never*
+ # compatible across major releases.
+-MAPAPI=2.0
++MAPAPI=3.0
diff --git a/main/binutils/0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch b/main/binutils/0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
index 5de937f4fc..6e1fa7731c 100644
--- a/main/binutils/0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
+++ b/main/binutils/0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
@@ -1,39 +1,24 @@
-From b1faf99f3e546df2cd302bb1ad36a2078224fe8b Mon Sep 17 00:00:00 2001
+From bbf05b742fde518fb97c789b043fe0d3aaf549f0 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
-Date: Fri, 30 Oct 2020 16:59:48 -0600
+Date: Tue, 21 Sep 2021 14:53:13 +0000
Subject: [PATCH] Revert "PR25882, .gnu.attributes are not checked for shared
libraries"
+This revert is needed to avoid wrongly tagging objects with the incompatible
+IBM long double ABI, which is not supported by musl and will result in
+linking errors if used.
+
This reverts commit a8acd6eeb6dc2cc5460ece90f90ebe36b56b20ba.
---
- bfd/ChangeLog | 6 ------
- bfd/elf32-tic6x.c | 3 ---
- ld/ChangeLog | 6 ------
- ld/ldlang.c | 9 ++++-----
- 4 files changed, 4 insertions(+), 20 deletions(-)
+ bfd/elf32-tic6x.c | 3 ---
+ ld/ldlang.c | 10 ++++------
+ 2 files changed, 4 insertions(+), 9 deletions(-)
-diff --git a/bfd/ChangeLog b/bfd/ChangeLog
-index 9fac12538a..b5461494e8 100644
---- a/bfd/ChangeLog
-+++ b/bfd/ChangeLog
-@@ -1422,12 +1422,6 @@
- accessing root.u.def of symbols. Also check root.u.def.section
- is non-NULL. Reverse tests so as to make the logic positive.
-
--2020-05-01 Alan Modra <amodra@gmail.com>
--
-- PR 25882
-- * elf32-tic6x.c (elf32_tic6x_merge_attributes): Don't transfer
-- Tag_ABI_PIC or Tag_ABI_PID from dynamic objects to the output.
--
- 2020-05-01 Alan Modra <amodra@gmail.com>
-
- PR 25882
diff --git a/bfd/elf32-tic6x.c b/bfd/elf32-tic6x.c
-index b8b916bfd3..91bb6a10b1 100644
+index 5754f3cb860..3ad1d612749 100644
--- a/bfd/elf32-tic6x.c
+++ b/bfd/elf32-tic6x.c
-@@ -3748,9 +3748,6 @@ elf32_tic6x_merge_attributes (bfd *ibfd, struct bfd_link_info *info)
+@@ -3735,9 +3735,6 @@ elf32_tic6x_merge_attributes (bfd *ibfd, struct bfd_link_info *info)
case Tag_ABI_PIC:
case Tag_ABI_PID:
@@ -43,36 +28,20 @@ index b8b916bfd3..91bb6a10b1 100644
if (out_attr[i].i > in_attr[i].i)
out_attr[i].i = in_attr[i].i;
break;
-diff --git a/ld/ChangeLog b/ld/ChangeLog
-index 4eec7d2977..b93452f70c 100644
---- a/ld/ChangeLog
-+++ b/ld/ChangeLog
-@@ -1319,12 +1319,6 @@
- * testsuite/ld-aarch64/farcall-group.d: New test driver.
- * testsuite/ld-aarch64/aarch64-elf.exp: Run the new test.
-
--2020-05-01 Alan Modra <amodra@gmail.com>
--
-- PR 25882
-- * ldlang.c (lang_check): Call bfd_merge_private_bfd_data for
-- shared libraries.
--
- 2020-05-01 Alan Modra <amodra@gmail.com>
-
- * po/BLD-POTFILES.in: Regenerate.
diff --git a/ld/ldlang.c b/ld/ldlang.c
-index 9977195074..173d8ec349 100644
+index 37b64c89ee1..f13beaef9d9 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
-@@ -6972,12 +6972,11 @@ lang_check (void)
+@@ -7071,13 +7071,11 @@ lang_check (void)
bfd_printable_name (input_bfd), input_bfd,
bfd_printable_name (link_info.output_bfd));
}
-
- /* If the input bfd has no contents, it shouldn't set the
- private data of the output bfd. */
-- else if ((input_bfd->flags & DYNAMIC) != 0
-- || bfd_count_sections (input_bfd) != 0)
+- else if (!file->flags.just_syms
+- && ((input_bfd->flags & DYNAMIC) != 0
+- || bfd_count_sections (input_bfd) != 0))
+ else if (bfd_count_sections (input_bfd))
{
+ /* If the input bfd has no contents, it shouldn't set the
@@ -82,5 +51,5 @@ index 9977195074..173d8ec349 100644
/* If we aren't supposed to warn about mismatched input
--
-2.29.2
+2.33.0
diff --git a/main/binutils/APKBUILD b/main/binutils/APKBUILD
index 79c74bfe8b..fa65f83000 100644
--- a/main/binutils/APKBUILD
+++ b/main/binutils/APKBUILD
@@ -1,7 +1,8 @@
-# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
pkgname=binutils
-pkgver=2.35.2
-pkgrel=2
+pkgver=2.37
+pkgrel=3
pkgdesc="Tools necessary to build programs"
url="https://www.gnu.org/software/binutils/"
makedepends_build="bison flex texinfo"
@@ -15,8 +16,9 @@ source="https://ftp.gnu.org/gnu/binutils/binutils-$pkgver.tar.xz
gold-mips.patch
ld-bfd-mips.patch
0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
- CVE-2021-3487.patch
binutils-mips-disable-assert.patch
+ bfd-close-file-desriptor-if-there-is-no-archive-fd.patch
+ defang-no-split.patch
"
builddir="$srcdir/$pkgname-$pkgver"
@@ -46,10 +48,12 @@ build() {
local _cross_configure="--enable-install-libiberty --enable-shared"
local _arch_configure=""
local _gold_configure="--disable-gold"
+ local _plugin_configure="--enable-plugins"
if [ "$CHOST" != "$CTARGET" ]; then
_sysroot="$CBUILDROOT"
_cross_configure="--disable-install-libiberty"
+ _plugin_configure="--disable-plugins"
fi
if [ "$CHOST" = "$CBUILD" ] && [ "$CBUILD" = "$CTARGET" ] && [ "$CTARGET_ARCH" != "riscv64" ]; then
@@ -82,7 +86,7 @@ build() {
--enable-ld=default \
$_gold_configure \
--enable-64-bit-bfd \
- --enable-plugins \
+ $_plugin_configure \
--enable-relro \
--enable-deterministic-archives \
$_cross_configure \
@@ -107,6 +111,7 @@ package() {
# with the native tools, or other cross tools
rm -r "${pkgdir:?}"/usr/share
rm -f "$pkgdir"/usr/lib/libiberty.a
+ rm -r "${pkgdir:?}"/usr/lib/bfd-plugins
fi
}
@@ -129,11 +134,12 @@ gold() {
}
sha512sums="
-9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348 binutils-2.35.2.tar.xz
+5c11aeef6935860a6819ed3a3c93371f052e52b4bdc5033da36037c1544d013b7f12cb8d561ec954fe7469a68f1b66f1a3cd53d5a3af7293635a90d69edd15e7 binutils-2.37.tar.xz
ecee33b0e435aa704af1c334e560f201638ff79e199aa11ed78a72f7c9b46f85fbb227af5748e735fd681d1965fcc42ac81b0c8824e540430ce0c706c81e8b49 binutils-ld-fix-static-linking.patch
f55cf2e0bf82f97583a1abe10710e4013ecf7d64f1da2ef8659a44a06d0dd8beaf58dab98a183488ea137f03e32d62efc878d95f018f836f8cec870bc448556f gold-mips.patch
314d2ef9071c89940aa6c8118e8a1e2f191a5d0a4bf596da1ad9cc84f884d8bc7dea8bd7b9fc3f8f1bddd3fd41c6eb017e1e804044b3bf084df1ed9e6e095e2d ld-bfd-mips.patch
-642c617db6c6e491f78f053d60f3aa369bad7bf8c1bc7ce267de6cf8fddf6c0d4cf63ce8c8f6e2f225dedbce7cb930d8e87e168fd8f72ca0837c77266ee2b5f8 0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
-b08384ed124a74ad3a424db370c107230f09a54378502ca4385deb738f7cf799857f2af0db52709c7eeab8fa6c0a3d972f891396cce1e2834a21f67682fc4355 CVE-2021-3487.patch
+70ec22bd72ef6dddecfd970613387dd4a8cdc8730dd3cbf03d5a0c3a7c4d839383167bb06dad21bf7c235329fd44b5dc4aefe762f68544f17155cf002bf1be4a 0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
609cd90d8b334eb309f586b17b9d335a08d3dbb6def7c3eb5c010028fcb681674031e5b9d853aa7a39a50304356a86afc184b85562b3f228f8197f4d29395c8f binutils-mips-disable-assert.patch
+10a0074583d2cc4598710c7e434ba7088da074b105f4f5e951fc61af7150ad62adf60a7c98f6fd13b1771f169e45a5a1ef618240c6893d3f0f3d93fd768a03c6 bfd-close-file-desriptor-if-there-is-no-archive-fd.patch
+4652f092c9376f0cb7fd6c72cb37ff7c15c1c6e3408fac79329b7f41a7925c98eb35989a9a040682130988a36401901d6d95afa44f0ce50caa85ee478db6bf03 defang-no-split.patch
"
diff --git a/main/binutils/CVE-2021-3487.patch b/main/binutils/CVE-2021-3487.patch
deleted file mode 100644
index db99ae73d9..0000000000
--- a/main/binutils/CVE-2021-3487.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-From 647cebce12a6b0a26960220caff96ff38978cf24 Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Thu, 26 Nov 2020 17:08:33 +0000
-Subject: [PATCH] Prevent a memory allocation failure when parsing corrupt
- DWARF debug sections.
-
- PR 26946
- * dwarf2.c (read_section): Check for debug sections with excessive
- sizes.
-
-diff --git a/bfd/dwarf2.c b/bfd/dwarf2.c
-index 977bf43a6a1..8bbfc81d3e7 100644
---- a/bfd/dwarf2.c
-+++ b/bfd/dwarf2.c
-@@ -531,22 +531,24 @@ read_section (bfd * abfd,
- bfd_byte ** section_buffer,
- bfd_size_type * section_size)
- {
-- asection *msec;
- const char *section_name = sec->uncompressed_name;
- bfd_byte *contents = *section_buffer;
-- bfd_size_type amt;
-
- /* The section may have already been read. */
- if (contents == NULL)
- {
-+ bfd_size_type amt;
-+ asection *msec;
-+ ufile_ptr filesize;
-+
- msec = bfd_get_section_by_name (abfd, section_name);
-- if (! msec)
-+ if (msec == NULL)
- {
- section_name = sec->compressed_name;
- if (section_name != NULL)
- msec = bfd_get_section_by_name (abfd, section_name);
- }
-- if (! msec)
-+ if (msec == NULL)
- {
- _bfd_error_handler (_("DWARF error: can't find %s section."),
- sec->uncompressed_name);
-@@ -554,12 +556,23 @@ read_section (bfd * abfd,
- return FALSE;
- }
-
-- *section_size = msec->rawsize ? msec->rawsize : msec->size;
-+ amt = bfd_get_section_limit_octets (abfd, msec);
-+ filesize = bfd_get_file_size (abfd);
-+ if (amt >= filesize)
-+ {
-+ /* PR 26946 */
-+ _bfd_error_handler (_("DWARF error: section %s is larger than its filesize! (0x%lx vs 0x%lx)"),
-+ section_name, (long) amt, (long) filesize);
-+ bfd_set_error (bfd_error_bad_value);
-+ return FALSE;
-+ }
-+ *section_size = amt;
- /* Paranoia - alloc one extra so that we can make sure a string
- section is NUL terminated. */
-- amt = *section_size + 1;
-+ amt += 1;
- if (amt == 0)
- {
-+ /* Paranoia - this should never happen. */
- bfd_set_error (bfd_error_no_memory);
- return FALSE;
- }
---
-2.27.0
-
diff --git a/main/binutils/bfd-close-file-desriptor-if-there-is-no-archive-fd.patch b/main/binutils/bfd-close-file-desriptor-if-there-is-no-archive-fd.patch
new file mode 100644
index 0000000000..357d0f9701
--- /dev/null
+++ b/main/binutils/bfd-close-file-desriptor-if-there-is-no-archive-fd.patch
@@ -0,0 +1,234 @@
+Upstream: yes
+URL: https://sourceware.org/bugzilla/show_bug.cgi?id=28138
+From 1c611b40e6bfc8029bff7696814330b5bc0ee5c0 Mon Sep 17 00:00:00 2001
+From: "H.J. Lu" <hjl.tools@gmail.com>
+Date: Mon, 26 Jul 2021 05:59:55 -0700
+Subject: [PATCH] bfd: Close the file descriptor if there is no archive fd
+
+Close the file descriptor if there is no archive plugin file descriptor
+to avoid running out of file descriptors on thin archives with many
+archive members.
+
+bfd/
+
+ PR ld/28138
+ * plugin.c (bfd_plugin_close_file_descriptor): Close the file
+ descriptor there is no archive plugin file descriptor.
+
+ld/
+
+ PR ld/28138
+ * testsuite/ld-plugin/lto.exp: Run tmpdir/pr28138 only for
+ native build.
+
+ PR ld/28138
+ * testsuite/ld-plugin/lto.exp: Run ld/28138 tests.
+ * testsuite/ld-plugin/pr28138.c: New file.
+ * testsuite/ld-plugin/pr28138-1.c: Likewise.
+ * testsuite/ld-plugin/pr28138-2.c: Likewise.
+ * testsuite/ld-plugin/pr28138-3.c: Likewise.
+ * testsuite/ld-plugin/pr28138-4.c: Likewise.
+ * testsuite/ld-plugin/pr28138-5.c: Likewise.
+ * testsuite/ld-plugin/pr28138-6.c: Likewise.
+ * testsuite/ld-plugin/pr28138-7.c: Likewise.
+
+(cherry picked from commit 5a98fb7513b559e20dfebdbaa2a471afda3b4742)
+(cherry picked from commit 7dc37e1e1209c80e0bab784df6b6bac335e836f2)
+---
+ bfd/plugin.c | 8 +++++++
+ ld/testsuite/ld-plugin/lto.exp | 34 ++++++++++++++++++++++++++++++
+ ld/testsuite/ld-plugin/pr28138-1.c | 6 ++++++
+ ld/testsuite/ld-plugin/pr28138-2.c | 6 ++++++
+ ld/testsuite/ld-plugin/pr28138-3.c | 6 ++++++
+ ld/testsuite/ld-plugin/pr28138-4.c | 6 ++++++
+ ld/testsuite/ld-plugin/pr28138-5.c | 6 ++++++
+ ld/testsuite/ld-plugin/pr28138-6.c | 6 ++++++
+ ld/testsuite/ld-plugin/pr28138-7.c | 6 ++++++
+ ld/testsuite/ld-plugin/pr28138.c | 20 ++++++++++++++++++
+ 10 files changed, 104 insertions(+)
+ create mode 100644 ld/testsuite/ld-plugin/pr28138-1.c
+ create mode 100644 ld/testsuite/ld-plugin/pr28138-2.c
+ create mode 100644 ld/testsuite/ld-plugin/pr28138-3.c
+ create mode 100644 ld/testsuite/ld-plugin/pr28138-4.c
+ create mode 100644 ld/testsuite/ld-plugin/pr28138-5.c
+ create mode 100644 ld/testsuite/ld-plugin/pr28138-6.c
+ create mode 100644 ld/testsuite/ld-plugin/pr28138-7.c
+ create mode 100644 ld/testsuite/ld-plugin/pr28138.c
+
+diff --git a/bfd/plugin.c b/bfd/plugin.c
+index 6cfa2b66470..3bab8febe88 100644
+--- a/bfd/plugin.c
++++ b/bfd/plugin.c
+@@ -291,6 +291,14 @@ bfd_plugin_close_file_descriptor (bfd *abfd, int fd)
+ && !bfd_is_thin_archive (abfd->my_archive))
+ abfd = abfd->my_archive;
+
++ /* Close the file descriptor if there is no archive plugin file
++ descriptor. */
++ if (abfd->archive_plugin_fd == -1)
++ {
++ close (fd);
++ return;
++ }
++
+ abfd->archive_plugin_fd_open_count--;
+ /* Dup the archive plugin file descriptor for later use, which
+ will be closed by _bfd_archive_close_and_cleanup. */
+diff --git a/ld/testsuite/ld-plugin/lto.exp b/ld/testsuite/ld-plugin/lto.exp
+index def69e43ab3..999d911ce6a 100644
+--- a/ld/testsuite/ld-plugin/lto.exp
++++ b/ld/testsuite/ld-plugin/lto.exp
+@@ -687,6 +687,40 @@ if { [is_elf_format] && [check_lto_shared_available] } {
+ }
+ }
+
++run_cc_link_tests [list \
++ [list \
++ "Build pr28138.a" \
++ "-T" "" \
++ {pr28138-1.c pr28138-2.c pr28138-3.c pr28138-4.c pr28138-5.c \
++ pr28138-6.c pr28138-7.c} {} "pr28138.a" \
++ ] \
++ [list \
++ "Build pr28138.o" \
++ "" "" \
++ {pr28138.c} {} \
++ ] \
++]
++
++set exec_output [run_host_cmd "sh" \
++ "-c \"ulimit -n 20; \
++ $CC -Btmpdir/ld -o tmpdir/pr28138 \
++ tmpdir/pr28138.o tmpdir/pr28138.a\""]
++set exec_output [prune_warnings $exec_output]
++if [string match "" $exec_output] then {
++ if { [isnative] } {
++ set exec_output [run_host_cmd "tmpdir/pr28138" ""]
++ if [string match "PASS" $exec_output] then {
++ pass "PR ld/28138"
++ } else {
++ fail "PR ld/28138"
++ }
++ } else {
++ pass "PR ld/28138"
++ }
++} else {
++ fail "PR ld/28138"
++}
++
+ set testname "Build liblto-11.a"
+ remote_file host delete "tmpdir/liblto-11.a"
+ set catch_output [run_host_cmd "$ar" "rc $plug_opt tmpdir/liblto-11.a tmpdir/lto-11a.o tmpdir/lto-11b.o tmpdir/lto-11c.o"]
+diff --git a/ld/testsuite/ld-plugin/pr28138-1.c b/ld/testsuite/ld-plugin/pr28138-1.c
+new file mode 100644
+index 00000000000..51d119e1642
+--- /dev/null
++++ b/ld/testsuite/ld-plugin/pr28138-1.c
+@@ -0,0 +1,6 @@
++extern int a0(void);
++int
++a1(void)
++{
++ return 1 + a0();
++}
+diff --git a/ld/testsuite/ld-plugin/pr28138-2.c b/ld/testsuite/ld-plugin/pr28138-2.c
+new file mode 100644
+index 00000000000..1120cd797e9
+--- /dev/null
++++ b/ld/testsuite/ld-plugin/pr28138-2.c
+@@ -0,0 +1,6 @@
++extern int a1(void);
++int
++a2(void)
++{
++ return 1 + a1();
++}
+diff --git a/ld/testsuite/ld-plugin/pr28138-3.c b/ld/testsuite/ld-plugin/pr28138-3.c
+new file mode 100644
+index 00000000000..ec464947ee6
+--- /dev/null
++++ b/ld/testsuite/ld-plugin/pr28138-3.c
+@@ -0,0 +1,6 @@
++extern int a2(void);
++int
++a3(void)
++{
++ return 1 + a2();
++}
+diff --git a/ld/testsuite/ld-plugin/pr28138-4.c b/ld/testsuite/ld-plugin/pr28138-4.c
+new file mode 100644
+index 00000000000..475701b2c5c
+--- /dev/null
++++ b/ld/testsuite/ld-plugin/pr28138-4.c
+@@ -0,0 +1,6 @@
++extern int a3(void);
++int
++a4(void)
++{
++ return 1 + a3();
++}
+diff --git a/ld/testsuite/ld-plugin/pr28138-5.c b/ld/testsuite/ld-plugin/pr28138-5.c
+new file mode 100644
+index 00000000000..e24f86c363e
+--- /dev/null
++++ b/ld/testsuite/ld-plugin/pr28138-5.c
+@@ -0,0 +1,6 @@
++extern int a4(void);
++int
++a5(void)
++{
++ return 1 + a4();
++}
+diff --git a/ld/testsuite/ld-plugin/pr28138-6.c b/ld/testsuite/ld-plugin/pr28138-6.c
+new file mode 100644
+index 00000000000..b5b938bdb21
+--- /dev/null
++++ b/ld/testsuite/ld-plugin/pr28138-6.c
+@@ -0,0 +1,6 @@
++extern int a5(void);
++int
++a6(void)
++{
++ return 1 + a5();
++}
+diff --git a/ld/testsuite/ld-plugin/pr28138-7.c b/ld/testsuite/ld-plugin/pr28138-7.c
+new file mode 100644
+index 00000000000..4ef75bf0f0c
+--- /dev/null
++++ b/ld/testsuite/ld-plugin/pr28138-7.c
+@@ -0,0 +1,6 @@
++extern int a6(void);
++int
++a7(void)
++{
++ return 1 + a6();
++}
+diff --git a/ld/testsuite/ld-plugin/pr28138.c b/ld/testsuite/ld-plugin/pr28138.c
+new file mode 100644
+index 00000000000..68252c9f382
+--- /dev/null
++++ b/ld/testsuite/ld-plugin/pr28138.c
+@@ -0,0 +1,20 @@
++#include <stdio.h>
++
++extern int a7(void);
++
++int
++a0(void)
++{
++ return 0;
++}
++
++int
++main()
++{
++ if (a7() == 7)
++ {
++ printf ("PASS\n");
++ return 0;
++ }
++ return 1;
++}
+--
+2.27.0
+
diff --git a/main/binutils/defang-no-split.patch b/main/binutils/defang-no-split.patch
new file mode 100644
index 0000000000..cea68edc5d
--- /dev/null
+++ b/main/binutils/defang-no-split.patch
@@ -0,0 +1,38 @@
+From 2dad02b6d46eef438cbd14d8511487b056628a38 Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <siarheit@google.com>
+Date: Mon, 26 Jul 2021 22:51:18 +0100
+Subject: [PATCH 1/1] texi2pod.pl: add no-op --no-split option support
+ [PR28144]
+
+Change 2faf902da ("generate single html manual page by default")
+added use of --no-split option to makeinfo. binutils reuses
+makeinfo options for texi2pod.pl wrapper. Unsupported option
+led to silent manpage truncation.
+
+The change adds no-op option support.
+
+etc/
+ PR 28144
+ * texi2pod.pl: Handle no-op --no-split option.
+
+(cherry picked from commit 96a7037cd8573cf065aa6b12baca68696f96d9ca)
+---
+ etc/texi2pod.pl | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/etc/texi2pod.pl b/etc/texi2pod.pl
+index 11f70d156be..dcf2b437640 100644
+--- a/etc/texi2pod.pl
++++ b/etc/texi2pod.pl
+@@ -59,6 +59,8 @@ while ($_ = shift) {
+ $flag = shift;
+ }
+ push (@ipath, $flag);
++ } elsif (/^--no-split$/) {
++ # ignore option for makeinfo compatibility
+ } elsif (/^-/) {
+ usage();
+ } else {
+--
+2.27.0
+
diff --git a/main/bluez/APKBUILD b/main/bluez/APKBUILD
index 7841207942..e94262ac2d 100644
--- a/main/bluez/APKBUILD
+++ b/main/bluez/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=bluez
pkgver=5.60
-pkgrel=0
+pkgrel=3
pkgdesc="Tools for the Bluetooth protocol stack"
url="http://www.bluez.org/"
arch="all"
@@ -184,11 +184,11 @@ openrc() {
sha512sums="
069e054360b4ab72f1daa033572f0fd822fb0f47e52069f4f3dcdfecfa312b9a5366cc04967e639aef39b980c0e1007389f1ee757e7c3bae43a5e66f8ed21a6b bluez-5.60.tar.xz
-fc43c78ed248ea412529eed5ae8bb47bacca9bf5b3b10de121ddd4e792c85893561a88be4aa2c6318106e5d2146a721445152d44fa60ca257ca0b4eb87318c1e bluetooth.initd
+e1d64fac673cceb657684b1bc5c36ff6d05f7cc5832d940863129adacd5b8ade1315b14df039a61f061950ac99e155266530efe2d2d35ea3c145b0469698a726 bluetooth.initd
8d7b7c8938a2316ce0a855e9bdf1ef8fcdf33d23f4011df828270a088b88b140a19c432e83fef15355d0829e3c86be05b63e7718fef88563254ea239b8dc12ac rfcomm.initd
a70aa0dbbabe7e29ee81540a6f98bf191a850da55a28f678975635caf34b363cf4d461a801b3484120ee28fdd21240bd456a4f5d706262700924bd2e9a0972fb rfcomm.confd
d6766a4992ed4141569d6d82a802a771a5cb4c08873bfb0fdbedeea4d738bf9b56d9e0452ec19b7635418b1af4ab9b1735692043d629cbed3ce0eda6f51e1c6f org.bluez.obex.service
-78e4c1e1f3b3b31a8622f92bacb6cd61b7795c2371457cf6baa74c04d38683780a0ee9ad0687a9af74b1af85a4d330f183d01d8768e5899adbaa7644956b58a3 mpris-proxy.desktop
+72f9bc6cafe910ed7d105d4f3a537b16cd897622b2391ea545e6a302fcce2ed79e490e2841c6290aa1290489870a67638d71b0de5bc57f9d650e2248d9e4f0a4 mpris-proxy.desktop
73202915fda01d420b2864da77b1c25af5a55c815e9be6546400a0940bfb6097d83322790bc22a80ec0fcd557144fdd1877e243a79285a7f040ff96ba3600b94 001-bcm43xx-Add-bcm43xx-3wire-variant.patch
d5fd1c962bd846eaa6fff879bab85f753eb367d514f82d133b5d3242e1da989af5eddd942c60a87d5b67783e060f91bfa0f74fb1e8e6699cdee6e5bbe6a431ea 002-bcm43xx-The-UART-speed-must-be-reset-after-the-firmw.patch
784e9644c8de4e2693e2eeed988a245608b8cb14e1fc0dff8795c60c527b2e8d0c87862cfbfd6b850b47ae80cdf993a5ed3f477078ea1068fd7374899c7a1a77 003-Increase-firmware-load-timeout-to-30s.patch
diff --git a/main/bluez/bluetooth.initd b/main/bluez/bluetooth.initd
index ee40153ec8..3e5ec982f8 100644
--- a/main/bluez/bluetooth.initd
+++ b/main/bluez/bluetooth.initd
@@ -7,7 +7,7 @@ start_stop_daemon_args="--background --make-pidfile"
depend() {
- after coldplug
+ after coldplug udev-postmount
need dbus localmount hostname
}
diff --git a/main/bluez/mpris-proxy.desktop b/main/bluez/mpris-proxy.desktop
index 42e637b9bb..4995eaa431 100644
--- a/main/bluez/mpris-proxy.desktop
+++ b/main/bluez/mpris-proxy.desktop
@@ -5,5 +5,4 @@ Comment=Start mpris-proxy in daemon mode
Exec=/usr/bin/mpris-proxy
TryExec=/usr/bin/mpris-proxy
Terminal=false
-X-GNOME-Autostart-Phase=Panel
X-KDE-autostart-phase=2
diff --git a/main/boost1.75/boost-context-mips-softfloat.patch b/main/boost1.75/boost-context-mips-softfloat.patch
deleted file mode 100644
index 38e2b52b09..0000000000
--- a/main/boost1.75/boost-context-mips-softfloat.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-diff -urN boost_1_72_0.orig/libs/context/src/asm/jump_mips64_n64_elf_gas.S boost_1_72_0/libs/context/src/asm/jump_mips64_n64_elf_gas.S
---- boost_1_72_0.orig/libs/context/src/asm/jump_mips64_n64_elf_gas.S 2021-01-15 02:29:42.053471423 -0700
-+++ boost_1_72_0/libs/context/src/asm/jump_mips64_n64_elf_gas.S 2021-01-15 02:31:15.297335652 -0700
-@@ -67,7 +67,7 @@
- sd $ra, 144($sp) # save RA
- sd $ra, 152($sp) # save RA as PC
-
--
-+#ifdef __mips_hard_float
- s.d $f24, 0($sp) # save F24
- s.d $f25, 8($sp) # save F25
- s.d $f26, 16($sp) # save F26
-@@ -76,6 +76,7 @@
- s.d $f29, 40($sp) # save F29
- s.d $f30, 48($sp) # save F30
- s.d $f31, 56($sp) # save F31
-+#endif
-
- # store SP (pointing to old context-data) in v0 as return
- move $v0, $sp
-@@ -83,6 +84,7 @@
- # get SP (pointing to new context-data) from a0 param
- move $sp, $a0
-
-+#ifdef __mips_hard_float
- l.d $f24, 0($sp) # restore F24
- l.d $f25, 8($sp) # restore F25
- l.d $f26, 16($sp) # restore F26
-@@ -91,6 +93,7 @@
- l.d $f29, 40($sp) # restore F29
- l.d $f30, 48($sp) # restore F30
- l.d $f31, 56($sp) # restore F31
-+#endif
-
- ld $s0, 64($sp) # restore S0
- ld $s1, 72($sp) # restore S1
-diff -urN boost_1_72_0.orig/libs/context/src/asm/ontop_mips64_n64_elf_gas.S boost_1_72_0/libs/context/src/asm/ontop_mips64_n64_elf_gas.S
---- boost_1_72_0.orig/libs/context/src/asm/ontop_mips64_n64_elf_gas.S 2021-01-15 02:29:42.056804776 -0700
-+++ boost_1_72_0/libs/context/src/asm/ontop_mips64_n64_elf_gas.S 2021-01-15 02:31:48.294188377 -0700
-@@ -67,7 +67,7 @@
- sd $ra, 144($sp) # save RA
- sd $ra, 152($sp) # save RA as PC
-
--
-+#ifdef __mips_hard_float
- s.d $f24, 0($sp) # save F24
- s.d $f25, 8($sp) # save F25
- s.d $f26, 16($sp) # save F26
-@@ -76,6 +76,7 @@
- s.d $f29, 40($sp) # save F29
- s.d $f30, 48($sp) # save F30
- s.d $f31, 56($sp) # save F31
-+#endif
-
- # store SP (pointing to context-data) in t0
- move $t0, $sp
-@@ -83,6 +84,7 @@
- # restore SP (pointing to context-data) from a0
- move $sp, $a0
-
-+#ifdef __mips_hard_float
- l.d $f24, 0($sp) # restore F24
- l.d $f25, 8($sp) # restore F25
- l.d $f26, 16($sp) # restore F26
-@@ -91,6 +93,7 @@
- l.d $f29, 40($sp) # restore F29
- l.d $f30, 48($sp) # restore F30
- l.d $f31, 56($sp) # restore F31
-+#endif
-
- ld $s0, 64($sp) # restore S0
- ld $s1, 72($sp) # restore S1
diff --git a/main/boost1.75/build-undefine-statx-syscall.patch b/main/boost1.75/build-undefine-statx-syscall.patch
deleted file mode 100644
index 4b984f0b34..0000000000
--- a/main/boost1.75/build-undefine-statx-syscall.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Description: The way the statx function is defined is broken, and does not fall
-back in case the syscall is not present, which is the case for mips64, which
-runs Linux 4.9.
-Upstream: rejected
-URL: https://github.com/boostorg/filesystem/issues/173
-diff --git a/libs/filesystem/build/Jamfile.v2 b/libs/filesystem/build/Jamfile.v2
-index 132641a32..76547eb92 100644
---- a/libs/filesystem/build/Jamfile.v2
-+++ b/libs/filesystem/build/Jamfile.v2
-@@ -54,7 +54,6 @@ project boost/filesystem
- [ check-target-builds ../config//has_stat_st_birthtimensec "has stat::st_birthtimensec" : <define>BOOST_FILESYSTEM_HAS_STAT_ST_BIRTHTIMENSEC ]
- [ check-target-builds ../config//has_stat_st_birthtimespec "has stat::st_birthtimespec" : <define>BOOST_FILESYSTEM_HAS_STAT_ST_BIRTHTIMESPEC ]
- [ check-target-builds ../config//has_statx "has statx" : <define>BOOST_FILESYSTEM_HAS_STATX ]
-- [ check-target-builds ../config//has_statx_syscall "has statx syscall" : <define>BOOST_FILESYSTEM_HAS_STATX_SYSCALL ]
- <conditional>@select-windows-crypto-api
- : source-location ../src
- : usage-requirements # pass these requirement to dependents (i.e. users)
diff --git a/main/boost1.76/APKBUILD b/main/boost1.76/APKBUILD
index 42d42f2a81..63cae391b1 100644
--- a/main/boost1.76/APKBUILD
+++ b/main/boost1.76/APKBUILD
@@ -2,7 +2,7 @@
pkgname=boost1.76
pkgver=1.76.0
_pkgver="${pkgver//./_}"
-pkgrel=0
+pkgrel=2
pkgdesc="Free peer-reviewed portable C++ source libraries"
url="https://www.boost.org/"
arch="all"
@@ -66,11 +66,6 @@ for _lib in $_libs; do
done; unset -v _lib
subpackages="$subpackages $pkgname-libs"
-# Claim the unversioned name, this must be removed once we switch our
-# boost to a new version
-provides="boost=$pkgver-r$pkgrel"
-replaces="boost"
-
_set_options() {
[ -n "$PY3_VERSION" ] || PY3_VERSION="$(_pyversion python3)"
@@ -156,11 +151,6 @@ static() {
pkgdesc="Boost static libraries"
depends="$depends_static"
- # Claim the unversioned name, this must be removed once we switch our
- # boost to a new version
- provides="boost-static=$pkgver-r$pkgrel"
- replaces="boost-static"
-
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/lib*.a "$subpkgdir"/usr/lib/
}
@@ -170,11 +160,6 @@ _boostlib() {
pkgdesc="Boost $name shared library"
depends="$depends__boostlib"
- # Claim the unversioned name, this must be removed once we switch our
- # boost to a new version
- provides="boost-$name=$pkgver-r$pkgrel"
- replaces="boost-$name"
-
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libboost_$name*.so.[0-9]* "$subpkgdir"/usr/lib/
}
@@ -182,11 +167,6 @@ _boostlib() {
libs() {
default_libs
- # Claim the unversioned name, this must be removed once we switch our
- # boost to a new version
- provides="boost-libs=$pkgver-r$pkgrel"
- replaces="boost-libs"
-
pkgdesc="Boost shared libraries"
depends="$depends_libs"
local _pkg; for _pkg in $origsubpackages; do
@@ -205,15 +185,6 @@ _dev() {
depends="$pkgname-dev=$pkgver-r$pkgrel"
}
-doc() {
- # Claim the unversioned name, this must be removed once we switch our
- # boost to a new version
- provides="boost-doc=$pkgver-r$pkgrel"
- replaces="boost-doc"
-
- default_doc
-}
-
_pyversion() {
"$1" -c 'import sys; print("%i.%i" % (sys.version_info.major, sys.version_info.minor))'
}
diff --git a/main/boost1.75/0001-revert-cease-dependence-on-range.patch b/main/boost1.77/0001-revert-cease-dependence-on-range.patch
index a6002074ab..a6002074ab 100644
--- a/main/boost1.75/0001-revert-cease-dependence-on-range.patch
+++ b/main/boost1.77/0001-revert-cease-dependence-on-range.patch
diff --git a/main/boost1.75/APKBUILD b/main/boost1.77/APKBUILD
index 92da12900c..3f11dede9e 100644
--- a/main/boost1.75/APKBUILD
+++ b/main/boost1.77/APKBUILD
@@ -1,12 +1,12 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
-pkgname=boost1.75
-pkgver=1.75.0
+pkgname=boost1.77
+pkgver=1.77.0
_pkgver="${pkgver//./_}"
-pkgrel=8
+pkgrel=1
pkgdesc="Free peer-reviewed portable C++ source libraries"
url="https://www.boost.org/"
arch="all"
-license="custom"
+license="BSL-1.0"
depends="$pkgname-libs"
depends_dev="$pkgname linux-headers bzip2-dev icu-dev xz-dev zlib-dev"
makedepends="$depends_dev python3-dev>=3.8 flex bison"
@@ -14,13 +14,12 @@ subpackages="
$pkgname-static
$pkgname-dev
$pkgname-doc
+ boost-dev:_dev
"
source="https://boostorg.jfrog.io/artifactory/main/release/$pkgver/source/boost_$_pkgver.tar.bz2
boost-1.57.0-python-abi_letters.patch
boost-1.57.0-python-libpython_dep.patch
0001-revert-cease-dependence-on-range.patch
- boost-context-mips-softfloat.patch
- build-undefine-statx-syscall.patch
"
builddir="$srcdir/boost_$_pkgver"
@@ -66,6 +65,11 @@ for _lib in $_libs; do
done; unset -v _lib
subpackages="$subpackages $pkgname-libs"
+# Claim the unversioned name, this must be removed once we switch our
+# boost to a new version
+provides="boost=$pkgver-r$pkgrel"
+replaces="boost"
+
_set_options() {
[ -n "$PY3_VERSION" ] || PY3_VERSION="$(_pyversion python3)"
@@ -151,6 +155,11 @@ static() {
pkgdesc="Boost static libraries"
depends="$depends_static"
+ # Claim the unversioned name, this must be removed once we switch our
+ # boost to a new version
+ provides="boost-static=$pkgver-r$pkgrel"
+ replaces="boost-static"
+
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/lib*.a "$subpkgdir"/usr/lib/
}
@@ -160,6 +169,11 @@ _boostlib() {
pkgdesc="Boost $name shared library"
depends="$depends__boostlib"
+ # Claim the unversioned name, this must be removed once we switch our
+ # boost to a new version
+ provides="boost-$name=$pkgver-r$pkgrel"
+ replaces="boost-$name"
+
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libboost_$name*.so.[0-9]* "$subpkgdir"/usr/lib/
}
@@ -167,6 +181,11 @@ _boostlib() {
libs() {
default_libs
+ # Claim the unversioned name, this must be removed once we switch our
+ # boost to a new version
+ provides="boost-libs=$pkgver-r$pkgrel"
+ replaces="boost-libs"
+
pkgdesc="Boost shared libraries"
depends="$depends_libs"
local _pkg; for _pkg in $origsubpackages; do
@@ -179,15 +198,28 @@ libs() {
rmdir "$pkgdir"/usr/lib >/dev/null 2>&1 || :
}
+_dev() {
+ # This makes boost-dev be a metapackage that depends on boostX.Y-dev
+ mkdir -p "$subpkgdir"
+ depends="$pkgname-dev=$pkgver-r$pkgrel"
+}
+
+doc() {
+ # Claim the unversioned name, this must be removed once we switch our
+ # boost to a new version
+ provides="boost-doc=$pkgver-r$pkgrel"
+ replaces="boost-doc"
+
+ default_doc
+}
+
_pyversion() {
"$1" -c 'import sys; print("%i.%i" % (sys.version_info.major, sys.version_info.minor))'
}
sha512sums="
-d86f060245e98dca5c7f3f831c98ea9ccbfa8310f20830dd913d9d4c939fbe7cb94accd35f1128e7c4faf6c27adb6f4bb54e5477a6bde983dfc7aa33c4eed03a boost_1_75_0.tar.bz2
+39b45c9b60bc5a2a4c669a4463d1272c1e093376b2fb374d7f20a84ea10a3e23bb04b335a735a83a04575731f874d9bff77e89acd947524b3fbbae1b26ae1f2f boost_1_77_0.tar.bz2
d96d4d37394a31764ed817d0bc4a99cffa68a75ff1ecfd4417b9e1e5ae2c31a96ed24f948c6f2758ffdac01328d2402c4cf0d33a37107e4f5f721e636daebd66 boost-1.57.0-python-abi_letters.patch
132c4b62815d605c2d3c9038427fa4f422612a33711d47b2862f2311516af8a371d6b75bf078a7bffe20be863f8d21fb9fe74dc1a1bac3a10d061e9768ec3e02 boost-1.57.0-python-libpython_dep.patch
9b53d2fe2dddd592e43db03c26fadd6c07d4c45a980ae4c775b7a914346a3914f6e0c3ef42dad5e2ea4568afb86c9967e09444ff609cfba1e1d39f4980b22ad6 0001-revert-cease-dependence-on-range.patch
-1ace57c256017a99f84cdd32fedca0ade12b1666edf3c8e2465e6f01a95ee978b9eea010917787997d81ad7832f06dd25ff392d6a83cb12398e546d5b9eceadd boost-context-mips-softfloat.patch
-debb898a9d2295a4480a32bec69a77c6e8d5dc094b0be39df1f1afc3a0f610fe916c59be1304bc904ad74440f93a224e4b138c60a5f0253143c9eb5db973cd2b build-undefine-statx-syscall.patch
"
diff --git a/main/boost1.75/boost-1.57.0-python-abi_letters.patch b/main/boost1.77/boost-1.57.0-python-abi_letters.patch
index 7df3ee7047..7df3ee7047 100644
--- a/main/boost1.75/boost-1.57.0-python-abi_letters.patch
+++ b/main/boost1.77/boost-1.57.0-python-abi_letters.patch
diff --git a/main/boost1.75/boost-1.57.0-python-libpython_dep.patch b/main/boost1.77/boost-1.57.0-python-libpython_dep.patch
index 57bfc26774..57bfc26774 100644
--- a/main/boost1.75/boost-1.57.0-python-libpython_dep.patch
+++ b/main/boost1.77/boost-1.57.0-python-libpython_dep.patch
diff --git a/main/botan/APKBUILD b/main/botan/APKBUILD
index 156f0f122c..3332e06e3e 100644
--- a/main/botan/APKBUILD
+++ b/main/botan/APKBUILD
@@ -2,18 +2,22 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=botan
pkgver=2.18.1
-pkgrel=0
+pkgrel=4
pkgdesc="Crypto and TLS for C++11"
url="https://botan.randombit.net/"
arch="all"
license="BSD-2-Clause"
-depends_dev="boost-dev bzip2-dev openssl-dev sqlite-dev xz-dev zlib-dev"
+depends_dev="boost-dev bzip2-dev openssl1.1-compat-dev sqlite-dev xz-dev zlib-dev"
makedepends="$depends_dev python3"
subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
-source="https://botan.randombit.net/releases/Botan-$pkgver.tar.xz"
+source="https://botan.randombit.net/releases/Botan-$pkgver.tar.xz
+ dl-exponents.patch
+ CVE-2021-40529.patch"
builddir="$srcdir/Botan-$pkgver"
# secfixes:
+# 2.18.1-r3:
+# - CVE-2021-40529
# 2.17.3-r0:
# - CVE-2021-24115
# 2.9.0-r0:
@@ -57,4 +61,8 @@ package() {
rm -rf "$pkgdir"/usr/lib/python*
}
-sha512sums="2f11d1ab703d977a2d64504d2a2489ce56109a2a6c46c0dc7c8db428470ce511bcc0160f70baedad29237abd5e1622f2c155ea58c4dec4d3ae57ee7b350415c3 Botan-2.18.1.tar.xz"
+sha512sums="
+2f11d1ab703d977a2d64504d2a2489ce56109a2a6c46c0dc7c8db428470ce511bcc0160f70baedad29237abd5e1622f2c155ea58c4dec4d3ae57ee7b350415c3 Botan-2.18.1.tar.xz
+e0d5e2c07d1ea66def33cbf8d64ba87eeb46c10ff0c14a54bc518b87a668a74a184e18b89440a2ef4b78ddf97cb4e2b02f1a70b4bbf705170715e353b2abbddb dl-exponents.patch
+fd5d29ea98de0f0ddc63340270f118a2a633e740d604cf030780fdca46a87733654c38c01f933bb607f92cbb3750250a1af6ef9fe26fec601bbe8c9f079a6660 CVE-2021-40529.patch
+"
diff --git a/main/botan/CVE-2021-40529.patch b/main/botan/CVE-2021-40529.patch
new file mode 100644
index 0000000000..c864ef5838
--- /dev/null
+++ b/main/botan/CVE-2021-40529.patch
@@ -0,0 +1,132 @@
+From 9a23e4e3bc3966340531f2ff608fa9d33b5185a2 Mon Sep 17 00:00:00 2001
+From: Jack Lloyd <jack@randombit.net>
+Date: Tue, 3 Aug 2021 18:20:29 -0400
+Subject: [PATCH] Avoid using short exponents with ElGamal
+
+Some off-brand PGP implementation generates keys where p - 1 is
+smooth, as a result short exponents can leak enough information about
+k to allow decryption.
+---
+ src/lib/pubkey/elgamal/elgamal.cpp | 8 +++-
+ src/tests/data/pubkey/elgamal_decrypt.vec | 45 +++++++++++++++++++++++
+ src/tests/data/pubkey/elgamal_encrypt.vec | 17 ++++++---
+ 3 files changed, 62 insertions(+), 8 deletions(-)
+
+diff --git a/src/lib/pubkey/elgamal/elgamal.cpp b/src/lib/pubkey/elgamal/elgamal.cpp
+index b3ec6df2cb..0e33c2ca5f 100644
+--- a/src/lib/pubkey/elgamal/elgamal.cpp
++++ b/src/lib/pubkey/elgamal/elgamal.cpp
+@@ -113,8 +113,12 @@ ElGamal_Encryption_Operation::raw_encrypt(const uint8_t msg[], size_t msg_len,
+ if(m >= m_group.get_p())
+ throw Invalid_Argument("ElGamal encryption: Input is too large");
+
+- const size_t k_bits = m_group.exponent_bits();
+- const BigInt k(rng, k_bits);
++ /*
++ Some ElGamal implementations foolishly use prime fields where p - 1 is
++ smooth, as a result it is unsafe to use short exponents.
++ */
++ const size_t k_bits = m_group.p_bits() - 1;
++ const BigInt k(rng, k_bits, false);
+
+ const BigInt a = m_group.power_g_p(k, k_bits);
+ const BigInt b = m_group.multiply_mod_p(m, monty_execute(*m_monty_y_p, k, k_bits));
+diff --git a/src/tests/data/pubkey/elgamal_decrypt.vec b/src/tests/data/pubkey/elgamal_decrypt.vec
+index f676be50e7..a9d9dd1679 100644
+--- a/src/tests/data/pubkey/elgamal_decrypt.vec
++++ b/src/tests/data/pubkey/elgamal_decrypt.vec
+@@ -58,3 +58,48 @@ G = 4956716650468111499852968442558584961751486202697832959709919208796153871740
+ X = 4304232149632055597449717737864742436448127103739097
+ Msg = F73BB7E5C8A5619380
+ Ciphertext = C9881464A37749949D66D75CD9B7A8ACAD33DD1FAC7561F684E9CB5343D2ED15969D7EDB4135518B50F0FEC9A9559C1D5E44DAB42C14BBDE2D2711EA4D02D7F27D1A9BCFEC9E8B73FA64BA3C54707FDDE7D5BE695E17FB9D259FB576FD4E57D66C8F727DC236E2A6E9FD01709D34B8D09F7DD3890F003EBE616042B4E0A8A00F6C3F34DE7E002FE72A84AF8D014D64E8CD08B9B56CC3A6BBE6F966B92105A92C5ABF4F2BF735670622F6213FE9739FAD65692E1C0EBF708A47E18600A22972A5A3DA0F22D11C581D46F734151A083FF757E961351EB183B467A859FBB9ED1DAC396FA405701FD6E3A62EB126E93648C3C6DFA9C4DBF3C005880F4799F66B310E
++
++P = 0xFFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7EDEE386BFB5A899FA5AE9F24117C4B1FE649286651ECE65381FFFFFFFFFFFFFFFF
++G = 0x02
++X = 0xCC13EE3533858E0F0024FFC935DC5BD297DEC9385AC8EF7E
++Msg = 1C
++Ciphertext = D73F6E5CEF558B92C924FEC2329774ACD75E7CEA04D2485F07920EF4E5B86E361E23E42AB6F3A97F5B1F46218BF3C00E93A2EA981B8BB48EDD020A3F96D61FDA0F3E4D26F5538B2179B7D7E333CE78414F18E6CD0AE74C3F44FBFAC9121A3A6CF80C85E89280F9BC476078F9FD686A6500590B1AD75616C0A92BC73838A6D4437368304638242BCD628A72EA432FE7C1892922136B3C19B39990980185328E5BBD35DE42549819C8E301348320BA80602E751172D9ACAA8E0B67FB97996310BC0C14B9E40626FE54138851E4BC4CA4CB2F0A1F3D3F042556A4942B2B03B4C2F75E50260365865FEE0050DAC3604E78708715549FF878F1B337D6ABF8B695462F
++
++P = 0xFFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7EDEE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3DC2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F83655D23DCA3AD961C62F356208552BB9ED529077096966D670C354E4ABC9804F1746C08CA237327FFFFFFFFFFFFFFFF
++G = 0x02
++X = 0x8D81343C4994DAF21AD0E6CB88C74F55529925EC953381470B72B3C8
++Msg = 7F0CCACA157707BF03
++Ciphertext = 2EDE1A9F975FCAF943AEEB51EB37EAEDF54C4D939D0DCF7C80874A3BF8601B511685B1FDE52E07D8894EA647C50E480DE7A48ACADD89F79EEB9411234507CE6AB8503BD47B284134E301A78BD7FAC8D8B15A5D1424B820FF3FE1F363FC88FF510183165F52EE022A55EC43D4DD75763297C13F9EE3BCD579ADBA6800348F0C6240F49744B385737926A770EDF67257E7F5654C478C614700B6D2D671A13B28006C11C499BEB29658EF10C3E2EEC390A972372EBF733BA6EE5F4D600AAE1DDDC87EFA6D9FB05CBC995F82C3EF47CF862715E17DF7CC948846E849661D5C82C6A120610D90BB2D373D189A0BF13175F551326ECACF2D349A4BD2D265FDAC716E4B0A5D850E7EDA92CF9F8863BF1CD31C3888BFD81500DA4C615575EE8FA27615EF8E4B9D23A53852B236057E15DA7FC5827668A7B8AA699D3F79201567F4F0DAF7D89919906486A66ABA689FFD9E3BB5F0D1C677CCC12EA29BBFE1083C4FC349EE7E236BC8DC02DEE063E7F7C7B719E3176739D55196A2B7E6C3AA2A543135AB8F
++
++P = 0xFFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7EDEE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3DC2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F83655D23DCA3AD961C62F356208552BB9ED529077096966D670C354E4ABC9804F1746C08CA18217C32905E462E36CE3BE39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9DE2BCBF6955817183995497CEA956AE515D2261898FA051015728E5A8AACAA68FFFFFFFFFFFFFFFF
++G = 0x02
++X = 0xA9F666E685F4F0BAFFF22C407B28461591CBF43F8DA1A8C3B1510BB6AA3BCD6C
++Msg = D830F02AA1AE9328CF3F2C6CB7D86875
++Ciphertext = E8AC61EE6EA9DCBEDF5DD10247240E0FF3A6D1B1D2C9832A73C5EF2F96FB23C6FA571F9E407089ADAB459086B4331DBCBB3E5FC69B996748131D0D499EFF4F3654CEF8ED3C14C97C4985E5E0D6E0714E789F9D926CB26A23ACB52D6308CDB3C4DBF92F7A701513B133A0512A0CC16E13BCC7F983BC181C71A42252D48B113BAB4B861430AC6157E3043BD861C44D0804CCBB0B9D5BA599650DABE9FA7BF286EB08A97D11D5F88CB0157A4522E2C9F4EF53EB9D7679974C5AD86554EED49736D0D7B39461B92C73CBBEBAD8E92A6501293AE9A5BF0FBDA11BC743E032F78740F96F8CD71D30EA0F17F42181783C908A6008E339620CCB80226E9CDD7E5D50DEF9310DF03C971955CCF70557C9816049C2137CB7554998BD90B81AD549E9B65347E4BC798039BF05929DED052EE816EA3A87014B0D25E2E279B7736446201F52E542AA6E494BDC6D02A9A0479E1F90D5F3898A36AF7BA03E8F0BCBBF891A1C1B0B300EA664349E765EA331841ABC7963012C623318EF9B681711461ECC83EDC88722DE5E16FF1AB57B23F285CC5E75F6FCB46EEC9F919D1C089E7C045535E64A97F16662DF9CEFFB0E6C9C6402A43E47D1D073A5555A470E2451809234ABFD463A013D70288BA4A093E51FCED6A434886ED70490D63DFD809F27A773CDAC3D848A21C2937CA194C4FFBF8E50C05AEB3A530A7AB8B39B91A72EA45034A2FF8F16B1
++
++P = 0xFFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7EDEE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3DC2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F83655D23DCA3AD961C62F356208552BB9ED529077096966D670C354E4ABC9804F1746C08CA18217C32905E462E36CE3BE39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9DE2BCBF6955817183995497CEA956AE515D2261898FA051015728E5A8AAAC42DAD33170D04507A33A85521ABDF1CBA64ECFB850458DBEF0A8AEA71575D060C7DB3970F85A6E1E4C7ABF5AE8CDB0933D71E8C94E04A25619DCEE3D2261AD2EE6BF12FFA06D98A0864D87602733EC86A64521F2B18177B200CBBE117577A615D6C770988C0BAD946E208E24FA074E5AB3143DB5BFCE0FD108E4B82D120A93AD2CAFFFFFFFFFFFFFFFF
++G = 0x02
++X = 0x981606068AE29B5B86E6F1E4E578010E43E1DBCB12504857CA6CDFC77913EFF0B3F563E1DDB40934B4F33099A6BF8EE8
++Msg = 0E738AF35B6AE8951E5C3BF8EB
++Ciphertext = 659C8E28BF6A26E5D55386E437F2B66282EB9F9ECA54522D8A1FDE6BC6C4D65E5412D030BDC9833F93E3653B7B58FFD66A2EBFB8AAF1F7BBB52C3CD43E08DDB3D2C73E26EEA988EEF9CFDC9C59872B4D2454A1F500911B4D3BD3EED99107FAF39D97A3302166AD5B0381ECAB769953406DD3FEB502D23587D9CF2C89F93FE6A73167E3734CD0676EE95F7C43A558A56E7B0264A6084875D1E7F2312FA7BA7145AAA5921F904EDDC7A6EC823C57AFE323E4368CD7D47CAF2F8A94D6D3117A8BE92BAF6F0392A20C7FCFE381789755B7B47B9C5496382FF26533EA7F911472F02E2F9E29CAC9CFF4AEB90C36E55A1AF5D0259B195E2824C7F6B40299D8A0858E162B3D9392E323F62B48DA629089902F16D01D1AB3DCFBAAB46F1E74ECA6560B3A97E85E9B88B8F11AA83F78E8E542B8A3B4C0E7B47220594979BC7DD12E97238EB4B91D23A8F2D5362CB8B08C1F07B3461AD0968FB3053F60ECC2B3C0E900A0A7C2924C3FA79CCB43B33B336B807C6F4B83A7AE0112BD72A13822E3CD0B2E2AF7717F2CB21BE02D8DB0EB3BCCF66836BD83C828C221569EFCAA53124D206CB51D3718BC1511799DEA0558DD6FDBFB06B3D96BAC451FE71A4244BD3CD6826BF27EA3CC7782C17DCAF52EAA944CEA734D011145F10A4132A271349A8BF1ED0D7F7EF2ABC7031475B4397574F8A7EC4F5480D85CF0CA1F7C69097A2A009FFD4927AA769FD821F64741812FE5DB996ECAD3265CE93DBA7B40532A2133FB8EE5066A0C5F91C7E0F3902B6CEA39D5BB4B59B2993B5DAA2B61FF589BF45613D1EF36D5F7D959E8255C0010EC439AAE1C9B682BAC92C2883ED279CD8C644A301150879EB8D37B217B36447CBAC37C132C0278AA8CB38A8596392E3A3CAA91573370ED44DF46311EEE878B63F947F2A28930133D343737502623D0C7D3EA5D8D8123D7963C70AD30CC865BCD68F96C1A13A3484AB4EF3828CE338BF8E087F2300B777D556974D5E23FAFD55AB54353BCA31BEC13003AC7258510578F96B8F1E2254E91768A78CF9FCC6D8CFB0493701D523F75EC25B37B623B5A73A28009DBC169A084E95D
++
++P = 0xFFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7EDEE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3DC2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F83655D23DCA3AD961C62F356208552BB9ED529077096966D670C354E4ABC9804F1746C08CA18217C32905E462E36CE3BE39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9DE2BCBF6955817183995497CEA956AE515D2261898FA051015728E5A8AAAC42DAD33170D04507A33A85521ABDF1CBA64ECFB850458DBEF0A8AEA71575D060C7DB3970F85A6E1E4C7ABF5AE8CDB0933D71E8C94E04A25619DCEE3D2261AD2EE6BF12FFA06D98A0864D87602733EC86A64521F2B18177B200CBBE117577A615D6C770988C0BAD946E208E24FA074E5AB3143DB5BFCE0FD108E4B82D120A92108011A723C12A787E6D788719A10BDBA5B2699C327186AF4E23C1A946834B6150BDA2583E9CA2AD44CE8DBBBC2DB04DE8EF92E8EFC141FBECAA6287C59474E6BC05D99B2964FA090C3A2233BA186515BE7ED1F612970CEE2D7AFB81BDD762170481CD0069127D5B05AA993B4EA988D8FDDC186FFB7DC90A6C08F4DF435C934063199FFFFFFFFFFFFFFFF
++G = 0x02
++X = 0xB73A80EB48DB4DF3108BE1345281A1B39B4373BFE71CB4DA9F3594A94C525E2E288F06089F61C1D29D6A99EA775C05D6
++Msg = D413DAC9D341361F17EDCE1C46A04D343424251B
++Ciphertext = 085E76D450C7FF0B2DB59D41D12596AD1B0D8AF877F5C63416D2B355ED137A5AEAB3B75AC4CBFB5168F37EC02724EA057ED5B9AAF0C40D5469FB9E068C7E090C6EB411CDFBC9A500294E2433A9F879F52F8359B0865128A76801B7C4E22D5A3A6279F755291ECC9454AC3C1F1395DA5FA8E25CD951FCBF9B569EED304B3B82B0198913FAFD0B9A3ED32A64B0E394F96C153D25FBFEF92ECB38F79F2DE12570A041C8B4E8ADB998D6A559BC9640EBA8B61A6D0387CF0CA621B6C3F60D464DE7D27D5347F79CABD09533219DD2CDA8BAB74E886E206409A94054CCF3EBBA570C33FE456BD6B0BEB564F406AF49400550AE01A21A68126C90E0B8295CB7F9C2F4C790D8B0FEFD1FC6BFF40A00737AF9EDA25A1BF00E7FEC8CE776C3D24C61EBF48049CE5B27E024B796566BA670090BAB1A6015C01DB57DFDDAD61240F151C61BC80C3BA320050D1E537D501611627531E41793C3468B87F28BF2281CE996957901BE6CE41FAB0F88467ECBC0DE6C5F60AB5A1AF21A9528B0E8BABAD56FA23F2AD3CBC521A8D54047F15F58FC9C5CD4BB322A0838EDAC053415CFED87FD0756FBFF6B052D385C2EED6FD4686E024F7175A9840DF7E74740FF368DA4DAEB879D7C0D265D51809BD6EC6A66717498A4998D0232586CA4C5F7858EBEC824821CDBD1133DA557612A398EA8F9AC959A39381FCF1D727D08136CAFC4D72E9A945043E6DE2C67F6B55C21B7EDBFDCEA2B63CF9A5BB931DFE76CA2BE5D3D964AA2C348E6DFBA4FFC4D5E463105E243BD20AF38531A70BE1DD4930F998E28C3182665507700976BC14438452179747E623B2E5328A3ED5925FA526AE897ACF67059D76D159CB31D85F03589A4874AB11A7E2BB680FCEF7A4CEBFD98B0DC18BC1AF838524107E3264C2FDACF883ED2701CF3306E83CB8E75F5ED148F3377A77474D47522596F50DADEFC149A91C619F4A9366771681CAE1A82AA57BB038E0180BD38C4323928E63FA890B85009B1A25C022AEE8DB4D7F4E34260677A22B3BC7F24089E98FC484B93EC95ED68D9D56B2F6DDBCE73AB844F5CBBD908E51651517F6920DC42F41B874EEB9DA244C4485D2A931C7A76E99D490E6B3D4AE44484CAE4B784A0773782D2B9CFB4D893E79D35CF4282CB9A70EA53700F49F6F47F374161D0B820690D2C99E3A2602B31E659E64E5D4D4BD111C73FD5AF47412748091E272947A307309F3732E04FA848AACC312ADD0323F09F7947788D9F2BC55BDB7DDDD1FE664C5C9E861F6052F8F94084927116CAB24C6B11FEE69ADD2BCED4CC7EF330519D287531861A75E0F00CA8E52CBE9B77E8F840168937222D5851C84195DD4E698AB8BB558A05026EBC09520A1B1F0BC44F699478A69E1C1384F37F16102DE90ED960CEFFD9EA299FB79D416F3AF6CCD1A022895CFE032AC65978486998E3714A56E3DBAE
++
++# Generated by Golang x/crypto
++P = 0xB10B8F96A080E01DDE92DE5EAE5D54EC52C99FBCFB06A3C69A6A9DCA52D23B616073E28675A23D189838EF1E2EE652C013ECB4AEA906112324975C3CD49B83BFACCBDD7D90C4BD7098488E9C219A73724EFFD6FAE5644738FAA31A4FF55BCCC0A151AF5F0DC8B4BD45BF37DF365C1A65E68CFDA76D4DA708DF1FB2BC2E4A4371
++G = 0xA4D1CBD5C3FD34126765A442EFB99905F8104DD258AC507FD6406CFF14266D31266FEA1E5C41564B777E690F5504F213160217B4B01B886A5E91547F9E2749F4D7FBD7D3B9A92EE1909D0D2263F80A76A6A24C087A091F531DBF0A0169B6A28AD662A4D18E73AFA32D779D5918D08BC8858F4DCEF97C2A24855E6EEB22B3B2E5
++X = 0x626adfc4696e5dee7f95f24077c8377b1df439cb76ab82134fe4a48b673e565a
++Msg = 0244454144424545464445414442454546444541444245454644454144424545464445414442454546444541444245454644454144424545464445414442454546444541444245454644454144424545464445414442454546444541444245454644454144424545464445414442454500476F207465737420766563746F72
++Ciphertext = 0F0AF27EB240927497A4245E592BDA1AA12420054AA406080420E92FCEDA12A3DCBF1CDEDA86A87029DF05C8D2435DF91A53BF65164375C302C19773C88677E88C36C3BBC408DFAD0672C1A56E5CDB8932AE11DD250F3DC31CB601582CC10C2E4BD26149AA5519AEDC7619C35B6F920B53B3AAEF728B06F37D08250B14C7AA0E291F233A5F5A6EE2333C9839C7C654C21669795B5C1415F92AFFBD24273403160AFE1DF058F554085283E0D5D8C487CBD4F7EFFBAE620C67F285CE4DD83FB1A00733B5BF9CA22A33039A7A15169757EFECC36A15F67609707C751F88FB5E70861BDE09A72A6B4558EA2841792BC86EC523DF23094D4B55663527EAB70D182CA9
++
++[EME-PKCS1-v1_5]
++# Same as above test from Go but with PKCS1 padding removed
++P = 0xB10B8F96A080E01DDE92DE5EAE5D54EC52C99FBCFB06A3C69A6A9DCA52D23B616073E28675A23D189838EF1E2EE652C013ECB4AEA906112324975C3CD49B83BFACCBDD7D90C4BD7098488E9C219A73724EFFD6FAE5644738FAA31A4FF55BCCC0A151AF5F0DC8B4BD45BF37DF365C1A65E68CFDA76D4DA708DF1FB2BC2E4A4371
++G = 0xA4D1CBD5C3FD34126765A442EFB99905F8104DD258AC507FD6406CFF14266D31266FEA1E5C41564B777E690F5504F213160217B4B01B886A5E91547F9E2749F4D7FBD7D3B9A92EE1909D0D2263F80A76A6A24C087A091F531DBF0A0169B6A28AD662A4D18E73AFA32D779D5918D08BC8858F4DCEF97C2A24855E6EEB22B3B2E5
++X = 0x626adfc4696e5dee7f95f24077c8377b1df439cb76ab82134fe4a48b673e565a
++Msg = 476F207465737420766563746F72
++Ciphertext = 0F0AF27EB240927497A4245E592BDA1AA12420054AA406080420E92FCEDA12A3DCBF1CDEDA86A87029DF05C8D2435DF91A53BF65164375C302C19773C88677E88C36C3BBC408DFAD0672C1A56E5CDB8932AE11DD250F3DC31CB601582CC10C2E4BD26149AA5519AEDC7619C35B6F920B53B3AAEF728B06F37D08250B14C7AA0E291F233A5F5A6EE2333C9839C7C654C21669795B5C1415F92AFFBD24273403160AFE1DF058F554085283E0D5D8C487CBD4F7EFFBAE620C67F285CE4DD83FB1A00733B5BF9CA22A33039A7A15169757EFECC36A15F67609707C751F88FB5E70861BDE09A72A6B4558EA2841792BC86EC523DF23094D4B55663527EAB70D182CA9
+diff --git a/src/tests/data/pubkey/elgamal_encrypt.vec b/src/tests/data/pubkey/elgamal_encrypt.vec
+index 059eb1668d..92e8690549 100644
+--- a/src/tests/data/pubkey/elgamal_encrypt.vec
++++ b/src/tests/data/pubkey/elgamal_encrypt.vec
+@@ -3,30 +3,35 @@
+ Group = modp/ietf/1024
+ Secret = 0xCC13EE3533858E0F0024FFC935DC5BD297DEC9385AC8EF7E
+ Msg = 1C
+-Nonce = EEE23AAA149AF29E18EF8D66AD8D4BACB72076BAE583A297
++Nonce = 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000EEE23AAA149AF29E18EF8D66AD8D4BACB72076BAE583A297
+ Ciphertext = D73F6E5CEF558B92C924FEC2329774ACD75E7CEA04D2485F07920EF4E5B86E361E23E42AB6F3A97F5B1F46218BF3C00E93A2EA981B8BB48EDD020A3F96D61FDA0F3E4D26F5538B2179B7D7E333CE78414F18E6CD0AE74C3F44FBFAC9121A3A6CF80C85E89280F9BC476078F9FD686A6500590B1AD75616C0A92BC73838A6D4437368304638242BCD628A72EA432FE7C1892922136B3C19B39990980185328E5BBD35DE42549819C8E301348320BA80602E751172D9ACAA8E0B67FB97996310BC0C14B9E40626FE54138851E4BC4CA4CB2F0A1F3D3F042556A4942B2B03B4C2F75E50260365865FEE0050DAC3604E78708715549FF878F1B337D6ABF8B695462F
+
++Group = modp/ietf/1024
++Secret = 0xCC13EE3533858E0F0024FFC935DC5BD297DEC9385AC8EF7E
++Msg = 1C
++Nonce = D0F937A84865734C37877CBBD731D9A378EA8644B5C4D9A65B2C81C46F1014364F3593C6B9DFF25E0741EFB6C3E033522D66A6DA1C6B7666E8C15112BFAB850C38177C30CC05449B1A7D0D11EDD555997C57840D319279E5C80A51DC15F8103B820C5C870432DC14B70A12207EF749C835825C63B05B2E1A8FE36F0264D5B13D
++Ciphertext = B1F5602B7E72A8B3B5932EE86F303A14D764BAD54BF37902F0AA4C2592E04D3BB70F6CAAD3287B613D48C4D735E776F212BB26D46F53699B08194A0105239C588A2678EDC7476DF68B6C60F83E8DE47BA3477E17B3AD72D96F41FC1066089940F99ED6C0C8E9E77F322D986FDC4C718451E2CFBA51DCE13741C78AF81878EC6D4155741BFDD369A9DB4C9619E3753E0E80BD39A9B788481FB82ABA9A26FEF1B7619F9FC524B5D64DA2E3B23F8E8C0922754EB56A495DBD4F31B2DD3F9DC76A2EAB4D94F957F4E3776F423B85A8CDB343787AAFF00C95AFC297875DFF49EC9C886A5D550E1130A6CCC25E4A1C2D078C3B98586FFFD3C87EABC3FDC13A15AD4666
++
+ Group = modp/ietf/1536
+ Secret = 0x8D81343C4994DAF21AD0E6CB88C74F55529925EC953381470B72B3C8
+ Msg = 7F0CCACA157707BF03
+-Nonce = F0A0844B268ECEABA04827E7CE9F960119E0053CFBA00ADA47604857
++Nonce = 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000F0A0844B268ECEABA04827E7CE9F960119E0053CFBA00ADA47604857
+ Ciphertext = 2EDE1A9F975FCAF943AEEB51EB37EAEDF54C4D939D0DCF7C80874A3BF8601B511685B1FDE52E07D8894EA647C50E480DE7A48ACADD89F79EEB9411234507CE6AB8503BD47B284134E301A78BD7FAC8D8B15A5D1424B820FF3FE1F363FC88FF510183165F52EE022A55EC43D4DD75763297C13F9EE3BCD579ADBA6800348F0C6240F49744B385737926A770EDF67257E7F5654C478C614700B6D2D671A13B28006C11C499BEB29658EF10C3E2EEC390A972372EBF733BA6EE5F4D600AAE1DDDC87EFA6D9FB05CBC995F82C3EF47CF862715E17DF7CC948846E849661D5C82C6A120610D90BB2D373D189A0BF13175F551326ECACF2D349A4BD2D265FDAC716E4B0A5D850E7EDA92CF9F8863BF1CD31C3888BFD81500DA4C615575EE8FA27615EF8E4B9D23A53852B236057E15DA7FC5827668A7B8AA699D3F79201567F4F0DAF7D89919906486A66ABA689FFD9E3BB5F0D1C677CCC12EA29BBFE1083C4FC349EE7E236BC8DC02DEE063E7F7C7B719E3176739D55196A2B7E6C3AA2A543135AB8F
+
+ Group = modp/ietf/2048
+ Secret = 0xA9F666E685F4F0BAFFF22C407B28461591CBF43F8DA1A8C3B1510BB6AA3BCD6C
+ Msg = D830F02AA1AE9328CF3F2C6CB7D86875
+-Nonce = DFA4E0979DADE5A620C4B9ED87C205F34D7AE739761BCDD060A9EC530E066538
++Nonce = 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000DFA4E0979DADE5A620C4B9ED87C205F34D7AE739761BCDD060A9EC530E066538
+ Ciphertext = E8AC61EE6EA9DCBEDF5DD10247240E0FF3A6D1B1D2C9832A73C5EF2F96FB23C6FA571F9E407089ADAB459086B4331DBCBB3E5FC69B996748131D0D499EFF4F3654CEF8ED3C14C97C4985E5E0D6E0714E789F9D926CB26A23ACB52D6308CDB3C4DBF92F7A701513B133A0512A0CC16E13BCC7F983BC181C71A42252D48B113BAB4B861430AC6157E3043BD861C44D0804CCBB0B9D5BA599650DABE9FA7BF286EB08A97D11D5F88CB0157A4522E2C9F4EF53EB9D7679974C5AD86554EED49736D0D7B39461B92C73CBBEBAD8E92A6501293AE9A5BF0FBDA11BC743E032F78740F96F8CD71D30EA0F17F42181783C908A6008E339620CCB80226E9CDD7E5D50DEF9310DF03C971955CCF70557C9816049C2137CB7554998BD90B81AD549E9B65347E4BC798039BF05929DED052EE816EA3A87014B0D25E2E279B7736446201F52E542AA6E494BDC6D02A9A0479E1F90D5F3898A36AF7BA03E8F0BCBBF891A1C1B0B300EA664349E765EA331841ABC7963012C623318EF9B681711461ECC83EDC88722DE5E16FF1AB57B23F285CC5E75F6FCB46EEC9F919D1C089E7C045535E64A97F16662DF9CEFFB0E6C9C6402A43E47D1D073A5555A470E2451809234ABFD463A013D70288BA4A093E51FCED6A434886ED70490D63DFD809F27A773CDAC3D848A21C2937CA194C4FFBF8E50C05AEB3A530A7AB8B39B91A72EA45034A2FF8F16B1
+
+ Group = modp/ietf/3072
+ Secret = 0x981606068AE29B5B86E6F1E4E578010E43E1DBCB12504857CA6CDFC77913EFF0B3F563E1DDB40934B4F33099A6BF8EE8
+ Msg = 0E738AF35B6AE8951E5C3BF8EB
+-Nonce = F53B7EF9224D33392AE79CA3816755F066A2B15689B157FBA588CD5C247EFC9050DB2F84FA40C12E3493230D94D89306
++Nonce = 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000F53B7EF9224D33392AE79CA3816755F066A2B15689B157FBA588CD5C247EFC9050DB2F84FA40C12E3493230D94D89306
+ Ciphertext = 659C8E28BF6A26E5D55386E437F2B66282EB9F9ECA54522D8A1FDE6BC6C4D65E5412D030BDC9833F93E3653B7B58FFD66A2EBFB8AAF1F7BBB52C3CD43E08DDB3D2C73E26EEA988EEF9CFDC9C59872B4D2454A1F500911B4D3BD3EED99107FAF39D97A3302166AD5B0381ECAB769953406DD3FEB502D23587D9CF2C89F93FE6A73167E3734CD0676EE95F7C43A558A56E7B0264A6084875D1E7F2312FA7BA7145AAA5921F904EDDC7A6EC823C57AFE323E4368CD7D47CAF2F8A94D6D3117A8BE92BAF6F0392A20C7FCFE381789755B7B47B9C5496382FF26533EA7F911472F02E2F9E29CAC9CFF4AEB90C36E55A1AF5D0259B195E2824C7F6B40299D8A0858E162B3D9392E323F62B48DA629089902F16D01D1AB3DCFBAAB46F1E74ECA6560B3A97E85E9B88B8F11AA83F78E8E542B8A3B4C0E7B47220594979BC7DD12E97238EB4B91D23A8F2D5362CB8B08C1F07B3461AD0968FB3053F60ECC2B3C0E900A0A7C2924C3FA79CCB43B33B336B807C6F4B83A7AE0112BD72A13822E3CD0B2E2AF7717F2CB21BE02D8DB0EB3BCCF66836BD83C828C221569EFCAA53124D206CB51D3718BC1511799DEA0558DD6FDBFB06B3D96BAC451FE71A4244BD3CD6826BF27EA3CC7782C17DCAF52EAA944CEA734D011145F10A4132A271349A8BF1ED0D7F7EF2ABC7031475B4397574F8A7EC4F5480D85CF0CA1F7C69097A2A009FFD4927AA769FD821F64741812FE5DB996ECAD3265CE93DBA7B40532A2133FB8EE5066A0C5F91C7E0F3902B6CEA39D5BB4B59B2993B5DAA2B61FF589BF45613D1EF36D5F7D959E8255C0010EC439AAE1C9B682BAC92C2883ED279CD8C644A301150879EB8D37B217B36447CBAC37C132C0278AA8CB38A8596392E3A3CAA91573370ED44DF46311EEE878B63F947F2A28930133D343737502623D0C7D3EA5D8D8123D7963C70AD30CC865BCD68F96C1A13A3484AB4EF3828CE338BF8E087F2300B777D556974D5E23FAFD55AB54353BCA31BEC13003AC7258510578F96B8F1E2254E91768A78CF9FCC6D8CFB0493701D523F75EC25B37B623B5A73A28009DBC169A084E95D
+
+ Group = modp/ietf/4096
+ Secret = 0xB73A80EB48DB4DF3108BE1345281A1B39B4373BFE71CB4DA9F3594A94C525E2E288F06089F61C1D29D6A99EA775C05D6
+ Msg = D413DAC9D341361F17EDCE1C46A04D343424251B
+-Nonce = B9AFD0F2F97C677BD3088B032696E7928DD62AD20912367113CFE5ABEEB7B4DFAD22E30442B04571CDC683D9971DE257
++Nonce = 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000B9AFD0F2F97C677BD3088B032696E7928DD62AD20912367113CFE5ABEEB7B4DFAD22E30442B04571CDC683D9971DE257
+ Ciphertext = 085E76D450C7FF0B2DB59D41D12596AD1B0D8AF877F5C63416D2B355ED137A5AEAB3B75AC4CBFB5168F37EC02724EA057ED5B9AAF0C40D5469FB9E068C7E090C6EB411CDFBC9A500294E2433A9F879F52F8359B0865128A76801B7C4E22D5A3A6279F755291ECC9454AC3C1F1395DA5FA8E25CD951FCBF9B569EED304B3B82B0198913FAFD0B9A3ED32A64B0E394F96C153D25FBFEF92ECB38F79F2DE12570A041C8B4E8ADB998D6A559BC9640EBA8B61A6D0387CF0CA621B6C3F60D464DE7D27D5347F79CABD09533219DD2CDA8BAB74E886E206409A94054CCF3EBBA570C33FE456BD6B0BEB564F406AF49400550AE01A21A68126C90E0B8295CB7F9C2F4C790D8B0FEFD1FC6BFF40A00737AF9EDA25A1BF00E7FEC8CE776C3D24C61EBF48049CE5B27E024B796566BA670090BAB1A6015C01DB57DFDDAD61240F151C61BC80C3BA320050D1E537D501611627531E41793C3468B87F28BF2281CE996957901BE6CE41FAB0F88467ECBC0DE6C5F60AB5A1AF21A9528B0E8BABAD56FA23F2AD3CBC521A8D54047F15F58FC9C5CD4BB322A0838EDAC053415CFED87FD0756FBFF6B052D385C2EED6FD4686E024F7175A9840DF7E74740FF368DA4DAEB879D7C0D265D51809BD6EC6A66717498A4998D0232586CA4C5F7858EBEC824821CDBD1133DA557612A398EA8F9AC959A39381FCF1D727D08136CAFC4D72E9A945043E6DE2C67F6B55C21B7EDBFDCEA2B63CF9A5BB931DFE76CA2BE5D3D964AA2C348E6DFBA4FFC4D5E463105E243BD20AF38531A70BE1DD4930F998E28C3182665507700976BC14438452179747E623B2E5328A3ED5925FA526AE897ACF67059D76D159CB31D85F03589A4874AB11A7E2BB680FCEF7A4CEBFD98B0DC18BC1AF838524107E3264C2FDACF883ED2701CF3306E83CB8E75F5ED148F3377A77474D47522596F50DADEFC149A91C619F4A9366771681CAE1A82AA57BB038E0180BD38C4323928E63FA890B85009B1A25C022AEE8DB4D7F4E34260677A22B3BC7F24089E98FC484B93EC95ED68D9D56B2F6DDBCE73AB844F5CBBD908E51651517F6920DC42F41B874EEB9DA244C4485D2A931C7A76E99D490E6B3D4AE44484CAE4B784A0773782D2B9CFB4D893E79D35CF4282CB9A70EA53700F49F6F47F374161D0B820690D2C99E3A2602B31E659E64E5D4D4BD111C73FD5AF47412748091E272947A307309F3732E04FA848AACC312ADD0323F09F7947788D9F2BC55BDB7DDDD1FE664C5C9E861F6052F8F94084927116CAB24C6B11FEE69ADD2BCED4CC7EF330519D287531861A75E0F00CA8E52CBE9B77E8F840168937222D5851C84195DD4E698AB8BB558A05026EBC09520A1B1F0BC44F699478A69E1C1384F37F16102DE90ED960CEFFD9EA299FB79D416F3AF6CCD1A022895CFE032AC65978486998E3714A56E3DBAE
+-
diff --git a/main/botan/dl-exponents.patch b/main/botan/dl-exponents.patch
new file mode 100644
index 0000000000..28c5e06b81
--- /dev/null
+++ b/main/botan/dl-exponents.patch
@@ -0,0 +1,304 @@
+From 9258696e147894e45d0422fd65a34193fba76211 Mon Sep 17 00:00:00 2001
+From: Jack Lloyd <jack@randombit.net>
+Date: Mon, 14 Dec 2020 07:15:20 -0500
+Subject: [PATCH] New sizes for DL exponents
+
+Avoid using a formula for this and instead just bucket into a few very
+rough sizes. In all cases (except very large keys) this results in
+using a somewhat larger exponent.
+---
+ src/lib/pubkey/workfactor.cpp | 23 +++++++------
+ src/scripts/test_cli.py | 4 +--
+ .../{elgamal.vec => elgamal_decrypt.vec} | 10 ------
+ src/tests/data/pubkey/elgamal_encrypt.vec | 32 ++++++++++++++++++
+ src/tests/data/pubkey/workfactor.vec | 18 ++++++----
+ src/tests/{test_elg.cpp => test_elgamal.cpp} | 33 +++++++++++++++----
+ src/tests/test_workfactor.cpp | 2 +-
+ 7 files changed, 86 insertions(+), 36 deletions(-)
+ rename src/tests/data/pubkey/{elgamal.vec => elgamal_decrypt.vec} (95%)
+ create mode 100644 src/tests/data/pubkey/elgamal_encrypt.vec
+ rename src/tests/{test_elg.cpp => test_elgamal.cpp} (54%)
+
+diff --git a/src/lib/pubkey/workfactor.cpp b/src/lib/pubkey/workfactor.cpp
+index cd0a83e5ce..13760351ea 100644
+--- a/src/lib/pubkey/workfactor.cpp
++++ b/src/lib/pubkey/workfactor.cpp
+@@ -51,16 +51,19 @@ size_t dl_work_factor(size_t bits)
+
+ size_t dl_exponent_size(size_t bits)
+ {
+- /*
+- This uses a slightly tweaked version of the standard work factor
+- function above. It assumes k is 1 (thus overestimating the strength
+- of the prime group by 5-6 bits), and always returns at least 128 bits
+- (this only matters for very small primes).
+- */
+- const size_t min_workfactor = 64;
+- const double log2_k = 0;
+-
+- return 2 * std::max<size_t>(min_workfactor, nfs_workfactor(bits, log2_k));
++ if(bits == 0)
++ return 0;
++ if(bits <= 256)
++ return bits - 1;
++ if(bits <= 1024)
++ return 192;
++ if(bits <= 1536)
++ return 224;
++ if(bits <= 2048)
++ return 256;
++ if(bits <= 4096)
++ return 384;
++ return 512;
+ }
+
+ }
+diff --git a/src/scripts/test_cli.py b/src/scripts/test_cli.py
+index 7fb46feab4..5fc2f04e84 100755
+--- a/src/scripts/test_cli.py
++++ b/src/scripts/test_cli.py
+@@ -278,7 +278,7 @@ def cli_gen_dl_group_tests(_tmp_dir):
+ mFvAZ/8wal0=
+ -----END X9.42 DH PARAMETERS-----"""
+
+- test_cli("gen_dl_group", "--pbits=1043", pem)
++ test_cli("gen_dl_group", ["--pbits=1043", "--qbits=174"], pem)
+
+ dsa_grp = """-----BEGIN DSA PARAMETERS-----
+ MIIBHgKBgQCyP1vosC/axliM2hmJ9EOSdd1zBkuzMP25CYD8PFkRVrPLr1ClSUtn
+@@ -679,7 +679,7 @@ def cli_pk_workfactor_tests(_tmp_dir):
+ test_cli("pk_workfactor", "2048", "111")
+ test_cli("pk_workfactor", ["--type=rsa", "512"], "58")
+ test_cli("pk_workfactor", ["--type=dl", "512"], "58")
+- test_cli("pk_workfactor", ["--type=dl_exp", "512"], "128")
++ test_cli("pk_workfactor", ["--type=dl_exp", "512"], "192")
+
+ def cli_dl_group_info_tests(_tmp_dir):
+
+diff --git a/src/tests/data/pubkey/elgamal.vec b/src/tests/data/pubkey/elgamal_decrypt.vec
+similarity index 95%
+rename from src/tests/data/pubkey/elgamal.vec
+rename to src/tests/data/pubkey/elgamal_decrypt.vec
+index 5cfbacdeee..f676be50e7 100644
+--- a/src/tests/data/pubkey/elgamal.vec
++++ b/src/tests/data/pubkey/elgamal_decrypt.vec
+@@ -3,68 +3,58 @@ P = 1365501321293735349225077112267598047546199828869335521691442858164229618266
+ G = 13
+ X = 1510837665211600837455333225484573368412905214721958306259132011740929687444
+ Msg = 02AD1D776D591520E4D8BEF8B21CC2F54FB4EB788E52ECEBE13564435DA66284D51A6A6696E615EF599786CE4CBEFAFF066E0A1CD8868454EB5CE0CA99241B29E1D1492CF2712C2C101B3F3779034683AD8271098C2E3FBAA83901A97D9645FA5815AF79F4F638ECBE09020003F434D708914899C668F34830E70F4CAF0803
+-Nonce = 0A5842A8D0C1B07E5DE6FD3E0C6B1108523D4D35417F
+ Ciphertext = 5B99F58B48F3D473327075F2FF4EEA3C8C1FEB0B241F042864610D6FC512A81F431A965724195DB71C3B84B6B9F1DFAE0DAE60E7CDA957703D10FCCDA45CDD0EF8C8F76AA4F51F3EDAD8E5085B97D69523A3EAC89D67CDFDDCF0A30491A98BE2FD6C5E69C3A2C95300B9DB4EDF2111E7613EF7B2CA430D0CFFBDECF6A7BE592A853B404B6910C48A0204ED3430691E766FBAF21A428B9F833C5932C053C616EEB59850150A22331A8FB5AF2065B595E4F08881B1DB7CB85A28A33F4449890739679CCAA431A9205210995BEA68759B475BE4183A975C9D042FBBEDF589AB6AF017D7523B2CC90CD63526BC584F1E9EF42ABAAA9238987D7F73B94E323C6AADFD
+
+ P = 1541287358797997024335652872773425159872421808416662301794871595911973385718041854467851087853175356350298847849929853669980047096240555092681165983790725605204837589691602540741068782404825906414885161661820441988899240406981724303
+ G = 5
+ X = 1344717445208905302019700797220481877896877304443340806021921711564
+ Msg = 02C1ED6A171875F055809F12BC61829961CC740935C6DCC468FA663E8D1A7DE9E0555E3EA99476436743FC5C76D3E041055FAEB7641907F8E2F1F94061B22E72B7CD39EDD7A6367828CCDC000301CEA7D91CB1E8A3E20DC85FAA23EF6D08E6
+-Nonce = F42F854C10C9DD14A6712594A31326A1FD2CF5
+ Ciphertext = 9E47FB001BDDB12F2D8E0FA5501A7EAC1B185FDFC7D2FF3E4461B0D75D626F5156DEDD4D25F13C6C1F5F9A1F916058045705F5E82F748E9B6F0DC95D572B8DC2770159092EECA13946F0522FE2A859705009B615818A1B4F98E8DD38CF00DE746ABD5F3852D93F8D9299DE18EB763F11E41A8B9660C5F056538EED431BB8E2199D9012F50C7FBEF5AAD35ECCD7F141CD9AC6553315A2699D6718F50EBDCEAE62A11ACC466E8533EDBAF13C15B5532B323EBF283B108F892DBFCEA21231DFD548
+
+ P = 13232376895198612407547930718267435757728527029623408872245156039757713029036368719146452186041204237350521785240337048752071462798273003935646236777459223
+ G = 11629401773565540073100961473632977008134185076958364415809981826641612629974728305105606061133984394938666464842000720534465163992699133277631369246002549
+ X = 175607362627753240470186183617696577774
+ Msg = 47E586A7E7D98C116A6F553F652E57BF
+-Nonce = BEF5E7EFAA76C52A8ECEE604EDAFD31B
+ Ciphertext = CD70DE085B0C586B4E64097EA3AB4CE0B60A71B0F640FE4468F4F940412EDBDD9035EEC602530CFF81B2CDC35805264A866E4689DDBADC3438575B6337118BB23A5AB7710F85F2A4E1E0DBEC5652FEF73C868747ECB7043BA08241A0879A2DC588D3EC14ED552E62B1B111646FF4DFA9050754240A46A840EA5EB1D97712F2BB
+
+ P = 13232376895198612407547930718267435757728527029623408872245156039757713029036368719146452186041204237350521785240337048752071462798273003935646236777459223
+ G = 11629401773565540073100961473632977008134185076958364415809981826641612629974728305105606061133984394938666464842000720534465163992699133277631369246002549
+ X = 226260657342880764984259695048075261500
+ Msg = 74BC8D009250F4CD2E08BC556EE01449
+-Nonce = A2951BE393736E39E9D209FE978C7546
+ Ciphertext = 6D6ED1C6E519C628CACC7981A5BBE487F6E013B26448D711911698CEEAA4F746182A716602183A746FC35B022BD7B27EF079F7164309653D148D0CE91907FF6C4A9001A0CCA2A0A163F3F93200C2E40A957919CB84AC35B928E026F1827E6D4A9B986B592BE39861538414D5EA6980248FD3C3C0CDEE372F392D5AC46DB8EEFB
+
+ P = 13232376895198612407547930718267435757728527029623408872245156039757713029036368719146452186041204237350521785240337048752071462798273003935646236777459223
+ G = 11629401773565540073100961473632977008134185076958364415809981826641612629974728305105606061133984394938666464842000720534465163992699133277631369246002549
+ X = 190989497955271245954961490592364802400
+ Msg = 01AFE1A93EDB9CD3E3715523C952478D
+-Nonce = 9500DDCD404618F64A2063BC19941A6E
+ Ciphertext = 0636C3F1C63C54CAB4B48B6EF0ECBFF00BA6AB70DF4DB6266D0785351B37279D41D957D16CAB48C64035DCB2A1CD75BAC298C8ECAE8057D87071EADAA5DA6E2B69B5F353B5753F7E24DA81ABAD40059CD73CFA6E78CAB1C7DA418D55E5DBD42FA4F2B876A25B4AF63588C80E0DB11E8BAB1531960E951C08C1A68C8FAE0DA87C
+
+ P = 1418488780399624169246918906980830188668962659968489177172519612007411971965075884911751185624649475197807409457369163882960326663412481439463507475025544888587052733646843233033458377686354235239579046252542291754237282749312023983
+ G = 1351977104923085061876231022324913317418268765766371251774974499254352282996737121345129752664271877383194755574993089982460597274051441610498438524702048238124542105329402087161253933648442955133245175046317041420863434958965806440
+ X = 5693645782587047029911723275175292231768316497
+ Msg = 58E72BD0F04B11
+-Nonce = EF07721FF6B28A8A3B4EBC95C16B13A83649B7
+ Ciphertext = C7B6ACADBBCFD3A34EDA31CE9CA7F7889FBB2DF5C6C25793EB974591BF0EDE93637B6A95E8075BDB2A987039D92487665465C98AAD0C123FA00BB9736170E78069AA32DFBEB07099A0B7D439AA807A2D3D6F9F913EBC673F9F8CD5D3C0E9DD0D988EAC4D8204928C2DA8ECD1FA3A598FCBFFEF5017DB8542D123CF69E8C92EB956F10DC995AE6B6564967D5C12A07BA35607C54CC3F10A36FF3603DD7CC1490664610002977CE8C4A4EFFBD1421C902D4D8DFF81D014E1AB55F239E0F2FD28AB
+
+ P = 1418488780399624169246918906980830188668962659968489177172519612007411971965075884911751185624649475197807409457369163882960326663412481439463507475025544888587052733646843233033458377686354235239579046252542291754237282749312023983
+ G = 1351977104923085061876231022324913317418268765766371251774974499254352282996737121345129752664271877383194755574993089982460597274051441610498438524702048238124542105329402087161253933648442955133245175046317041420863434958965806440
+ X = 4008521039270359712424267366152273661245582878
+ Msg = C37AA41207A357DBCCFBE93DC45C5BD91D29FD29CBA29B26AC437A9B560C3BEA
+-Nonce = A36338E4D7815E6A4B178E951BEF073C6D5A7F
+ Ciphertext = D824C94623313298600CC20203F8A40006CAFCFC8F883C99AC09DBAE4B95E6DB9FB5737E24D9D7E39B603893076BC81A2BC0C0D608B32B353972B57066535DAAC49E3F7F2A0E243618EEE01C5AB3AFAE1D55E3A1DB33CF713E5187AD51D55144B1A108354ECA651E55F85F253FE73C1C15FA5EDDDA47467BD0425F09E3C4156548E71896659C618B84FD72BA176E2DEEECD8B15F2C05F870697EA464B88273742BD6ECBA5164424F34EBB9E13E31683A16712901818C7E5F502720FBCB075EA1
+
+ P = 1418488780399624169246918906980830188668962659968489177172519612007411971965075884911751185624649475197807409457369163882960326663412481439463507475025544888587052733646843233033458377686354235239579046252542291754237282749312023983
+ G = 1351977104923085061876231022324913317418268765766371251774974499254352282996737121345129752664271877383194755574993089982460597274051441610498438524702048238124542105329402087161253933648442955133245175046317041420863434958965806440
+ X = 5316253934868425065538718034591876558413406625
+ Msg = 36FDC0501B44AF
+-Nonce = 832BC01DB63F958D47B6962AEAA74C0831A6AB
+ Ciphertext = 62E46CDF100BADF4419215256BEC8427DD0388D1B60B5A8675532C0934351BA0036AF58032AB6C4DB829F1A0C8217FBF2CB9C10A5C60FF285919BCAF238E89FBAA4771CAD13D4A69AB2C1FFF0A44D2F9287F1E70D58210AE859074B3969EE800A9D1507BA48582BD1E03CC234B0CB11408BE0932763EDC99CA4BEC6E496A452237F920972C629714EA2F1FF212460C23B66DB56BC73E94743D32D2CD3536A17A136F56D7F7C24E3B8F102F48BBB21633279D3E584E71DC37B436104CA69A6BB3
+
+ P = 178011905478542266528237562450159990145232156369120674273274450314442865788737020770612695252123463079567156784778466449970650770920727857050009668388144034129745221171818506047231150039301079959358067395348717066319802262019714966524135060945913707594956514672855690606794135837542707371727429551343320695239
+ G = 49567166504681114998529684425585849617514862026978329597099192087961538717407709177883083441369264146939535263894140299406849834767828526204179623557679393249247253593623658376992386256295047165071989556654741504656225128772294708626157371448610928885819291350567633953878147205134001752476855481804967677085
+ X = 3756315909532643155590215634844150624450334340186095
+ Msg = DF72B687F62AFEA3A51195EE876E4C87708F7ABB8D2D5DD72B68256DAC6D
+-Nonce = 0B333C9C486C5F3A96F37D00133ADD18113376C9BE76
+ Ciphertext = 4156CF437A39C415B212AAA34C9AACAFA3F3113F53BB75E0BD3D759089E21754EF89B4BA1A8B37E5EDA13F8A2F87D16F03F3B6FE19A5CF799B17D83F7B5E9A225F324AAD7D46E80A1DAFCA337A3F500930A7831D1F3785763EB9A6994063CED033177E1CA2770B751B3053C1445ADFEAED790E49E4685A05B9563D1EF32BD321971D541B525D648EA7C8741D8FA7E46293D46A0F4345BE73EA4FAF1E4C16BCBE11C53BA0FCBA2975BD37F11FE5ADA8731CAED3C403EA6E43AE47ADAA7E28433404AD3ADE6AA8E12BFC374BADAAFB167F3AAF91DC6F8398003E5F8528E8D4773F800D48C8EDDAEDD72A3870E97679F946CE27FB692BC11677757A28F3899A3DA8
+
+ P = 178011905478542266528237562450159990145232156369120674273274450314442865788737020770612695252123463079567156784778466449970650770920727857050009668388144034129745221171818506047231150039301079959358067395348717066319802262019714966524135060945913707594956514672855690606794135837542707371727429551343320695239
+ G = 49567166504681114998529684425585849617514862026978329597099192087961538717407709177883083441369264146939535263894140299406849834767828526204179623557679393249247253593623658376992386256295047165071989556654741504656225128772294708626157371448610928885819291350567633953878147205134001752476855481804967677085
+ X = 4304232149632055597449717737864742436448127103739097
+ Msg = F73BB7E5C8A5619380
+-Nonce = 0AD9527B09EAD1E59B4A1CAF58C861B69A856AB8AA80
+ Ciphertext = C9881464A37749949D66D75CD9B7A8ACAD33DD1FAC7561F684E9CB5343D2ED15969D7EDB4135518B50F0FEC9A9559C1D5E44DAB42C14BBDE2D2711EA4D02D7F27D1A9BCFEC9E8B73FA64BA3C54707FDDE7D5BE695E17FB9D259FB576FD4E57D66C8F727DC236E2A6E9FD01709D34B8D09F7DD3890F003EBE616042B4E0A8A00F6C3F34DE7E002FE72A84AF8D014D64E8CD08B9B56CC3A6BBE6F966B92105A92C5ABF4F2BF735670622F6213FE9739FAD65692E1C0EBF708A47E18600A22972A5A3DA0F22D11C581D46F734151A083FF757E961351EB183B467A859FBB9ED1DAC396FA405701FD6E3A62EB126E93648C3C6DFA9C4DBF3C005880F4799F66B310E
+diff --git a/src/tests/data/pubkey/elgamal_encrypt.vec b/src/tests/data/pubkey/elgamal_encrypt.vec
+new file mode 100644
+index 0000000000..059eb1668d
+--- /dev/null
++++ b/src/tests/data/pubkey/elgamal_encrypt.vec
+@@ -0,0 +1,32 @@
++# These were generated by Botan and not checked against other implementations
++
++Group = modp/ietf/1024
++Secret = 0xCC13EE3533858E0F0024FFC935DC5BD297DEC9385AC8EF7E
++Msg = 1C
++Nonce = EEE23AAA149AF29E18EF8D66AD8D4BACB72076BAE583A297
++Ciphertext = D73F6E5CEF558B92C924FEC2329774ACD75E7CEA04D2485F07920EF4E5B86E361E23E42AB6F3A97F5B1F46218BF3C00E93A2EA981B8BB48EDD020A3F96D61FDA0F3E4D26F5538B2179B7D7E333CE78414F18E6CD0AE74C3F44FBFAC9121A3A6CF80C85E89280F9BC476078F9FD686A6500590B1AD75616C0A92BC73838A6D4437368304638242BCD628A72EA432FE7C1892922136B3C19B39990980185328E5BBD35DE42549819C8E301348320BA80602E751172D9ACAA8E0B67FB97996310BC0C14B9E40626FE54138851E4BC4CA4CB2F0A1F3D3F042556A4942B2B03B4C2F75E50260365865FEE0050DAC3604E78708715549FF878F1B337D6ABF8B695462F
++
++Group = modp/ietf/1536
++Secret = 0x8D81343C4994DAF21AD0E6CB88C74F55529925EC953381470B72B3C8
++Msg = 7F0CCACA157707BF03
++Nonce = F0A0844B268ECEABA04827E7CE9F960119E0053CFBA00ADA47604857
++Ciphertext = 2EDE1A9F975FCAF943AEEB51EB37EAEDF54C4D939D0DCF7C80874A3BF8601B511685B1FDE52E07D8894EA647C50E480DE7A48ACADD89F79EEB9411234507CE6AB8503BD47B284134E301A78BD7FAC8D8B15A5D1424B820FF3FE1F363FC88FF510183165F52EE022A55EC43D4DD75763297C13F9EE3BCD579ADBA6800348F0C6240F49744B385737926A770EDF67257E7F5654C478C614700B6D2D671A13B28006C11C499BEB29658EF10C3E2EEC390A972372EBF733BA6EE5F4D600AAE1DDDC87EFA6D9FB05CBC995F82C3EF47CF862715E17DF7CC948846E849661D5C82C6A120610D90BB2D373D189A0BF13175F551326ECACF2D349A4BD2D265FDAC716E4B0A5D850E7EDA92CF9F8863BF1CD31C3888BFD81500DA4C615575EE8FA27615EF8E4B9D23A53852B236057E15DA7FC5827668A7B8AA699D3F79201567F4F0DAF7D89919906486A66ABA689FFD9E3BB5F0D1C677CCC12EA29BBFE1083C4FC349EE7E236BC8DC02DEE063E7F7C7B719E3176739D55196A2B7E6C3AA2A543135AB8F
++
++Group = modp/ietf/2048
++Secret = 0xA9F666E685F4F0BAFFF22C407B28461591CBF43F8DA1A8C3B1510BB6AA3BCD6C
++Msg = D830F02AA1AE9328CF3F2C6CB7D86875
++Nonce = DFA4E0979DADE5A620C4B9ED87C205F34D7AE739761BCDD060A9EC530E066538
++Ciphertext = E8AC61EE6EA9DCBEDF5DD10247240E0FF3A6D1B1D2C9832A73C5EF2F96FB23C6FA571F9E407089ADAB459086B4331DBCBB3E5FC69B996748131D0D499EFF4F3654CEF8ED3C14C97C4985E5E0D6E0714E789F9D926CB26A23ACB52D6308CDB3C4DBF92F7A701513B133A0512A0CC16E13BCC7F983BC181C71A42252D48B113BAB4B861430AC6157E3043BD861C44D0804CCBB0B9D5BA599650DABE9FA7BF286EB08A97D11D5F88CB0157A4522E2C9F4EF53EB9D7679974C5AD86554EED49736D0D7B39461B92C73CBBEBAD8E92A6501293AE9A5BF0FBDA11BC743E032F78740F96F8CD71D30EA0F17F42181783C908A6008E339620CCB80226E9CDD7E5D50DEF9310DF03C971955CCF70557C9816049C2137CB7554998BD90B81AD549E9B65347E4BC798039BF05929DED052EE816EA3A87014B0D25E2E279B7736446201F52E542AA6E494BDC6D02A9A0479E1F90D5F3898A36AF7BA03E8F0BCBBF891A1C1B0B300EA664349E765EA331841ABC7963012C623318EF9B681711461ECC83EDC88722DE5E16FF1AB57B23F285CC5E75F6FCB46EEC9F919D1C089E7C045535E64A97F16662DF9CEFFB0E6C9C6402A43E47D1D073A5555A470E2451809234ABFD463A013D70288BA4A093E51FCED6A434886ED70490D63DFD809F27A773CDAC3D848A21C2937CA194C4FFBF8E50C05AEB3A530A7AB8B39B91A72EA45034A2FF8F16B1
++
++Group = modp/ietf/3072
++Secret = 0x981606068AE29B5B86E6F1E4E578010E43E1DBCB12504857CA6CDFC77913EFF0B3F563E1DDB40934B4F33099A6BF8EE8
++Msg = 0E738AF35B6AE8951E5C3BF8EB
++Nonce = F53B7EF9224D33392AE79CA3816755F066A2B15689B157FBA588CD5C247EFC9050DB2F84FA40C12E3493230D94D89306
++Ciphertext = 659C8E28BF6A26E5D55386E437F2B66282EB9F9ECA54522D8A1FDE6BC6C4D65E5412D030BDC9833F93E3653B7B58FFD66A2EBFB8AAF1F7BBB52C3CD43E08DDB3D2C73E26EEA988EEF9CFDC9C59872B4D2454A1F500911B4D3BD3EED99107FAF39D97A3302166AD5B0381ECAB769953406DD3FEB502D23587D9CF2C89F93FE6A73167E3734CD0676EE95F7C43A558A56E7B0264A6084875D1E7F2312FA7BA7145AAA5921F904EDDC7A6EC823C57AFE323E4368CD7D47CAF2F8A94D6D3117A8BE92BAF6F0392A20C7FCFE381789755B7B47B9C5496382FF26533EA7F911472F02E2F9E29CAC9CFF4AEB90C36E55A1AF5D0259B195E2824C7F6B40299D8A0858E162B3D9392E323F62B48DA629089902F16D01D1AB3DCFBAAB46F1E74ECA6560B3A97E85E9B88B8F11AA83F78E8E542B8A3B4C0E7B47220594979BC7DD12E97238EB4B91D23A8F2D5362CB8B08C1F07B3461AD0968FB3053F60ECC2B3C0E900A0A7C2924C3FA79CCB43B33B336B807C6F4B83A7AE0112BD72A13822E3CD0B2E2AF7717F2CB21BE02D8DB0EB3BCCF66836BD83C828C221569EFCAA53124D206CB51D3718BC1511799DEA0558DD6FDBFB06B3D96BAC451FE71A4244BD3CD6826BF27EA3CC7782C17DCAF52EAA944CEA734D011145F10A4132A271349A8BF1ED0D7F7EF2ABC7031475B4397574F8A7EC4F5480D85CF0CA1F7C69097A2A009FFD4927AA769FD821F64741812FE5DB996ECAD3265CE93DBA7B40532A2133FB8EE5066A0C5F91C7E0F3902B6CEA39D5BB4B59B2993B5DAA2B61FF589BF45613D1EF36D5F7D959E8255C0010EC439AAE1C9B682BAC92C2883ED279CD8C644A301150879EB8D37B217B36447CBAC37C132C0278AA8CB38A8596392E3A3CAA91573370ED44DF46311EEE878B63F947F2A28930133D343737502623D0C7D3EA5D8D8123D7963C70AD30CC865BCD68F96C1A13A3484AB4EF3828CE338BF8E087F2300B777D556974D5E23FAFD55AB54353BCA31BEC13003AC7258510578F96B8F1E2254E91768A78CF9FCC6D8CFB0493701D523F75EC25B37B623B5A73A28009DBC169A084E95D
++
++Group = modp/ietf/4096
++Secret = 0xB73A80EB48DB4DF3108BE1345281A1B39B4373BFE71CB4DA9F3594A94C525E2E288F06089F61C1D29D6A99EA775C05D6
++Msg = D413DAC9D341361F17EDCE1C46A04D343424251B
++Nonce = B9AFD0F2F97C677BD3088B032696E7928DD62AD20912367113CFE5ABEEB7B4DFAD22E30442B04571CDC683D9971DE257
++Ciphertext = 085E76D450C7FF0B2DB59D41D12596AD1B0D8AF877F5C63416D2B355ED137A5AEAB3B75AC4CBFB5168F37EC02724EA057ED5B9AAF0C40D5469FB9E068C7E090C6EB411CDFBC9A500294E2433A9F879F52F8359B0865128A76801B7C4E22D5A3A6279F755291ECC9454AC3C1F1395DA5FA8E25CD951FCBF9B569EED304B3B82B0198913FAFD0B9A3ED32A64B0E394F96C153D25FBFEF92ECB38F79F2DE12570A041C8B4E8ADB998D6A559BC9640EBA8B61A6D0387CF0CA621B6C3F60D464DE7D27D5347F79CABD09533219DD2CDA8BAB74E886E206409A94054CCF3EBBA570C33FE456BD6B0BEB564F406AF49400550AE01A21A68126C90E0B8295CB7F9C2F4C790D8B0FEFD1FC6BFF40A00737AF9EDA25A1BF00E7FEC8CE776C3D24C61EBF48049CE5B27E024B796566BA670090BAB1A6015C01DB57DFDDAD61240F151C61BC80C3BA320050D1E537D501611627531E41793C3468B87F28BF2281CE996957901BE6CE41FAB0F88467ECBC0DE6C5F60AB5A1AF21A9528B0E8BABAD56FA23F2AD3CBC521A8D54047F15F58FC9C5CD4BB322A0838EDAC053415CFED87FD0756FBFF6B052D385C2EED6FD4686E024F7175A9840DF7E74740FF368DA4DAEB879D7C0D265D51809BD6EC6A66717498A4998D0232586CA4C5F7858EBEC824821CDBD1133DA557612A398EA8F9AC959A39381FCF1D727D08136CAFC4D72E9A945043E6DE2C67F6B55C21B7EDBFDCEA2B63CF9A5BB931DFE76CA2BE5D3D964AA2C348E6DFBA4FFC4D5E463105E243BD20AF38531A70BE1DD4930F998E28C3182665507700976BC14438452179747E623B2E5328A3ED5925FA526AE897ACF67059D76D159CB31D85F03589A4874AB11A7E2BB680FCEF7A4CEBFD98B0DC18BC1AF838524107E3264C2FDACF883ED2701CF3306E83CB8E75F5ED148F3377A77474D47522596F50DADEFC149A91C619F4A9366771681CAE1A82AA57BB038E0180BD38C4323928E63FA890B85009B1A25C022AEE8DB4D7F4E34260677A22B3BC7F24089E98FC484B93EC95ED68D9D56B2F6DDBCE73AB844F5CBBD908E51651517F6920DC42F41B874EEB9DA244C4485D2A931C7A76E99D490E6B3D4AE44484CAE4B784A0773782D2B9CFB4D893E79D35CF4282CB9A70EA53700F49F6F47F374161D0B820690D2C99E3A2602B31E659E64E5D4D4BD111C73FD5AF47412748091E272947A307309F3732E04FA848AACC312ADD0323F09F7947788D9F2BC55BDB7DDDD1FE664C5C9E861F6052F8F94084927116CAB24C6B11FEE69ADD2BCED4CC7EF330519D287531861A75E0F00CA8E52CBE9B77E8F840168937222D5851C84195DD4E698AB8BB558A05026EBC09520A1B1F0BC44F699478A69E1C1384F37F16102DE90ED960CEFFD9EA299FB79D416F3AF6CCD1A022895CFE032AC65978486998E3714A56E3DBAE
++
+diff --git a/src/tests/data/pubkey/workfactor.vec b/src/tests/data/pubkey/workfactor.vec
+index 7d8999da84..1b7fa70235 100644
+--- a/src/tests/data/pubkey/workfactor.vec
++++ b/src/tests/data/pubkey/workfactor.vec
+@@ -24,20 +24,26 @@ ParamSize = 14400
+ Workfactor = 256
+
+ [DL_Exponent_Size]
++ParamSize = 192
++Workfactor = 191
++
++ParamSize = 512
++Workfactor = 192
++
+ ParamSize = 1024
+-Workfactor = 86
++Workfactor = 192
+
+ ParamSize = 1536
+-Workfactor = 103
++Workfactor = 224
+
+ ParamSize = 2048
+-Workfactor = 116
++Workfactor = 256
+
+ ParamSize = 3072
+-Workfactor = 138
++Workfactor = 384
+
+ ParamSize = 4096
+-Workfactor = 156
++Workfactor = 384
+
+ ParamSize = 8192
+-Workfactor = 208
++Workfactor = 512
+diff --git a/src/tests/test_elg.cpp b/src/tests/test_elgamal.cpp
+similarity index 54%
+rename from src/tests/test_elg.cpp
+rename to src/tests/test_elgamal.cpp
+index 6a6bdb8b54..cb69657251 100644
+--- a/src/tests/test_elg.cpp
++++ b/src/tests/test_elgamal.cpp
+@@ -1,5 +1,5 @@
+ /*
+-* (C) 2014,2015 Jack Lloyd
++* (C) 2014,2015,2020 Jack Lloyd
+ *
+ * Botan is released under the Simplified BSD License (see license.txt)
+ */
+@@ -17,15 +17,33 @@ namespace {
+
+ #if defined(BOTAN_HAS_ELGAMAL)
+
+-class ElGamal_KAT_Tests final : public PK_Encryption_Decryption_Test
++class ElGamal_Encrypt_Tests final : public PK_Encryption_Decryption_Test
+ {
+ public:
+- ElGamal_KAT_Tests()
++ ElGamal_Encrypt_Tests()
+ : PK_Encryption_Decryption_Test(
+ "ElGamal",
+- "pubkey/elgamal.vec",
+- "P,G,X,Msg,Nonce,Ciphertext",
+- "Padding") {}
++ "pubkey/elgamal_encrypt.vec",
++ "Group,Padding,Secret,Nonce,Msg,Ciphertext") {}
++
++ std::unique_ptr<Botan::Private_Key> load_private_key(const VarMap& vars) override
++ {
++ const Botan::BigInt x = vars.get_req_bn("Secret");
++ const Botan::DL_Group grp(vars.get_req_str("Group"));
++
++ std::unique_ptr<Botan::Private_Key> key(new Botan::ElGamal_PrivateKey(Test::rng(), grp, x));
++ return key;
++ }
++ };
++
++class ElGamal_Decrypt_Tests final : public PK_Decryption_Test
++ {
++ public:
++ ElGamal_Decrypt_Tests()
++ : PK_Decryption_Test(
++ "ElGamal",
++ "pubkey/elgamal_decrypt.vec",
++ "P,G,X,Msg,Ciphertext") {}
+
+ std::unique_ptr<Botan::Private_Key> load_private_key(const VarMap& vars) override
+ {
+@@ -53,7 +71,8 @@ class ElGamal_Keygen_Tests final : public PK_Key_Generation_Test
+ }
+ };
+
+-BOTAN_REGISTER_TEST("pubkey", "elgamal_encrypt", ElGamal_KAT_Tests);
++BOTAN_REGISTER_TEST("pubkey", "elgamal_encrypt", ElGamal_Encrypt_Tests);
++BOTAN_REGISTER_TEST("pubkey", "elgamal_decrypt", ElGamal_Decrypt_Tests);
+ BOTAN_REGISTER_TEST("pubkey", "elgamal_keygen", ElGamal_Keygen_Tests);
+
+ #endif
+diff --git a/src/tests/test_workfactor.cpp b/src/tests/test_workfactor.cpp
+index fe61f80e46..8c11869c73 100644
+--- a/src/tests/test_workfactor.cpp
++++ b/src/tests/test_workfactor.cpp
+@@ -34,7 +34,7 @@ class PK_Workfactor_Tests final : public Text_Based_Test
+ }
+ else if(type == "DL_Exponent_Size")
+ {
+- output = Botan::dl_exponent_size(param_size) / 2;
++ output = Botan::dl_exponent_size(param_size);
+ }
+
+ Test::Result result(type + " work factor calculation");
diff --git a/main/brotli/APKBUILD b/main/brotli/APKBUILD
index 45dec65e52..6805d652cd 100644
--- a/main/brotli/APKBUILD
+++ b/main/brotli/APKBUILD
@@ -24,6 +24,9 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/google/brotli/archive/v$pkgv
# 1.0.9-r0:
# - CVE-2020-8927
+# use sysroot when cross compiling to avoid libtool pulling in host libs
+[ "$CBUILD" != "$CHOST" ] && _cross_configure="--with-sysroot=$CBUILDROOT"
+
prepare() {
default_prepare
sed -i 's,/usr/bin/env bash,/bin/sh,' tests/*.sh
@@ -34,7 +37,9 @@ build() {
./configure \
--build=$CBUILD \
--host=$CHOST \
+ --target=$CTARGET \
--prefix=/usr \
+ $_cross_configure \
make
}
diff --git a/main/btrfs-progs/APKBUILD b/main/btrfs-progs/APKBUILD
index 6d789b8929..4fa734e51f 100644
--- a/main/btrfs-progs/APKBUILD
+++ b/main/btrfs-progs/APKBUILD
@@ -2,7 +2,7 @@
# Contributor: Łukasz Jendrysik <scadu@yandex.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=btrfs-progs
-pkgver=5.13
+pkgver=5.14.2
pkgrel=0
pkgdesc="BTRFS filesystem utilities"
url="https://btrfs.wiki.kernel.org"
@@ -11,13 +11,11 @@ license="GPL-2.0-or-later LGPL-3.0-or-later"
depends_dev="linux-headers"
makedepends="$depends_dev acl-dev asciidoc attr-dev autoconf automake
e2fsprogs-dev libtool lzo-dev py3-setuptools python3-dev util-linux-dev
- xmlto zlib-dev zstd-dev"
+ xmlto zlib-dev zstd-dev eudev-dev"
subpackages="$pkgname-doc $pkgname-static $pkgname-dev
$pkgname-bash-completion
py3-$pkgname:py3 $pkgname-libs $pkgname-extra"
-source="https://www.kernel.org/pub/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v$pkgver.tar.xz
- fix-ppc64le.patch
- "
+source="https://www.kernel.org/pub/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v$pkgver.tar.xz"
builddir="$srcdir/$pkgname-v$pkgver"
prepare() {
@@ -73,6 +71,5 @@ extra() {
}
sha512sums="
-7832ca02b77410edd8d80f10c6f1482dee944073518dbacd5773e70f27b7c632231ea66bdb64aa4611869465c15d2d60d364bfd25c2e40e0a2c198edbf9741cd btrfs-progs-v5.13.tar.xz
-4d382556df2956f4f98c33c503e711bd894be8e4728338e0a7cff33e3314926fbd0456e4841eb5826ebfb4700f6472a91bb73ef21a6eb84acad93bcc55b06fb5 fix-ppc64le.patch
+dc1a73e49dd94ccd8128c197d99f112977b16350d22bc0ca32247211314a3fec66de73827305bf24ef8e0571fc890f00378d0ec3a82988f0ee54f5db10f6578c btrfs-progs-v5.14.2.tar.xz
"
diff --git a/main/btrfs-progs/fix-ppc64le.patch b/main/btrfs-progs/fix-ppc64le.patch
deleted file mode 100644
index 8a8dbc1263..0000000000
--- a/main/btrfs-progs/fix-ppc64le.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-Fix error: 'NAME_MAX' undeclared (first use in this function)
---- a/cmds/filesystem-usage.c
-+++ b/cmds/filesystem-usage.c
-@@ -24,6 +24,7 @@
- #include <stdarg.h>
- #include <getopt.h>
- #include <fcntl.h>
-+#include <limits.h>
-
- #include "common/utils.h"
- #include "kerncompat.h"
diff --git a/main/bubblewrap/APKBUILD b/main/bubblewrap/APKBUILD
index 17af9fcb11..b3fad96bde 100644
--- a/main/bubblewrap/APKBUILD
+++ b/main/bubblewrap/APKBUILD
@@ -1,15 +1,15 @@
# Contributor: Timo Teräs <timo.teras@iki.fi>
# Maintainer: Timo Teräs <timo.teras@iki.fi>
pkgname=bubblewrap
-pkgver=0.4.1
-pkgrel=2
+pkgver=0.5.0
+pkgrel=0
pkgdesc="Unprivileged sandboxing tool"
url="https://github.com/containers/bubblewrap"
arch="all"
license="LGPL-2.0-or-later"
options="!check" # Testsuite fails
makedepends="autoconf automake libcap-dev docbook-xsl"
-subpackages="$pkgname-doc $pkgname-bash-completion:bashcomp:noarch"
+subpackages="$pkgname-doc $pkgname-bash-completion $pkgname-zsh-completion"
source="bubblewrap-$pkgver.tar.gz::https://github.com/containers/bubblewrap/archive/v$pkgver.tar.gz"
# secfixes:
@@ -38,13 +38,6 @@ package() {
make install DESTDIR="$pkgdir"
}
-bashcomp() {
- pkgdesc="Bash completions for $pkgname"
- depends=""
- install_if="$pkgname=$pkgver-r$pkgrel bash-completion"
-
- mkdir -p "$subpkgdir"/usr/share/
- mv "$pkgdir"/usr/share/bash-completion/ "$subpkgdir"/usr/share/
-}
-
-sha512sums="83e036e242503e1364b2d0052bba5127175891203c57bd22ba47a1b1e934fdca64ca620cd0e48c903fa2bc7cdcf92339b8a7fcb8716b54c2e28034b6d6f86adc bubblewrap-0.4.1.tar.gz"
+sha512sums="
+9d1faa02aaf78a8005d5f032cfc708d9823b5d110bd35f600a7d075122eeda785db72dd5c5e416a35ade437cd0ff9b176d24aea980971e304600e03c793d1865 bubblewrap-0.5.0.tar.gz
+"
diff --git a/main/busybox-initscripts/APKBUILD b/main/busybox-initscripts/APKBUILD
index 6e39de7417..f86833cabc 100644
--- a/main/busybox-initscripts/APKBUILD
+++ b/main/busybox-initscripts/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=busybox-initscripts
-pkgver=3.2
-pkgrel=2
+pkgver=3.3
+pkgrel=1
pkgdesc="Init scripts for busybox daemons"
url="https://git.alpinelinux.org/aports/tree/main/busybox-initscripts"
arch="noarch"
@@ -43,7 +43,8 @@ EOF
chmod +x "$pkgdir"/etc/acpi/PWRF/00000080
}
-sha512sums="dd548670114a92404b8e35fb915fdbe5994498b05b0a418583271c3dd72fb7800950e42c095c902a014eb198c046b8a346d43dccd8e7a158048ae33767c572ed acpid.initd
+sha512sums="
+dd548670114a92404b8e35fb915fdbe5994498b05b0a418583271c3dd72fb7800950e42c095c902a014eb198c046b8a346d43dccd8e7a158048ae33767c572ed acpid.initd
c9d0fb0f8cc27d661d3b4e58c56eb598ca368890576e18ffffd42efdf68ba35537656be9be319b2e2818aa0152d3ca8611bece2433512fbfcd4eed7988765549 crond.initd
612a7ffb475fd23d33b2a7266b621537ca59b4abd8cb5a9ce03771800ec4f7622a8ff380320f8d768291e4d1a68adfff28f369776a80125940ee40b2e4a5db4d dnsd.initd
66bfd7d2a03f4e8a50f08b7057091bfef8e36001eb7c07574ec45da6d75db05a88ae37dbd51e3e3fc7b00a784bf69f8416682ce0454ca16cc072358abdf4d2ce httpd.initd
@@ -63,9 +64,10 @@ b0ba67585f39d83320ed6de183d7463a0e163807b9f3dc6f0baa212236056f22aeb2c5399dfdcd54
bf8173ee33a5d2b61cbdbc1b070e599a17a21e5433a0d8aa9beef71e4ac831304076af8e7e58dc594cdee61562329793afdc57af91e5496bf5fffb9b734a3d9c syslog.confd
359af0a4a1841dd6557eaf3e71d39f0d7a2687bad6a8fc6ef436eccf72a40f85c6400a3b7880c7f64d8e460b6af8a0ff3dd5ffc3a4b1aa8eb0d8f7eaf99ee3e4 watchdog.confd
acbba3385fb2c416362eb9176f24146b617a2e394ee0e00b9eff89350f82468a5ab8396f4f52b0aaf03d341ac6150c73182e808fa3f29a2dc71c69271cdfb811 loadkmap.confd
-cb269ed1ede0714dfc767d03cc0253aed3b30cec74a19d792bad42b844a942941c7e9f2c54e12c85ae2ceef0f173d38b91fe2376d91ffd55b3093f5cf4341fe4 mdev.conf
+085a5a722183a0d5d99c3027efe3a213a009fb8adf4d0aaba85b6d54f180302505ca35a59369ed8601546ee70cd637c271558ad1a9bb731738b3a33ea03ac906 mdev.conf
ebd82f935da2ca89097234dd8a8f47e179a423652c151123a1f3343f3e1e7bfaba2b8800380e988d4e8f4294545d3a9ab6708ae2e77c5b108b5f091bbce8f94a dvbdev
0142234d0bda86ad1e5f88f1da34669e5fda46a0fd52ce507bd49ce74d2b7c12c323e8db863bccb924e6d632b568db8b243361b217c5b2e1d92a25feb6e62dec ide_links
b2dcf0ded9264334d79fbbb05dd12d649dc3119a060db5893f0e8aeca2141323961c3ba4c822a0ffb00dba848742d5cb374dc77e776b57cecde352a3e8e30f8a usbdev
392c40d223bdff59a624bd67907c06cff9c1b5468c25c19e10dbc3cef3208275d93966e760f140d71a86cb36ec796ea08dbaa767b40c12e9326c3c72964b28a8 usbdisk_link
-5db6fa8bbb2d891212187c598cd8703277b3fcb95b5dba6628f7128eb48cc7c1bf4c53885e9d870999c8c95d2fe9cd27609b523596dc553c31b6f72a452a0118 xvd_links"
+5db6fa8bbb2d891212187c598cd8703277b3fcb95b5dba6628f7128eb48cc7c1bf4c53885e9d870999c8c95d2fe9cd27609b523596dc553c31b6f72a452a0118 xvd_links
+"
diff --git a/main/busybox-initscripts/mdev.conf b/main/busybox-initscripts/mdev.conf
index 5285139b53..e59c3ec26f 100644
--- a/main/busybox-initscripts/mdev.conf
+++ b/main/busybox-initscripts/mdev.conf
@@ -77,6 +77,9 @@ sequencer.* root:audio 0660 >sound/
SUBSYSTEM=sound;.* root:audio 0660
+# virtio-ports
+SUBSYSTEM=virtio-ports;vport.* root:root 0600 @mkdir -p virtio-ports; ln -s ../$MDEV virtio-ports/$(cat /sys/class/virtio-ports/$MDEV/name)
+
# misc stuff
agpgart root:root 0660 >misc/
psaux root:root 0660 >misc/
diff --git a/main/busybox/0001-echo-do-not-assume-that-free-leaves-errno-unmodified.patch b/main/busybox/0001-echo-do-not-assume-that-free-leaves-errno-unmodified.patch
deleted file mode 100644
index ab445baedf..0000000000
--- a/main/busybox/0001-echo-do-not-assume-that-free-leaves-errno-unmodified.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From ffd2a7e631ddf25ee7097fc64b45283f7f8910d3 Mon Sep 17 00:00:00 2001
-From: Natanael Copa <ncopa@alpinelinux.org>
-Date: Thu, 21 Jan 2021 14:12:51 +0100
-Subject: [PATCH] echo: do not assume that free() leaves errno unmodified
-
-musl libc's mallocng free() may modify errno if kernel does not support
-MADV_FREE which causes echo to echo with error when it shouldn't.
-
-Future versions of POSIX[1] will require that free() leaves errno
-unmodified but til then, do not rely free() implementation.
-
-Should fix downstream issues:
-https://github.com/alpinelinux/docker-alpine/issues/134
-https://gitlab.alpinelinux.org/alpine/aports/-/issues/12311
-
-Bloatcheck on x86_64:
-
-function old new delta
-echo_main 414 406 -8
-------------------------------------------------------------------------------
-(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-8) Total: -8
-bytes
- text data bss dec hex filename
- 881114 15196 2000 898310 db506 busybox_old
- 881106 15196 2000 898302 db4fe busybox_unstripped
----
- coreutils/echo.c | 11 +++++------
- 1 file changed, 5 insertions(+), 6 deletions(-)
-
-diff --git a/coreutils/echo.c b/coreutils/echo.c
-index b3828894c..002832ead 100644
---- a/coreutils/echo.c
-+++ b/coreutils/echo.c
-@@ -97,6 +97,7 @@ int echo_main(int argc UNUSED_PARAM, char **argv)
- #else
- char nflag = 1;
- char eflag = 0;
-+ int err;
-
- while ((arg = *++argv) != NULL) {
- char n, e;
-@@ -184,14 +185,12 @@ int echo_main(int argc UNUSED_PARAM, char **argv)
-
- do_write:
- /* Careful to error out on partial writes too (think ENOSPC!) */
-- errno = 0;
-- /*r =*/ full_write(STDOUT_FILENO, buffer, out - buffer);
-- free(buffer);
-- if (/*WRONG:r < 0*/ errno) {
-+ err = full_write(STDOUT_FILENO, buffer, out - buffer) != out - buffer;
-+ if (err) {
- bb_simple_perror_msg(bb_msg_write_error);
-- return 1;
- }
-- return 0;
-+ free(buffer);
-+ return err;
- }
-
- /*
---
-2.30.0
-
diff --git a/main/busybox/0001-lineedit-fix-tab-completion-with-equal-sign.patch b/main/busybox/0001-lineedit-fix-tab-completion-with-equal-sign.patch
deleted file mode 100644
index ee2435542d..0000000000
--- a/main/busybox/0001-lineedit-fix-tab-completion-with-equal-sign.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 1f8e69eb81f05503c498e86636dd87d6f4306f6b Mon Sep 17 00:00:00 2001
-From: Natanael Copa <ncopa@alpinelinux.org>
-Date: Fri, 9 Apr 2021 16:49:21 +0200
-Subject: [PATCH] lineedit: fix tab completion with equal sign
-
-Fix tab completion for the path when equal sign (=) is used. For
-example: dd if=/dev/ze<tab>
-
-Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
----
- libbb/lineedit.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libbb/lineedit.c b/libbb/lineedit.c
-index b0adcf140..2cae4711a 100644
---- a/libbb/lineedit.c
-+++ b/libbb/lineedit.c
-@@ -1071,7 +1071,7 @@ static NOINLINE int build_match_prefix(char *match_buf)
- continue;
- for (--i; i >= 0; i--) {
- int cur = int_buf[i];
-- if (cur == ' ' || cur == '<' || cur == '>' || cur == '|' || cur == '&') {
-+ if (cur == ' ' || cur == '<' || cur == '>' || cur == '|' || cur == '&' || cur == '=') {
- remove_chunk(int_buf, 0, i + 1);
- break;
- }
---
-2.31.1
-
diff --git a/main/busybox/0001-properly-fix-wget-https-support.patch b/main/busybox/0001-properly-fix-wget-https-support.patch
index f628901c4b..7e59be7030 100644
--- a/main/busybox/0001-properly-fix-wget-https-support.patch
+++ b/main/busybox/0001-properly-fix-wget-https-support.patch
@@ -1,4 +1,4 @@
-From 50fff6ca286c9efcc43dbd25d672fee1e427b7c6 Mon Sep 17 00:00:00 2001
+From ad8843a3df89aabfa6ebae841de32f22a48c2166 Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Wed, 30 May 2018 09:52:20 +0000
Subject: [PATCH] properly fix wget https support
@@ -9,18 +9,18 @@ See: https://git.alpinelinux.org/cgit/aports/commit/?id=1d0560a9b6b5597b191e5aff
1 file changed, 12 insertions(+), 9 deletions(-)
diff --git a/networking/wget.c b/networking/wget.c
-index 6a8c08324..a39766a1f 100644
+index 6a9604421..96dd4c403 100644
--- a/networking/wget.c
+++ b/networking/wget.c
-@@ -51,7 +51,6 @@
- //it also enables FTPS support, but it's not well tested yet
+@@ -57,7 +57,6 @@
+ //config: bool "Support HTTPS using internal TLS code"
//config: default y
//config: depends on WGET
-//config: select TLS
//config: help
//config: wget will use internal TLS code to connect to https:// URLs.
- //config: Note:
-@@ -736,10 +735,8 @@ static void spawn_ssl_client(const char *host, int network_fd, int flags)
+ //config: It also enables FTPS support, but it's not well tested yet.
+@@ -760,10 +759,8 @@ static void spawn_ssl_client(const char *host, int network_fd, int flags)
int pid;
char *servername, *p;
@@ -33,7 +33,7 @@ index 6a8c08324..a39766a1f 100644
servername = xstrdup(host);
p = strrchr(servername, ':');
-@@ -756,14 +753,14 @@ static void spawn_ssl_client(const char *host, int network_fd, int flags)
+@@ -780,14 +777,14 @@ static void spawn_ssl_client(const char *host, int network_fd, int flags)
close(sp[0]);
xmove_fd(sp[1], 0);
xdup2(0, 1);
@@ -50,7 +50,7 @@ index 6a8c08324..a39766a1f 100644
xmove_fd(network_fd, 3);
argv[0] = (char*)"ssl_client";
-@@ -771,8 +768,14 @@ static void spawn_ssl_client(const char *host, int network_fd, int flags)
+@@ -795,8 +792,14 @@ static void spawn_ssl_client(const char *host, int network_fd, int flags)
//TODO: if (!is_ip_address(servername))...
argv[2] = (char*)"-n";
argv[3] = servername;
diff --git a/main/busybox/0001-rev-correct-output-for-long-input-lines.patch b/main/busybox/0001-rev-correct-output-for-long-input-lines.patch
new file mode 100644
index 0000000000..ba40a2f0a2
--- /dev/null
+++ b/main/busybox/0001-rev-correct-output-for-long-input-lines.patch
@@ -0,0 +1,91 @@
+From 4357569fdc7bc482dea0ef0bff57a70e7f06523c Mon Sep 17 00:00:00 2001
+From: Ron Yorston <rmy@pobox.com>
+Date: Sat, 21 Aug 2021 09:36:27 +0100
+Subject: rev: correct output for long input lines
+
+The input buffer is initialised to a reasonable size and extended
+if necessary. When this happened the offset into the buffer wasn't
+reset to zero so subsequent lines were appended to the long line.
+
+Fix this and add some tests.
+
+function old new delta
+rev_main 377 368 -9
+------------------------------------------------------------------------------
+(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-9) Total: -9 bytes
+
+Signed-off-by: Ron Yorston <rmy@pobox.com>
+Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
+---
+ testsuite/rev.tests | 46 ++++++++++++++++++++++++++++++++++++++++++++++
+ util-linux/rev.c | 1 +
+ 2 files changed, 47 insertions(+)
+ create mode 100755 testsuite/rev.tests
+
+diff --git a/testsuite/rev.tests b/testsuite/rev.tests
+new file mode 100755
+index 000000000..dd65dcd3b
+--- /dev/null
++++ b/testsuite/rev.tests
+@@ -0,0 +1,46 @@
++#!/bin/sh
++# Copyright 2021 by Ron Yorston
++# Licensed under GPLv2, see file LICENSE in this source tree.
++
++. ./testing.sh
++
++# testing "test name" "commands" "expected result" "file input" "stdin"
++
++testing "rev works" \
++ "rev input" \
++"\
++1 enil
++
++3 enil
++" \
++ "line 1\n\nline 3\n" \
++ ""
++
++testing "rev file with missing newline" \
++ "rev input" \
++"\
++1 enil
++
++3 enil" \
++ "line 1\n\nline 3" \
++ ""
++
++testing "rev file with NUL character" \
++ "rev input" \
++"\
++nil
++3 enil
++" \
++ "lin\000e 1\n\nline 3\n" \
++ ""
++
++testing "rev file with long line" \
++ "rev input" \
++"\
+++--------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------
++cba
++" \
++ "---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+---------------+--------------+\nabc\n" \
++ ""
++
++exit $FAILCOUNT
+diff --git a/util-linux/rev.c b/util-linux/rev.c
+index d439b4da8..63b005c67 100644
+--- a/util-linux/rev.c
++++ b/util-linux/rev.c
+@@ -109,6 +109,7 @@ int rev_main(int argc UNUSED_PARAM, char **argv)
+ strrev(buf, strlen(buf));
+ #endif
+ fputs_stdout(buf);
++ pos = 0;
+ }
+ fclose(fp);
+ } while (*argv);
+--
+cgit v1.2.3
+
diff --git a/main/busybox/0004-app-location-for-cpio-vi-and-lspci.patch b/main/busybox/0004-app-location-for-cpio-vi-and-lspci.patch
index ca558f8afb..964db5df6a 100644
--- a/main/busybox/0004-app-location-for-cpio-vi-and-lspci.patch
+++ b/main/busybox/0004-app-location-for-cpio-vi-and-lspci.patch
@@ -1,4 +1,4 @@
-From d4bc80ad7bf9b846b38c903a087c5ed318e848fb Mon Sep 17 00:00:00 2001
+From 3f44fe588d0d68ff5897928b65c0749505937d8d Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Tue, 27 Dec 2016 20:46:59 +0100
Subject: [PATCH] app location for cpio, vi and lspci
@@ -11,7 +11,7 @@ Adjust location to where alpine linux installs them
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/archival/cpio.c b/archival/cpio.c
-index 221667112..a6d7630a4 100644
+index d84f6937d..29e7d396a 100644
--- a/archival/cpio.c
+++ b/archival/cpio.c
@@ -39,7 +39,7 @@
@@ -24,12 +24,12 @@ index 221667112..a6d7630a4 100644
//kbuild:lib-$(CONFIG_CPIO) += cpio.o
diff --git a/editors/vi.c b/editors/vi.c
-index f103e0dc0..89397710c 100644
+index 3e1bd0820..774da291f 100644
--- a/editors/vi.c
+++ b/editors/vi.c
-@@ -161,7 +161,7 @@
- //config: Unless you want more (or less) frequent "undo points" while typing,
- //config: you should probably leave this unchanged.
+@@ -176,7 +176,7 @@
+ //config: Enable more verbose reporting of the results of yank, change,
+ //config: delete, undo and substitution commands.
-//applet:IF_VI(APPLET(vi, BB_DIR_BIN, BB_SUID_DROP))
+//applet:IF_VI(APPLET(vi, BB_DIR_USR_BIN, BB_SUID_DROP))
@@ -37,10 +37,10 @@ index f103e0dc0..89397710c 100644
//kbuild:lib-$(CONFIG_VI) += vi.o
diff --git a/util-linux/lspci.c b/util-linux/lspci.c
-index 0000fbfda..34189d2b5 100644
+index c22cbcc1e..70a623650 100644
--- a/util-linux/lspci.c
+++ b/util-linux/lspci.c
-@@ -16,7 +16,7 @@
+@@ -15,7 +15,7 @@
//config:
//config: This version uses sysfs (/sys/bus/pci/devices) only.
diff --git a/main/busybox/0005-udhcpc-set-default-discover-retries-to-5.patch b/main/busybox/0005-udhcpc-set-default-discover-retries-to-5.patch
index 086959468c..ea15834569 100644
--- a/main/busybox/0005-udhcpc-set-default-discover-retries-to-5.patch
+++ b/main/busybox/0005-udhcpc-set-default-discover-retries-to-5.patch
@@ -1,18 +1,41 @@
-From 38d7a4f9edda522ea504930ede17491a6c3253b3 Mon Sep 17 00:00:00 2001
+From 7f626404022bb69cd314e2eea33a721d75cc933d Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
-Date: Thu, 4 Aug 2016 11:08:35 +0200
+Date: Thu, 4 Aug 2016 12:46:55 +0200
Subject: [PATCH] udhcpc: set default discover retries to 5
Some slower nics needs more attempts to get a lease
---
- networking/udhcp/dhcpc.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
+ networking/udhcp/d6_dhcpc.c | 4 ++--
+ networking/udhcp/dhcpc.c | 4 ++--
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+diff --git a/networking/udhcp/d6_dhcpc.c b/networking/udhcp/d6_dhcpc.c
+index 8d11a7539..794441953 100644
+--- a/networking/udhcp/d6_dhcpc.c
++++ b/networking/udhcp/d6_dhcpc.c
+@@ -1135,7 +1135,7 @@ static void client_background(void)
+ //usage: "\n -s PROG Run PROG at DHCP events (default "CONFIG_UDHCPC_DEFAULT_SCRIPT")"
+ //usage: "\n -B Request broadcast replies"
+ //usage: "\n -t N Send up to N discover packets"
+-//usage: "\n -T SEC Pause between packets (default 3)"
++//usage: "\n -T SEC Pause between packets (default 5)"
+ //usage: "\n -A SEC Wait if lease is not obtained (default 20)"
+ //usage: USE_FOR_MMU(
+ //usage: "\n -b Background if lease is not obtained"
+@@ -1180,7 +1180,7 @@ int udhcpc6_main(int argc UNUSED_PARAM, char **argv)
+ llist_t *list_x = NULL;
+ int tryagain_timeout = 20;
+ int discover_timeout = 3;
+- int discover_retries = 3;
++ int discover_retries = 5;
+ struct in6_addr srv6_buf;
+ struct in6_addr ipv6_buf;
+ struct in6_addr *requested_ipv6;
diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c
-index 102178a4f..1a0152d0c 100644
+index 331f13a8c..0c1b58d7c 100644
--- a/networking/udhcp/dhcpc.c
+++ b/networking/udhcp/dhcpc.c
-@@ -1165,7 +1165,7 @@ static void client_background(void)
+@@ -1173,7 +1173,7 @@ static void client_background(void)
//usage: "\n -p FILE Create pidfile"
//usage: "\n -B Request broadcast replies"
//usage: "\n -t N Send up to N discover packets (default 3)"
@@ -21,12 +44,12 @@ index 102178a4f..1a0152d0c 100644
//usage: "\n -A SEC Wait if lease is not obtained (default 20)"
//usage: USE_FOR_MMU(
//usage: "\n -b Background if lease is not obtained"
-@@ -1210,7 +1210,7 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv)
+@@ -1217,7 +1217,7 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv)
llist_t *list_x = NULL;
int tryagain_timeout = 20;
int discover_timeout = 3;
- int discover_retries = 3;
+ int discover_retries = 5;
- uint32_t server_addr = server_addr; /* for compiler */
+ uint32_t server_id = server_id; /* for compiler */
uint32_t requested_ip = 0;
- uint32_t xid = xid; /* for compiler */
+ int packet_num;
diff --git a/main/busybox/0012-udhcpc-Don-t-background-if-n-is-given.patch b/main/busybox/0012-udhcpc-Don-t-background-if-n-is-given.patch
index 8d4a488014..523768bb94 100644
--- a/main/busybox/0012-udhcpc-Don-t-background-if-n-is-given.patch
+++ b/main/busybox/0012-udhcpc-Don-t-background-if-n-is-given.patch
@@ -1,6 +1,6 @@
-From a74c9074136192461b459df3f10a08ad416f4cb4 Mon Sep 17 00:00:00 2001
+From 0cd01228c1e4173683637c4e582448656b26c05f Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
-Date: Thu, 6 Jul 2017 13:39:15 +0200
+Date: Thu, 6 Jul 2017 11:40:14 +0200
Subject: [PATCH] udhcpc: Don't background if -n is given
we need add -b to our udhcpc options to prevent boot forever if there are no
@@ -21,12 +21,12 @@ See also: https://bugs.busybox.net/11691
2 files changed, 14 insertions(+), 26 deletions(-)
diff --git a/networking/udhcp/d6_dhcpc.c b/networking/udhcp/d6_dhcpc.c
-index fc2d672b7..bf9363bac 100644
+index 8d11a7539..0284a0fd8 100644
--- a/networking/udhcp/d6_dhcpc.c
+++ b/networking/udhcp/d6_dhcpc.c
-@@ -1432,25 +1432,19 @@ int udhcpc6_main(int argc UNUSED_PARAM, char **argv)
- }
+@@ -1401,25 +1401,19 @@ int udhcpc6_main(int argc UNUSED_PARAM, char **argv)
leasefail:
+ change_listen_mode(LISTEN_NONE);
d6_run_script_no_option("leasefail");
+ if (opt & OPT_n) { /* abort if no lease */
+ bb_simple_info_msg("no lease, failing");
@@ -54,17 +54,17 @@ index fc2d672b7..bf9363bac 100644
+ opt = ((opt & ~OPT_b) | OPT_f);
}
+#endif
- /* wait before trying again */
+ /* Wait before trying again */
timeout = tryagain_timeout;
packet_num = 0;
diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c
-index 102178a4f..f20d3ddb9 100644
+index bbf95caca..8e034ac8a 100644
--- a/networking/udhcp/dhcpc.c
+++ b/networking/udhcp/dhcpc.c
-@@ -1438,25 +1438,19 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv)
- }
+@@ -1456,25 +1456,19 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv)
leasefail:
- udhcp_run_script(NULL, "leasefail");
+ change_listen_mode(LISTEN_NONE);
+ d4_run_script(NULL, "leasefail");
+ if (opt & OPT_n) { /* abort if no lease */
+ bb_simple_info_msg("no lease, failing");
+ retval = 1;
@@ -91,6 +91,6 @@ index 102178a4f..f20d3ddb9 100644
+ opt = ((opt & ~OPT_b) | OPT_f);
}
+#endif
- /* wait before trying again */
+ /* Wait before trying again */
timeout = tryagain_timeout;
packet_num = 0;
diff --git a/main/busybox/APKBUILD b/main/busybox/APKBUILD
index ecf9a3ce1e..edf2508a70 100644
--- a/main/busybox/APKBUILD
+++ b/main/busybox/APKBUILD
@@ -3,14 +3,14 @@
# Contributor: Michal Artazov <michal@artazov.cz>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=busybox
-pkgver=1.33.1
-pkgrel=4
+pkgver=1.34.1
+pkgrel=1
pkgdesc="Size optimized toolbox of many common UNIX utilities"
url="https://busybox.net/"
arch="all"
license="GPL-2.0-only"
makedepends_build="perl"
-makedepends_host="linux-headers openssl-dev libretls-dev"
+makedepends_host="linux-headers openssl1.1-compat-dev libretls-dev"
makedepends="$makedepends_build $makedepends_host"
checkdepends="zip"
provides="/bin/sh"
@@ -21,7 +21,8 @@ options="suid !check"
replaces="busybox-initscripts" # move of default.script
triggers="busybox.trigger=/bin:/usr/bin:/sbin:/usr/sbin:/lib/modules/*"
source="https://busybox.net/downloads/busybox-$pkgver.tar.bz2
- 0001-lineedit-fix-tab-completion-with-equal-sign.patch
+ 0001-rev-correct-output-for-long-input-lines.patch
+
0001-nologin-Install-applet-to-sbin-instead-of-usr-sbin.patch
0001-adduser-default-to-sbin-nologin-as-shell-for-system-.patch
0001-properly-fix-wget-https-support.patch
@@ -36,7 +37,6 @@ source="https://busybox.net/downloads/busybox-$pkgver.tar.bz2
0010-Add-flag-for-not-following-symlinks-when-recursing.patch
0012-udhcpc-Don-t-background-if-n-is-given.patch
- 0001-echo-do-not-assume-that-free-leaves-errno-unmodified.patch
0001-ash-add-built-in-BB_ASH_VERSION-variable.patch
0001-cpio-add-support-for-ignore-devno-like-GNU-cpio.patch
@@ -89,9 +89,6 @@ build() {
${CC:-${CROSS_COMPILE}gcc} ${CPPFLAGS} ${CFLAGS} $(pkg-config --cflags libtls) \
"$srcdir"/ssl_client.c -o "$_dyndir"/ssl_client ${LDFLAGS} $(pkg-config --libs libtls)
- # no timestamp in build
- export KCONFIG_NOTIMESTAMP=1
-
# build dynamic
cd "$_dyndir"
msg "Building dynamic busybox"
@@ -218,7 +215,7 @@ ssl_client() {
pkgdesc="EXternal ssl_client for busybox wget"
local _sslver=$(pkg-config --modversion libssl)
# automatically pull in if both busybox and libssl is installed
- install_if="$pkgname=$pkgver-r$pkgrel libssl${_sslver%.*}"
+ install_if="$pkgname=$pkgver-r$pkgrel libssl${_sslver%.*.*}"
mkdir -p "$subpkgdir"/usr/bin
install -m755 "$_dyndir"/ssl_client \
"$subpkgdir"/usr/bin/ssl_client
@@ -232,28 +229,27 @@ ifupdown() {
}
sha512sums="
-d24931432f65e4e79cf54a6c2b91c9cafba817b637d337f456ce8f505434fc06c4345c65cde4fe2a019650a8a089a6f5336bfafb5ef64a4f14659a9d0b3ddb1a busybox-1.33.1.tar.bz2
-84a6599d327d33350432d1f332006d8ce04363ecc53836a98a6180e0cc32fbc4f12c3f9f2b112a1cb2e787dce705b04562347d008465256e796c808433a188b6 0001-lineedit-fix-tab-completion-with-equal-sign.patch
+fb7e53a56c07b1098a12ee7232ad5401b147816648a0619b3b5358fdcf0915cfbb054500c0e0dd4acb3bc0a93a584b62bc5448e1f16b28004f58b39518a13b9d busybox-1.34.1.tar.bz2
+054e766429887e610c4a17846f495b7099bb419217f5fcc0dce0ed62b8740c2d4ee53b12a609b1830c26ac2af1eca9beb6140063b7d2665939f99f8664dfcc05 0001-rev-correct-output-for-long-input-lines.patch
ead3403578c071c2216de17ab0543984c1f1509c12c062f03af49141547c3ea21356f3e8f0f0695550f05a41a1379dd73fc3cc18dcd78addbb411f247351e353 0001-nologin-Install-applet-to-sbin-instead-of-usr-sbin.patch
a2787a3ecaf6746dadef62166e8ee6ecaa166147e5ad8b917c5838536057c875bab5f9cf40c3e05eba74d575484ac662929ac3799d58432d3a99ac46f364f302 0001-adduser-default-to-sbin-nologin-as-shell-for-system-.patch
-e858bb6a0065d0b0cd757df1fb0eb7af1bc1890b276f20706f828b34171d3af3aea4e244233f495e752fb5b591e62da756d46a5b5cbb002c570d3efbb726f704 0001-properly-fix-wget-https-support.patch
+1efe1c4894ae983fed5ac848125f8603f157b9d91c952c53f4192b48d3e50967e05559851148397b583f34fb02d480393547904b4635e4248248be567ab268ea 0001-properly-fix-wget-https-support.patch
d8694293edc8cd55cecafeb902f03c01af318e13966f399365cf792b840793891ac086bb67ef83e7a5a2e01b246497a6c6511cb6a856834f6672dee4bca76896 0002-fsck-resolve-LABEL-.-UUID-.-spec-to-device.patch
8c34dd5ce9a6e84279fa6494cbae0b254778976f341af1d0ccc2a3afb405fb22d374e9623ea83d1500da77c7463db2ed5218d2c9f49350a21114bd0bb17fd87d 0003-ash-exec-busybox.static.patch
-e4be12a1453a306a58c4ea59cd8a0bf1f261514ae090ea962ac6f7609dc1e9dab0d4d8d351d7adf4f76bf52d37db9ad0102116635e437945c131f762d5750d19 0004-app-location-for-cpio-vi-and-lspci.patch
-095c5617ba7e9f1523deb77ae465e635c347bb2a0934038b91e779f8deb4d7c7ff9ccabbb3bf8a176e83a3994df74692b0f3547d39ff87678cc54b08c8124db0 0005-udhcpc-set-default-discover-retries-to-5.patch
+a8fc2ccced4054f5eff6ea00389906a543a1716202b19ab71fda1de0e6860c8377ed3c306ffb9efabe9fb16779a306da6770b871229f6bd1d725a84fdaa03fef 0004-app-location-for-cpio-vi-and-lspci.patch
+f12916e70f7cc1ef4f6d85d09b9a496a52a494e6318029fdce9a9c812ab5c7b2a046c33b66834127bf809f243c91a53c3c5e27efca026a96fe6b03421de26e60 0005-udhcpc-set-default-discover-retries-to-5.patch
89215c328a46afc686c458a133dd88dcda817586df60eb041a694715e73dc78a297fc0f9a92e8ee7d0a39ce7f6053a6b8e38f3ee078ff90ed13fac2608510105 0006-ping-make-ping-work-without-root-privileges.patch
7873b98c676a92faea61511d50c1efac1220354d20afd53de19e2c8f1472559cb333b9dd4e0d6432616d8c5f59885f1503c448c86a912e8031c9bfed628c2db1 0007-fbsplash-support-console-switching.patch
2c56906dac70dea6276e4c573707cb06c4c8b53defcd33b1e5a28f928e7dafe905a52ce40571de430e4af7e00a75ecc0f249d2fec02da5f3d9edd4e904919a35 0008-fbsplash-support-image-and-bar-alignment-and-positio.patch
df02adb3e3cd3349cc8d070911e3392164cb2e30bd72cae7ceaa974b2db6f958fdcedf809abc7b4bee37c729a4d20abf127f615b0e238a667d572137abe6a79e 0009-depmod-support-generating-kmod-binary-index-files.patch
ecbe5c890d966f09280c7eb534109f785c68e292765f17ed7ff62fcc61d20f61443c4155add0a1ebfb67ce8564e104c1aa22a8ef0400e119b0bca2bca3671f2d 0010-Add-flag-for-not-following-symlinks-when-recursing.patch
-4d043999ffbf6875e6b28ffdb43a36dd5d37d51e862ed7d89c6007e38cdda056292c5322a3ac3189fd489bf3ad1cce7b20508a96aee55c09f09354e1c3f5f5fe 0012-udhcpc-Don-t-background-if-n-is-given.patch
-1ec62ab67e32684e2bbfbafefc9e2bffeb758248a97a1ed9468f449d1fc67fca5c1a6743acc889e12c6f18636708e35ba4bab3345c4994eea6be11f10c9a128c 0001-echo-do-not-assume-that-free-leaves-errno-unmodified.patch
+3ae5ecf3ea66c8d98762432026806fdb67b13a28075c6a3cb6e811a34ef89c2f0ed651946003aaad97fb4b7f74d132af3c394c114b7a72e1d20b319b739c5a6e 0012-udhcpc-Don-t-background-if-n-is-given.patch
d12246f1134bbd3993462d27172c4739cc601b251d57ce8e088745773afa965551236e8cb8b9013dfc142fd055e369a771d86c7c54615c89bd30393400bfa390 0001-ash-add-built-in-BB_ASH_VERSION-variable.patch
6f8fa4ec190d64d6c3d5377994be933885ed0b40361c99ca35881684db3b1b79664d6eab56a389df290b9f6c4db502c617ec8e4ffa6d5284bd41cea1f478b26c 0001-cpio-add-support-for-ignore-devno-like-GNU-cpio.patch
97109be04445b7b887c402b7072c1da57212ef11f2eca6d34c24d5a4e3b2866ee79aca7a0ca41043726293d9bed1b2fa8aab100501569f00b8670c280a87a01c 0002-cpio-add-support-for-renumber-inodes-like-GNU-cpio.patch
aa93095e20de88730f526c6f463cef711b290b9582cdbd8c1ba2bd290019150cbeaa7007c2e15f0362d5b9315dd63f60511878f0ea05e893f4fdfb4a54af3fb1 acpid.logrotate
-9fc6424fb28e1fb5d6fba7a389ced7b8fdedb20ba418db22b5092de0db3faee9cedbccb14f9e9e1ff5f173e58ddc2d92417241bde0006fbdb99986f3fc397e01 busyboxconfig
-470a646505887dbf20dd8c3c3b5c8ab25f363f3a0bfbca577de115b8ec61f28e9843f4f3a7978c634e863dbf28bae987f20e7fa1aa529450ff6c17bc188cae53 busyboxconfig-extras
+e6549c9d5dbd272fe26b3e1347c84e31dbca3c57f141a345504a334c6f92016f3a3e43f3ee6777d5e382b8e6c8aeb095e11110b96c1aa2dee6c358df72c57ec4 busyboxconfig
+2471879bca825af30ab3342e0c3635499f98eeed69ec2353b01c6cea1b07fee8b6f8bd4746fd2944039aa32acdec1e0c93c344a788f2f5ba4056db6182af4c02 busyboxconfig-extras
0becc2186d6c32fb0c401cf7bc0e46268b38ce8892db33be1daf40273024c1c02d518283f44086a313a2ccef34230a1d945ec148cc173f26e6aa9d88a7426e54 bbsuid.c
6321c1d96d8938a3b5eab21731de289ede136fff550f98127c509452bfb17769ccf94b118491f7b81d3c60e1bbb3e80bb07186e4ce07e29724a52f0daba9b218 dad.if-up
646ad9aefe3596d0170d92c8506ca1846e43b5b83cbef97ae565f15ffa7b14665a8c7061bc69c608c043f834c134c5d63f042509f8999031e89163508a868e46 ssl_client.c
diff --git a/main/busybox/busyboxconfig b/main/busybox/busyboxconfig
index 49ccfc2bd4..579da5cdbf 100644
--- a/main/busybox/busyboxconfig
+++ b/main/busybox/busyboxconfig
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
-# Busybox version: 1.33.0
-# Sat Jan 23 11:56:15 2021
+# Busybox version: 1.34.0
+# Sat Aug 21 11:29:32 2021
#
CONFIG_HAVE_DOT_CONFIG=y
@@ -209,11 +209,13 @@ CONFIG_CHOWN=y
CONFIG_FEATURE_CHOWN_LONG_OPTIONS=y
CONFIG_CHROOT=y
CONFIG_CKSUM=y
+# CONFIG_CRC32 is not set
CONFIG_COMM=y
CONFIG_CP=y
CONFIG_FEATURE_CP_LONG_OPTIONS=y
CONFIG_FEATURE_CP_REFLINK=y
CONFIG_CUT=y
+# CONFIG_FEATURE_CUT_REGEX is not set
CONFIG_DATE=y
CONFIG_FEATURE_DATE_ISOFMT=y
# CONFIG_FEATURE_DATE_NANO is not set
@@ -318,7 +320,6 @@ CONFIG_TEST2=y
CONFIG_FEATURE_TEST_64=y
CONFIG_TIMEOUT=y
CONFIG_TOUCH=y
-CONFIG_FEATURE_TOUCH_NODEREF=y
CONFIG_FEATURE_TOUCH_SUSV3=y
CONFIG_TR=y
CONFIG_FEATURE_TR_CLASSES=y
@@ -426,6 +427,7 @@ CONFIG_VI=y
CONFIG_FEATURE_VI_MAX_LEN=4096
CONFIG_FEATURE_VI_8BIT=y
CONFIG_FEATURE_VI_COLON=y
+CONFIG_FEATURE_VI_COLON_EXPAND=y
CONFIG_FEATURE_VI_YANKMARK=y
CONFIG_FEATURE_VI_SEARCH=y
# CONFIG_FEATURE_VI_REGEX_SEARCH is not set
@@ -439,6 +441,7 @@ CONFIG_FEATURE_VI_ASK_TERMINAL=y
CONFIG_FEATURE_VI_UNDO=y
CONFIG_FEATURE_VI_UNDO_QUEUE=y
CONFIG_FEATURE_VI_UNDO_QUEUE_MAX=256
+# CONFIG_FEATURE_VI_VERBOSE_STATUS is not set
CONFIG_FEATURE_ALLOW_EXEC=y
#
@@ -746,6 +749,7 @@ CONFIG_FEATURE_VOLUMEID_XFS=y
# Miscellaneous Utilities
#
CONFIG_ADJTIMEX=y
+# CONFIG_ASCII is not set
CONFIG_BBCONFIG=y
CONFIG_FEATURE_COMPRESS_BBCONFIG=y
CONFIG_BC=y
@@ -841,6 +845,7 @@ CONFIG_TTYSIZE=y
# CONFIG_UBIRENAME is not set
CONFIG_VOLNAME=y
CONFIG_WATCHDOG=y
+CONFIG_FEATURE_WATCHDOG_OPEN_TWICE=y
#
# Networking Utilities
@@ -979,6 +984,7 @@ CONFIG_VCONFIG=y
CONFIG_WGET=y
CONFIG_FEATURE_WGET_LONG_OPTIONS=y
CONFIG_FEATURE_WGET_STATUSBAR=y
+CONFIG_FEATURE_WGET_FTP=y
CONFIG_FEATURE_WGET_AUTHENTICATION=y
CONFIG_FEATURE_WGET_TIMEOUT=y
CONFIG_FEATURE_WGET_HTTPS=y
@@ -1004,6 +1010,7 @@ CONFIG_FEATURE_UDHCPC6_RFC5970=y
#
# Common options for DHCP applets
#
+CONFIG_UDHCPC_DEFAULT_INTERFACE="eth0"
# CONFIG_FEATURE_UDHCP_PORT is not set
CONFIG_UDHCP_DEBUG=0
CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
@@ -1136,8 +1143,8 @@ CONFIG_ASH_VERSION_VAR=y
# CONFIG_SHELL_HUSH is not set
# CONFIG_HUSH_BASH_COMPAT is not set
# CONFIG_HUSH_BRACE_EXPANSION is not set
-# CONFIG_HUSH_LINENO_VAR is not set
# CONFIG_HUSH_BASH_SOURCE_CURDIR is not set
+# CONFIG_HUSH_LINENO_VAR is not set
# CONFIG_HUSH_INTERACTIVE is not set
# CONFIG_HUSH_SAVEHISTORY is not set
# CONFIG_HUSH_JOB is not set
diff --git a/main/busybox/busyboxconfig-extras b/main/busybox/busyboxconfig-extras
index 78412c8c96..998b660723 100644
--- a/main/busybox/busyboxconfig-extras
+++ b/main/busybox/busyboxconfig-extras
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
-# Busybox version: 1.33.0
-# Sat Jan 23 11:57:08 2021
+# Busybox version: 1.34.0
+# Sat Aug 21 11:30:37 2021
#
CONFIG_HAVE_DOT_CONFIG=y
@@ -162,6 +162,8 @@ CONFIG_BZIP2_SMALL=0
# CONFIG_CPIO is not set
# CONFIG_FEATURE_CPIO_O is not set
# CONFIG_FEATURE_CPIO_P is not set
+# CONFIG_FEATURE_CPIO_IGNORE_DEVNO is not set
+# CONFIG_FEATURE_CPIO_RENUMBER_INODES is not set
# CONFIG_DPKG is not set
# CONFIG_DPKG_DEB is not set
# CONFIG_GZIP is not set
@@ -207,11 +209,13 @@ CONFIG_GZIP_FAST=0
# CONFIG_FEATURE_CHOWN_LONG_OPTIONS is not set
# CONFIG_CHROOT is not set
# CONFIG_CKSUM is not set
+# CONFIG_CRC32 is not set
# CONFIG_COMM is not set
# CONFIG_CP is not set
# CONFIG_FEATURE_CP_LONG_OPTIONS is not set
# CONFIG_FEATURE_CP_REFLINK is not set
# CONFIG_CUT is not set
+# CONFIG_FEATURE_CUT_REGEX is not set
# CONFIG_DATE is not set
# CONFIG_FEATURE_DATE_ISOFMT is not set
# CONFIG_FEATURE_DATE_NANO is not set
@@ -312,7 +316,6 @@ CONFIG_GZIP_FAST=0
# CONFIG_FEATURE_TEST_64 is not set
# CONFIG_TIMEOUT is not set
# CONFIG_TOUCH is not set
-# CONFIG_FEATURE_TOUCH_NODEREF is not set
# CONFIG_FEATURE_TOUCH_SUSV3 is not set
# CONFIG_TR is not set
# CONFIG_FEATURE_TR_CLASSES is not set
@@ -408,6 +411,7 @@ CONFIG_DEFAULT_SETFONT_DIR=""
CONFIG_FEATURE_VI_MAX_LEN=0
# CONFIG_FEATURE_VI_8BIT is not set
# CONFIG_FEATURE_VI_COLON is not set
+# CONFIG_FEATURE_VI_COLON_EXPAND is not set
# CONFIG_FEATURE_VI_YANKMARK is not set
# CONFIG_FEATURE_VI_SEARCH is not set
# CONFIG_FEATURE_VI_REGEX_SEARCH is not set
@@ -421,6 +425,7 @@ CONFIG_FEATURE_VI_MAX_LEN=0
# CONFIG_FEATURE_VI_UNDO is not set
# CONFIG_FEATURE_VI_UNDO_QUEUE is not set
CONFIG_FEATURE_VI_UNDO_QUEUE_MAX=0
+# CONFIG_FEATURE_VI_VERBOSE_STATUS is not set
# CONFIG_FEATURE_ALLOW_EXEC is not set
#
@@ -720,6 +725,7 @@ CONFIG_DEFAULT_DEPMOD_FILE=""
# Miscellaneous Utilities
#
# CONFIG_ADJTIMEX is not set
+# CONFIG_ASCII is not set
# CONFIG_BBCONFIG is not set
# CONFIG_FEATURE_COMPRESS_BBCONFIG is not set
# CONFIG_BC is not set
@@ -815,6 +821,7 @@ CONFIG_READAHEAD=y
# CONFIG_UBIRENAME is not set
# CONFIG_VOLNAME is not set
# CONFIG_WATCHDOG is not set
+# CONFIG_FEATURE_WATCHDOG_OPEN_TWICE is not set
#
# Networking Utilities
@@ -953,6 +960,7 @@ CONFIG_FEATURE_TFTP_BLOCKSIZE=y
# CONFIG_WGET is not set
# CONFIG_FEATURE_WGET_LONG_OPTIONS is not set
# CONFIG_FEATURE_WGET_STATUSBAR is not set
+# CONFIG_FEATURE_WGET_FTP is not set
# CONFIG_FEATURE_WGET_AUTHENTICATION is not set
# CONFIG_FEATURE_WGET_TIMEOUT is not set
# CONFIG_FEATURE_WGET_HTTPS is not set
@@ -978,12 +986,13 @@ CONFIG_UDHCPC_DEFAULT_SCRIPT=""
#
# Common options for DHCP applets
#
+CONFIG_UDHCPC_DEFAULT_INTERFACE="eth0"
# CONFIG_FEATURE_UDHCP_PORT is not set
CONFIG_UDHCP_DEBUG=0
CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
CONFIG_FEATURE_UDHCP_RFC3397=y
CONFIG_FEATURE_UDHCP_8021Q=y
-CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS=""
+CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-b -R"
#
# Print Utilities
@@ -1104,13 +1113,14 @@ CONFIG_BASH_IS_NONE=y
# CONFIG_ASH_HELP is not set
# CONFIG_ASH_GETOPTS is not set
# CONFIG_ASH_CMDCMD is not set
+# CONFIG_ASH_VERSION_VAR is not set
# CONFIG_CTTYHACK is not set
# CONFIG_HUSH is not set
# CONFIG_SHELL_HUSH is not set
# CONFIG_HUSH_BASH_COMPAT is not set
# CONFIG_HUSH_BRACE_EXPANSION is not set
-# CONFIG_HUSH_LINENO_VAR is not set
# CONFIG_HUSH_BASH_SOURCE_CURDIR is not set
+# CONFIG_HUSH_LINENO_VAR is not set
# CONFIG_HUSH_INTERACTIVE is not set
# CONFIG_HUSH_SAVEHISTORY is not set
# CONFIG_HUSH_JOB is not set
diff --git a/main/byacc/APKBUILD b/main/byacc/APKBUILD
index 6f37c29165..ee1276c26c 100644
--- a/main/byacc/APKBUILD
+++ b/main/byacc/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Nathan Angelacos <nangel@alpinelinux.org>
pkgname=byacc
-pkgver=20210328
+pkgver=20210808
pkgrel=0
pkgdesc="The Berkeley Yacc general-purpose parser generator"
url="https://invisible-island.net/byacc/byacc.html"
@@ -29,4 +29,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="fdcf98976524c1f37710cf9551a357ebc24ece94dd2bd10501d4fafb914a7ab4847926b99647e387f22a3d3206e6a4bfc14a4c41115702382fcc1d6f688f9dae byacc-20210328.tgz"
+sha512sums="
+cde092dbd845364752aca228a838b97fc34378c7dd7f860c614d13c8ec7167b8416422ded82864d22e8c3c447b47b30abca591ef8ab667c49f9fa070d68114c4 byacc-20210808.tgz
+"
diff --git a/main/c-ares/APKBUILD b/main/c-ares/APKBUILD
index 8b0d659a63..5977622f51 100644
--- a/main/c-ares/APKBUILD
+++ b/main/c-ares/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
# Maintainer: Carlo Landmeter <clandmeter@alpinelinux.org>
pkgname=c-ares
-pkgver=1.17.1
-pkgrel=1
+pkgver=1.17.2
+pkgrel=0
pkgdesc="An asynchronously DNS/names resolver library"
url="https://c-ares.haxx.se/"
arch="all"
@@ -11,6 +11,10 @@ license="MIT"
subpackages="$pkgname-doc $pkgname-static $pkgname-dev"
source="https://c-ares.haxx.se/download/c-ares-$pkgver.tar.gz"
+# secfixes:
+# 1.17.2-r0:
+# - CVE-2021-3672
+
build() {
./configure \
--build=$CBUILD \
@@ -36,4 +40,6 @@ package() {
make -j1 DESTDIR="$pkgdir" install
}
-sha512sums="b11887bcc9274d368088e1a8b6aca62414f20675cf0bc58e948f54fa04c327c39dd23cefe7509eec6397db14b550a3f6b77f5c18b3d735b3eef48ce2da1dcd00 c-ares-1.17.1.tar.gz"
+sha512sums="
+f625e0ef8508af6475d3e83b51ab29be8a4878e2a87e7f518bea046b76a74bfde7043ca6ec2a9e714c898ab9e5d4a5a678c3347a9f9eb68980438f7ca8ae3fc8 c-ares-1.17.2.tar.gz
+"
diff --git a/main/ca-certificates/APKBUILD b/main/ca-certificates/APKBUILD
index c2f84505b3..6a4d7ab8d6 100644
--- a/main/ca-certificates/APKBUILD
+++ b/main/ca-certificates/APKBUILD
@@ -2,14 +2,14 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=ca-certificates
pkgver=20191127
-pkgrel=5
+pkgrel=7
pkgdesc="Common CA certificates PEM files from Mozilla"
url="https://www.mozilla.org/en-US/about/governance/policies/security-group/certs/"
arch="all"
# There is a GPL-2.0-or-later script inside the source but it is not shipped
license="MPL-2.0 AND MIT"
makedepends_build="perl"
-makedepends_host="openssl-dev"
+makedepends_host="openssl1.1-compat-dev"
subpackages="$pkgname-doc $pkgname-bundle"
# c_rehash is either in libcrypto1.0 or openssl depending on package, grr. replace both of them
replaces="libcrypto1.0 openssl openssl1.0"
diff --git a/main/cgit/APKBUILD b/main/cgit/APKBUILD
index 51b2c319be..930ead579d 100644
--- a/main/cgit/APKBUILD
+++ b/main/cgit/APKBUILD
@@ -2,13 +2,13 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=cgit
pkgver=1.2.3
-pkgrel=0
+pkgrel=2
_gitver=2.25.1
pkgdesc="A fast webinterface for git"
url="https://git.zx2c4.com/cgit/"
arch="all"
license="GPL-2.0-only"
-makedepends="openssl-dev zlib-dev lua5.3-dev asciidoc"
+makedepends="openssl1.1-compat-dev zlib-dev lua5.3-dev asciidoc"
subpackages="$pkgname-doc"
source="http://git.zx2c4.com/cgit/snapshot/cgit-$pkgver.tar.xz
https://www.kernel.org/pub/software/scm/git/git-$_gitver.tar.gz
diff --git a/main/charybdis/APKBUILD b/main/charybdis/APKBUILD
index 64f7879919..1e1d7284ab 100644
--- a/main/charybdis/APKBUILD
+++ b/main/charybdis/APKBUILD
@@ -2,14 +2,14 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=charybdis
pkgver=4.1.2
-pkgrel=2
+pkgrel=4
pkgdesc="A highly-scalable IRCv3-compliant IRC daemon"
url="https://github.com/charybdis-ircd/charybdis"
arch="all"
license="GPL-2.0-or-later"
pkgusers="ircd"
makedepends="automake autoconf libtool
- bison flex openssl-dev zlib-dev file
+ bison flex openssl1.1-compat-dev zlib-dev file
sqlite-dev libltdl"
install="$pkgname.pre-install"
subpackages="$pkgname-openrc"
diff --git a/main/cifs-utils/APKBUILD b/main/cifs-utils/APKBUILD
index 7caf96d1fb..ef5f32ab84 100644
--- a/main/cifs-utils/APKBUILD
+++ b/main/cifs-utils/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=cifs-utils
-pkgver=6.13
+pkgver=6.14
pkgrel=0
pkgdesc="CIFS filesystem user-space tools"
url="https://wiki.samba.org/index.php/LinuxCIFS_utils"
@@ -44,6 +44,8 @@ package() {
chmod +s $pkgdir/sbin/mount.cifs
}
-sha512sums="1337ac4b69f0c3e8d0241eb608207ba81dfa35f84c661649d25da78637882c4d73467b0f632be0bd120362e0b786e40eb340bffcf21c8a09629c441100fd10de cifs-utils-6.13.tar.bz2
+sha512sums="
+dd875e110988f84ac766900426e1a75c043607de1f24b87e95cd942f2f58561e1133d16466f02863643c8395fc0160df4050636d1ce0db005f2e52a592c7f0ab cifs-utils-6.14.tar.bz2
99a2fab05bc2f14a600f89526ae0ed2c183cfa179fe386cb327075f710aee3aed5ae823f7c2f51913d1217c2371990d6d4609fdb8d80288bd3a6139df3c8aebe musl-fix-includes.patch
-2a9366ec1ddb0389c535d2fa889f63287cb8374535a47232de102c7e50b6874f67a3d5ef3318df23733300fd8459c7ec4b11f3211508aca7800b756119308e98 xattr_size_max.patch"
+2a9366ec1ddb0389c535d2fa889f63287cb8374535a47232de102c7e50b6874f67a3d5ef3318df23733300fd8459c7ec4b11f3211508aca7800b756119308e98 xattr_size_max.patch
+"
diff --git a/main/cjson/APKBUILD b/main/cjson/APKBUILD
index 35a7ba793a..9fbdcb0837 100644
--- a/main/cjson/APKBUILD
+++ b/main/cjson/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
# Maintainer:
pkgname=cjson
-pkgver=1.7.14
-pkgrel=1
+pkgver=1.7.15
+pkgrel=0
pkgdesc="Lighweight JSON parser in C"
url="https://github.com/DaveGamble/cJSON"
arch="all"
@@ -35,4 +35,6 @@ package() {
DESTDIR="$pkgdir" cmake --build build --target install
}
-sha512sums="8de1dedc123ed025a9cbe6764e5963eb0550f726d06a8f6bedfe05b84e852cd9c1587cd381669663073967f42be894a535ba239013f304ce544c3b15a6477c01 cjson-1.7.14.tar.gz"
+sha512sums="
+0b32a758c597fcc90c8ed0af493c9bccd611b9d4f9a03e87de3f7337bb9a28990b810befd44bc321a0cb42cbcd0b026d45761f9bab7bd798f920b7b6975fb124 cjson-1.7.15.tar.gz
+"
diff --git a/main/ckbcomp/APKBUILD b/main/ckbcomp/APKBUILD
index e93c2ebca4..57505b252e 100644
--- a/main/ckbcomp/APKBUILD
+++ b/main/ckbcomp/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=ckbcomp
-pkgver=1.204
+pkgver=1.205
pkgrel=0
pkgdesc="Compile a XKB keyboard description to a keymap"
url="https://packages.debian.org/sid/console-setup"
@@ -18,5 +18,5 @@ package() {
}
sha512sums="
-f1be4ad00405cb0a7129b9db56fa7144e052767cbfa012b525fe542a8356790500b9a94033eb92d57b4eaf2422b34c0bbb930ac0f21ee5e55051c2148ca25132 console-setup_1.204.tar.xz
+757643f040542fda2903ffaa35a311c6c572b4c1e9c6c169a032e85a360bfe7d64e66ad66fba988515a4c1004ae4ecb45a40fba5c0a9eec6bd58abc1e0624b15 console-setup_1.205.tar.xz
"
diff --git a/main/clang/APKBUILD b/main/clang/APKBUILD
index 6a0dbe76e9..e4324f8602 100644
--- a/main/clang/APKBUILD
+++ b/main/clang/APKBUILD
@@ -6,7 +6,7 @@
pkgname=clang
# Note: Update together with llvm.
pkgver=11.1.0
-pkgrel=1
+pkgrel=2
_llvmver=${pkgver%%.*}
pkgdesc="A C language family front-end for LLVM"
arch="all"
@@ -44,9 +44,11 @@ builddir="$srcdir/clang-$pkgver.src"
prepare() {
mv "$srcdir/clang-tools-extra-$pkgver.src" "$builddir/tools/extra"
- # Substitute python hashbangs with python3
- find . -name '*.py' -type f -exec \
- sed -i 's,^#!/usr/bin/env python$,#!/usr/bin/env python3,' {} +
+ # Substitute python hashbangs with python3.
+ # Some scripts do not have a *.py postfix, thus iterate over all files.
+ grep -l -R "^#!/usr/bin/env python$" . | while read f; do
+ sed -i "$f" -e 's|^#!/usr/bin/env python$|&3|'
+ done
default_prepare
}
diff --git a/main/clucene/APKBUILD b/main/clucene/APKBUILD
index 1d18a00993..639ff5b405 100644
--- a/main/clucene/APKBUILD
+++ b/main/clucene/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=clucene
pkgver=2.3.3.4
-pkgrel=9
+pkgrel=10
pkgdesc="A C++ port of Lucene"
url="http://www.sourceforge.net/projects/clucene"
arch="all"
diff --git a/main/cmake/APKBUILD b/main/cmake/APKBUILD
index f1a9760802..6d89f25a57 100644
--- a/main/cmake/APKBUILD
+++ b/main/cmake/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Valery Kartel <valery.kartel@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=cmake
-pkgver=3.21.1
+pkgver=3.21.3
pkgrel=0
pkgdesc="Cross-platform, open-source make system"
url="https://www.cmake.org/"
@@ -57,5 +57,5 @@ package() {
make DESTDIR="$pkgdir" install
}
sha512sums="
-1453b1f5139950f501c570c305257e4e5dacb8224944de8ed1489aae162c6dd75fe1cd5188d619c47e4e53ca5b846f07318ffb3ab004a0547f2c8b13f60083b4 cmake-3.21.1.tar.gz
+0571b78443906c5ad51fb0fafbd32d565caf628cc150b1190802cb819e8497c108ea6b7ecaa03133df2dbbceb730696d24b4df38468c92088c769ce4076d9e9f cmake-3.21.3.tar.gz
"
diff --git a/main/compiler-rt/APKBUILD b/main/compiler-rt/APKBUILD
index cd98622410..ab8b349e58 100644
--- a/main/compiler-rt/APKBUILD
+++ b/main/compiler-rt/APKBUILD
@@ -7,7 +7,7 @@ pkgver=11.1.0
pkgrel=1
_llvmver=${pkgver%%.*}
pkgdesc="LLVM compiler-rt runtime libraries"
-arch="aarch64 armv7 x86 x86_64"
+arch="all"
url="https://llvm.org/"
license="Apache-2.0"
makedepends="
diff --git a/main/coreutils/APKBUILD b/main/coreutils/APKBUILD
index 10aa518ab0..63bef5b8df 100644
--- a/main/coreutils/APKBUILD
+++ b/main/coreutils/APKBUILD
@@ -2,17 +2,17 @@
# Contributor: Michael Mason <ms13sp@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=coreutils
-pkgver=8.32
-pkgrel=2
+pkgver=9.0
+pkgrel=1
pkgdesc="The basic file, shell and text manipulation utilities"
url="https://www.gnu.org/software/coreutils/"
arch="all"
license="GPL-3.0-or-later"
-makedepends="bash acl-dev attr-dev utmps-dev perl"
+makedepends="bash acl-dev attr-dev utmps-dev perl automake autoconf"
subpackages="$pkgname-doc"
install="$pkgname.post-deinstall"
source="https://ftp.gnu.org/gnu/coreutils/coreutils-$pkgver.tar.xz
- ls.patch
+ fix-chmod-exit-code.patch
"
options="!check"
@@ -21,7 +21,7 @@ options="!check"
# - CVE-2017-18018
build() {
- CFLAGS="-I/usr/include/utmps" LIBS="-lutmps -lskarnet -lrt" ./configure \
+ CFLAGS="$CFLAGS -I/usr/include/utmps" LIBS="-lutmps -lskarnet -lrt" ./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
@@ -29,7 +29,6 @@ build() {
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--disable-nls \
- --without-gmp \
--enable-no-install-program=hostname,su,kill,uptime \
--enable-single-binary=symlinks
make
@@ -64,5 +63,7 @@ check() {
make check
}
-sha512sums="1c8f3584efd61b4b02e7ac5db8e103b63cfb2063432caaf1e64cb2dcc56d8c657d1133bbf10bd41468d6a1f31142e6caa81d16ae68fa3e6e84075c253613a145 coreutils-8.32.tar.xz
-2742d74c45bdb52c524d415fb0787ed63164aec2c22980a1c46b40b7db2f0911008161b1219d5b571cc25de274bacc20c8be3f651906967a032a3ac9859cffce ls.patch"
+sha512sums="
+9be08212891dbf48e5b22e7689dc27dac50df4631ebf29313470b72b7921f0b2aa5242917d05587785358495ca56e3b21f5b3ca81043d53cab92354da6c53a03 coreutils-9.0.tar.xz
+9f86dacb9c429bb0873e68f3e7b185ac8fa54f801dd00e532b01719a919e5c22ec706c58a4da4196f68f46fcd5589afc09028680ad34f89d1c16eae6e679aeca fix-chmod-exit-code.patch
+"
diff --git a/main/coreutils/fix-chmod-exit-code.patch b/main/coreutils/fix-chmod-exit-code.patch
new file mode 100644
index 0000000000..42237ad677
--- /dev/null
+++ b/main/coreutils/fix-chmod-exit-code.patch
@@ -0,0 +1,111 @@
+From e8b56ebd536e82b15542a00c888109471936bfda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?P=C3=A1draig=20Brady?= <P@draigBrady.com>
+Date: Fri, 24 Sep 2021 20:57:41 +0100
+Subject: chmod: fix exit status when ignoring symlinks
+
+* src/chmod.c: Reorder enum so CH_NOT_APPLIED
+can be treated as a non error.
+* tests/chmod/ignore-symlink.sh: A new test.
+* tests/local.mk: Reference the new test.
+* NEWS: Mention the bug fix.
+Fixes https://bugs.gnu.org/50784
+---
+ NEWS | 6 ++++++
+ src/chmod.c | 4 ++--
+ tests/chmod/ignore-symlink.sh | 31 +++++++++++++++++++++++++++++++
+ tests/local.mk | 1 +
+ 4 files changed, 40 insertions(+), 2 deletions(-)
+ create mode 100755 tests/chmod/ignore-symlink.sh
+
+diff --git a/NEWS b/NEWS
+index a1470a7d7..1cb3c28a1 100644
+--- a/NEWS
++++ b/NEWS
+@@ -2,6 +2,12 @@ GNU coreutils NEWS -*- outline -*-
+
+ * Noteworthy changes in release ?.? (????-??-??) [?]
+
++** Bug fixes
++
++ chmod -R no longer exits with error status when encountering symlinks.
++ All files would be processed correctly, but the exit status was incorrect.
++ [bug introduced in coreutils-9.0]
++
+
+ * Noteworthy changes in release 9.0 (2021-09-24) [stable]
+
+diff --git a/src/chmod.c b/src/chmod.c
+index 37b04f500..57ac47f33 100644
+--- a/src/chmod.c
++++ b/src/chmod.c
+@@ -44,8 +44,8 @@ struct change_status
+ enum
+ {
+ CH_NO_STAT,
+- CH_NOT_APPLIED,
+ CH_FAILED,
++ CH_NOT_APPLIED,
+ CH_NO_CHANGE_REQUESTED,
+ CH_SUCCEEDED
+ }
+@@ -322,7 +322,7 @@ process_file (FTS *fts, FTSENT *ent)
+ if ( ! recurse)
+ fts_set (fts, ent, FTS_SKIP);
+
+- return CH_NO_CHANGE_REQUESTED <= ch.status;
++ return CH_NOT_APPLIED <= ch.status;
+ }
+
+ /* Recursively change the modes of the specified FILES (the last entry
+diff --git a/tests/chmod/ignore-symlink.sh b/tests/chmod/ignore-symlink.sh
+new file mode 100755
+index 000000000..5ce3de816
+--- /dev/null
++++ b/tests/chmod/ignore-symlink.sh
+@@ -0,0 +1,31 @@
++#!/bin/sh
++# Test for proper exit code of chmod on a processed symlink.
++
++# Copyright (C) 2021 Free Software Foundation, Inc.
++
++# This program is free software: you can redistribute it and/or modify
++# it under the terms of the GNU General Public License as published by
++# the Free Software Foundation, either version 3 of the License, or
++# (at your option) any later version.
++
++# This program is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++# GNU General Public License for more details.
++
++# You should have received a copy of the GNU General Public License
++# along with this program. If not, see <https://www.gnu.org/licenses/>.
++
++. "${srcdir=.}/tests/init.sh"; path_prepend_ ./src
++print_ver_ chmod
++
++mkdir dir || framework_failure_
++touch dir/f || framework_failure_
++ln -s f dir/l || framework_failure_
++
++# This operation ignores symlinks but should succeed.
++chmod u+w -R dir 2> out || fail=1
++
++compare /dev/null out || fail=1
++
++Exit $fail
+diff --git a/tests/local.mk b/tests/local.mk
+index 228d0e368..b5b893fb7 100644
+--- a/tests/local.mk
++++ b/tests/local.mk
+@@ -456,6 +456,7 @@ all_tests = \
+ tests/chmod/c-option.sh \
+ tests/chmod/equal-x.sh \
+ tests/chmod/equals.sh \
++ tests/chmod/ignore-symlink.sh \
+ tests/chmod/inaccessible.sh \
+ tests/chmod/octal.sh \
+ tests/chmod/setgid.sh \
+--
+cgit v1.2.1
+
diff --git a/main/coreutils/ls.patch b/main/coreutils/ls.patch
deleted file mode 100644
index 0e2057caec..0000000000
--- a/main/coreutils/ls.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-../src/ls.c: In function 'print_dir':
-
-../src/ls.c:3026:24: error: 'SYS_getdents' undeclared (first use in this function); did you mean 'SYS_getdents64'?
-
- 3026 | if (syscall (SYS_getdents, dirfd (dirp), NULL, 0) == -1
-
- | ^~~~~~~~~~~~
-
- | SYS_getdents64
-
-../src/ls.c:3026:24: note: each undeclared identifier is reported only once for each function it appears in
-
-diff --git a/src/ls.c b/src/ls.c
-index 24b9832..64ecf40 100644
---- a/src/ls.c
-+++ b/src/ls.c
-@@ -3018,7 +3018,7 @@ print_dir (char const *name, char const *realname, bool command_line_arg)
- if (errno != EOVERFLOW)
- break;
- }
--#ifdef __linux__
-+#if defined(__linux__) && defined(__x86_64__)
- else if (! found_any_entries)
- {
- /* If readdir finds no directory entries at all, not even "." or
diff --git a/main/cryptsetup/APKBUILD b/main/cryptsetup/APKBUILD
index ee50ce4d38..28da200842 100644
--- a/main/cryptsetup/APKBUILD
+++ b/main/cryptsetup/APKBUILD
@@ -1,20 +1,22 @@
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=cryptsetup
-pkgver=2.3.6
+pkgver=2.4.1 # XXX: remove automake/autoconf when upgrading to 2.5.0
pkgrel=0
pkgdesc="Userspace setup tool for transparent encryption of block devices using the Linux 2.6 cryptoapi"
url="https://gitlab.com/cryptsetup/cryptsetup"
arch="all"
license="GPL-2.0-or-later WITH OpenSSL-Exception"
-makedepends_host="lvm2-dev openssl-dev popt-dev util-linux-dev
+makedepends_build="automake autoconf bash coreutils"
+makedepends_host="lvm2-dev openssl1.1-compat-dev popt-dev util-linux-dev
json-c-dev argon2-dev"
makedepends="$makedepends_build $makedepends_host"
-checkdepends="device-mapper sharutils which bash coreutils"
+checkdepends="device-mapper which sharutils"
subpackages="$pkgname-dev $pkgname-doc $pkgname-libs $pkgname-openrc"
source="https://www.kernel.org/pub/linux/utils/cryptsetup/v${pkgver%.*}/cryptsetup-$pkgver.tar.gz
dmcrypt.initd
dmcrypt.confd
+
flush-stdout.patch
"
@@ -23,6 +25,8 @@ source="https://www.kernel.org/pub/linux/utils/cryptsetup/v${pkgver%.*}/cryptset
# - CVE-2020-14382
build() {
+ # Disable support for external tokens since it requires
+ # dlvsym(3) which is a GNU extension and not available in musl.
./configure \
--build="$CBUILD" \
--host="$CHOST" \
@@ -31,7 +35,9 @@ build() {
--sbindir=/sbin \
--disable-static \
--enable-libargon2 \
- --with-crypto_backend=openssl
+ --with-crypto_backend=openssl \
+ --disable-external-tokens \
+ --disable-ssh-token
make
}
@@ -49,7 +55,7 @@ package() {
install -Dm755 "$srcdir"/dmcrypt.initd "$pkgdir"/etc/init.d/dmcrypt
mkdir -p "$pkgdir"/usr/share/doc/$pkgname/
- install -m644 README TODO FAQ NEWS docs/v$pkgver-ReleaseNotes \
+ install -m644 README.md FAQ docs/v$pkgver-ReleaseNotes \
"$pkgdir"/usr/share/doc/$pkgname/
}
@@ -60,8 +66,8 @@ libs() {
}
sha512sums="
-a0ec8dcb7082e458660f6379a532cffb56561488288e514db2ebceab11779c7d94aa732660b24f85e46a333a969d8d39aed9ca9b2e9ac0af724cabb07488e2f5 cryptsetup-2.3.6.tar.gz
+b12589181e48c8ae7e95fa7d0642caa479a0000c76ac4c2f9dcacb9319512f0c079d037c6fe596639481a62b6290dd7d0bf826ac5e096c526435a8241386fe0e cryptsetup-2.4.1.tar.gz
a3ca3e648749136ee724692b61488cd855f118eb93435942c2b04964a34fe49d0f0da4ef64cd2531c1c0f650e77808cf5d802789fd7664398248ead668bb35e5 dmcrypt.initd
74422d5e1614b43af894ea01da1ea80d805ec7f77981cbb80a6b1a4becad737a8825d7269812499095a7f50d39fa7da5bf4e4edae63529b1fe87b9176943a733 dmcrypt.confd
-dc896fdb7697d01443a168819f01af02db00a9de75589f062a1ebbfc0bc185b6d2109b18352309c41b818e3ad89609dcea3660d6f3cda890de825f053f94de97 flush-stdout.patch
+529187851def5fbc08e995eba90d3f013f1cf8469dcb9344f83d1e3c73c71467ca4ed62c8282ec27ebfa30ccc33653fdd1aea8d1d80e1ac4293d51865c9a6200 flush-stdout.patch
"
diff --git a/main/cryptsetup/flush-stdout.patch b/main/cryptsetup/flush-stdout.patch
index a39aec5474..9698460b29 100644
--- a/main/cryptsetup/flush-stdout.patch
+++ b/main/cryptsetup/flush-stdout.patch
@@ -1,15 +1,15 @@
-diff -upr cryptsetup-2.1.0.orig/src/utils_tools.c cryptsetup-2.1.0/src/utils_tools.c
---- cryptsetup-2.1.0.orig/src/utils_tools.c 2019-01-31 21:37:12.000000000 +0100
-+++ cryptsetup-2.1.0/src/utils_tools.c 2019-03-16 16:33:13.000000000 +0100
-@@ -105,10 +105,13 @@ void tool_log(int level, const char *msg
+diff -upr cryptsetup-2.4.0.orig/src/utils_tools.c cryptsetup-2.4.0/src/utils_tools.c
+--- cryptsetup-2.4.0.orig/src/utils_tools.c 2021-08-29 15:17:46.989874344 +0200
++++ cryptsetup-2.4.0/src/utils_tools.c 2021-08-29 15:18:45.543241866 +0200
+@@ -79,10 +79,13 @@ void tool_log(int level, const char *msg
case CRYPT_LOG_NORMAL:
fprintf(stdout, "%s", msg);
+ fflush(stdout);
break;
case CRYPT_LOG_VERBOSE:
-- if (opt_verbose)
-+ if (opt_verbose) {
+- if (params && params->verbose)
++ if (params && params->verbose) {
fprintf(stdout, "%s", msg);
+ fflush(stdout);
+ }
diff --git a/main/ctags/APKBUILD b/main/ctags/APKBUILD
index 723dc85c55..279a39e700 100644
--- a/main/ctags/APKBUILD
+++ b/main/ctags/APKBUILD
@@ -2,7 +2,7 @@
# Contributor: Michael Mason <ms13sp@gmail.com>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=ctags
-pkgver=5.9.20210620.0
+pkgver=5.9.20211010.0
_realver="p$pkgver"
pkgrel=0
pkgdesc="Generator of tags for all types of C/C++ languages"
@@ -12,7 +12,8 @@ license="GPL-2.0-or-later"
checkdepends="diffutils python3"
makedepends="autoconf automake pkgconf py3-docutils"
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/universal-ctags/ctags/archive/$_realver.tar.gz"
+source="$pkgname-$pkgver.tar.gz::https://github.com/universal-ctags/ctags/archive/$_realver.tar.gz
+ disable-check-genfile.patch"
builddir="$srcdir"/$pkgname-$_realver
# secfixes:
@@ -50,5 +51,6 @@ package() {
}
sha512sums="
-6127dd6a9eb02240fd244eb2bcc5c1ca895bf1cc23f78b7b8dea14033aca6c50687b6a5680076d0a353d355c3f086e43d6e87dfa6c6c3663b1f685f75915a88b ctags-5.9.20210620.0.tar.gz
+c3a417682d9e95b98724c758e91b5ef0a3551aad09745681b2fdcafb92b8c2871094144853c7fbeb62aac3c6fd3d88e290a328079c0ec5f8db1277f20dd85fed ctags-5.9.20211010.0.tar.gz
+185b0647ddaba90ae386c40d75cd8cf8613a89b4d1d0d0905eb78ba3afad57cf273ab2d826053e49d22278f9d3cec97780c8f15aef13c7582658ca24708abf14 disable-check-genfile.patch
"
diff --git a/main/ctags/disable-check-genfile.patch b/main/ctags/disable-check-genfile.patch
new file mode 100644
index 0000000000..1135411ffb
--- /dev/null
+++ b/main/ctags/disable-check-genfile.patch
@@ -0,0 +1,19 @@
+The check-genfile target only works when run from inside a Git
+repository. Since we build ctags from a tagged tarball and not from the
+Git repository, invoking `git diff` fails with a usage error and causes
+`make check` to fail.
+
+This should be reported upstream.
+
+diff -upr a/makefiles/testing.mak b/makefiles/testing.mak
+--- a/makefiles/testing.mak 2021-10-02 15:48:41.000000000 +0200
++++ b/makefiles/testing.mak 2021-10-10 12:07:32.081801888 +0200
+@@ -5,7 +5,7 @@ EXTRA_DIST += misc/units misc/units.py m
+ EXTRA_DIST += misc/tlib misc/mini-geany.expected
+ MAN_TEST_TMPDIR = ManTest
+
+-check: tmain units tlib man-test check-genfile
++check: tmain units tlib man-test
+
+ # We may use CLEANFILES, DISTCLEANFILES, or etc.
+ # clean-tlib and clean-gcov are not included
diff --git a/main/cups/APKBUILD b/main/cups/APKBUILD
index 4fa0420991..6326795468 100644
--- a/main/cups/APKBUILD
+++ b/main/cups/APKBUILD
@@ -1,13 +1,13 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=cups
pkgver=2.3.3
-pkgrel=2
+pkgrel=4
pkgdesc="The CUPS Printing System"
url="https://www.cups.org/"
arch="all"
license="GPL-2.0-only"
subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc $pkgname-libs ipptool $pkgname-client
- $pkgname-lang $pkgname-openrc $pkgname-dbg"
+ $pkgname-lang $pkgname-openrc"
depends_dev="libgcrypt-dev gnutls-dev zlib-dev"
makedepends="$depends_dev libpaper-dev dbus-dev libjpeg-turbo-dev avahi-dev
linux-headers libusb-dev"
@@ -19,6 +19,7 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/OpenPrinting/cups/archive/v$
$pkgname.logrotate
cupsd.initd
cups-no-export-ssllibs.patch
+ cups-nostrip.patch
default-config-no-gssapi.patch
"
@@ -131,8 +132,11 @@ _mv() {
done
}
-sha512sums="5a43ef98f83c1783221155c01de940f3679023251709931ef28572c7b00620b36252afe894e86f2f08a527008dc2c95dc8af4129f0ab28a28663be8d3ccc3418 cups-2.3.3.tar.gz
+sha512sums="
+5a43ef98f83c1783221155c01de940f3679023251709931ef28572c7b00620b36252afe894e86f2f08a527008dc2c95dc8af4129f0ab28a28663be8d3ccc3418 cups-2.3.3.tar.gz
cf64211da59e79285f99d437c02fdd7db462855fb2920ec9563ba47bd8a9e5cbd10555094940ceedeb41ac805c4f0ddb9147481470112a11a76220d0298aef79 cups.logrotate
2c2683f755a220166b3a1653fdd1a6daa9718c8f0bbdff2e2d5e61d1133306260d63a83d3ff41619b5cf84c4913fae5822b79553e2822858f38fa3613f4c7082 cupsd.initd
7a8cd9ac33b0dd4627c72df4275db8ccd7cf8e201bce3833719b42f532f526bb347b842e3ea1ef0d61855b5c6e1088b5d20b68942f2c2c0acf504d8d9728efd3 cups-no-export-ssllibs.patch
-ac1ec4453d6a4b641d40089c77d3b776963d90efb092851c8d93deceb6068b111dee71171967ffb7ad0f5adb424398a43f51feb7d5d9734287cfb9e419efaa93 default-config-no-gssapi.patch"
+f9f465c0a0125e15d969e4992e94657277211045b393247808b028ba5f8e010f753b750b7a01e4272da03188955866cbe6db1970fc865f883e8377a7e432ba65 cups-nostrip.patch
+ac1ec4453d6a4b641d40089c77d3b776963d90efb092851c8d93deceb6068b111dee71171967ffb7ad0f5adb424398a43f51feb7d5d9734287cfb9e419efaa93 default-config-no-gssapi.patch
+"
diff --git a/main/cups/cups-nostrip.patch b/main/cups/cups-nostrip.patch
new file mode 100644
index 0000000000..62b3ce2344
--- /dev/null
+++ b/main/cups/cups-nostrip.patch
@@ -0,0 +1,68 @@
+diff -ru a/config-scripts/cups-compiler.m4 b/config-scripts/cups-compiler.m4
+--- a/config-scripts/cups-compiler.m4 2020-04-27 14:04:29.000000000 -0400
++++ b/config-scripts/cups-compiler.m4 2021-08-06 20:53:29.316010169 -0400
+@@ -9,9 +9,6 @@
+
+ dnl Clear the debugging and non-shared library options unless the user asks
+ dnl for them...
+-INSTALL_STRIP=""
+-AC_SUBST(INSTALL_STRIP)
+-
+ AC_ARG_WITH(optim, [ --with-optim set optimization flags ],
+ OPTIM="$withval",
+ OPTIM="")
+@@ -25,8 +22,6 @@
+ dnl For debugging, keep symbols, otherwise strip them...
+ if test x$enable_debug = xyes -a "x$OPTIM" = x; then
+ OPTIM="-g"
+-else
+- INSTALL_STRIP="-s"
+ fi
+
+ dnl Debug printfs can slow things down, so provide a separate option for that
+diff -ru a/configure b/configure
+--- a/configure 2020-04-27 14:04:29.000000000 -0400
++++ b/configure 2021-08-06 20:54:01.585892266 -0400
+@@ -694,7 +694,6 @@
+ ARCHFLAGS
+ UNITTESTS
+ OPTIM
+-INSTALL_STRIP
+ LIBTOOL_INSTALL
+ LIBTOOL_CXX
+ LIBTOOL_CC
+@@ -6662,7 +6661,6 @@
+
+
+
+-INSTALL_STRIP=""
+
+
+
+@@ -6698,8 +6696,6 @@
+
+ if test x$enable_debug = xyes -a "x$OPTIM" = x; then
+ OPTIM="-g"
+-else
+- INSTALL_STRIP="-s"
+ fi
+
+ if test x$enable_debug_printfs = xyes; then
+diff -ru a/Makedefs.in b/Makedefs.in
+--- a/Makedefs.in 2020-04-27 14:04:29.000000000 -0400
++++ b/Makedefs.in 2021-08-06 20:53:42.565961754 -0400
+@@ -45,12 +45,12 @@
+ # Installation programs...
+ #
+
+-INSTALL_BIN = @LIBTOOL_INSTALL@ $(INSTALL) -c -m @CUPS_EXE_FILE_PERM@ @INSTALL_STRIP@
++INSTALL_BIN = @LIBTOOL_INSTALL@ $(INSTALL) -c -m @CUPS_EXE_FILE_PERM@
+ INSTALL_COMPDATA = $(INSTALL) -c -m 444 @INSTALL_GZIP@
+ INSTALL_CONFIG = $(INSTALL) -c -m @CUPS_CONFIG_FILE_PERM@
+ INSTALL_DATA = $(INSTALL) -c -m 444
+ INSTALL_DIR = $(INSTALL) -d
+-INSTALL_LIB = @LIBTOOL_INSTALL@ $(INSTALL) -c -m @CUPS_EXE_FILE_PERM@ @INSTALL_STRIP@
++INSTALL_LIB = @LIBTOOL_INSTALL@ $(INSTALL) -c -m @CUPS_EXE_FILE_PERM@
+ INSTALL_MAN = $(INSTALL) -c -m 444
+ INSTALL_SCRIPT = $(INSTALL) -c -m @CUPS_EXE_FILE_PERM@
+
diff --git a/main/curl/APKBUILD b/main/curl/APKBUILD
index ee3d654bb2..5cc761cff1 100644
--- a/main/curl/APKBUILD
+++ b/main/curl/APKBUILD
@@ -8,22 +8,27 @@
# this aport from arch=all WILL be reverted.
pkgname=curl
-pkgver=7.78.0
+pkgver=7.79.1
pkgrel=0
pkgdesc="URL retrival utility and library"
url="https://curl.se/"
arch="all"
license="MIT"
depends="ca-certificates"
-depends_dev="openssl-dev nghttp2-dev zlib-dev brotli-dev"
+depends_dev="openssl1.1-compat-dev nghttp2-dev zlib-dev brotli-dev"
checkdepends="nghttp2 python3"
makedepends_host="$depends_dev"
makedepends_build="autoconf automake groff libtool perl"
subpackages="$pkgname-dbg $pkgname-static $pkgname-doc $pkgname-dev libcurl"
source="https://curl.se/download/curl-$pkgver.tar.xz"
options="net" # Required for running tests
+[ -n "$BOOTSTRAP" ] && options="$options !check" # remove python3 dependency
# secfixes:
+# 7.79.0-r0:
+# - CVE-2021-22945
+# - CVE-2021-22946
+# - CVE-2021-22947
# 7.78.0-r0:
# - CVE-2021-22922
# - CVE-2021-22923
@@ -159,5 +164,5 @@ static() {
}
sha512sums="
-f72e822a0b5e28320ef547c7a441c07f3b4870579a70ab4c428751baba435a1385cb89a22b9ed4b84a7fafecf620f155911e4131e3463ec1bdad80ecde47bb7a curl-7.78.0.tar.xz
+1edb71647a7f4dbb070baf1a019b4751aefeda793ff523c504410bb5cc74e5bffc52f20dd889697d1585f9ca3c4e81b1a9caadd182c30c8358ffd25f33e4db4d curl-7.79.1.tar.xz
"
diff --git a/main/cvs/APKBUILD b/main/cvs/APKBUILD
index 43925f68f5..108fadb6bb 100644
--- a/main/cvs/APKBUILD
+++ b/main/cvs/APKBUILD
@@ -2,19 +2,27 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=cvs
pkgver=1.12.13
-pkgrel=0
+pkgrel=1
pkgdesc="Concurrent Versions System"
url="https://www.nongnu.org/cvs/"
arch="all"
license="GPL-2.0-or-later"
options="!check" # Tests fail - src/lib/test-getdate.sh
-makedepends="zlib-dev"
+makedepends="
+ autoconf
+ automake
+ gettext-dev
+ libbsd-dev
+ texinfo
+ zlib-dev
+"
subpackages="$pkgname-doc"
source="https://ftp.gnu.org/non-gnu/cvs/source/feature/$pkgver/cvs-$pkgver.tar.gz
- cvs_1.12.13+real-26.diff
+ cvs_1.12.13+real-26.patch
install-sh.patch
mktime-configure.patch
getcwd.patch
+ add-libbsd.patch
"
# secfixes:
@@ -25,6 +33,7 @@ source="https://ftp.gnu.org/non-gnu/cvs/source/feature/$pkgver/cvs-$pkgver.tar.g
prepare() {
default_prepare
update_config_sub
+ autoreconf -fi
}
build() {
@@ -48,8 +57,11 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="acd658b7ffa29a67e33f294073a0f80a27aa4e19dc2185cfa43f862d34e511bcf9802012b8e6957f82c7532fdabbb058b33686e0e6046cdd1f1aa9af619e92e9 cvs-1.12.13.tar.gz
-510a8a3ed392108f360f3477af45f863ea3603b8c3f90504dfc018e3ef5ed79e69fcd3e38c82b46061cc82a53859d8ab209ae6f8ee07134f7db98bc3f1e38f06 cvs_1.12.13+real-26.diff
+sha512sums="
+acd658b7ffa29a67e33f294073a0f80a27aa4e19dc2185cfa43f862d34e511bcf9802012b8e6957f82c7532fdabbb058b33686e0e6046cdd1f1aa9af619e92e9 cvs-1.12.13.tar.gz
+510a8a3ed392108f360f3477af45f863ea3603b8c3f90504dfc018e3ef5ed79e69fcd3e38c82b46061cc82a53859d8ab209ae6f8ee07134f7db98bc3f1e38f06 cvs_1.12.13+real-26.patch
44e0b683f8178804d029957e78af046197142181564bfb0209da2682f9817e6c661a9e0dd390d236c9ebdc937df920269e708bb7d7c84ca942341fd413a1b265 install-sh.patch
a430f2659e1f96bc4ba2205567662eb5863c0c73b2e0c43eba86b23734b3874663e389e74e6011c6a0e9f4074d676adfd6c88fbe20f11ca33ba3223a93dad02c mktime-configure.patch
-99a9107603a933c164070787a3e270f8b1d82fb6930763061f019a42c0d88e4ac981941ccc0851ae051df757caef5d6c9a9e9b87d3378e7361cc78f48460f4a1 getcwd.patch"
+99a9107603a933c164070787a3e270f8b1d82fb6930763061f019a42c0d88e4ac981941ccc0851ae051df757caef5d6c9a9e9b87d3378e7361cc78f48460f4a1 getcwd.patch
+eecdd7f8a31ae63901e6b7336c7aac5827dd33ce2c80bb7d629ffb3dc65927eae75f59f6a949e290471982f22265f02eaa17febd6e6ea5f799edcfcbccd3b511 add-libbsd.patch
+"
diff --git a/main/cvs/add-libbsd.patch b/main/cvs/add-libbsd.patch
new file mode 100644
index 0000000000..1b018a7a12
--- /dev/null
+++ b/main/cvs/add-libbsd.patch
@@ -0,0 +1,12 @@
+--- old/src/Makefile.am
++++ new/src/Makefile.am
+@@ -117,7 +117,8 @@
+ $(ZLIB_LIBS) \
+ $(LIB_CLOCK_GETTIME) \
+ $(LIB_NANOSLEEP) \
+- $(LIBINTL)
++ $(LIBINTL) \
++ -lbsd
+
+ # General
+ EXTRA_DIST = \
diff --git a/main/cvs/cvs_1.12.13+real-26.diff b/main/cvs/cvs_1.12.13+real-26.patch
index 756fbdbd46..756fbdbd46 100644
--- a/main/cvs/cvs_1.12.13+real-26.diff
+++ b/main/cvs/cvs_1.12.13+real-26.patch
diff --git a/main/cyrus-sasl/APKBUILD b/main/cyrus-sasl/APKBUILD
index 14956bbd6e..7e7522848a 100644
--- a/main/cyrus-sasl/APKBUILD
+++ b/main/cyrus-sasl/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=cyrus-sasl
pkgver=2.1.27
-pkgrel=12
+pkgrel=14
pkgdesc="Cyrus Simple Authentication Service Layer (SASL)"
url="https://www.cyrusimap.org/sasl/"
arch="all"
@@ -25,7 +25,7 @@ subpackages="
# use heimdal to avoid circular dep: cyrus-sasl -> krb5 -> openldap -> cyrus-sasl
makedepends="
gdbm-dev
- openssl-dev
+ openssl1.1-compat-dev
heimdal-dev
py3-sphinx
sqlite-dev
diff --git a/main/dahdi-linux-lts/APKBUILD b/main/dahdi-linux-lts/APKBUILD
index c8006217e4..72c2fefe3a 100644
--- a/main/dahdi-linux-lts/APKBUILD
+++ b/main/dahdi-linux-lts/APKBUILD
@@ -9,8 +9,8 @@ _rel=0
_flavor=${FLAVOR:-lts}
_kpkg=linux-$_flavor
-_kver=5.10.54
-_krel=0
+_kver=5.10.72
+_krel=1
_kpkgver="$_kver-r$_krel"
_kabi="$_kver-$_krel-$_flavor"
diff --git a/main/datefudge/APKBUILD b/main/datefudge/APKBUILD
index 9ed6f292ad..8340e0e316 100644
--- a/main/datefudge/APKBUILD
+++ b/main/datefudge/APKBUILD
@@ -10,8 +10,7 @@ license="GPL-2.0"
depends="coreutils"
checkdepends="perl"
subpackages="$pkgname-doc"
-source="http://deb.debian.org/debian/pool/main/d/datefudge/datefudge_$pkgver.tar.xz
- "
+source="https://deb.debian.org/debian/pool/main/d/datefudge/datefudge_$pkgver.tar.xz"
build() {
# fix Makefile, set the version number directly as dpkg-parsechangelog is not available
diff --git a/main/debootstrap/APKBUILD b/main/debootstrap/APKBUILD
index 9ce17abc68..29b4afa9af 100644
--- a/main/debootstrap/APKBUILD
+++ b/main/debootstrap/APKBUILD
@@ -10,7 +10,7 @@ license="MIT"
options="!check" # upstream doesn't have a test suite
depends="debian-archive-keyring dpkg tar"
subpackages="$pkgname-doc"
-source="http://ftp.debian.org/debian/pool/main/d/debootstrap/debootstrap_$pkgver.tar.gz"
+source="https://deb.debian.org/debian/pool/main/d/debootstrap/debootstrap_$pkgver.tar.gz"
builddir="$srcdir/debootstrap"
package() {
diff --git a/main/dhcpcd/APKBUILD b/main/dhcpcd/APKBUILD
index 26ddd3aa32..9a0ef8ad38 100644
--- a/main/dhcpcd/APKBUILD
+++ b/main/dhcpcd/APKBUILD
@@ -2,7 +2,7 @@
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=dhcpcd
-pkgver=8.1.9
+pkgver=9.4.0
pkgrel=0
pkgdesc="RFC2131 compliant DHCP client"
url="https://roy.marples.name/projects/dhcpcd"
@@ -15,7 +15,6 @@ source="https://roy.marples.name/downloads/dhcpcd/dhcpcd-$pkgver.tar.xz
busybox-logger.patch
fix-chrony-conf-location.patch
dhcpcd.initd
- musl.patch
"
build() {
CFLAGS="$CFLAGS -D_GNU_SOURCE -DHAVE_PRINTF_M"
@@ -45,9 +44,8 @@ package() {
}
sha512sums="
-40ac106ffca60b32362aacdfae0fa3a2993a3eed72bf452322412a912f594aaade1c24b862233455033158a6e453ec75d6d14fa52df6b4c5ae435dd6ceb29f2a dhcpcd-8.1.9.tar.xz
+e2cff86564062e8d5f9c8f48f245ffa31406494e2fafadedabc1ba9932b534cbda064783ffdd7fb337544459aba2ef7e9b49ad0973120897dc04159747e8635f dhcpcd-9.4.0.tar.xz
692b2c8c75166fabd512a7cc69c650f9391e0f682ce9cbe1771bfa44e82dcf09e322c46493c45ca75000f479d3cddde306754ba31d28a798a15e2b79a56045f0 busybox-logger.patch
1c19eed0f7a008ee96ea392beb327169ff8c83fc27fed20f65f05c9125f60629ebe3474c5e6a7cf4aeeea448fde4264c9b84916efacd67d47ab908c47b1fc3a5 fix-chrony-conf-location.patch
dc3b30295dbe5310526443736e60ccc53621d465d512639e8ea20efe598037ff33730e46964e4e7bc32d4ce88aaecf3b9bb9a4ceab892d8bff3423e0374ccae1 dhcpcd.initd
-082aa80798476917e2a86003cb95136212cbb9b8da986e7d8186d7f3d857e81a4cb03af56296484e035e5006d36c695ef57f571ea9c1fd18b4200a9cf745a6b4 musl.patch
"
diff --git a/main/dhcpcd/musl.patch b/main/dhcpcd/musl.patch
deleted file mode 100644
index 9de5163db7..0000000000
--- a/main/dhcpcd/musl.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Include linux/if_tun.h after netinet/if_tun.h to avoid redefinition of struct ethhdr
-
-diff --git a/src/if-linux.c b/src/if-linux.c
-index fd47278..cca4e36 100644
---- a/src/if-linux.c
-+++ b/src/if-linux.c
-@@ -37,7 +37,6 @@
- #include <linux/if_addr.h>
- #include <linux/if_link.h>
- #include <linux/if_packet.h>
--#include <linux/if_tun.h>
- #include <linux/if_vlan.h>
- #include <linux/filter.h>
- #include <linux/netlink.h>
-@@ -51,6 +50,8 @@
- #include <netinet/in.h>
- #include <net/route.h>
-
-+#include <linux/if_tun.h>
-+
- #include <errno.h>
- #include <fcntl.h>
- #include <ctype.h>
-
diff --git a/main/diffutils/APKBUILD b/main/diffutils/APKBUILD
index d2bbbb4885..fe0cfc392c 100644
--- a/main/diffutils/APKBUILD
+++ b/main/diffutils/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=diffutils
-pkgver=3.7
+pkgver=3.8
pkgrel=0
pkgdesc="Show differences among files"
subpackages="$pkgname-doc"
@@ -8,22 +8,16 @@ url="https://www.gnu.org/software/diffutils/"
arch="all"
license="GPL-3.0-or-later"
checkdepends="coreutils perl"
+# cyclic dependency during bootstrap:
+# m4 -> diffutils -> coreutils -> bash -> flex -> bison -> m4
+[ -n "$BOOTSTRAP" ] && options="$options !check"
source="https://ftp.gnu.org/pub/gnu/$pkgname/$pkgname-$pkgver.tar.xz
- disable-mbrtowc-test.patch
+ skip-test-presue-output-tty.patch
"
-builddir=$srcdir/$pkgname-$pkgver
-
-prepare() {
- cd "$builddir"
- default_prepare
- # fix eglibc-2.16 build issue
- sed -i -e '/gets is a/d' \
- lib/stdio.in.h
-}
+builddir=$srcdir/$pkgname-$pkgver
build() {
- cd "$builddir"
./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -35,17 +29,14 @@ build() {
}
check() {
- cd "$builddir"
make check
}
package() {
- cd "$builddir"
make install DESTDIR=$pkgdir
-
- rm -rf "$pkgdir"/usr/lib/charset.alias
- rmdir -p "$pkgdir"/usr/lib 2>/dev/null || true
}
-sha512sums="7b12cf8aea1b9844773748f72272d9c6a38adae9c3c3a8c62048f91fb56c60b76035fa5f51665dceaf2cfbf1d1f4a3efdcc24bf47a5a16ff4350543314b12c9c diffutils-3.7.tar.xz
-2602dabf0ac52a273b84160032416613da7ad111541fe25466cf9d4ce1eb2630f0ba0cb0b3013967965d8359a11a5f390f0486b4526b35516d9de1c8975f720d disable-mbrtowc-test.patch"
+sha512sums="
+279441270987e70d5ecfaf84b6285a4866929c43ec877e50f154a788858d548a8a316f2fc26ad62f7348c8d289cb29a09d06dfadce1806e3d8b4ea88c8b1aa7c diffutils-3.8.tar.xz
+5df0dc7a452180c361698ee502b4636a5e7277132e543136c205747fac64acc6276186ec8c884b17e9fe3e307f15e045ba327d44ac4662db88675c309c56367a skip-test-presue-output-tty.patch
+"
diff --git a/main/diffutils/disable-mbrtowc-test.patch b/main/diffutils/disable-mbrtowc-test.patch
deleted file mode 100644
index 1461a40939..0000000000
--- a/main/diffutils/disable-mbrtowc-test.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- diffutils-3.6/gnulib-tests/test-mbrtowc5.sh.old 2016-12-31 13:54:43.000000000 +0000
-+++ diffutils-3.6/gnulib-tests/test-mbrtowc5.sh 2017-07-30 17:29:50.879924130 +0000
-@@ -1,6 +1,2 @@
- #!/bin/sh
--# Test whether the POSIX locale has encoding errors.
--LC_ALL=C \
--./test-mbrtowc${EXEEXT} 5 || exit
--LC_ALL=POSIX \
--./test-mbrtowc${EXEEXT} 5
-+exit 77
diff --git a/main/diffutils/skip-test-presue-output-tty.patch b/main/diffutils/skip-test-presue-output-tty.patch
new file mode 100644
index 0000000000..e0a47d5160
--- /dev/null
+++ b/main/diffutils/skip-test-presue-output-tty.patch
@@ -0,0 +1,24 @@
+Test fails for unknown reasons on lxc builders
+
+diff --git a/tests/colors b/tests/colors
+index d28a61c..e799dd3 100755
+--- a/tests/colors
++++ b/tests/colors
+@@ -123,11 +123,11 @@ compare exp out || fail=1
+
+ # Before the fix in http://debbugs.gnu.org/22067,
+ # this test would trigger an infinite loop bug.
+-mkfifo fifo
+-printf '%1000000s-a' > a
+-printf '%1000000s-b' > b
+-head -c 10 < fifo > /dev/null &
+-diff --color=always ---presume-output-tty a b > fifo
+-test $? = 141 || fail=1
++#mkfifo fifo
++#printf '%1000000s-a' > a
++#printf '%1000000s-b' > b
++#head -c 10 < fifo > /dev/null &
++#diff --color=always ---presume-output-tty a b > fifo
++#test $? = 141 || fail=1
+
+ Exit $fail
diff --git a/main/dns-root-hints/APKBUILD b/main/dns-root-hints/APKBUILD
index 0ddc726238..2cc6385db3 100644
--- a/main/dns-root-hints/APKBUILD
+++ b/main/dns-root-hints/APKBUILD
@@ -1,12 +1,12 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=dns-root-hints
pkgver=2019073000
-pkgrel=2
+pkgrel=3
pkgdesc="The DNS root hint(s)"
url="https://www.internic.net/domain"
arch="noarch"
license="Public-Domain"
-depends="curl gnupg"
+depends="curl gpg"
makedepends="curl"
source="verisign-grs-nstld-key.asc named.root named.root.sig
update-$pkgname
diff --git a/main/dnsmasq/APKBUILD b/main/dnsmasq/APKBUILD
index 6bebb51ed0..4a57bdf959 100644
--- a/main/dnsmasq/APKBUILD
+++ b/main/dnsmasq/APKBUILD
@@ -1,6 +1,22 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
-#
+pkgname=dnsmasq
+pkgver=2.86
+pkgrel=0
+pkgdesc="A lightweight DNS, DHCP, RA, TFTP and PXE server"
+url="https://www.thekelleys.org.uk/dnsmasq/"
+arch="all"
+license="GPL-2.0-only OR GPL-3.0-only"
+depends="!$pkgname-dnssec"
+makedepends="linux-headers nettle-dev coreutils"
+install="$pkgname.pre-install $pkgname.pre-upgrade
+ $pkgname-dnssec.pre-install $pkgname-dnssec.pre-upgrade"
+subpackages="$pkgname-doc $pkgname-dnssec"
+source="https://www.thekelleys.org.uk/dnsmasq/dnsmasq-$pkgver.tar.xz
+ $pkgname.initd
+ $pkgname.confd
+ uncomment-conf-dir.patch
+ "
# secfixes:
# 2.85-r0:
# - CVE-2021-3448
@@ -24,24 +40,6 @@
# - CVE-2017-14494
# - CVE-2017-14495
# - CVE-2017-14496
-#
-pkgname=dnsmasq
-pkgver=2.85
-pkgrel=2
-pkgdesc="A lightweight DNS, DHCP, RA, TFTP and PXE server"
-url="https://www.thekelleys.org.uk/dnsmasq/"
-arch="all"
-license="GPL-2.0-only OR GPL-3.0-only"
-depends="!$pkgname-dnssec"
-makedepends="linux-headers nettle-dev coreutils"
-install="$pkgname.pre-install $pkgname.pre-upgrade
- $pkgname-dnssec.pre-install $pkgname-dnssec.pre-upgrade"
-subpackages="$pkgname-doc $pkgname-dnssec"
-source="https://www.thekelleys.org.uk/dnsmasq/dnsmasq-$pkgver.tar.xz
- $pkgname.initd
- $pkgname.confd
- uncomment-conf-dir.patch
- "
build() {
make CFLAGS="$CFLAGS" COPTS="-DHAVE_DNSSEC" all
@@ -79,7 +77,9 @@ dnssec() {
cp -r "$pkgdir"/etc "$subpkgdir"/etc
}
-sha512sums="8beefe76b46f7d561f40d0900ba68b260a199cb62ab5b653746e3a1104c04fb8899b9e7a160a1be4fe8782bfb1607b556e9ffb9c25c4e99653e4bc74fcc03b09 dnsmasq-2.85.tar.xz
+sha512sums="
+487eae0afbc8bb3d5282a729ffb0cb2c9bdc7d8e46e2e8aa114cd7c5d82e0fd66f49926e7fa4028577548d6f57e8a865aca17f33963a589874584d608ab2deaf dnsmasq-2.86.tar.xz
a7d64a838d10f4f69e0f2178cf66f0b3725901696e30df9e8e3e09f2afd7c86e9d95af64d2b63ef66f18b8a637397b7015573938df9ad961e2b36c391c3ac579 dnsmasq.initd
9a401bfc408bf1638645c61b8ca734bea0a09ef79fb36648ec7ef21666257234254bbe6c73c82cc23aa1779ddcdda0e6baa2c041866f16dfb9c4e0ba9133eab8 dnsmasq.confd
-01e9e235e667abda07675009fb1947547863e0bb0256393c5a415978e2a49c1007585c7f0b51e8decce79c05e6f2ced3f400b11343feaa4de9b2e524f74a1ee3 uncomment-conf-dir.patch"
+01e9e235e667abda07675009fb1947547863e0bb0256393c5a415978e2a49c1007585c7f0b51e8decce79c05e6f2ced3f400b11343feaa4de9b2e524f74a1ee3 uncomment-conf-dir.patch
+"
diff --git a/main/doas/APKBUILD b/main/doas/APKBUILD
index aee6c31792..9b5f49fc77 100644
--- a/main/doas/APKBUILD
+++ b/main/doas/APKBUILD
@@ -1,14 +1,17 @@
# Maintainer: Drew DeVault <sir@cmpwn.com>
pkgname=doas
pkgver=6.8.1
-pkgrel=3
+pkgrel=6
pkgdesc="OpenBSD's temporary privilege escalation tool"
url="https://github.com/Duncaen/OpenDoas"
arch="all"
license="ISC"
makedepends="bison"
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/Duncaen/OpenDoas/archive/v$pkgver.tar.gz"
+install="$pkgname.post-install $pkgname.post-upgrade"
+source="$pkgname-$pkgver.tar.gz::https://github.com/Duncaen/OpenDoas/archive/v$pkgver.tar.gz
+ configuration-directory.patch
+ manpage-example-path.patch"
builddir="$srcdir/OpenDoas-$pkgver"
options="$options suid"
@@ -20,7 +23,8 @@ build() {
./configure \
--prefix=/usr \
--without-pam \
- --with-timestamp
+ --with-timestamp \
+ --with-doas-confdir
make
}
@@ -31,14 +35,17 @@ check() {
package() {
make install DESTDIR="$pkgdir"
- install -d "$pkgdir"/etc
- cat > "$pkgdir"/etc/doas.conf <<-EOF
+ install -d "$pkgdir"/usr/share/doc/$pkgname
+ cat > "$pkgdir"/usr/share/doc/$pkgname/doas.conf.example <<-EOF
# see doas.conf(5) for configuration details
# Uncomment to allow group "wheel" to become root
# permit persist :wheel
EOF
- chmod 600 "$pkgdir"/etc/doas.conf
}
-sha512sums="d96fe1cdd70e9211de9996ad05bcf7a127facd02af48f7ab2561869d9d16708f1b61722c6e6b9fe15a62e9ef501e09b1ba444b7b43a066f1895e543ebc9402e7 doas-6.8.1.tar.gz"
+sha512sums="
+d96fe1cdd70e9211de9996ad05bcf7a127facd02af48f7ab2561869d9d16708f1b61722c6e6b9fe15a62e9ef501e09b1ba444b7b43a066f1895e543ebc9402e7 doas-6.8.1.tar.gz
+79218c2798e67e6345818c357e651e09ef558d6cbcc5566e9e4816e8f4e73e4f737710caf617c211e89902ae7ef21cd520d3fc4d829550d40e1bd3b13befd0dc configuration-directory.patch
+60efd196595bda2c4f036cd0080a8825a85fedcc7524c917304b342373863213b3c557b4336f1dab760f167fd8cc2a59b2e744d8a47ff8a8acebbe74b1328f4f manpage-example-path.patch
+"
diff --git a/main/doas/configuration-directory.patch b/main/doas/configuration-directory.patch
new file mode 100644
index 0000000000..6a9575e57b
--- /dev/null
+++ b/main/doas/configuration-directory.patch
@@ -0,0 +1,509 @@
+From 7de1d454bda06d68a04f4f2e48099398a7711ae9 Mon Sep 17 00:00:00 2001
+From: Ariadne Conill <ariadne@dereferenced.org>
+Date: Wed, 4 Aug 2021 04:47:04 -0600
+Subject: [PATCH 1/8] add --with-confdir feature
+
+This adds support for an /etc/doas.d configuration directory as discussed in #61. It is disabled by default.
+---
+ README.md | 9 +++++++
+ configure | 8 +++++++
+ doas.c | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ parse.y | 3 ++-
+ 4 files changed, 91 insertions(+), 1 deletion(-)
+
+diff --git a/README.md b/README.md
+index f15610c..f967eca 100644
+--- a/README.md
++++ b/README.md
+@@ -61,3 +61,12 @@ similar to sudo.
+
+ See the comment block in `timestamp.c` for an in-depth description on how
+ timestamps are created and checked to be as safe as possible.
++
++### `--with-doas-confdir`
++
++An optional feature can be enabled which will result in `doas` reading configuration
++snippets from `/etc/doas.d`. These configuration snippets have the same requirements
++as `/etc/doas.conf` (owned by root, not world-writable).
++
++If this feature is enabled, only the `/etc/doas.d` directory is read, and the historical
++`/etc/doas.conf` file is ignored.
+\ No newline at end of file
+diff --git a/configure b/configure
+index 1f92f01..a3078dc 100755
+--- a/configure
++++ b/configure
+@@ -27,6 +27,7 @@ usage: configure [options]
+ --without-shadow disable shadow support
+
+ --with-timestamp enable timestamp support
++ --with-doas-confdir enable configuration directory support
+
+ --uid-max=NUM set UID_MAX (default 65535)
+ --gid-max=NUM set GID_MAX (default 65535)
+@@ -38,6 +39,7 @@ EOF
+
+ # defaults
+ WITHOUT_TIMESTAMP=yes
++WITHOUT_CONFDIR=yes
+ UID_MAX=65535
+ GID_MAX=65535
+
+@@ -56,6 +58,8 @@ for x; do
+ --target) TARGET=$var ;;
+ --enable-debug) DEBUG=yes ;;
+ --enable-static) BUILD_STATIC=yes ;;
++ --with-doas-confdir) WITHOUT_CONFDIR= ;;
++ --without-doas-confdir) WITHOUT_CONFDIR=yes ;;
+ --with-pam) WITHOUT_PAM=; WITHOUT_SHADOW=yes ;;
+ --with-shadow) WITHOUT_SHADOW=; WITHOUT_PAM=yes ;;
+ --without-pam) WITHOUT_PAM=yes ;;
+@@ -558,4 +562,8 @@ fi
+
+ printf '#define DOAS_CONF "%s/doas.conf"\n' "${SYSCONFDIR}" >>$CONFIG_H
+
++if [ -z "$WITHOUT_CONFDIR" ]; then
++ printf '#define DOAS_CONFDIR "%s/doas.d"\n' "${SYSCONFDIR}" >>$CONFIG_H
++fi
++
+ printf '\n#endif /* CONFIG_H */\n' >>$CONFIG_H
+diff --git a/doas.c b/doas.c
+index ac3a42a..58701b7 100644
+--- a/doas.c
++++ b/doas.c
+@@ -35,6 +35,7 @@
+ #include <syslog.h>
+ #include <errno.h>
+ #include <fcntl.h>
++#include <dirent.h>
+
+ #include "openbsd.h"
+ #include "doas.h"
+@@ -155,6 +156,7 @@ permit(uid_t uid, gid_t *groups, int ngroups, const struct rule **lastr,
+ static void
+ parseconfig(const char *filename, int checkperms)
+ {
++ extern const char *yyfn;
+ extern FILE *yyfp;
+ extern int yyparse(void);
+ struct stat sb;
+@@ -164,6 +166,8 @@ parseconfig(const char *filename, int checkperms)
+ err(1, checkperms ? "doas is not enabled, %s" :
+ "could not open config file %s", filename);
+
++ yyfn = filename;
++
+ if (checkperms) {
+ if (fstat(fileno(yyfp), &sb) != 0)
+ err(1, "fstat(\"%s\")", filename);
+@@ -174,11 +178,67 @@ parseconfig(const char *filename, int checkperms)
+ }
+
+ yyparse();
++ yyfn = NULL;
++
+ fclose(yyfp);
+ if (parse_errors)
+ exit(1);
+ }
+
++#ifdef DOAS_CONFDIR
++static int
++isconfdir(const char *dirpath)
++{
++ struct stat sb;
++
++ if (lstat(dirpath, &sb) != 0)
++ err(1, "lstat(\"%s\")", dirpath);
++
++ if ((sb.st_mode & (S_IFMT)) == S_IFDIR)
++ return 1;
++
++ errno = ENOTDIR;
++ return 0;
++}
++
++static void
++parseconfdir(const char *dirpath, int checkperms)
++{
++ struct dirent **dirent_table;
++ size_t i, dirent_count;
++ char pathbuf[PATH_MAX];
++
++ if (!isconfdir(dirpath))
++ err(1, checkperms ? "doas is not enabled, %s" :
++ "could not open config directory %s", dirpath);
++
++ dirent_count = scandir(dirpath, &dirent_table, NULL, alphasort);
++
++ for (i = 0; i < dirent_count; i++)
++ {
++ struct stat sb;
++ size_t pathlen;
++
++ pathlen = snprintf(pathbuf, sizeof pathbuf, "%s/%s", dirpath, dirent_table[i]->d_name);
++ free(dirent_table[i]);
++
++ /* make sure path ends in .conf */
++ if (strcmp(pathbuf + (pathlen - 5), ".conf"))
++ continue;
++
++ if (stat(pathbuf, &sb) != 0)
++ err(1, "stat(\"%s\")", pathbuf);
++
++ if ((sb.st_mode & (S_IFMT)) != S_IFREG)
++ continue;
++
++ parseconfig(pathbuf, checkperms);
++ }
++
++ free(dirent_table);
++}
++#endif
++
+ static void __dead
+ checkconfig(const char *confpath, int argc, char **argv,
+ uid_t uid, gid_t *groups, int ngroups, uid_t target)
+@@ -188,7 +248,13 @@ checkconfig(const char *confpath, int argc, char **argv,
+ if (setresuid(uid, uid, uid) != 0)
+ err(1, "setresuid");
+
++#ifdef DOAS_CONFDIR
++ if (isconfdir(confpath))
++ parseconfdir(confpath, 0);
++ else
++#else
+ parseconfig(confpath, 0);
++#endif
+ if (!argc)
+ exit(0);
+
+@@ -330,7 +396,13 @@ main(int argc, char **argv)
+ if (geteuid())
+ errx(1, "not installed setuid");
+
++#ifdef DOAS_CONFDIR
++ if (isconfdir(DOAS_CONFDIR))
++ parseconfdir(DOAS_CONFDIR, 1);
++ else
++#else
+ parseconfig(DOAS_CONF, 1);
++#endif
+
+ /* cmdline is used only for logging, no need to abort on truncate */
+ (void)strlcpy(cmdline, argv[0], sizeof(cmdline));
+diff --git a/parse.y b/parse.y
+index 388c2a5..c6d7ebf 100644
+--- a/parse.y
++++ b/parse.y
+@@ -49,6 +49,7 @@ typedef struct {
+ } yystype;
+ #define YYSTYPE yystype
+
++const char *yyfn;
+ FILE *yyfp;
+
+ struct rule **rules;
+@@ -203,7 +204,7 @@ yyerror(const char *fmt, ...)
+ va_start(va, fmt);
+ vfprintf(stderr, fmt, va);
+ va_end(va);
+- fprintf(stderr, " at line %d\n", yylval.lineno + 1);
++ fprintf(stderr, " at %s, line %d\n", yyfn, yylval.lineno + 1);
+ parse_errors++;
+ }
+
+
+From 046ff34408ea8bf2cafc079bd71a126aa009b005 Mon Sep 17 00:00:00 2001
+From: Ariadne Conill <ariadne@dereferenced.org>
+Date: Wed, 4 Aug 2021 09:20:35 -0600
+Subject: [PATCH 2/8] gracefully handle ENOENT in isconfdir()
+
+---
+ doas.c | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/doas.c b/doas.c
+index 58701b7..4c0cafe 100644
+--- a/doas.c
++++ b/doas.c
+@@ -191,8 +191,13 @@ isconfdir(const char *dirpath)
+ {
+ struct stat sb;
+
+- if (lstat(dirpath, &sb) != 0)
+- err(1, "lstat(\"%s\")", dirpath);
++ if (lstat(dirpath, &sb) != 0) {
++ if (errno != ENOENT)
++ err(1, "lstat(\"%s\")", dirpath);
++
++ errno = ENOTDIR;
++ return 0;
++ }
+
+ if ((sb.st_mode & (S_IFMT)) == S_IFDIR)
+ return 1;
+
+From 6e76fb04ac637a1001ba201559f28279e3abe738 Mon Sep 17 00:00:00 2001
+From: Ariadne Conill <ariadne@dereferenced.org>
+Date: Wed, 4 Aug 2021 09:31:49 -0600
+Subject: [PATCH 3/8] ensure pathlen - 5 is always non-zero
+
+---
+ doas.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/doas.c b/doas.c
+index 4c0cafe..f827fcd 100644
+--- a/doas.c
++++ b/doas.c
+@@ -228,6 +228,9 @@ parseconfdir(const char *dirpath, int checkperms)
+ free(dirent_table[i]);
+
+ /* make sure path ends in .conf */
++ if (pathlen < 6)
++ continue;
++
+ if (strcmp(pathbuf + (pathlen - 5), ".conf"))
+ continue;
+
+
+From cac56ea61e16d0ccb91100164a61e9f7215604e5 Mon Sep 17 00:00:00 2001
+From: Ariadne Conill <ariadne@dereferenced.org>
+Date: Wed, 4 Aug 2021 10:17:35 -0600
+Subject: [PATCH 4/8] bail if dirent_count < 0
+
+---
+ doas.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/doas.c b/doas.c
+index f827fcd..6e308c8 100644
+--- a/doas.c
++++ b/doas.c
+@@ -210,7 +210,7 @@ static void
+ parseconfdir(const char *dirpath, int checkperms)
+ {
+ struct dirent **dirent_table;
+- size_t i, dirent_count;
++ int i, dirent_count;
+ char pathbuf[PATH_MAX];
+
+ if (!isconfdir(dirpath))
+@@ -218,6 +218,9 @@ parseconfdir(const char *dirpath, int checkperms)
+ "could not open config directory %s", dirpath);
+
+ dirent_count = scandir(dirpath, &dirent_table, NULL, alphasort);
++ if (dirent_count < 0)
++ err(1, checkperms ? "doas is not enabled, %s" :
++ "could not open config directory %s", dirpath);
+
+ for (i = 0; i < dirent_count; i++)
+ {
+
+From 8d224060adbdb1dececeb02660df8693f7c54a40 Mon Sep 17 00:00:00 2001
+From: Ariadne Conill <ariadne@dereferenced.org>
+Date: Wed, 4 Aug 2021 10:20:33 -0600
+Subject: [PATCH 5/8] error out if no matching configuration files are found in
+ the configuration directory
+
+---
+ doas.c | 11 +++++++++--
+ 1 file changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/doas.c b/doas.c
+index 6e308c8..cdfa3ea 100644
+--- a/doas.c
++++ b/doas.c
+@@ -210,7 +210,7 @@ static void
+ parseconfdir(const char *dirpath, int checkperms)
+ {
+ struct dirent **dirent_table;
+- int i, dirent_count;
++ int i, m, dirent_count;
+ char pathbuf[PATH_MAX];
+
+ if (!isconfdir(dirpath))
+@@ -222,7 +222,7 @@ parseconfdir(const char *dirpath, int checkperms)
+ err(1, checkperms ? "doas is not enabled, %s" :
+ "could not open config directory %s", dirpath);
+
+- for (i = 0; i < dirent_count; i++)
++ for (i = 0, m = 0; i < dirent_count; i++)
+ {
+ struct stat sb;
+ size_t pathlen;
+@@ -244,9 +244,16 @@ parseconfdir(const char *dirpath, int checkperms)
+ continue;
+
+ parseconfig(pathbuf, checkperms);
++ m++;
+ }
+
+ free(dirent_table);
++
++ if (!m) {
++ fprintf(stderr, "doas is not enabled, %s: no matching configuration files found\n",
++ dirpath);
++ exit(1);
++ }
+ }
+ #endif
+
+
+From 35c3e69fa52157683b8ae6fe040367390aa63bb6 Mon Sep 17 00:00:00 2001
+From: Ariadne Conill <ariadne@dereferenced.org>
+Date: Wed, 4 Aug 2021 10:34:28 -0600
+Subject: [PATCH 6/8] use errx instead of fprintf(stderr)
+
+---
+ doas.c | 7 ++-----
+ 1 file changed, 2 insertions(+), 5 deletions(-)
+
+diff --git a/doas.c b/doas.c
+index cdfa3ea..b50138a 100644
+--- a/doas.c
++++ b/doas.c
+@@ -249,11 +249,8 @@ parseconfdir(const char *dirpath, int checkperms)
+
+ free(dirent_table);
+
+- if (!m) {
+- fprintf(stderr, "doas is not enabled, %s: no matching configuration files found\n",
+- dirpath);
+- exit(1);
+- }
++ if (!m)
++ errx(1, "doas is not enabled, %s: no matching configuration files found\n", dirpath);
+ }
+ #endif
+
+
+From c9ff0fcdc0253679a0348995c36f89edc8d73a5b Mon Sep 17 00:00:00 2001
+From: Ariadne Conill <ariadne@dereferenced.org>
+Date: Wed, 4 Aug 2021 16:50:58 -0600
+Subject: [PATCH 7/8] fix up the ifndef DOAS_CONFDIR branch
+
+---
+ doas.c | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/doas.c b/doas.c
+index b50138a..d77186b 100644
+--- a/doas.c
++++ b/doas.c
+@@ -267,9 +267,8 @@ checkconfig(const char *confpath, int argc, char **argv,
+ if (isconfdir(confpath))
+ parseconfdir(confpath, 0);
+ else
+-#else
+- parseconfig(confpath, 0);
+ #endif
++ parseconfig(confpath, 0);
+ if (!argc)
+ exit(0);
+
+@@ -415,9 +414,8 @@ main(int argc, char **argv)
+ if (isconfdir(DOAS_CONFDIR))
+ parseconfdir(DOAS_CONFDIR, 1);
+ else
+-#else
+- parseconfig(DOAS_CONF, 1);
+ #endif
++ parseconfig(DOAS_CONF, 1);
+
+ /* cmdline is used only for logging, no need to abort on truncate */
+ (void)strlcpy(cmdline, argv[0], sizeof(cmdline));
+
+From 9fe4df5f004435fa0b092dc15a3c5ab09090f45d Mon Sep 17 00:00:00 2001
+From: Ariadne Conill <ariadne@dereferenced.org>
+Date: Fri, 3 Sep 2021 11:59:12 -0600
+Subject: [PATCH 8/8] add manpage for doas.d(5)
+
+---
+ GNUmakefile | 1 +
+ doas.conf.5 | 1 +
+ doas.d.5 | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 52 insertions(+)
+ create mode 100644 doas.d.5
+
+diff --git a/GNUmakefile b/GNUmakefile
+index 2eef88e..423731c 100644
+--- a/GNUmakefile
++++ b/GNUmakefile
+@@ -24,6 +24,7 @@ install: ${PROG} ${MAN}
+ chmod ${BINMODE} ${DESTDIR}${BINDIR}/${PROG}
+ cp -f doas.1 ${DESTDIR}${MANDIR}/man1
+ cp -f doas.conf.5 ${DESTDIR}${MANDIR}/man5
++ cp -f doas.d.5 ${DESTDIR}${MANDIR}/man5
+
+ uninstall:
+ rm -f ${DESTDIR}${BINDIR}/${PROG}
+diff --git a/doas.conf.5 b/doas.conf.5
+index e98bfbe..e90d512 100644
+--- a/doas.conf.5
++++ b/doas.conf.5
+@@ -143,6 +143,7 @@ permit nopass keepenv setenv { PATH } root as root
+ .Ed
+ .Sh SEE ALSO
+ .Xr doas 1 ,
++.Xr doas.d 5 ,
+ .Xr syslogd 8
+ .Sh HISTORY
+ The
+diff --git a/doas.d.5 b/doas.d.5
+new file mode 100644
+index 0000000..8f5f96a
+--- /dev/null
++++ b/doas.d.5
+@@ -0,0 +1,50 @@
++.\"Copyright (c) 2021 Ariadne Conill <ariadne@dereferenced.org>
++.\"
++.\"Permission to use, copy, modify, and distribute this software for any
++.\"purpose with or without fee is hereby granted, provided that the above
++.\"copyright notice and this permission notice appear in all copies.
++.\"
++.\"THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
++.\"WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
++.\"MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
++.\"ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
++.\"WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
++.\"ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
++.\"OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
++.Dd $Mdocdate: October 9 2020 $
++.Dt DOAS.CONF 5
++.Os
++.Sh NAME
++.Nm doas.conf
++.Nd doas configuration file
++.Sh DESCRIPTION
++The
++.Xr doas 1
++utility executes commands as other users according to the rules
++configured in either the configuration file or, optionally, the
++configuration directory. The preference to use the configuration
++file or configuration directory is determined at compile time,
++.Xr doas 1
++will only consult one or the other.
++.Pp
++Configuration snippets stored in the configuration directory
++follow the same rules as the classic
++.Xr doas 1
++configuration file, documented in
++.Xr doas.conf 5 .
++They must end with the .conf extension, or they will be ignored.
++.Pp
++These snippets are read in alphabetical order and thus can be
++ordered in the same way as other configuration directories.
++.Sh FILES
++.Bl -tag -width /etc/doas.d -compact
++.It Pa /etc/doas.d
++.Xr doas 1
++configuration directory.
++.Sh SEE ALSO
++.Xr doas 1 ,
++.Xr doas.conf 5
++.Sh HISTORY
++The
++.Nm
++configuration directory first appeared in OpenDoas.
diff --git a/main/doas/doas.post-install b/main/doas/doas.post-install
new file mode 100755
index 0000000000..46518437c2
--- /dev/null
+++ b/main/doas/doas.post-install
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+[ -d /etc/doas.d ] || mkdir /etc/doas.d
+[ -e /etc/doas.d/doas.conf ] && exit 0
+
+cat << _EOF_ >/etc/doas.d/doas.conf
+# This file is actually located at /etc/doas.d/doas.conf, and reflects
+# the system doas configuration. It may have been migrated from its
+# previous location, /etc/doas.conf, automatically.
+_EOF_
+
+[ -e /etc/doas.conf ] && cat /etc/doas.conf >> /etc/doas.d/doas.conf
+[ -e /etc/doas.conf ] || cat << _EOF_ >> /etc/doas.d/doas.conf
+# Please see /usr/share/doc/doas/doas.conf.example in the doas-doc
+# package for configuration examples.
+_EOF_
+
+# install compatibility symlink
+rm -f /etc/doas.conf
+ln -sf /etc/doas.d/doas.conf /etc/doas.conf
+
+# chmod 600
+chmod 600 /etc/doas.d/doas.conf
+
+cat << _EOF_ >&2
+ * Your configuration in /etc/doas.conf was migrated to
+ * /etc/doas.d/doas.conf and a symlink was installed in its
+ * place. For more information about the new doas configuration
+ * directory, consult doas.d(5).
+_EOF_ \ No newline at end of file
diff --git a/main/doas/doas.post-upgrade b/main/doas/doas.post-upgrade
new file mode 100755
index 0000000000..46518437c2
--- /dev/null
+++ b/main/doas/doas.post-upgrade
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+[ -d /etc/doas.d ] || mkdir /etc/doas.d
+[ -e /etc/doas.d/doas.conf ] && exit 0
+
+cat << _EOF_ >/etc/doas.d/doas.conf
+# This file is actually located at /etc/doas.d/doas.conf, and reflects
+# the system doas configuration. It may have been migrated from its
+# previous location, /etc/doas.conf, automatically.
+_EOF_
+
+[ -e /etc/doas.conf ] && cat /etc/doas.conf >> /etc/doas.d/doas.conf
+[ -e /etc/doas.conf ] || cat << _EOF_ >> /etc/doas.d/doas.conf
+# Please see /usr/share/doc/doas/doas.conf.example in the doas-doc
+# package for configuration examples.
+_EOF_
+
+# install compatibility symlink
+rm -f /etc/doas.conf
+ln -sf /etc/doas.d/doas.conf /etc/doas.conf
+
+# chmod 600
+chmod 600 /etc/doas.d/doas.conf
+
+cat << _EOF_ >&2
+ * Your configuration in /etc/doas.conf was migrated to
+ * /etc/doas.d/doas.conf and a symlink was installed in its
+ * place. For more information about the new doas configuration
+ * directory, consult doas.d(5).
+_EOF_ \ No newline at end of file
diff --git a/main/doas/manpage-example-path.patch b/main/doas/manpage-example-path.patch
new file mode 100644
index 0000000000..31048c70d6
--- /dev/null
+++ b/main/doas/manpage-example-path.patch
@@ -0,0 +1,16 @@
+--- OpenDoas-6.8.1.orig/doas.conf.5
++++ OpenDoas-6.8.1/doas.conf.5
+@@ -114,11 +114,11 @@
+ it is not considered a keyword.
+ .El
+ .Sh FILES
+-.Bl -tag -width /etc/examples/doas.conf -compact
++.Bl -tag -width /usr/share/doc/doas/doas.conf.example -compact
+ .It Pa /etc/doas.conf
+ .Xr doas 1
+ configuration file.
+-.It Pa /etc/examples/doas.conf
++.It Pa /usr/share/doc/doas/doas.conf.example
+ Example configuration file.
+ .El
+ .Sh EXAMPLES
diff --git a/main/dovecot/APKBUILD b/main/dovecot/APKBUILD
index 672e407d6c..c33b835ed3 100644
--- a/main/dovecot/APKBUILD
+++ b/main/dovecot/APKBUILD
@@ -4,10 +4,10 @@
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=dovecot
-pkgver=2.3.15
+pkgver=2.3.16
_pkgverminor=${pkgver%.*}
-pkgrel=0
-_pigeonholever=0.5.15
+pkgrel=2
+_pigeonholever=0.5.16
pkgdesc="IMAP and POP3 server"
url="https://www.dovecot.org/"
arch="all"
@@ -24,13 +24,14 @@ makedepends="
expat-dev
gettext-dev
heimdal-dev
+ icu-dev
libcap-dev
libsodium-dev
libtool
linux-headers
mariadb-connector-c-dev
openldap-dev
- openssl-dev
+ openssl1.1-compat-dev
postgresql-dev
sqlite-dev
zlib-dev
@@ -61,11 +62,14 @@ source="https://www.dovecot.org/releases/$_pkgverminor/dovecot-$pkgver.tar.gz
default-config.patch
fix-out-of-memory-test.patch
fix-libssl_iostream_openssl.patch
+ fix-check-s390x.patch
+ fix-test-file-cache.patch
test-imap-client-hibernate.patch
dovecot.logrotate
dovecot.initd
"
_builddir_pigeonhole="$srcdir/$pkgname-$_pkgverminor-pigeonhole-$_pigeonholever"
+options="!check" # tests being weird
# secfixes:
# 2.3.15-r0:
@@ -330,13 +334,15 @@ _submv() {
}
sha512sums="
-75bbdbeac663da109f78dba06c42bb5193e911c6b3c64f055fc4473ae9afaf0c8304c49fc7f06c5c6b61e67dd13dc21fbed6ff160a99f38f547c88ba05e6b03a dovecot-2.3.15.tar.gz
-521070080802bf2a50cd0ff0af5dc991c04d70b807abc2cd9aa567444a4869f5f42800f19d9b740a519bd4069437139e70ca6ae4b905479fcec8faa133ac5f54 dovecot-2.3-pigeonhole-0.5.15.tar.gz
+31a9d352c7ead466d65ee0535b1fbd9138e35235f1ebfeedc4eef54cba450663c59708d162eaf0712af1c40f23526ac86aab2eece8cefde3edf690127472fd1e dovecot-2.3.16.tar.gz
+880e00654eab85cc41b27ac470cce6011991e3cdb005642f495c2297fd9492bfb2b6b4ef63c88c2ac10bec870ad69b8bee6b11dd1bc5099e16c3cc2857312543 dovecot-2.3-pigeonhole-0.5.16.tar.gz
fe4fbeaedb377d809f105d9dbaf7c1b961aa99f246b77189a73b491dc1ae0aa9c68678dde90420ec53ec877c08f735b42d23edb13117d7268420e001aa30967a skip-iconv-check.patch
794875dbf0ded1e82c5c3823660cf6996a7920079149cd8eed54231a53580d931b966dfb17185ab65e565e108545ecf6591bae82f935ab1b6ff65bb8ee93d7d5 split-protocols.patch
0d8f89c7ba6f884719b5f9fc89e8b2efbdc3e181de308abf9b1c1b0e42282f4df72c7bf62f574686967c10a8677356560c965713b9d146e2770aab17e95bcc07 default-config.patch
733cdbfb7f6b2608470bd30a0f9190ec86099d4c8e48b7fb92d7b595be665bf749976889033e1ad438edd3f99f2e0d496dd0d667291915c80df82f7e62483f59 fix-out-of-memory-test.patch
0fb56eb9c7fae8d8b1d794928ce2ba58d03c102cd7c3f959799c62c5d838ff535ecccb64bc1970d960f67d49388c880773e9eac5aed3bcf92e6efed3b56cc837 fix-libssl_iostream_openssl.patch
+c7a7882e2391f6d97e361a33cd627c423f5130d08828012bdcce02ba3050424475edbdb370185a717f1054575b9008633f1e433b2216b843b48225515ebe1dda fix-check-s390x.patch
+bfa8f18cce438bbf55cfaa2164358424f04393365aa98ebc342dc2677b48bf8fb16bdb1803aba18ad74fe8494bb7d2091569c430086ed2b47d13100ae5e9ffab fix-test-file-cache.patch
33c6eefaaca755c7766c74cb1afdc54fa9241b3d75b1db6b1167615061b5d79b85d759746c2d1793f4a3669d493489236e89ca4278dd38dd681f537c83e81a20 test-imap-client-hibernate.patch
9f19698ab45969f1f94dc4bddf6de59317daee93c9421c81f2dbf8a7efe6acf89689f1d30f60f536737bb9526c315215d2bce694db27e7b8d7896036a59c31f0 dovecot.logrotate
d91951b81150d7a3ef6a674c0dc7b012f538164dac4b9d27a6801d31da6813b764995a438f69b6a680463e1b60a3b4f2959654f68e565fe116ea60312d5e5e70 dovecot.initd
diff --git a/main/dovecot/fix-check-s390x.patch b/main/dovecot/fix-check-s390x.patch
new file mode 100644
index 0000000000..d4d5f6ae5b
--- /dev/null
+++ b/main/dovecot/fix-check-s390x.patch
@@ -0,0 +1,52 @@
+commit ec4595097067a736717ef202fe8542b1b4bc2dd5
+Author: Timo Sirainen <timo.sirainen@open-xchange.com>
+Date: Tue Aug 10 12:22:08 2021 +0300
+
+ lib-index: Fix storing cache fields' last_used with 64bit big endian CPUs
+
+diff --git a/src/lib-index/mail-cache-fields.c b/src/lib-index/mail-cache-fields.c
+index e929fb559d..429e0d234c 100644
+--- a/src/lib-index/mail-cache-fields.c
++++ b/src/lib-index/mail-cache-fields.c
+@@ -524,6 +524,19 @@ static void copy_to_buf_byte(struct mail_cache *cache, buffer_t *dest,
+ }
+ }
+
++static void
++copy_to_buf_last_used(struct mail_cache *cache, buffer_t *dest, bool add_new)
++{
++ size_t offset = offsetof(struct mail_cache_field, last_used);
++#if defined(WORDS_BIGENDIAN) && SIZEOF_VOID_P == 8
++ /* 64bit time_t with big endian CPUs: copy the last 32 bits instead of
++ the first 32 bits (that are always 0). The 32 bits are enough until
++ year 2106, so we're not in a hurry to use 64 bits on disk. */
++ offset += sizeof(uint32_t);
++#endif
++ copy_to_buf(cache, dest, add_new, offset, sizeof(uint32_t));
++}
++
+ static int mail_cache_header_fields_update_locked(struct mail_cache *cache)
+ {
+ buffer_t *buffer;
+@@ -536,9 +549,7 @@ static int mail_cache_header_fields_update_locked(struct mail_cache *cache)
+
+ buffer = t_buffer_create(256);
+
+- copy_to_buf(cache, buffer, FALSE,
+- offsetof(struct mail_cache_field, last_used),
+- sizeof(uint32_t));
++ copy_to_buf_last_used(cache, buffer, FALSE);
+ ret = mail_cache_write(cache, buffer->data, buffer->used,
+ offset + MAIL_CACHE_FIELD_LAST_USED());
+ if (ret == 0) {
+@@ -599,9 +610,7 @@ void mail_cache_header_fields_get(struct mail_cache *cache, buffer_t *dest)
+ buffer_append(dest, &hdr, sizeof(hdr));
+
+ /* we have to keep the field order for the existing fields. */
+- copy_to_buf(cache, dest, TRUE,
+- offsetof(struct mail_cache_field, last_used),
+- sizeof(uint32_t));
++ copy_to_buf_last_used(cache, dest, TRUE);
+ copy_to_buf(cache, dest, TRUE,
+ offsetof(struct mail_cache_field, field_size),
+ sizeof(uint32_t));
diff --git a/main/dovecot/fix-test-file-cache.patch b/main/dovecot/fix-test-file-cache.patch
new file mode 100644
index 0000000000..c4a9630aa8
--- /dev/null
+++ b/main/dovecot/fix-test-file-cache.patch
@@ -0,0 +1,22 @@
+posted over IRC to me by Aki Tuomi
+
+diff --git a/src/lib/test-file-cache.c b/src/lib/test-file-cache.c
+index 6bac9abfe7..a402d38a58 100644
+--- a/src/lib/test-file-cache.c
++++ b/src/lib/test-file-cache.c
+@@ -251,6 +251,7 @@ static void test_file_cache_errors(void)
+ test_assert(size == 0);
+ test_assert(map == NULL);
+
++#if 0
+ /* temporarily set a small memory limit to make mmap attempt fail */
+ struct rlimit rl_cur;
+ test_assert(getrlimit(RLIMIT_AS, &rl_cur) == 0);
+@@ -274,6 +275,7 @@ static void test_file_cache_errors(void)
+ test_expect_error_string(errstr);
+ test_assert(file_cache_set_size(cache, page_size*2) == -1);
+ test_assert(setrlimit(RLIMIT_AS, &rl_cur) == 0);
++#endif
+
+ file_cache_free(&cache);
+ i_close_fd(&fd);
diff --git a/main/doxygen/APKBUILD b/main/doxygen/APKBUILD
index 6ae0689e2f..ca09568515 100644
--- a/main/doxygen/APKBUILD
+++ b/main/doxygen/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=doxygen
-pkgver=1.9.1
+pkgver=1.9.2
pkgrel=1
pkgdesc="A documentation system for C++, C, Java, IDL and PHP"
url="https://www.doxygen.nl/"
@@ -8,7 +8,11 @@ arch="all"
license="GPL-2.0-or-later"
checkdepends="libxml2-utils"
makedepends="flex bison coreutils perl python3 cmake"
-source="https://doxygen.nl/files/doxygen-$pkgver.src.tar.gz"
+source="https://doxygen.nl/files/doxygen-$pkgver.src.tar.gz
+ fix-segfault.patch
+ "
+
+[ "$CARCH" = "riscv64" ] && options="textrels"
build() {
cmake -B build \
@@ -29,4 +33,7 @@ package() {
make -C build DESTDIR="$pkgdir" install
}
-sha512sums="637496c549a4a150cfaeb5d4913de512262145ecd7d455d7b7f3dd68f9416e47d931a6c1efd8a17d931e4baf4a8a9f2ed21124664003b123b6f89ca4abf263ed doxygen-1.9.1.src.tar.gz"
+sha512sums="
+2729d013b0363a919bbf6babd300389b76e95dd9dbb16ac0f57fc5a0392d3e2076ea4fba958a236311513e68e4aa056a77bd22c9c92b410a17eed095e5adccc0 doxygen-1.9.2.src.tar.gz
+ced906c1caccf478a217c05dfcf03f9c5b7854b88d461c6364d9857c5ad1fc96e983a1c30e16859a9aaa76da837626a0750d5ebc2c58e9ef703a3b31cf23f884 fix-segfault.patch
+"
diff --git a/main/doxygen/fix-segfault.patch b/main/doxygen/fix-segfault.patch
new file mode 100644
index 0000000000..6dc4cf4840
--- /dev/null
+++ b/main/doxygen/fix-segfault.patch
@@ -0,0 +1,83 @@
+From 11bd374ea216b561deaf9be675ddd8941b80a487 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=C3=89rico=20Nogueira?= <erico.erc@gmail.com>
+Date: Sun, 29 Aug 2021 01:07:27 -0300
+Subject: [PATCH] Fix memory corruption in TextStream.
+
+This resulted in observable crashes with musl libc due to corruption in
+malloc, but could also be observed in valgrind, when building GNU
+Radio's doxygen docs. One of the valgrind errors is reproduced below.
+
+==26== Invalid read of size 4
+==26== at 0x405A62D: fwrite (fwrite.c:32)
+==26== by 0x47154D: flush (textstream.h:181)
+==26== by 0x47154D: setFile (textstream.h:74)
+==26== by 0x47154D: OutputGenerator::startPlainFile(QCString const&) (outputgen.cpp:69)
+==26== by 0x2EFF57: HtmlGenerator::startFile(QCString const&, QCString const&, QCString const&, int) (htmlgen.cpp:1121)
+==26== by 0x3083EC: forall<OutputGenerator, const QCString&, const QCString&, const QCString&, int, const QCString&, const QCString&, const QCString&, int&> (outputlist.h:512)
+==26== by 0x3083EC: startFile (outputlist.h:91)
+==26== by 0x3083EC: startFile(OutputList&, QCString const&, QCString const&, QCString const&, HighlightedItem, bool, QCString const&) (index.cpp:240)
+==26== by 0x296807: FileDefImpl::writeSourceHeader(OutputList&) (filedef.cpp:1110)
+==26== by 0x276751: generateFileSources() (doxygen.cpp:7971)
+==26== by 0x277793: generateOutput() (doxygen.cpp:11992)
+==26== by 0x21173E: main (main.cpp:38)
+==26== Address 0x130bb62c is 140 bytes inside a block of size 1,264 free'd
+==26== at 0x48BAA4B: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
+==26== by 0x40585D0: fclose (fclose.c:35)
+==26== by 0x4DCE5D7: std::__basic_file<char>::close() (in /usr/lib/libstdc++.so.6.0.28)
+==26== by 0x4E1D676: std::basic_filebuf<char, std::char_traits<char> >::close() (in /usr/lib/libstdc++.so.6.0.28)
+==26== by 0x4B055C: ~basic_filebuf (fstream:249)
+==26== by 0x4B055C: ~basic_ofstream (fstream:863)
+==26== by 0x4B055C: writeJavaScriptSearchIndex() (searchindex.cpp:923)
+==26== by 0x2776F0: generateOutput() (doxygen.cpp:11957)
+==26== by 0x21173E: main (main.cpp:38)
+==26== Block was alloc'd at
+==26== at 0x48B981F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
+==26== by 0x40578FE: fdopen (__fdopen.c:21)
+==26== by 0x405943E: fopen (fopen.c:26)
+==26== by 0x4DCE55F: std::__basic_file<char>::open(char const*, std::_Ios_Openmode, int) (in /usr/lib/libstdc++.so.6.0.28)
+==26== by 0x4E1E19A: std::basic_filebuf<char, std::char_traits<char> >::open(char const*, std::_Ios_Openmode) (in /usr/lib/libstdc++.so.6.0.28)
+==26== by 0x4B0470: open (fstream:332)
+==26== by 0x4B0470: open (fstream:962)
+==26== by 0x4B0470: basic_ofstream (fstream:830)
+==26== by 0x4B0470: writeJavaScriptSearchIndex() (searchindex.cpp:923)
+==26== by 0x2776F0: generateOutput() (doxygen.cpp:11957)
+==26== by 0x21173E: main (main.cpp:38)
+
+What was happening is that the TextStream object is reused for multiple
+different files. Therefore, when one calls setStream(nullptr) or
+setFile(nullptr), m_f or m_s will, respectively, still contain a pointer
+to the previous member, which is used when one calls setFile() or
+setStream() again, since these methods will call flush().
+
+For example, a program doing
+
+ s.setFile(f1);
+ s.setStream(nullptr);
+ fclose(f1);
+ s.setFile(f2);
+
+will call fwrite(f1, ...). This pattern can be observed in many parts of
+Doxygen, so fixing it in TextStream itself by always zeroing the other
+pointer is the simplest fix.
+---
+ src/textstream.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/textstream.h b/src/textstream.h
+index 161ce7fe1..38027ec07 100644
+--- a/src/textstream.h
++++ b/src/textstream.h
+@@ -67,11 +67,13 @@ class TextStream final
+ {
+ flush();
+ m_s = s;
++ m_f = nullptr;
+ }
+
+ void setFile(FILE *f)
+ {
+ flush();
++ m_s = nullptr;
+ m_f = f;
+ }
+
diff --git a/main/drbd-utils/APKBUILD b/main/drbd-utils/APKBUILD
index a6e5735ef9..ffe195e9a4 100644
--- a/main/drbd-utils/APKBUILD
+++ b/main/drbd-utils/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=drbd-utils
-pkgver=9.18.0
+pkgver=9.18.2
pkgrel=0
pkgdesc="Network-based RAID 1"
url="https://www.drbd.org"
@@ -13,7 +13,7 @@ options="!check" # no tests provided
provides="drbd=$pkgver-r$pkgrel"
subpackages="$pkgname-doc $pkgname-pacemaker::noarch
$pkgname-bash-completion:bashcomp:noarch $pkgname-openrc"
-source="https://www.linbit.com/downloads/drbd/utils/drbd-utils-$pkgver.tar.gz
+source="https://pkg.linbit.com//downloads/drbd/utils/drbd-utils-$pkgver.tar.gz
drbdsetup-permissions.patch
fix-drbdsetup_events2.c.patch
drbd.initd
@@ -61,7 +61,7 @@ bashcomp() {
}
sha512sums="
-1bbd3c5f744b1b2c76c1b5638efaf75de1b000ec74c5c54fa004bfc362db56a7e147a4b222a6781d0a81cd58accbb8147c28d19be9419b37f461bb90800625e9 drbd-utils-9.18.0.tar.gz
+9b21c8b03e91249ff5ae547dbb0f96701ffad1f561b518f285ad074ea34586b7240146ac453bdd22ecb15cb9abb60e55b2d1a4b496d8720bc5eeb49cfc356b4a drbd-utils-9.18.2.tar.gz
562ae8eee03148666fb6e6e700c1eb9086f6901e176ea6cd007e3ac4e39d1cdaf967064de74dc1ad620155996dc7011bd0e2abd1c9595ff9bf5f4413673726f3 drbdsetup-permissions.patch
dc9d825019803ab5cf66d14b0b67b9d3f42cabac2aee07228176b9ff73dacc74e413f2c9ed0fe22a8217ff502c80b891950d1d4fb51df56d9c8e51e7c1fc1cc6 fix-drbdsetup_events2.c.patch
f61a833dc5eea79000a7dd85e83ae10e284109c76b5d59974ed69f92dbab6c389d6d20f7ea374b7c066519c6d1d816ed27b48dbaee6b91fb9754974acf52f46e drbd.initd
diff --git a/main/e2fsprogs/APKBUILD b/main/e2fsprogs/APKBUILD
index 2dbdba1e48..4bdb23ad0b 100644
--- a/main/e2fsprogs/APKBUILD
+++ b/main/e2fsprogs/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Valery Kartel <valery.kartel@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=e2fsprogs
-pkgver=1.46.2
+pkgver=1.46.4
pkgrel=0
pkgdesc="Standard Ext2/3/4 filesystem utilities"
url="http://e2fsprogs.sourceforge.net"
@@ -12,8 +12,8 @@ makedepends="$depends_dev linux-headers"
checkdepends="diffutils perl"
subpackages="$pkgname-static $pkgname-dev $pkgname-doc libcom_err $pkgname-libs $pkgname-extra"
source="$pkgname-$pkgver.tar.gz::https://github.com/tytso/e2fsprogs/archive/v$pkgver.tar.gz
- ensure-small-filesystems-are-Y2038-ok.patch
"
+
case $CHOST in
riscv64*)
# j_recover_fast_commit appears to be a false negative due to a compiler
@@ -100,5 +100,6 @@ static() {
mv "$pkgdir"/usr/lib/*.a "$subpkgdir"/usr/lib
}
-sha512sums="2550cb2fbed0c9cc6f0df0e8870cb36dd1c8d4e66321c9551b0fb14d343c7b3f09110424db2699926b8249600c0788c1a2e270fae9d0bacecd71f96745883b30 e2fsprogs-1.46.2.tar.gz
-daf63f8ca704eaa9a3293444469ef1a36c09806614d20e844b451af2426d5c8611a61669c99e4702f1fd787145cf9a34f1345ae5ed15ef47c41ca02f03302231 ensure-small-filesystems-are-Y2038-ok.patch"
+sha512sums="
+ea1a489581e62037ddb20e35e8da75eb2569bf0c7f65c76d123bb0f3c80d2b0e03ce9bfddc254602e3b01b3efc4128216b8390c89184e6841b47d19ab2977fbc e2fsprogs-1.46.4.tar.gz
+"
diff --git a/main/e2fsprogs/ensure-small-filesystems-are-Y2038-ok.patch b/main/e2fsprogs/ensure-small-filesystems-are-Y2038-ok.patch
deleted file mode 100644
index df77148b57..0000000000
--- a/main/e2fsprogs/ensure-small-filesystems-are-Y2038-ok.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From: Dermot Bradley <dermot_bradley@yahoo.com>
-Date: Thu, 10 Dec 2020 23:52 +0000
-Subject: ensure that small filesystems are Y2038 ok
-
-When formatting a partition with a EXT2/3/4 filesystem, if the partition
-specified is 512M or smaller in size then the "small" entry from
-/etc/mke2fs.conf is used, in addition to the defaults in that file, for
-the new filesystem's settings. Currently the "small" entry specifies an
-inode size of 128bytes which is insufficient to hold timestamps beyond
-2038.
-
-After booting a system with an affected EXT2/3/4 filesystem the kernel
-buffer will show a warning:
-
-$ dmesg | grep 2038
-
- filesystem being remounted at / supports timestamps until 2038
-
-This patch removes the 128 byte inode size entry from the 'small'
-definition and so the formatting tool will fallback to the default
-value of 256 byte inodes which will ensure no Y2038 issues. The disk
-space overhead when formatting after this change will slightly increase.
-
----
-
-diff -aur a/misc/mke2fs.conf.in b/misc/mke2fs.conf.in
---- a/misc/mke2fs.conf.in
-+++ b/misc/mke2fs.conf.in
-@@ -16,7 +16,6 @@
- }
- small = {
- blocksize = 1024
-- inode_size = 128
- inode_ratio = 4096
- }
- floppy = {
diff --git a/main/efitools/APKBUILD b/main/efitools/APKBUILD
index 309eaee470..75d5065e37 100644
--- a/main/efitools/APKBUILD
+++ b/main/efitools/APKBUILD
@@ -3,14 +3,14 @@
# Maintainer: Timo Teräs <timo.teras@iki.fi>
pkgname=efitools
pkgver=1.9.2
-pkgrel=2
+pkgrel=3
pkgdesc="EFI tools"
url="https://git.kernel.org/pub/scm/linux/kernel/git/jejb/efitools.git"
# riscv64: fails to build
# others: limited by sbsigntool
-arch="all !armhf !s390x !ppc64le !mips !mips64 !riscv64"
+#arch="all !armhf !s390x !ppc64le !mips !mips64 !riscv64"
license="(GPL-2.0-only AND LGPL-2.1-or-later) WITH OpenSSL-Exception"
-makedepends="gnu-efi-dev openssl-dev perl-file-slurp help2man sbsigntool"
+makedepends="gnu-efi-dev openssl1.1-compat-dev perl-file-slurp help2man sbsigntool"
subpackages="$pkgname-doc"
source="https://git.kernel.org/pub/scm/linux/kernel/git/jejb/efitools.git/snapshot/efitools-$pkgver.tar.gz
001-datatypes.patch
diff --git a/main/eggdrop/APKBUILD b/main/eggdrop/APKBUILD
index 963500c57f..6d63c4fd8c 100644
--- a/main/eggdrop/APKBUILD
+++ b/main/eggdrop/APKBUILD
@@ -1,14 +1,13 @@
# Maintainer: Carlo Landmeter <clandmeter@alpinelinux.org>
pkgname=eggdrop
pkgver=1.8.4
-pkgrel=1
+pkgrel=4
pkgdesc="World's most popular Open Source IRC bot"
url="https://eggheads.org/"
arch="all"
license='GPL-2.0-or-later'
options="!check" # No test suite
-depends="tcl"
-makedepends="openssl-dev tcl-dev !bind-libs"
+makedepends="openssl1.1-compat-dev tcl-dev !bind-libs"
subpackages="$pkgname-doc $pkgname-logs2html $pkgname-gseen"
source="$pkgname-$pkgver.tar.gz::https://github.com/eggheads/eggdrop/archive/v$pkgver.tar.gz
eggdrop-langdir.patch
@@ -106,8 +105,10 @@ gseen() {
cp src/mod/gseen.mod/README "$subpkgdir"/usr/share/eggdrop/gseen/
}
-sha512sums="80239a015f518cadc251bfc5edcf08715b9200a70eb0df7edf0efc113f320a7e407ab1fee96322fc6ec923781aa94f5a947c458e935e8a3714fb86cbcc02cb04 eggdrop-1.8.4.tar.gz
+sha512sums="
+80239a015f518cadc251bfc5edcf08715b9200a70eb0df7edf0efc113f320a7e407ab1fee96322fc6ec923781aa94f5a947c458e935e8a3714fb86cbcc02cb04 eggdrop-1.8.4.tar.gz
d8e8655fed028030bc3cfe28207a289d0efbc412c7e01170a4d0bb31200f7ea93df310f19e83b485013ca5d4264694b4956252663cb3a63c3d5e4cc31346e0fe eggdrop-langdir.patch
be173d94a953c4dc5b178950d06ce894deda60c3ddb8195c836797d45fbbcc9fba3bc3d3f34c96226464fdd327093a5d15bbc2b7924d18f845738c1a4dd64a3b logs2html.mod.patch
7879b998880deb1943c41569e243f9f1a50df23982d82d942af6c111e7fac0fb8a8444c84980645ba15b71dd69c8db2dab6f90bcb7a4292306011c7bcfc03d0d gseen.mod.patch
-7966d4d42994e44a0e571b89f1c66cb41f672d75e6ced7051d1ece23d8c209059c3565b41de950bf9c907701ce7a5e33a215b637587075ed300a002a58eda503 utf8.patch"
+7966d4d42994e44a0e571b89f1c66cb41f672d75e6ced7051d1ece23d8c209059c3565b41de950bf9c907701ce7a5e33a215b637587075ed300a002a58eda503 utf8.patch
+"
diff --git a/main/elinks/APKBUILD b/main/elinks/APKBUILD
index 76cb1f1ce2..647e33b368 100644
--- a/main/elinks/APKBUILD
+++ b/main/elinks/APKBUILD
@@ -3,13 +3,13 @@
pkgname=elinks
pkgver=0.13
_ver=${pkgver/_/}
-pkgrel=6
+pkgrel=8
pkgdesc="a text mode web browser"
url="http://elinks.or.cz/"
arch="all"
license="GPL"
depends=
-makedepends="bzip2-dev zlib-dev openssl-dev expat-dev gettext-dev"
+makedepends="bzip2-dev zlib-dev openssl1.1-compat-dev expat-dev gettext-dev"
install=
subpackages="$pkgname-doc $pkgname-lang"
source="https://dev.alpinelinux.org/archive/elinks/elinks-$pkgver.tar.bz2
diff --git a/main/ell/APKBUILD b/main/ell/APKBUILD
index 6f31a564a8..07525a9976 100644
--- a/main/ell/APKBUILD
+++ b/main/ell/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Milan P. Stanić <mps@arvanta.net>
# Maintainer: Milan P. Stanić <mps@arvanta.net>
pkgname=ell
-pkgver=0.41
+pkgver=0.44
pkgrel=0
pkgdesc="Linux library for embedded development"
url="https://01.org/ell"
@@ -38,5 +38,5 @@ package() {
}
sha512sums="
-57247b62c436524c9fa33ec6c6c88c6f9e4a0eae05ea1fed9aa08b81231c0a2595d85480712a6d34de4fd0a587e9dcd270053eab05f365b79a308589f0f1ee78 ell-0.41.tar.gz
+0d663b437852c99e11e448335466fb96d7093858a626b84ee2eb9bacfa7b703dc9f22d273256e6db007bdf213d5d2fb3c0824960840ad7e0ea1c5139de8496e1 ell-0.44.tar.gz
"
diff --git a/main/email/APKBUILD b/main/email/APKBUILD
index d8a9c867df..579aefb7c2 100644
--- a/main/email/APKBUILD
+++ b/main/email/APKBUILD
@@ -1,14 +1,14 @@
# Maintainer: Carlo Landmeter <clandmeter@alpinelinux.org>
pkgname=email
pkgver=3.1.4
-pkgrel=9
+pkgrel=11
pkgdesc="command line SMTP client that's simple"
options="!check" # No testsuite
url="http://www.cleancode.org/projects/email"
arch="all"
license="GPL-2.0-or-later"
depends="openssl"
-makedepends="openssl-dev"
+makedepends="openssl1.1-compat-dev"
subpackages="$pkgname-doc"
source="https://dev.alpinelinux.org/archive/email/email-$pkgver.tar.gz"
builddir="$srcdir/$pkgname-3.1.3" # Release was made with the wrong tarball name
diff --git a/main/encfs/APKBUILD b/main/encfs/APKBUILD
index 44e2bb0dd5..bbd9ca95e0 100644
--- a/main/encfs/APKBUILD
+++ b/main/encfs/APKBUILD
@@ -3,12 +3,12 @@
pkgname=encfs
pkgver=1.9.5
_ver=${pkgver/_/-}
-pkgrel=9
+pkgrel=12
pkgdesc="EncFS provides an encrypted filesystem in user-space"
url="https://vgough.github.io/encfs/"
arch="all"
license="GPL-3.0-only"
-makedepends="rlog-dev openssl-dev fuse-dev boost-dev
+makedepends="rlog-dev openssl1.1-compat-dev fuse-dev boost-dev
libtool gettext-dev cmake tinyxml2-dev perl"
subpackages="$pkgname-doc $pkgname-lang $pkgname-libs"
source="$pkgname-$_ver.tar.gz::https://github.com/vgough/encfs/archive/v$_ver.tar.gz"
diff --git a/main/ethtool/APKBUILD b/main/ethtool/APKBUILD
index 8307a2fc61..0bcc3b3e1b 100644
--- a/main/ethtool/APKBUILD
+++ b/main/ethtool/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=ethtool
-pkgver=5.13
+pkgver=5.14
pkgrel=0
pkgdesc="Utility for controlling network drivers and hardware"
url="https://mirrors.edge.kernel.org/pub/software/network/ethtool/"
@@ -38,5 +38,5 @@ bashcomp() {
}
sha512sums="
-44426653aabd20707d2e597707113f4d30d12696b4f32c0ab0450af0dccece1b6a11e529a22d1299204f63c9e71ae41a1495d3d36b8f630f1734a72694d779be ethtool-5.13.tar.xz
+880c4b6d5f83c25cabc6101222a5abf5f7e5e6501165ba5cdb420da242c351d7c32c1cffacfa1bcf0c4655434d89c64d39f0809af0d38f626a0a78f92ec68f87 ethtool-5.14.tar.xz
"
diff --git a/main/execline/APKBUILD b/main/execline/APKBUILD
index 55271db629..2641d8b808 100644
--- a/main/execline/APKBUILD
+++ b/main/execline/APKBUILD
@@ -1,14 +1,14 @@
# Maintainer: Laurent Bercot <ska-devel@skarnet.org>
# Contributor: John Regan <john@jrjrtech.com>
pkgname=execline
-pkgver=2.8.0.1
+pkgver=2.8.1.0
pkgrel=0
pkgdesc="A small scripting language, to be used in place of a shell in non-interactive scripts."
url="http://skarnet.org/software/$pkgname/"
arch="all"
license="ISC"
options="!check"
-makedepends="skalibs-dev"
+makedepends="skalibs-dev>=2.11"
subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
source="https://skarnet.org/software/execline/execline-$pkgver.tar.gz"
@@ -37,4 +37,6 @@ static() {
rmdir -p "$pkgdir"/usr/lib || :
}
-sha512sums="280c2524d510af0e7913961505cd5bd5eb65528918ad50c638592403b569939e5357d59cd05ddbabbf5e5c2c908fd9fb2218ded16413d62bea4c984582032c08 execline-2.8.0.1.tar.gz"
+sha512sums="
+4e20ff5cd82941914a639abe2481efd93a7ada6d2431b65813793cc7801463179bc1c58ee73e889747038c859e5fd6e7e668b758fa1785da03e549547ca3c94c execline-2.8.1.0.tar.gz
+"
diff --git a/main/expect/07-file-handle.patch b/main/expect/07-file-handle.patch
new file mode 100644
index 0000000000..98e42180bf
--- /dev/null
+++ b/main/expect/07-file-handle.patch
@@ -0,0 +1,24 @@
+Author: Russell Coker <russell@coker.com.au>
+Description:
+ Fixes file handle 3 to be left open when running programs (Closes: #166677).
+
+--- a/exp_clib.c
++++ b/exp_clib.c
+@@ -2040,6 +2040,7 @@
+
+ /* save error fd while we're setting up new one */
+ errorfd = fcntl(2,F_DUPFD,3);
++ fcntl(3, F_SETFD, FD_CLOEXEC);
+ /* and here is the macro to restore it */
+ #define restore_error_fd {close(2);fcntl(errorfd,F_DUPFD,2);}
+
+--- a/exp_command.c
++++ b/exp_command.c
+@@ -1162,6 +1162,7 @@
+
+ /* save error fd while we're setting up new one */
+ errorfd = fcntl(2,F_DUPFD,3);
++ fcntl(3, F_SETFD, FD_CLOEXEC);
+ /* and here is the macro to restore it */
+ #define restore_error_fd {close(2);fcntl(errorfd,F_DUPFD,2);}
+
diff --git a/main/expect/09-unsafe-traps.patch b/main/expect/09-unsafe-traps.patch
new file mode 100644
index 0000000000..1440f217c9
--- /dev/null
+++ b/main/expect/09-unsafe-traps.patch
@@ -0,0 +1,24 @@
+Author: n/a
+Description: Fixes some unsafe traps.
+
+--- a/exp_trap.c
++++ b/exp_trap.c
+@@ -264,6 +264,18 @@
+ #if defined(SIGSTOP)
+ traps[SIGSTOP].reserved = TRUE;
+ #endif
++#if defined(SIGSEGV)
++ traps[SIGSEGV].reserved = TRUE;
++#endif
++#if defined(SIGBUS)
++ traps[SIGBUS].reserved = TRUE;
++#endif
++#if defined(SIGILL)
++ traps[SIGILL].reserved = TRUE;
++#endif
++#if defined(SIGFPE)
++ traps[SIGFPE].reserved = TRUE;
++#endif
+
+ async_handler = Tcl_AsyncCreate(tophalf,(ClientData)0);
+
diff --git a/main/expect/10-manpage.patch b/main/expect/10-manpage.patch
new file mode 100644
index 0000000000..2faa21c597
--- /dev/null
+++ b/main/expect/10-manpage.patch
@@ -0,0 +1,384 @@
+Author: n/a
+Description: Fixes sample expect shebang and excapes dashes.
+
+--- a/expect.man
++++ b/expect.man
+@@ -108,11 +108,11 @@
+ may also be invoked implicitly on systems which support the #! notation
+ by marking the script executable, and making the first line in your script:
+
+- #!/usr/local/bin/expect \-f
++ #!/usr/bin/expect \-f
+
+ Of course, the path must accurately describe where
+ .B Expect
+-lives. /usr/local/bin is just an example.
++lives. /usr/bin is just an example.
+
+ The
+ .B \-c
+@@ -209,7 +209,7 @@
+ original arguments (including the script name) in the variable
+ .IR argv .
+
+- #!/usr/local/bin/expect \-\-
++ #!/usr/bin/expect \-\-
+
+ Note that the usual getopt(3) and execve(2) conventions must be observed
+ when adding arguments to the #! line.
+@@ -293,7 +293,7 @@
+ program.)
+ .I
+ .TP 6
+-.BI close " [-slave] [\-onexec 0|1] [\-i spawn_id]"
++.BI close " [\-slave] [\-onexec 0|1] [\-i spawn_id]"
+ closes the connection to the current process.
+ Most interactive programs will detect EOF on their stdin and exit;
+ thus
+@@ -322,7 +322,7 @@
+
+ The
+ .B \-slave
+-flag closes the slave associated with the spawn id. (See "spawn -pty".)
++flag closes the slave associated with the spawn id. (See "spawn \-pty".)
+ When the connection is closed, the slave is automatically closed as
+ well if still open.
+
+@@ -339,7 +339,7 @@
+ .B wait
+ below for more info.
+ .TP
+-.BI debug " [[-now] 0|1]"
++.BI debug " [[\-now] 0|1]"
+ controls a Tcl debugger allowing you to step through statements, set
+ breakpoints, etc.
+
+@@ -357,7 +357,7 @@
+ The
+ .B debug
+ command does not change any traps. Compare this to starting Expect with the
+-.B -D
++.B \-D
+ flag (see above).
+
+ See the README file or SEE ALSO (below)
+@@ -387,7 +387,7 @@
+ .nf
+
+ send_user "password?\\ "
+- expect_user -re "(.*)\\n"
++ expect_user \-re "(.*)\\n"
+ for {} 1 {} {
+ if {[fork]!=0} {sleep 3600;continue}
+ disconnect
+@@ -454,7 +454,7 @@
+ .B exit
+ is implicitly executed if the end of the script is reached.
+ .TP
+-\fBexp_continue\fR [-continue_timer]
++\fBexp_continue\fR [\-continue_timer]
+ The command
+ .B exp_continue
+ allows
+@@ -464,7 +464,7 @@
+ default
+ .B exp_continue
+ resets the timeout timer. The
+-.I -continue_timer
++.I \-continue_timer
+ flag prevents timer from being restarted. (See
+ .B expect
+ for more information.)
+@@ -627,8 +627,8 @@
+ be used to protect patterns that might otherwise match
+ .B expect
+ flags from doing so.
+-Any pattern beginning with a "-" should be protected this way. (All strings
+-starting with "-" are reserved for future options.)
++Any pattern beginning with a "\-" should be protected this way. (All strings
++starting with "\-" are reserved for future options.)
+
+ .IP
+ For example, the following fragment looks for a successful login.
+@@ -735,7 +735,7 @@
+ through
+ .IR expect_out(9,string) .
+ If the
+-.B -indices
++.B \-indices
+ flag is used before a pattern,
+ the starting and ending indices (in a form suitable for
+ .BR lrange )
+@@ -782,7 +782,7 @@
+ set expect_out(buffer) abbbcabkkkk
+
+ .fi
+-and "a\\n" is left in the output buffer. The pattern "*" (and -re ".*") will
++and "a\\n" is left in the output buffer. The pattern "*" (and \-re ".*") will
+ flush the output buffer without reading any more output from the
+ process.
+ .IP
+@@ -790,7 +790,7 @@
+ This may be prevented by prefixing a pattern with the
+ .B \-notransfer
+ flag. This flag is especially useful in experimenting (and can be
+-abbreviated to "-not" for convenience while experimenting).
++abbreviated to "\-not" for convenience while experimenting).
+
+ The spawn id associated with the matching output (or eof or
+ full_buffer) is stored in
+@@ -874,9 +874,9 @@
+
+ expect {
+ Password: {
+- stty -echo
++ stty \-echo
+ send_user "password (for $user) on $host: "
+- expect_user -re "(.*)\\n"
++ expect_user \-re "(.*)\\n"
+ send_user "\\n"
+ send "$expect_out(1,string)\\r"
+ stty echo
+@@ -891,7 +891,7 @@
+ send_user \\
+ "connection to host failed: $expect_out(buffer)"
+ exit
+- } -re $prompt
++ } \-re $prompt
+ }
+
+ .fi
+@@ -1023,14 +1023,14 @@
+ By default, it reports on the current spawn id. An optional spawn id specification may be given for information on that spawn id. For example
+ .nf
+
+- expect_before -info -i $proc
++ expect_before \-info \-i $proc
+
+ .fi
+ At most one spawn id specification may be given. The flag \-indirect
+ suppresses direct spawn ids that come only from indirect specifications.
+
+-Instead of a spawn id specification, the flag "-all" will cause
+-"-info" to report on all spawn ids.
++Instead of a spawn id specification, the flag "\-all" will cause
++"\-info" to report on all spawn ids.
+
+ The output of the \-info flag can be reused as the argument to expect_before.
+ .TP
+@@ -1123,7 +1123,7 @@
+ .ta \w' interact 'u +\w'$CTRLZ 'u +\w'{'u
+ set CTRLZ \\032
+ interact {
+- -reset $CTRLZ {exec kill \-STOP [pid]}
++ \-reset $CTRLZ {exec kill \-STOP [pid]}
+ \\001 {send_user "you typed a control\-A\\n";
+ send "\\001"
+ }
+@@ -1152,8 +1152,8 @@
+ flag may be used to protect patterns that might otherwise match
+ .B interact
+ flags from doing so.
+-Any pattern beginning with a "-" should be protected this way. (All strings
+-starting with "-" are reserved for future options.)
++Any pattern beginning with a "\-" should be protected this way. (All strings
++starting with "\-" are reserved for future options.)
+
+ The
+ .B \-re
+@@ -1199,7 +1199,7 @@
+ messages:
+ .nf
+
+- interact -input $user_spawn_id timeout 3600 return -output \\
++ interact \-input $user_spawn_id timeout 3600 return \-output \\
+ $spawn_id
+
+ .fi
+@@ -1298,9 +1298,9 @@
+ .nf
+
+ interact {
+- -echo ~g {getcurdirectory 1}
+- -echo ~l {getcurdirectory 0}
+- -echo ~p {putcurdirectory}
++ \-echo ~g {getcurdirectory 1}
++ \-echo ~l {getcurdirectory 0}
++ \-echo ~p {putcurdirectory}
+ }
+
+ .fi
+@@ -1316,11 +1316,11 @@
+ .nf
+
+ proc lognumber {} {
+- interact -nobuffer -re "(.*)\\r" return
++ interact \-nobuffer \-re "(.*)\\r" return
+ puts $log "[clock format [clock seconds]]: dialed $interact_out(1,string)"
+ }
+
+- interact -nobuffer "atd" lognumber
++ interact \-nobuffer "atd" lognumber
+
+ .fi
+ .IP
+@@ -1391,7 +1391,7 @@
+ command, except that any_spawn_id is not meaningful in
+ .BR interact .)
+ All following flags and
+-strings (or patterns) apply to this input until another -input flag appears.
++strings (or patterns) apply to this input until another \-input flag appears.
+ If no
+ .B \-input
+ appears,
+@@ -1429,7 +1429,7 @@
+ It is possible to change the processes that are being interacted with
+ by using indirect spawn ids. (Indirect spawn ids are described in the
+ section on the expect command.) Indirect spawn ids may be specified
+-with the -i, -u, -input, or -output flags.
++with the \-i, \-u, \-input, or \-output flags.
+ .TP
+ .B interpreter " [args]"
+ causes the user to be interactively prompted for
+@@ -1515,18 +1515,18 @@
+ flag.
+
+ The
+-.B -info
++.B \-info
+ flag causes log_file to return a description of the
+ most recent non-info arguments given.
+ .TP
+-.BI log_user " -info|0|1"
++.BI log_user " \-info|0|1"
+ By default, the send/expect dialogue is logged to stdout
+ (and a logfile if open).
+ The logging to stdout is disabled by the command "log_user 0"
+ and reenabled by "log_user 1". Logging to the logfile is unchanged.
+
+ The
+-.B -info
++.B \-info
+ flag causes log_user to return a description of the
+ most recent non-info arguments given.
+ .TP
+@@ -1647,7 +1647,7 @@
+ Any string can be preceded by "\-\-" whether or not it actually looks
+ like a flag. This provides a reliable mechanism to specify variable strings
+ without being tripped up by those that accidentally look like flags.
+-(All strings starting with "-" are reserved for future options.)
++(All strings starting with "\-" are reserved for future options.)
+
+ The
+ .B \-i
+@@ -1671,7 +1671,7 @@
+ The
+ .B \-break
+ flag generates a break condition. This only makes sense if the spawn
+-id refers to a tty device opened via "spawn -open". If you have
++id refers to a tty device opened via "spawn \-open". If you have
+ spawned a process such as tip, you should use tip's convention for
+ generating a break.
+
+@@ -1774,7 +1774,7 @@
+ except that the output is sent to stderr rather than the current
+ process.
+ .TP
+-.BI send_log " [\--] string"
++.BI send_log " [\-\-] string"
+ is like
+ .BR send ,
+ except that the string is only sent to the log file (see
+@@ -1951,7 +1951,7 @@
+ The variable
+ .I spawn_out(slave,fd)
+ is set to a file identifier corresponding to the pty slave.
+-It can be closed using "close -slave".
++It can be closed using "close \-slave".
+
+ The
+ .B \-ignore
+@@ -1978,7 +1978,7 @@
+ .fi
+
+ The
+-.B -info
++.B \-info
+ flag causes strace to return a description of the
+ most recent non-info arguments given.
+ .TP
+@@ -2018,7 +2018,7 @@
+
+ stty \-echo
+ send_user "Password: "
+- expect_user -re "(.*)\\n"
++ expect_user \-re "(.*)\\n"
+ set password $expect_out(1,string)
+ stty echo
+
+@@ -2153,7 +2153,7 @@
+ trap exit {SIGINT SIGTERM}
+
+ .fi
+-If you use the -D flag to start the debugger, SIGINT is redefined
++If you use the \-D flag to start the debugger, SIGINT is redefined
+ to start the interactive debugger. This is due to the following trap:
+ .nf
+
+@@ -2194,9 +2194,9 @@
+ normally returns a list of four integers.
+ The first integer is the pid of the process that was waited upon.
+ The second integer is the corresponding spawn id.
+-The third integer is -1 if an operating system error occurred, or 0 otherwise.
++The third integer is \-1 if an operating system error occurred, or 0 otherwise.
+ If the third integer was 0, the fourth integer is the status returned by
+-the spawned process. If the third integer was -1, the fourth integer is
++the spawned process. If the third integer was \-1, the fourth integer is
+ the value of errno set by the operating system. The global variable
+ errorCode is also set.
+
+@@ -2212,7 +2212,7 @@
+ flag declares the process to wait corresponding to the named spawn_id
+ (NOT the process id).
+ Inside a SIGCHLD handler,
+-it is possible to wait for any spawned process by using the spawn id -1.
++it is possible to wait for any spawned process by using the spawn id \-1.
+
+ The
+ .B \-nowait
+@@ -2223,7 +2223,7 @@
+ The
+ .B wait
+ command may also be used wait for a forked process using the arguments
+-"-i -1". Unlike its use with spawned processes, this command can be
++"\-i \-1". Unlike its use with spawned processes, this command can be
+ executed at any time. There is no control over which process is
+ reaped. However, the return value can be checked for the process id.
+
+@@ -2374,7 +2374,7 @@
+ .nf
+
+ set env(SHELL) /bin/sh
+- set env(HOME) /usr/local/bin
++ set env(HOME) /usr/bin
+
+ .fi
+
+@@ -2427,7 +2427,7 @@
+ to set a flag in the trap code. Then check the flag immediately after
+ the command (i.e., sleep).
+
+-The expect_background command ignores -timeout arguments and has no
++The expect_background command ignores \-timeout arguments and has no
+ concept of timeouts in general.
+
+ .SH "EXPECT HINTS"
+@@ -2449,7 +2449,7 @@
+ set prompt "(%|#|\\\\$) $" ;# default prompt
+ catch {set prompt $env(EXPECT_PROMPT)}
+
+- expect -re $prompt
++ expect \-re $prompt
+
+ .fi
+ I encourage you to write
diff --git a/main/expect/12-fdout.patch b/main/expect/12-fdout.patch
new file mode 100644
index 0000000000..0942819ad1
--- /dev/null
+++ b/main/expect/12-fdout.patch
@@ -0,0 +1,22 @@
+Author: Ian Jackson <iwj@ubuntu.com>
+Description: expBusy forgets to open fdout (Closes: #440818).
+
+--- a/exp_command.c
++++ b/exp_command.c
+@@ -315,7 +315,15 @@
+ fcntl(x,F_DUPFD,esPtr->fdin);
+ close(x);
+ }
+- expCloseOnExec(esPtr->fdin);
++ if (esPtr->fdout != EXP_NOFD &&
++ esPtr->fdout != esPtr->fdin) {
++ fcntl(esPtr->fdin,F_DUPFD,esPtr->fdout);
++ }
++ if (esPtr->fdin > 2)
++ expCloseOnExec(esPtr->fdin);
++ if (esPtr->fdout != EXP_NOFD &&
++ esPtr->fdout > 2)
++ expCloseOnExec(esPtr->fdout);
+ esPtr->fdBusy = TRUE;
+ }
+
diff --git a/main/expect/22-segfault-with-stubs.patch b/main/expect/22-segfault-with-stubs.patch
new file mode 100644
index 0000000000..3fd825575b
--- /dev/null
+++ b/main/expect/22-segfault-with-stubs.patch
@@ -0,0 +1,71 @@
+Author: Sergei Golovan <sgolovan@debian.org>
+Description: This dirty hack fixes segfaults if Tcl is built with stubs
+ and Expect is used directly from C program.
+Bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=588817
+Example:
+ #include <stdio.h>
+ #include <tcl8.5/expect.h>
+ int main()
+ {
+ FILE *pipe;
+ char *some_command = "uname";
+ char datum;
+ pipe = exp_popen(some_command);
+ if (pipe == NULL) return 1;
+ while ((datum = getc (pipe)) != EOF)
+ printf("%c",datum);
+ }
+Example:
+ #include <stdio.h>
+ #include "expect.h"
+ main()
+ {
+ int fd = 0;
+ fd = exp_spawnl("echo", "echo", "Hello User: Whats up?", (char*) 0);
+ switch (exp_expectl(fd, exp_regexp, "ser:", 1, exp_end)) {
+ case 1: {
+ printf("GOT ser:\n");
+ break;
+ }
+ default: {
+ printf("DEFAULT\n");
+ return 1;
+ }
+ }
+ printf("Normal Exit\n");
+ return 0;
+ }
+
+--- a/exp_clib.c
++++ b/exp_clib.c
+@@ -117,7 +117,11 @@
+ #include <stdlib.h> /* for malloc */
+ #endif
+
+-#include <tcl.h>
++#define ckalloc(x) Tcl_Alloc(x)
++#define ckfree(x) Tcl_Free(x)
++extern char *Tcl_ErrnoMsg(int err);
++extern char *Tcl_Alloc(unsigned int size);
++extern void Tcl_Free(char *ptr);
+ #include "expect.h"
+ #define TclRegError exp_TclRegError
+
+@@ -392,7 +396,7 @@
+ FAIL("regexp too big");
+
+ /* Allocate space. */
+- r = (regexp *)ckalloc(sizeof(regexp) + (unsigned)rcstate->regsize);
++ r = (regexp *)malloc(sizeof(regexp) + (unsigned)rcstate->regsize);
+ if (r == NULL)
+ FAIL("out of space");
+
+@@ -402,7 +406,7 @@
+ rcstate->regcode = r->program;
+ regc(MAGIC, rcstate);
+ if (reg(0, &flags, rcstate) == NULL) {
+- ckfree ((char*) r);
++ free ((char*) r);
+ return(NULL);
+ }
+
diff --git a/main/expect/24-format.patch b/main/expect/24-format.patch
new file mode 100644
index 0000000000..477b7a3e02
--- /dev/null
+++ b/main/expect/24-format.patch
@@ -0,0 +1,24 @@
+--- a/exp_clib.c
++++ b/exp_clib.c
+@@ -1483,8 +1483,8 @@
+ char *str;
+ {
+ if (exp_is_debugging) {
+- fprintf(stderr,str);
+- if (exp_logfile) fprintf(exp_logfile,str);
++ fprintf(stderr,"%s",str);
++ if (exp_logfile) fprintf(exp_logfile,"%s",str);
+ }
+ }
+
+--- a/exp_command.c
++++ b/exp_command.c
+@@ -995,7 +995,7 @@
+
+ exp_slave_control(master,1);
+
+- sprintf(value,"%d",esPtr->fd_slave);
++ sprintf(value,"%ld",esPtr->fd_slave);
+ Tcl_SetVar2(interp,SPAWN_OUT,"slave,fd",value,0);
+ }
+ Tcl_SetObjResult (interp, Tcl_NewIntObj (EXP_NOPID));
diff --git a/main/expect/APKBUILD b/main/expect/APKBUILD
index ffe48ea449..a365fdba6d 100644
--- a/main/expect/APKBUILD
+++ b/main/expect/APKBUILD
@@ -2,14 +2,22 @@
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=expect
pkgver=5.45.4
-pkgrel=0
+pkgrel=2
pkgdesc="A tool for automating interactive applications"
-url="http://www.nist.gov/el/msid/expect.cfm"
+url="https://core.tcl-lang.org/expect/index"
arch="all"
-license="custom"
+# http://expect.sourceforge.net/FAQ.html#q6
+license="NIST-PD"
makedepends="tcl-dev"
subpackages="$pkgname-dev $pkgname-doc"
-source="https://downloads.sourceforge.net/project/expect/Expect/$pkgver/$pkgname$pkgver.tar.gz"
+source="https://downloads.sourceforge.net/project/expect/Expect/$pkgver/$pkgname$pkgver.tar.gz
+ 07-file-handle.patch
+ 09-unsafe-traps.patch
+ 10-manpage.patch
+ 12-fdout.patch
+ 22-segfault-with-stubs.patch
+ 24-format.patch
+"
builddir="$srcdir"/$pkgname$pkgver
prepare() {
@@ -43,4 +51,12 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="a8dc25e8175f67e029e15cbcfca1705165c1c4cb2dd37eaaaebffb61e3ba132d9519cd73ca5add4c3358a2b0b7a91e878279e8d0b72143ff2c287fce07e4659a expect5.45.4.tar.gz"
+sha512sums="
+a8dc25e8175f67e029e15cbcfca1705165c1c4cb2dd37eaaaebffb61e3ba132d9519cd73ca5add4c3358a2b0b7a91e878279e8d0b72143ff2c287fce07e4659a expect5.45.4.tar.gz
+ccdff94648a732cfb12cb079e37449913579b536d43f46a1e95687c3be8d4ce84b01be6748b34b59a4b4bf1cbc755de96f8f7882d5bc5c9a704cb5ef3103836f 07-file-handle.patch
+e8a3c4c6d634c135e1f3b7ccfb543281fdbaa83870670ff87bdd0aaf07c803f79353b512e49b311ecd8f701c9e2d0d3e2994a3d5b344cdd6f0220d92fc1cea7d 09-unsafe-traps.patch
+f7760ba5ce60659cce4d64beaf3cf50ecd6a8af7714b704bbd08ba970e0883b0eb7ddfd83522f21bf1bbe86cdbe26d70d4517f9d58030128c2a311e6d18c6b30 10-manpage.patch
+8675a93f3344e4eeb5024faa487bdcdfb0bc8ec86ed0abcf5612e130e346b35f7d9bf7d601714cc6acb32ccc77ecc309e51e39e0a0ad17f0a3ceeacc5031f6ce 12-fdout.patch
+f4c7789feea3eae471c988d7c78ce78da1bd4ab765d142e7fce5a7a2a92e887310ba571ea2a010110f7e0859102fadfb56b2b7e1638c52586657299e6e332c91 22-segfault-with-stubs.patch
+38b542330d26ca0dade87bfad20f71f7411fc2951d4d53706f938f83a862ed4868990bc24bdbffb09c9591cca22cca913e073605216311a36a008550c00b1b78 24-format.patch
+"
diff --git a/main/fakeroot/APKBUILD b/main/fakeroot/APKBUILD
index 8a9b0497ba..c524529040 100644
--- a/main/fakeroot/APKBUILD
+++ b/main/fakeroot/APKBUILD
@@ -11,7 +11,7 @@ makedepends_build="libtool autoconf automake po4a"
makedepends_host="libcap-dev acl-dev linux-headers"
makedepends="$makedepends_build $makedepends_host"
subpackages="$pkgname-dbg $pkgname-doc"
-source="http://ftp.debian.org/debian/pool/main/f/fakeroot/fakeroot_$pkgver.orig.tar.gz
+source="https://deb.debian.org/debian/pool/main/f/fakeroot/fakeroot_$pkgver.orig.tar.gz
fakeroot-no64.patch
fakeroot-stdint.patch
xstatjunk.patch
diff --git a/main/fftw/APKBUILD b/main/fftw/APKBUILD
index b58a73259e..0448459398 100644
--- a/main/fftw/APKBUILD
+++ b/main/fftw/APKBUILD
@@ -1,7 +1,7 @@
# Contributor:
# Maintainer:
pkgname=fftw
-pkgver=3.3.9
+pkgver=3.3.10
_pkgver=${pkgver//p/-pl}
pkgrel=0
pkgdesc="Discrete Fourier transform (DFT) library"
@@ -98,5 +98,7 @@ long_double() {
"$subpkgdir"/usr/lib/
}
-sha512sums="52ebc2a33063a41fd478f6ea2acbf3b511867f736591d273dd57f9dfca5d3e0b0c73157921b3a36f1a7cfd741a8a6bde0fd80de578040ae730ea168b5ba466cf fftw-3.3.9.tar.gz
-7da269fc43dabd02ae6fad2ebad92b07e06825b6b7c6f8987fc6444f02e0d55080db4ba6e401760e071f5c33015faf8c710f643636cab7a79bdf1af5d434dbb4 cycle.h.patch"
+sha512sums="
+2d34b5ccac7b08740dbdacc6ebe451d8a34cf9d9bfec85a5e776e87adf94abfd803c222412d8e10fbaa4ed46f504aa87180396af1b108666cde4314a55610b40 fftw-3.3.10.tar.gz
+7da269fc43dabd02ae6fad2ebad92b07e06825b6b7c6f8987fc6444f02e0d55080db4ba6e401760e071f5c33015faf8c710f643636cab7a79bdf1af5d434dbb4 cycle.h.patch
+"
diff --git a/main/fish/APKBUILD b/main/fish/APKBUILD
index c0487286f1..2824b76eef 100644
--- a/main/fish/APKBUILD
+++ b/main/fish/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
-# Maintainer:
+# Maintainer: Bart Ribbers <bribbers@disroot.org>
pkgname=fish
pkgver=3.3.1
-pkgrel=0
+pkgrel=1
pkgdesc="Modern interactive commandline shell"
url="https://fishshell.com/"
arch="all"
@@ -56,6 +56,12 @@ package() {
# provided by minikube-fish-completion
rm "$pkgdir"/usr/share/fish/completions/minikube.fish
+
+ # provided by flatpak-fish-completion
+ rm "$pkgdir"/usr/share/fish/completions/flatpak.fish
+
+ # provided by helm-fish-completion
+ rm "$pkgdir"/usr/share/fish/completions/helm.fish
}
doc() {
diff --git a/main/freeradius/APKBUILD b/main/freeradius/APKBUILD
index 408cffd6a1..90514a471a 100644
--- a/main/freeradius/APKBUILD
+++ b/main/freeradius/APKBUILD
@@ -5,7 +5,7 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=freeradius
pkgver=3.0.23
-pkgrel=1
+pkgrel=3
pkgdesc="RADIUS (Remote Authentication Dial-In User Service) server"
url="https://freeradius.org/"
arch="all"
@@ -26,7 +26,7 @@ makedepends="
mariadb-connector-c-dev
net-snmp-tools
openldap-dev
- openssl-dev
+ openssl1.1-compat-dev
perl-dev
postgresql-dev
python3-dev
@@ -69,6 +69,9 @@ source="ftp://ftp.freeradius.org/pub/freeradius/freeradius-server-$pkgver.tar.gz
radiusd.initd
setup-freeradius.in
print-var.mk
+ radacct-rotate
+ radacct-rotate.conf
+ radacct-rotate.crond
musl-fix-headers.patch
fix-scopeid.patch
@@ -167,6 +170,10 @@ package() {
install -m644 -D "$srcdir"/$pkgname.logrotated "$pkgdir"/etc/logrotate.d/$pkgname
install -m755 -D setup-freeradius "$pkgdir"/usr/sbin/setup-freeradius
+ install -m755 -D "$srcdir"/radacct-rotate -t "$pkgdir"/usr/bin/
+ install -m644 -D "$srcdir"/radacct-rotate.conf -t "$pkgdir"/etc/raddb/
+ install -m755 -D "$srcdir"/radacct-rotate.crond "$pkgdir"/etc/periodic/daily/radacct-rotate
+
# Install misses to create this
mkdir -p "$pkgdir"/$_radmodsconfdir/sql/ippool-dhcp/postgresql
@@ -369,6 +376,9 @@ utils() {
replaces="freeradius-radclient"
amove usr/bin/*
+
+ mkdir -p "$pkgdir"/usr/bin
+ mv "$subpkgdir"/usr/bin/radacct-rotate "$pkgdir"/usr/bin/
}
_mvdb() {
@@ -383,14 +393,17 @@ _enable_mod() {
sha512sums="
8ba2825d026c9639b15f45afaf4e26a33efec565b485890f6fef9f103a2eafc3a078c4ac404456688d203ccbe5adf5862d7129d64f396e1aa0e71a17d17c4f21 freeradius-server-3.0.23.tar.gz
-c3ae1ee6bd7743f883310612ba2c20c6ff7f288fedc308735df05b097ecb2f7fa4d1679b844e262757808978c7bb2d7630b99e4b87ce6d6ba7f84013f9c49f1d freeradius.logrotated
+52ecccd479bb22c80d5cc298d9d1c12bd2d1a9d80e1265ba032201f3942370910fa78f3bb429031d91bc89712fa2127f16cd68814489cbc99d174fbf5789875f freeradius.logrotated
bb3df1fa2c9ed95514ae090e0f6619c4e3280f424c4351bc79f5254bf1a327fa7d27e5fe3add5ab8d9e5ba3792c9553bd9a0481fe9c5bc34945ce46627ef2638 radiusd.confd
5a8579f06e905117c67f87f0833d0760e81e64f97de7672ecee45775733fae05763edb91c472e313bf58523c713f86815e47cc39c841f4c141aa59a5930113c6 radiusd.initd
9f6a4f76fd06e81cfcfe4536f1f8be494634b07e548a6f7e651e5501aded24b030ed7d57dbdc867ae0eb39ee4a090234c4122a89bed84c13733c77de36b9c2cf setup-freeradius.in
5f940e200aa39b2fbbfaf5b24f2ad99869fa75bb7e2008876940ea96cb9dbc7f2b27dd1672aa56cdb5243faabdcbc38875594dd8792af965987183c0aa2aefd1 print-var.mk
+4fbd774618d41a28a5874fd5bd96ccf6ab5ea38e4a97b1671bd51f6d07476985629dabc0a7300b3287bd223c62496c930bc555bb617739d6383afd5d55c97501 radacct-rotate
+2cecaae9bf9dd88f7c4344f2b08977c46d4831e733b82adcf6cf9553c1a77363dac9f1784f9eb9cf93d46c3da10a10d548a1071cdb0cd49e1319a62b7d5a357b radacct-rotate.conf
+52c477b4d13009bc3776ed889feeb4b1ea8d85bb97b0031b1d2d4c04e6466fcb4e9a16e556e861e7ec56acb54624bea39d73d44802535aa39d3dc84580d95775 radacct-rotate.crond
c49e5eec7497fccde5fd09dba1ea9b846e57bc88015bd81640aa531fb5c9b449f37136f42c85fe1d7940c5963aed664b85da28442b388c9fb8cc27873df03b2d musl-fix-headers.patch
41d478c0e40ff82fc36232964037c1ab8ffca9fdbb7dca02ed49319906e751c133b5d7bc7773c645cec6d9d39d1de69cba25e8d59afa8d6662563dd17f35f234 fix-scopeid.patch
-1eabdb7d8954331e7bf3c002dafd496289c8b67526d0fa07b11cf129c41c3f9a3beae241e911b6b9ea3f86bbdeaabf158bfbf502a8cd1da80cd194515af671eb default-config.patch
+caf85ffb96e08ad8314fe72aac052948b2461f94bb21e20ea34925534ee1ef682284457318d50df813ba167a8cb4b520c5a0f38d86de21cd56e8391f299a5dd6 default-config.patch
f96b7b2e0fc614cb8b70bd500933538e98e05b58718af931a62bc7ba2307600cf8c2a8a99de856ad2e18101dd5bfe95c50ee34de20eef21ba0ad795577a6619b remove-eap-from-default-mods.patch
55e179d5e6b31d289c2da7f907e494a6a6f5900483fdff8d3bb25ee15a583b8705942eca1f0d5390e91376966e66e457dce9b2cf1a1f61c8eac6d8fb825404dd readme-setup-script.patch
7ddf75901f635216b0d972c14631334a8138e0dbb021685bb6b3a996f38d232b84146c621dae541b00f6149fa401e835d1579bbacd27fad72a80bacd4391b404 fix-request_running-segfault.patch
diff --git a/main/freeradius/default-config.patch b/main/freeradius/default-config.patch
index 16d0bde28c..1c31e19e5c 100644
--- a/main/freeradius/default-config.patch
+++ b/main/freeradius/default-config.patch
@@ -1,7 +1,13 @@
From f37bee486aca3de86b594770f0b2b3ff8e96596a Mon Sep 17 00:00:00 2001
-From: Leonardo Arena <rnalrd@alpinelinux.org>
+From: Jakub Jirutka <jakub@jirutka.cz>
Date: Tue, 18 May 2021 14:10:00 +0000
-Subject: [PATCH] default config
+Subject: [PATCH] Adjust default config
+
+- Fix default location of db_dir and run_dir.
+- Remove pidfile - this is handled by OpenRC.
+- Change default sqlite db path to a reasonable location.
+- Change default cui sqlite location to $db_dir/.
+- Change default cache paths to /var/cache/radiusd.
---
raddb/mods-available/cui | 2 +-
diff --git a/main/freeradius/freeradius.logrotated b/main/freeradius/freeradius.logrotated
index 1975caee75..4b6d9455ba 100644
--- a/main/freeradius/freeradius.logrotated
+++ b/main/freeradius/freeradius.logrotated
@@ -18,13 +18,6 @@
su radius radius
}
-# There are different detail-rotating strategies you can use. One is
-# to write to a single detail file per IP and use the rotate config
-# below. Another is to write to a daily detail file per IP with:
-# detailfile = ${radacctdir}/%{Client-IP-Address}/%Y%m%d-detail
-# (or similar) in radiusd.conf, without rotation. If you go with the
-# second technique, you will need another cron job that removes old
-# detail files. You do not need to comment out the below for method #2.
/var/log/radius/radacct/*/detail {
missingok
compress
@@ -32,3 +25,6 @@
nocreate
su radius radius
}
+
+# NOTE: Files in /var/log/radius/radacct/*/ with "-YYYYMMDD" suffix are
+# compressed and later removed by script radacct-rotate executed daily by cron.
diff --git a/main/freeradius/radacct-rotate b/main/freeradius/radacct-rotate
new file mode 100644
index 0000000000..5dc03458c3
--- /dev/null
+++ b/main/freeradius/radacct-rotate
@@ -0,0 +1,87 @@
+#!/bin/sh
+# SPDX-License-Identifier: MIT
+# SPDX-FileCopyrightText: 2021 Jakub Jirutka <jakub@jirutka.cz>
+#---help---
+# Usage: radacct-rotate [options]
+#
+# Compress and later remove old FreeRADIUS' radacct log files with "-YYYYMMDD"
+# suffix. This script is provided by the freeradius package in Alpine Linux.
+#
+# Options:
+# -C FILE Location of radacct-rotate config file (defaults to
+# /etc/raddb/radacct-rotate.conf).
+#
+# -c DAYS Compress files older than DAYS (overrides option
+# compress_after_days from the config).
+#
+# -r DAYS Remove compressed files older than DAYS (overrides
+# option remove_after_days from the config).
+#
+# -d Run in dry-run mode (only print what would be done).
+#
+# -h Show this message and exit.
+#---help---
+set -eu
+
+readonly PROGNAME='radacct-rotate'
+# Y Y Y Y m m d d
+readonly DATE_GLOB='[1-9][0-9][0-9][0-9][0-1][0-9][0-3][0-9]'
+readonly HELP_TAG='#---help---'
+
+# Defaults
+CONFIG='/etc/raddb/radacct-rotate.conf'
+DRY_RUN=false
+radacct_dir='/var/log/radius/radacct'
+compress_cmd='gzip -9'
+compress_ext='.gz'
+compress_after_days=2
+remove_after_days=180
+
+while getopts ':C:c:dr:h' OPT; do
+ case "$OPT" in
+ C) CONFIG=$OPTARG;;
+ c) COMPRESS_AFTER_DAYS=$OPTARG;;
+ d) DRY_RUN=true;;
+ r) REMOVE_AFTER_DAYS=$OPTARG;;
+ h) sed -n "/^$HELP_TAG/,/^$HELP_TAG/{/^$HELP_TAG/d; s/^# \\?//; p;}" "$0"; exit 0;;
+ \?) echo "$PROGNAME: invalid option: -$OPTARG (see '$PROGNAME -h')" >&2; exit 100;;
+ esac
+done
+
+readonly CONFIG COMPRESS_AFTER_DAYS DRY_RUN REMOVE_AFTER_DAYS
+
+sh -n "$CONFIG" || exit 100
+. "$CONFIG"
+
+compress_after_days=${COMPRESS_AFTER_DAYS:-$compress_after_days}
+remove_after_days=${REMOVE_AFTER_DAYS:-$remove_after_days}
+
+
+find_compressible() {
+ find "$radacct_dir" -type f -name "*-$DATE_GLOB" -mtime "+$compress_after_days" "$@"
+}
+
+find_deletable() {
+ find "$radacct_dir" -type f -name "*-${DATE_GLOB}${compress_ext}" -mtime "+$remove_after_days" "$@"
+}
+
+check_number() {
+ case "$1" in
+ ''|*[!0-9]*) echo "$PROGNAME: option '$2' must be a number, but given: '$1'" >&2; exit 100;;
+ esac
+}
+check_number "$compress_after_days" 'compress_after_days'
+check_number "$remove_after_days" 'remove_after_days'
+
+rc=0
+if $DRY_RUN; then
+ find_compressible -exec echo $compress_cmd {} \; || rc=111
+ find_deletable -exec echo rm {} \; || rc=111
+else
+ for path in $(find_compressible -print); do
+ $compress_cmd "$path" >&2 && touch -ct "${path##*-}0000" "$path".* || rc=111
+ done
+ find_deletable -exec rm '{}' \; >&2 || rc=111
+fi
+
+exit $rc
diff --git a/main/freeradius/radacct-rotate.conf b/main/freeradius/radacct-rotate.conf
new file mode 100644
index 0000000000..4f9003a701
--- /dev/null
+++ b/main/freeradius/radacct-rotate.conf
@@ -0,0 +1,26 @@
+# Configuration file for radacct-rotate
+#
+# Script radacct-rotate compresses and removes old log files with suffix
+# "-YYYYMMDD" (e.g. detail-20210921) found in /var/log/radius/radacct/*/.
+#
+# The age of the files is determined by their time of last modification
+# (see stat(1)). When the file is compressed, its modification time is set
+# to the date encoded in the file name.
+
+# Set to "yes" to disable cron script /etc/periodic/daily/radacct-rotate.
+#cron_disabled=no
+
+# Compress files older than specified number of days.
+#compress_after_days=3
+
+# Remove files older than specified number of days.
+#remove_after_days=180
+
+# Location of the radacct directory.
+#radacct_dir="/var/log/radius/radacct"
+
+# Specifies which command (and arguments) to use to compress files.
+# It must produce compressed file with ${compress_ext} extension and remove
+# the original file.
+#compress_cmd="gzip -9"
+#compress_ext=".gz"
diff --git a/main/freeradius/radacct-rotate.crond b/main/freeradius/radacct-rotate.crond
new file mode 100644
index 0000000000..69a21df96f
--- /dev/null
+++ b/main/freeradius/radacct-rotate.crond
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+: ${RADACCT_ROTATE_CONFIG:="/etc/raddb/radacct-rotate.conf"}
+
+/bin/sh -n "$RADACCT_ROTATE_CONFIG" 2>/dev/null || exit 0
+
+. "$RADACCT_ROTATE_CONFIG"
+[ "$cron_disabled" = yes ] && exit 0
+
+exec /usr/bin/radacct-rotate
diff --git a/main/freeswitch/APKBUILD b/main/freeswitch/APKBUILD
index 0a4e886350..c2b13d8649 100644
--- a/main/freeswitch/APKBUILD
+++ b/main/freeswitch/APKBUILD
@@ -3,7 +3,7 @@
# Contributor: Cameron Banta <cbanta@gmail.com>
pkgname=freeswitch
pkgver=1.10.6
-pkgrel=1
+pkgrel=2
pkgdesc="A communications platform written in C from the ground up"
url="http://www.freeswitch.org"
arch="all"
@@ -26,7 +26,7 @@ makedepends="
libjpeg-turbo-dev
libogg-dev
libpri-dev
- openssl-dev
+ openssl1.1-compat-dev
libshout-dev
libsndfile-dev
libvorbis-dev
diff --git a/main/freetds/APKBUILD b/main/freetds/APKBUILD
index 063679079a..8bc97e3749 100644
--- a/main/freetds/APKBUILD
+++ b/main/freetds/APKBUILD
@@ -1,13 +1,13 @@
# Contributor: Michael Mason <ms13sp@gmail.com>
# Maintainer: Michael Mason <ms13sp@gmail.com>
pkgname=freetds
-pkgver=1.3
-pkgrel=0
+pkgver=1.3.3
+pkgrel=2
pkgdesc="Tabular Datastream Library"
url="https://www.freetds.org/"
arch="all"
license="GPL-2.0-or-later OR LGPL-2.0-or-later"
-makedepends="openssl-dev linux-headers readline-dev unixodbc-dev"
+makedepends="openssl1.1-compat-dev linux-headers readline-dev unixodbc-dev"
subpackages="$pkgname-static $pkgname-dev $pkgname-doc"
source="https://www.freetds.org/files/stable/freetds-$pkgver.tar.bz2
fix-includes.patch
@@ -39,6 +39,6 @@ package() {
}
sha512sums="
-3bf136755563eb8fae611937247ad553dc16b6957ec1f37a0f0a9ec572d7bcbf414d5f3b18a3e665e0b6f9d6bcc760eff45fd79ee5b782c43ae83940c290f9ca freetds-1.3.tar.bz2
+889ed65e091f848112eb26a203f39de5998749540a40b7988ba0f3c56309cc49dc9c87f3eac3d27e6e568964f8ff72592feea4d10d5c73bd9f9f696dc82513a2 freetds-1.3.3.tar.bz2
9ca126d9316cf48fa5f9572b5aa9122eb114033627ab75f6715bce0260d70c6a7bb8a71ecb1e209a4f83416332d10942c7aaf02a5249948cf1cec6a1a457a236 fix-includes.patch
"
diff --git a/main/fribidi/APKBUILD b/main/fribidi/APKBUILD
index a8bc91a18c..96b36a9446 100644
--- a/main/fribidi/APKBUILD
+++ b/main/fribidi/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=fribidi
-pkgver=1.0.10
+pkgver=1.0.11
pkgrel=0
pkgdesc="Free Implementation of the Unicode Bidirectional Algorithm"
url="https://github.com/fribidi/fribidi"
@@ -30,4 +30,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="cb51920012c3c7507c17e2beb1dbbcfb8d7c6404e4cb54b260a332754a0d5b103d8834d77e8795651b3f38069c9bd2e9914c21b001411a72f9ffe1ec1ef2f360 fribidi-1.0.10.tar.xz"
+sha512sums="
+6afde86784de06759f18235ccb44f23261a975f7cce0021b16755065a6a8ed84d7d5fb7fdcaadd691b48011efb4bfc2ee67555e5133a294a418cca1a0c85476c fribidi-1.0.11.tar.xz
+"
diff --git a/main/fuse3/APKBUILD b/main/fuse3/APKBUILD
index 2dbfd079b7..fdbff6ef84 100644
--- a/main/fuse3/APKBUILD
+++ b/main/fuse3/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=fuse3
_pkgname=fuse
-pkgver=3.10.4
+pkgver=3.10.5
pkgrel=0
pkgdesc="The reference implementation of the Linux FUSE (Filesystem in Userspace) interface"
url="https://github.com/libfuse/libfuse"
@@ -65,7 +65,7 @@ _openrc() {
}
sha512sums="
-1cb7600dc04f148b15ec3183d0348320dd946cf15d4077798e7e34fe7e8202837718c8b8bd1f190b7dddda2453ee2b0433d77e18f142ecb7affec1cae29520f6 fuse-3.10.4.tar.xz
+da17788acc3fabef3dc7b736b7319c1638d7de27e163699f7dbc0fe9159aeba35964af6afa77a7654f1f321e2fc03ee167909f21516cbb585ead33cad95620fe fuse-3.10.5.tar.xz
1a9e1d1e8a7b0778ffde328e4322c73b5d57ec98d52767c846d755cce861ab27989823a75b6c5f994432ddb77fa351dfa4a8f948c9467c5f7d5f471e4608358b fix-realpath.patch
7f6a503ef23cfa8b809c544375c2d83ad56525269b48ad1a7dff0ce36f4bf2f2a3fafed9dc70a71ff6281b261db5f01829e16c06f041921a5d8c8d715a04a8c1 fuse.initd
"
diff --git a/main/gc/APKBUILD b/main/gc/APKBUILD
index d8699c1ac0..bbf6967ae4 100644
--- a/main/gc/APKBUILD
+++ b/main/gc/APKBUILD
@@ -1,14 +1,14 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=gc
-pkgver=8.0.4
-pkgrel=5
-pkgdesc="A garbage collector for C and C++"
+pkgver=8.0.6
+pkgrel=0
+pkgdesc="garbage collector for C and C++"
url="https://hboehm.info/gc/"
arch="all"
license="custom:GPL-like"
makedepends="linux-headers"
subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc libgc++:libgccpp"
-source="http://hboehm.info/gc/gc_source/gc-$pkgver.tar.gz
+source="https://github.com/ivmai/bdwgc/releases/download/v$pkgver/gc-$pkgver.tar.gz
0001-Fix-gctest-with-musl-libc-on-s390x.patch
data_start_riscv64.patch
"
@@ -32,7 +32,6 @@ build() {
}
check() {
- # two FAILs due to grsecurity
make check
}
@@ -45,6 +44,8 @@ libgccpp() {
mv "$pkgdir"/usr/lib/libgccpp.* "$subpkgdir"/usr/lib/
}
-sha512sums="57ccca15c6e50048d306a30de06c1a844f36103a84c2d1c17cbccbbc0001e17915488baec79737449982da99ce5d14ce527176afae9ae153cbbb5a19d986366e gc-8.0.4.tar.gz
+sha512sums="
+2ea25003d585118e3ac0e12be9240e8195db511c6e94949f20453dc3cb771380bd5b956c04243b2a8ce31508587aa32de4f0f10a813577e6dbe8367688b7614e gc-8.0.6.tar.gz
0441dfe85b36e9e80b9135d62d56e5e9b67c6db1f927480dd3cf5048765f3a2ab51a45eaa0068066af97ce0398333890fff2f84cd01fec476655f34e0325bc13 0001-Fix-gctest-with-musl-libc-on-s390x.patch
-0348e224e0daeedafbd0776eca3e020ac7b6587ec208b4fd8101b220d7c02521650555740931715c700f36802917427ccdd120051906818085cfb3590dd103b4 data_start_riscv64.patch"
+0348e224e0daeedafbd0776eca3e020ac7b6587ec208b4fd8101b220d7c02521650555740931715c700f36802917427ccdd120051906818085cfb3590dd103b4 data_start_riscv64.patch
+"
diff --git a/main/gcc/0001-posix_memalign.patch b/main/gcc/0001-posix_memalign.patch
index 50d489dffe..f877e338ed 100644
--- a/main/gcc/0001-posix_memalign.patch
+++ b/main/gcc/0001-posix_memalign.patch
@@ -1,4 +1,4 @@
-From 0f6c64b962bb3bf75f15aec350a9d6f8997fa814 Mon Sep 17 00:00:00 2001
+From 022f2bebda9962f405ac6beb317a93dbdd5cd5ab Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Fri, 26 Jan 2018 20:32:50 +0000
Subject: [PATCH] posix_memalign
@@ -38,5 +38,5 @@ index 87344d9383f..ece428df487 100644
else
return NULL;
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0002-gcc-poison-system-directories.patch b/main/gcc/0002-gcc-poison-system-directories.patch
index 44a79d25b5..878af11eab 100644
--- a/main/gcc/0002-gcc-poison-system-directories.patch
+++ b/main/gcc/0002-gcc-poison-system-directories.patch
@@ -1,4 +1,4 @@
-From 2f5ca6e3850401c628c5cc18cd606134e8b29113 Mon Sep 17 00:00:00 2001
+From 073546386b14edd061966b3147d418802ecd9148 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 08:59:00 +0400
Subject: [PATCH] gcc: poison-system-directories
@@ -120,7 +120,7 @@ index 84dceb8074a..bf64ffbe46f 100644
AC_SUBST(subdirs)
AC_SUBST(srcdir)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
-index eabeec944e7..cd31b522e42 100644
+index 55a0ceef9ac..2db2ee4bff3 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -348,6 +348,7 @@ Objective-C and Objective-C++ Dialects}.
@@ -131,7 +131,7 @@ index eabeec944e7..cd31b522e42 100644
-Wno-pragmas -Wno-prio-ctor-dtor -Wredundant-decls @gol
-Wrestrict -Wno-return-local-addr -Wreturn-type @gol
-Wno-scalar-storage-order -Wsequence-point @gol
-@@ -6926,6 +6927,14 @@ made up of data only and thus requires no special treatment. But, for
+@@ -6927,6 +6928,14 @@ made up of data only and thus requires no special treatment. But, for
most targets, it is made up of code and thus requires the stack to be
made executable in order for the program to work properly.
@@ -199,5 +199,5 @@ index 8a2bda00f80..9098ab044ab 100644
/* Use given -I paths for #include "..." but not #include <...>, and
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0003-Turn-on-Wl-z-relro-z-now-by-default.patch b/main/gcc/0003-Turn-on-Wl-z-relro-z-now-by-default.patch
index 334d17e7ee..47d291a832 100644
--- a/main/gcc/0003-Turn-on-Wl-z-relro-z-now-by-default.patch
+++ b/main/gcc/0003-Turn-on-Wl-z-relro-z-now-by-default.patch
@@ -1,4 +1,4 @@
-From ef512b8fcf9c7628267ff2dbb127aa094f6754f3 Mon Sep 17 00:00:00 2001
+From 8668232053ac1f0f788d1584d83dcf6900cd177f Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:45:49 +0000
Subject: [PATCH] Turn on -Wl,-z,relro,-z,now by default.
@@ -9,10 +9,10 @@ Subject: [PATCH] Turn on -Wl,-z,relro,-z,now by default.
2 files changed, 4 insertions(+)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
-index cd31b522e42..17d371ef432 100644
+index 2db2ee4bff3..85df8caa563 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
-@@ -14663,6 +14663,9 @@ For example, @option{-Wl,-Map,output.map} passes @option{-Map output.map} to the
+@@ -14664,6 +14664,9 @@ For example, @option{-Wl,-Map,output.map} passes @option{-Map output.map} to the
linker. When using the GNU linker, you can also get the same effect with
@option{-Wl,-Map=output.map}.
@@ -35,5 +35,5 @@ index b2200c5185a..625c9ab7902 100644
%{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \
%{Wno-poison-system-directories:--no-poison-system-directories} \
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch b/main/gcc/0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch
index 4b87403e93..5f8d59c5e6 100644
--- a/main/gcc/0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch
+++ b/main/gcc/0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch
@@ -1,4 +1,4 @@
-From 3c848f2fbde81db336ec97d9be7a5a4a05015eef Mon Sep 17 00:00:00 2001
+From 8368da09dd1d7be68cfe0a16ea4c30cb3fb0dcb9 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:46:22 +0000
Subject: [PATCH] Turn on -D_FORTIFY_SOURCE=2 by default for C, C++, ObjC,
@@ -25,10 +25,10 @@ index db91a36794a..ed976c71404 100644
if (flag_gnu89_inline)
cpp_define (pfile, "__GNUC_GNU_INLINE__");
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
-index 17d371ef432..fe793ac08db 100644
+index 85df8caa563..f6d494c0e4d 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
-@@ -9230,6 +9230,12 @@ also turns on the following optimization flags:
+@@ -9231,6 +9231,12 @@ also turns on the following optimization flags:
Please note the warning under @option{-fgcse} about
invoking @option{-O2} on programs that use computed gotos.
@@ -42,5 +42,5 @@ index 17d371ef432..fe793ac08db 100644
@opindex O3
Optimize yet more. @option{-O3} turns on all optimizations specified
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch b/main/gcc/0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch
index db843a4492..2be6009b79 100644
--- a/main/gcc/0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch
+++ b/main/gcc/0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch
@@ -1,4 +1,4 @@
-From 3a2f4efa70110f6d11fd4c6a8e11559c6ef720f1 Mon Sep 17 00:00:00 2001
+From acc3e8cf530c8d4d87f8b87a8149166a2bd68549 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:46:56 +0000
Subject: [PATCH] On linux targets pass --as-needed by default to the linker,
@@ -265,5 +265,5 @@ index 625c9ab7902..7aec9d3a016 100644
#else
#define LIBUBSAN_SPEC "-lubsan" STATIC_LIBUBSAN_LIBS
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0006-Enable-Wformat-and-Wformat-security-by-default.patch b/main/gcc/0006-Enable-Wformat-and-Wformat-security-by-default.patch
index aca0075a91..28a382694e 100644
--- a/main/gcc/0006-Enable-Wformat-and-Wformat-security-by-default.patch
+++ b/main/gcc/0006-Enable-Wformat-and-Wformat-security-by-default.patch
@@ -1,4 +1,4 @@
-From 44b1a01cbe3932122112f38e06a21b1c9efad568 Mon Sep 17 00:00:00 2001
+From b0a910fc67bee646dea31a05d0a99a05b45f971f Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:47:43 +0000
Subject: [PATCH] Enable -Wformat and -Wformat-security by default.
@@ -30,5 +30,5 @@ index c49da99d395..93f25319005 100644
Wformat-overflow=
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0007-Enable-Wtrampolines-by-default.patch b/main/gcc/0007-Enable-Wtrampolines-by-default.patch
index 515d5e0bad..dcff86ffb5 100644
--- a/main/gcc/0007-Enable-Wtrampolines-by-default.patch
+++ b/main/gcc/0007-Enable-Wtrampolines-by-default.patch
@@ -1,4 +1,4 @@
-From 5679adc04a200e3a1a8dd77466eb79d03da8bf8a Mon Sep 17 00:00:00 2001
+From c972e6e0fba2b240bdc6aca38aa705cbe54b0e28 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:48:24 +0000
Subject: [PATCH] Enable -Wtrampolines by default.
@@ -21,5 +21,5 @@ index ca942863064..0a0ab6195ee 100644
Wtype-limits
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch b/main/gcc/0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch
index 9530fae51c..9593b9ae2c 100644
--- a/main/gcc/0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch
+++ b/main/gcc/0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch
@@ -1,4 +1,4 @@
-From 0bff64690e937297abc75eee5a2916fdd314b054 Mon Sep 17 00:00:00 2001
+From 3902c1104b13736d23462ce293eb670148d31b37 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:49:40 +0000
Subject: [PATCH] Disable ssp on -nostdlib, -nodefaultlibs and -ffreestanding
@@ -49,5 +49,5 @@ index 4aec480798b..eaecfab37ad 100644
-param=stack-clash-protection-guard-size=
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch b/main/gcc/0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch
index c4cd1fe2c5..28070235d6 100644
--- a/main/gcc/0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch
+++ b/main/gcc/0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch
@@ -1,4 +1,4 @@
-From 27863679bde671cdd354cba398ef71a956873e6a Mon Sep 17 00:00:00 2001
+From 24440beb19105349562d5dbbc886e25c1af545ec Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:50:33 +0000
Subject: [PATCH] Ensure that msgfmt doesn't encounter problems during gcc
@@ -50,5 +50,5 @@ index a0f84b0cfa0..ab24a47a2fd 100644
all-local: all-local-$(USE_NLS)
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch b/main/gcc/0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch
index 4fbd367b8e..fcf02b1d34 100644
--- a/main/gcc/0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch
+++ b/main/gcc/0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch
@@ -1,4 +1,4 @@
-From 953779008f2caa78c55f80c2d6096bf627080016 Mon Sep 17 00:00:00 2001
+From e4bc8f7a8128facaaf4941db6b6471ffd13c0af8 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:52:07 +0000
Subject: [PATCH] Don't declare asprintf if defined as a macro.
@@ -24,5 +24,5 @@ index 141cb886a85..fa0e78eb62f 100644
/* Like asprintf but allocates memory without fail. This works like
xmalloc. */
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0011-libiberty-copy-PIC-objects-during-build-process.patch b/main/gcc/0011-libiberty-copy-PIC-objects-during-build-process.patch
index 0e8f83fe9e..3f89dd0a7d 100644
--- a/main/gcc/0011-libiberty-copy-PIC-objects-during-build-process.patch
+++ b/main/gcc/0011-libiberty-copy-PIC-objects-during-build-process.patch
@@ -1,4 +1,4 @@
-From b43185f44ed438267db101fbe41361001c4e8a94 Mon Sep 17 00:00:00 2001
+From ab28fc14b99f81cefca6f8217baf2cef54875235 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:53:00 +0000
Subject: [PATCH] libiberty: copy PIC objects during build process
@@ -20,5 +20,5 @@ index d6b302e02fd..fd39928546f 100644
else true; fi
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0012-libitm-disable-FORTIFY.patch b/main/gcc/0012-libitm-disable-FORTIFY.patch
index 0f262f22a6..9512a61ca6 100644
--- a/main/gcc/0012-libitm-disable-FORTIFY.patch
+++ b/main/gcc/0012-libitm-disable-FORTIFY.patch
@@ -1,4 +1,4 @@
-From 10f38bef9af2e3d6a32253ca18d5ae0123e25e1b Mon Sep 17 00:00:00 2001
+From 9f0e6bfed2e09f3486cfa8cb420bfb79060be01f Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:53:36 +0000
Subject: [PATCH] libitm: disable FORTIFY
@@ -29,5 +29,5 @@ index d1beb5c9ec8..c2b50b95c01 100644
# work out any special compilation flags as necessary.
case "${target_cpu}" in
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0013-libgcc_s.patch b/main/gcc/0013-libgcc_s.patch
index 55692211b0..a6935908f4 100644
--- a/main/gcc/0013-libgcc_s.patch
+++ b/main/gcc/0013-libgcc_s.patch
@@ -1,4 +1,4 @@
-From 3614b3586d4a0f75e454943895977a9df1b734d5 Mon Sep 17 00:00:00 2001
+From f0d02f91cfe0af604ed60ffde9ee56501d859053 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 24 Oct 2015 20:09:53 +0000
Subject: [PATCH] libgcc_s
@@ -53,5 +53,5 @@ index 8506a635790..564296f788e 100644
+HOST_LIBGCC2_CFLAGS += -mlong-double-80 $(CET_FLAGS)
CRTSTUFF_T_CFLAGS += $(CET_FLAGS)
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0014-nopie.patch b/main/gcc/0014-nopie.patch
index 1ca5745697..137c4f9db7 100644
--- a/main/gcc/0014-nopie.patch
+++ b/main/gcc/0014-nopie.patch
@@ -1,4 +1,4 @@
-From 8e58f9aa5b86dc92e5a1fa71e40e499739473894 Mon Sep 17 00:00:00 2001
+From 90c6ab24ddacc46227cd46e6cd8cb5b8b51c091b Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 7 Nov 2015 02:08:05 +0000
Subject: [PATCH] nopie
@@ -71,5 +71,5 @@ index bf64ffbe46f..9c2571de709 100644
AC_SUBST([NO_PIE_FLAG])
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0015-libffi-use-__linux__-instead-of-__gnu_linux__-for-mu.patch b/main/gcc/0015-libffi-use-__linux__-instead-of-__gnu_linux__-for-mu.patch
index b36fa1ea20..7d9644ed0d 100644
--- a/main/gcc/0015-libffi-use-__linux__-instead-of-__gnu_linux__-for-mu.patch
+++ b/main/gcc/0015-libffi-use-__linux__-instead-of-__gnu_linux__-for-mu.patch
@@ -1,4 +1,4 @@
-From c5ee6bb497f640877be668428292487eb026d79e Mon Sep 17 00:00:00 2001
+From 3dfd2f150076c35aef4c65416284b3e7641d2c5d Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:57:09 +0000
Subject: [PATCH] libffi: use __linux__ instead of __gnu_linux__ for musl
@@ -21,5 +21,5 @@ index 721ff00ea43..22a699c6340 100644
with both write and execute permission. Code compiled when this
option is defined will attempt to map such pages once, but if it
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0016-dlang-update-zlib-binding.patch b/main/gcc/0016-dlang-update-zlib-binding.patch
index 8a99d5c548..780c88bf1e 100644
--- a/main/gcc/0016-dlang-update-zlib-binding.patch
+++ b/main/gcc/0016-dlang-update-zlib-binding.patch
@@ -1,4 +1,4 @@
-From b2e1bf216169f470ced86f1f3e95c89debf606cd Mon Sep 17 00:00:00 2001
+From 82b55fb4e52c66e225f2757bb861885971a85bc4 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:57:51 +0000
Subject: [PATCH] dlang: update zlib binding
@@ -421,5 +421,5 @@ index e6cce240fd5..bd2fe37ebec 100644
}
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0017-dlang-fix-fcntl-on-mips-add-libucontext-dep.patch b/main/gcc/0017-dlang-fix-fcntl-on-mips-add-libucontext-dep.patch
index b10008fae7..326b081d4e 100644
--- a/main/gcc/0017-dlang-fix-fcntl-on-mips-add-libucontext-dep.patch
+++ b/main/gcc/0017-dlang-fix-fcntl-on-mips-add-libucontext-dep.patch
@@ -1,4 +1,4 @@
-From 76c7eb27b9dfe96f2f1db4fa6f29ce28715ad2a4 Mon Sep 17 00:00:00 2001
+From 3d0a518d0541542939ed37618ec5d02e4645151f Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:58:22 +0000
Subject: [PATCH] dlang: fix fcntl on mips, add libucontext dep
@@ -47,5 +47,5 @@ index 9febcff849b..cb34e2108bd 100644
static assert(0, "Platform not supported");
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0018-ada-fix-shared-linking.patch b/main/gcc/0018-ada-fix-shared-linking.patch
index 83cd1d573f..205e54df54 100644
--- a/main/gcc/0018-ada-fix-shared-linking.patch
+++ b/main/gcc/0018-ada-fix-shared-linking.patch
@@ -1,4 +1,4 @@
-From 95fee2cfb1a6a32b7e671861b58ee93978ba16b8 Mon Sep 17 00:00:00 2001
+From f3900acdcc24198ff1b415646c7e82773445aa6d Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:59:16 +0000
Subject: [PATCH] ada: fix shared linking
@@ -38,5 +38,5 @@ index 02c413a412f..f0e52a87d6e 100644
unsigned char __gnat_objlist_file_supported = 1;
const char *__gnat_object_library_extension = ".a";
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0019-build-fix-CXXFLAGS_FOR_BUILD-passing.patch b/main/gcc/0019-build-fix-CXXFLAGS_FOR_BUILD-passing.patch
index 34c2da12d7..b773538cea 100644
--- a/main/gcc/0019-build-fix-CXXFLAGS_FOR_BUILD-passing.patch
+++ b/main/gcc/0019-build-fix-CXXFLAGS_FOR_BUILD-passing.patch
@@ -1,4 +1,4 @@
-From aa0311c59892d7fbc4ffa9e2f0520391521cc4dd Mon Sep 17 00:00:00 2001
+From 6712b0b94444570f77a2c23b57d2532d431f202a Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 06:59:43 +0000
Subject: [PATCH] build: fix CXXFLAGS_FOR_BUILD passing
@@ -20,5 +20,5 @@ index 36e369df6e7..63627db68cf 100644
# This is the list of directories to built for the host system.
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0020-add-fortify-headers-paths.patch b/main/gcc/0020-add-fortify-headers-paths.patch
index f445401740..378367fd8d 100644
--- a/main/gcc/0020-add-fortify-headers-paths.patch
+++ b/main/gcc/0020-add-fortify-headers-paths.patch
@@ -1,4 +1,4 @@
-From 39e86416709d3d34f46da7cd7b8a3e5a8f0ff7cd Mon Sep 17 00:00:00 2001
+From b4d6945168988613fb2895275f5ccb1089a8df03 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:01:06 +0000
Subject: [PATCH] add fortify-headers paths
@@ -21,5 +21,5 @@ index 95654bcdb5a..d88df8f154a 100644
{ NATIVE_SYSTEM_HEADER_DIR, 0, 0, 0, 1, 0 },
#else
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0021-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch b/main/gcc/0021-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch
index 073d56f5eb..8558cb3e30 100644
--- a/main/gcc/0021-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch
+++ b/main/gcc/0021-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch
@@ -1,4 +1,4 @@
-From c6b54651688cf062ae48ca3402d6d2e08b70ceed Mon Sep 17 00:00:00 2001
+From 17e54a04c1d8ee5b3784c81045e4ec41fd5df8df Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
Date: Fri, 21 Aug 2020 07:03:00 +0000
Subject: [PATCH] Alpine musl package provides libssp_nonshared.a. We link to
@@ -27,5 +27,5 @@ index daeb4d0c8ea..6920bec0fa0 100644
#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
"|fstack-protector-strong|fstack-protector-explicit" \
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0022-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch b/main/gcc/0022-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch
index 684041c55d..9a0c42dc89 100644
--- a/main/gcc/0022-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch
+++ b/main/gcc/0022-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch
@@ -1,4 +1,4 @@
-From 4841bee243517cd52504f97ea934f44bc0c1fd5c Mon Sep 17 00:00:00 2001
+From f0a79f043adbed0e3bc179f913448b0326b84914 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:03:42 +0000
Subject: [PATCH] DP: Use --push-state/--pop-state for gold as well when
@@ -65,5 +65,5 @@ index 6920bec0fa0..40e07354b3d 100644
#else
#define LIBUBSAN_SPEC "-lubsan" STATIC_LIBUBSAN_LIBS
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0023-Pure-64-bit-MIPS.patch b/main/gcc/0023-Pure-64-bit-MIPS.patch
index c8f9c98afc..1cc86b99c2 100644
--- a/main/gcc/0023-Pure-64-bit-MIPS.patch
+++ b/main/gcc/0023-Pure-64-bit-MIPS.patch
@@ -1,4 +1,4 @@
-From 720c0d7094d27b6cbfe9669c4f65e2021debcb07 Mon Sep 17 00:00:00 2001
+From a16fb110c2274a1c2be46a69dccfc5b863939d12 Mon Sep 17 00:00:00 2001
From: Nils Andreas Svee <me@lochnair.net>
Date: Thu, 21 Dec 2017 03:14:33 +0100
Subject: [PATCH] Pure 64-bit MIPS
@@ -43,5 +43,5 @@ index ceb58d3b5f3..8116e23ebba 100644
+ ../lib32 \
+ ../lib
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0024-use-pure-64-bit-configuration-where-appropriate.patch b/main/gcc/0024-use-pure-64-bit-configuration-where-appropriate.patch
index eb592dc90a..6fe4281b64 100644
--- a/main/gcc/0024-use-pure-64-bit-configuration-where-appropriate.patch
+++ b/main/gcc/0024-use-pure-64-bit-configuration-where-appropriate.patch
@@ -1,4 +1,4 @@
-From c60bb23972769f687dcac689ddf00f88e46b8bb7 Mon Sep 17 00:00:00 2001
+From fce58d5bcc306a094781feb34bab485654b59aba Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:04:40 +0000
Subject: [PATCH] use pure 64-bit configuration where appropriate
@@ -117,5 +117,5 @@ index cc6ab367072..7f498ee1cdc 100644
+MULTILIB_OSDIRNAMES = m64=../lib
+MULTILIB_OSDIRNAMES+= m32=../lib32
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0025-always-build-libgcc_eh.a.patch b/main/gcc/0025-always-build-libgcc_eh.a.patch
index 65324abd5f..e8849c42ef 100644
--- a/main/gcc/0025-always-build-libgcc_eh.a.patch
+++ b/main/gcc/0025-always-build-libgcc_eh.a.patch
@@ -1,4 +1,4 @@
-From 00917df4274ea2fb33b08c963a97cf1b28f59dd3 Mon Sep 17 00:00:00 2001
+From d6077d92dddfffcbf995722d89e5d25f23809c5b Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:05:41 +0000
Subject: [PATCH] always build libgcc_eh.a
@@ -47,5 +47,5 @@ index 851e7657d07..99ec513a1a6 100644
for file in $$parts; do \
rm -f $(DESTDIR)$(inst_libdir)/$$file; \
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0026-ada-libgnarl-compatibility-for-musl.patch b/main/gcc/0026-ada-libgnarl-compatibility-for-musl.patch
index fa1a70cc81..8a872b60ba 100644
--- a/main/gcc/0026-ada-libgnarl-compatibility-for-musl.patch
+++ b/main/gcc/0026-ada-libgnarl-compatibility-for-musl.patch
@@ -1,4 +1,4 @@
-From 03cdaf39fa80b75c731b9d226c52a7ae04707d46 Mon Sep 17 00:00:00 2001
+From 49fb1009952d845066a889133951eacad2362be1 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:06:30 +0000
Subject: [PATCH] ada: libgnarl compatibility for musl
@@ -131,5 +131,5 @@ index c45559e5ba0..0b0f173e7d4 100644
pragma Assert (Result in 0 | ENOMEM);
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0027-ada-musl-support-fixes.patch b/main/gcc/0027-ada-musl-support-fixes.patch
index 0f4ef64922..fb5855bd20 100644
--- a/main/gcc/0027-ada-musl-support-fixes.patch
+++ b/main/gcc/0027-ada-musl-support-fixes.patch
@@ -1,4 +1,4 @@
-From 21692d89e7876dcaecea3e3c961c6504be4a83e9 Mon Sep 17 00:00:00 2001
+From 43705dd6e042c0431598b6a67aabd2941c7cd22c Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:07:48 +0000
Subject: [PATCH] ada: musl support fixes
@@ -219,5 +219,5 @@ index af4417fab90..bab6bf3ca87 100644
status = openpty (&master_fd, &slave_fd, NULL, NULL, NULL);
#elif defined (USE_CLONE_DEVICE)
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0028-gcc-go-Use-_off_t-type-instead-of-_loff_t.patch b/main/gcc/0028-gcc-go-Use-_off_t-type-instead-of-_loff_t.patch
index 2932ce7cbb..e0cbb9d7b5 100644
--- a/main/gcc/0028-gcc-go-Use-_off_t-type-instead-of-_loff_t.patch
+++ b/main/gcc/0028-gcc-go-Use-_off_t-type-instead-of-_loff_t.patch
@@ -1,4 +1,4 @@
-From 1852ae06e733180f090b58c267bde8fb9501a41e Mon Sep 17 00:00:00 2001
+From 6e13873ed8a36633f6a888f9419f7311f82df1bf Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 17:58:08 +0200
Subject: [PATCH] gcc-go: Use _off_t type instead of _loff_t
@@ -44,5 +44,5 @@ index 88286c07b6e..f8f5cfb5011 100644
}
n, err = splice(rfd, plroff, wfd, plwoff, len, flags)
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0029-gcc-go-Don-t-include-sys-user.h.patch b/main/gcc/0029-gcc-go-Don-t-include-sys-user.h.patch
index 5f2cb2d712..4e48940473 100644
--- a/main/gcc/0029-gcc-go-Don-t-include-sys-user.h.patch
+++ b/main/gcc/0029-gcc-go-Don-t-include-sys-user.h.patch
@@ -1,4 +1,4 @@
-From 40322de36043aaa3cbb98d7f01037f53fc1b5a98 Mon Sep 17 00:00:00 2001
+From e9f491014d3cc77d358eed782db4d23bdd7565d9 Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 17:58:21 +0200
Subject: [PATCH] gcc-go: Don't include sys/user.h
@@ -26,5 +26,5 @@ index 0692fd41eb7..c8d987358d9 100644
#include <sys/utsname.h>
#endif
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0030-gcc-go-Fix-ucontext_t-on-PPC64.patch b/main/gcc/0030-gcc-go-Fix-ucontext_t-on-PPC64.patch
index 37fa5225fe..8b2e528f03 100644
--- a/main/gcc/0030-gcc-go-Fix-ucontext_t-on-PPC64.patch
+++ b/main/gcc/0030-gcc-go-Fix-ucontext_t-on-PPC64.patch
@@ -1,4 +1,4 @@
-From f1503cf97b5a5c6f9466145f5eb1ed3b5f200119 Mon Sep 17 00:00:00 2001
+From 68204d3be8b34be5252c61d428a0f29337c0a09d Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 17:59:22 +0200
Subject: [PATCH] gcc-go: Fix ucontext_t on PPC64
@@ -25,5 +25,5 @@ index b429fdb2403..fd1c885f043 100644
ret.sigpc = ((ucontext_t*)(context))->uc_mcontext.jmp_context.iar;
#elif defined(__aarch64__) && defined(__linux__)
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0031-gcc-go-Fix-handling-of-signal-34-on-musl.patch b/main/gcc/0031-gcc-go-Fix-handling-of-signal-34-on-musl.patch
index dca704348b..441995d945 100644
--- a/main/gcc/0031-gcc-go-Fix-handling-of-signal-34-on-musl.patch
+++ b/main/gcc/0031-gcc-go-Fix-handling-of-signal-34-on-musl.patch
@@ -1,4 +1,4 @@
-From fc950e32b9ebc2bae09604ebe630df6df454151d Mon Sep 17 00:00:00 2001
+From c9af03e1fd6805eab2163ed4d105255ab5442f2c Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 17:59:45 +0200
Subject: [PATCH] gcc-go: Fix handling of signal 34 on musl
@@ -39,5 +39,5 @@ index 11e4ec436bd..fe866eacb27 100644
if test "${GOOS}" = "aix"; then
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0032-gcc-go-Use-int64-type-as-offset-argument-for-mmap.patch b/main/gcc/0032-gcc-go-Use-int64-type-as-offset-argument-for-mmap.patch
index 918d6b0744..c5eacaf83b 100644
--- a/main/gcc/0032-gcc-go-Use-int64-type-as-offset-argument-for-mmap.patch
+++ b/main/gcc/0032-gcc-go-Use-int64-type-as-offset-argument-for-mmap.patch
@@ -1,4 +1,4 @@
-From 3be2284d92c560204e9eddb20db56d57fe584360 Mon Sep 17 00:00:00 2001
+From 61dfc85a3f00ae674b94beff8270291280cf9324 Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 18:01:03 +0200
Subject: [PATCH] gcc-go: Use int64 type as offset argument for mmap
@@ -34,5 +34,5 @@ index ba38ebaa9ab..3c9e5ce9461 100644
if uintptr(p) == _MAP_FAILED {
return nil, errno()
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0033-gcc-go-Fix-st_-a-m-c-tim-fields-in-generated-sysinfo.patch b/main/gcc/0033-gcc-go-Fix-st_-a-m-c-tim-fields-in-generated-sysinfo.patch
index a21113b547..c97b899b85 100644
--- a/main/gcc/0033-gcc-go-Fix-st_-a-m-c-tim-fields-in-generated-sysinfo.patch
+++ b/main/gcc/0033-gcc-go-Fix-st_-a-m-c-tim-fields-in-generated-sysinfo.patch
@@ -1,4 +1,4 @@
-From a2b54c20297bb92212bf86b492e9a62d9f23e0b0 Mon Sep 17 00:00:00 2001
+From 8ffbffa7f92e7055e6e9f8a13d75190b53581d5b Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 18:02:28 +0200
Subject: [PATCH] gcc-go: Fix st_{a,m,c}tim fields in generated sysinfo.go
@@ -33,5 +33,5 @@ index bd2ba32cba1..972e2c379bc 100755
-e 's/\([^a-zA-Z0-9_]\)_timespec_t\([^a-zA-Z0-9_]\)/\1Timespec\2/g' \
-e 's/\([^a-zA-Z0-9_]\)_st_timespec_t\([^a-zA-Z0-9_]\)/\1StTimespec\2/g' \
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0034-gcc-go-signal-34-is-special-on-musl-libc.patch b/main/gcc/0034-gcc-go-signal-34-is-special-on-musl-libc.patch
index 921bf3f6cc..89f9fcf91b 100644
--- a/main/gcc/0034-gcc-go-signal-34-is-special-on-musl-libc.patch
+++ b/main/gcc/0034-gcc-go-signal-34-is-special-on-musl-libc.patch
@@ -1,4 +1,4 @@
-From dd1465b56f76ada5c7383ebd98ef02311a3b907c Mon Sep 17 00:00:00 2001
+From 08f14d3ad7fc56da378d2ed4e124257f1708d119 Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Sun, 30 Aug 2020 18:03:03 +0200
Subject: [PATCH] gcc-go: signal 34 is special on musl libc
@@ -25,5 +25,5 @@ index c555712a03c..9e228580d37 100644
}
throw("sigaction read failure")
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0035-gcc-go-Prefer-_off_t-over-_off64_t.patch b/main/gcc/0035-gcc-go-Prefer-_off_t-over-_off64_t.patch
index abb3f3f9a4..0797ada1c3 100644
--- a/main/gcc/0035-gcc-go-Prefer-_off_t-over-_off64_t.patch
+++ b/main/gcc/0035-gcc-go-Prefer-_off_t-over-_off64_t.patch
@@ -1,4 +1,4 @@
-From 382d4516db8a7c183e9d7b5ec16a9bc175523ac9 Mon Sep 17 00:00:00 2001
+From 5aa7050658a7a66ded8934040ccb6db6bc31c1f3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Sun, 30 Aug 2020 19:26:53 +0200
Subject: [PATCH] gcc-go: Prefer _off_t over _off64_t
@@ -26,5 +26,5 @@ index 972e2c379bc..8d6da15f983 100755
echo "type Pid_t _pid_t" >> ${OUT}
echo "type Uid_t _uid_t" >> ${OUT}
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0036-gcc-go-undef-SETCONTEXT_CLOBBERS_TLS-in-proc.c.patch b/main/gcc/0036-gcc-go-undef-SETCONTEXT_CLOBBERS_TLS-in-proc.c.patch
index 0e17708b76..568934d32d 100644
--- a/main/gcc/0036-gcc-go-undef-SETCONTEXT_CLOBBERS_TLS-in-proc.c.patch
+++ b/main/gcc/0036-gcc-go-undef-SETCONTEXT_CLOBBERS_TLS-in-proc.c.patch
@@ -1,4 +1,4 @@
-From 79d8ab42aefb1d3c5f794f51df643ab040c30e30 Mon Sep 17 00:00:00 2001
+From 8f87f7788b613882d8f3e5e8c36ab1a32ba89417 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Sun, 30 Aug 2020 19:27:51 +0200
Subject: [PATCH] gcc-go: undef SETCONTEXT_CLOBBERS_TLS in proc.c
@@ -23,5 +23,5 @@ index 6f7d2e27996..5afd7902497 100644
static inline void
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0037-gcc-go-link-to-libucontext.patch b/main/gcc/0037-gcc-go-link-to-libucontext.patch
index b81d8bf98a..3dfa70f9ec 100644
--- a/main/gcc/0037-gcc-go-link-to-libucontext.patch
+++ b/main/gcc/0037-gcc-go-link-to-libucontext.patch
@@ -1,4 +1,4 @@
-From d42de24395e4f07cf6412896d4cd8c7f83a9b875 Mon Sep 17 00:00:00 2001
+From 60f281aace2eae50c22ad73ae5506f2ee00e86a7 Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Mon, 31 Aug 2020 08:59:40 +0200
Subject: [PATCH] gcc-go: link to libucontext
@@ -21,5 +21,5 @@ index 63627db68cf..c7f1f84d683 100644
--srcdir=$${topdir}/$$module_srcdir \
$(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0038-gcc-go-Disable-printing-of-unaccessible-ppc64-struct.patch b/main/gcc/0038-gcc-go-Disable-printing-of-unaccessible-ppc64-struct.patch
index 15acfdb4a8..e026c3a0cc 100644
--- a/main/gcc/0038-gcc-go-Disable-printing-of-unaccessible-ppc64-struct.patch
+++ b/main/gcc/0038-gcc-go-Disable-printing-of-unaccessible-ppc64-struct.patch
@@ -1,4 +1,4 @@
-From 570cd2b596daf12e8dfe1a444fe405a7c26fc2bc Mon Sep 17 00:00:00 2001
+From 6d85cef1e0ab200a195e18fab5145b9a69a21cbe Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Mon, 31 Aug 2020 20:26:56 +0200
Subject: [PATCH] gcc-go: Disable printing of unaccessible ppc64 struct members
@@ -22,5 +22,5 @@ index fd1c885f043..e845e453332 100644
mcontext_t *m = &((ucontext_t*)(context))->uc_mcontext;
int i;
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0039-CRuntime_Musl-Support-v1.2.0-for-32-bits.patch b/main/gcc/0039-CRuntime_Musl-Support-v1.2.0-for-32-bits.patch
index 80ff192a20..36b436084d 100644
--- a/main/gcc/0039-CRuntime_Musl-Support-v1.2.0-for-32-bits.patch
+++ b/main/gcc/0039-CRuntime_Musl-Support-v1.2.0-for-32-bits.patch
@@ -1,4 +1,4 @@
-From 10b79a025a54354368c6f349c17682b1e8487907 Mon Sep 17 00:00:00 2001
+From 95f6464ee0f03ff859cbd16b26f9d6a724e1b3ed Mon Sep 17 00:00:00 2001
From: Geod24 <pro.mathias.lang@gmail.com>
Date: Mon, 16 Nov 2020 18:40:46 +0100
Subject: [PATCH] CRuntime_Musl: Support v1.2.0 for 32 bits
@@ -49,5 +49,5 @@ index 451c8b4fccc..ca654fbe424 100644
alias c_ulong pthread_t;
version (D_LP64)
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0040-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch b/main/gcc/0040-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch
index 4727c37ebe..5474b5135c 100644
--- a/main/gcc/0040-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch
+++ b/main/gcc/0040-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch
@@ -1,4 +1,4 @@
-From 8ac36878ba8714afeac6f439632de8bacb2e72e3 Mon Sep 17 00:00:00 2001
+From 72e9d86cda1f9050435327c3488a21f79b0a930a Mon Sep 17 00:00:00 2001
From: Drew DeVault <sir@cmpwn.com>
Date: Wed, 9 Dec 2020 16:07:26 +0000
Subject: [PATCH] configure: Add --enable-autolink-libatomic, use in
@@ -265,5 +265,5 @@ index 40e07354b3d..81bd50b4d7c 100644
#ifdef ENABLE_DEFAULT_SSP
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0041-Use-generic-errstr.go-implementation-on-musl.patch b/main/gcc/0041-Use-generic-errstr.go-implementation-on-musl.patch
index 222513d656..c629300aa5 100644
--- a/main/gcc/0041-Use-generic-errstr.go-implementation-on-musl.patch
+++ b/main/gcc/0041-Use-generic-errstr.go-implementation-on-musl.patch
@@ -1,4 +1,4 @@
-From 70d70a1106b31ab840dbf5361312af221a2d5f04 Mon Sep 17 00:00:00 2001
+From d569c383e602b7f2089bc50ee2c9d4dca56a4375 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
Date: Mon, 19 Apr 2021 07:21:41 +0200
Subject: [PATCH] Use generic errstr.go implementation on musl
@@ -44,5 +44,5 @@ index 5b19e6f202d..8dc60172186 100644
package syscall
--
-2.31.1
+2.33.0
diff --git a/main/gcc/0042-configure-fix-detection-of-atomic-builtins-in-libato.patch b/main/gcc/0042-configure-fix-detection-of-atomic-builtins-in-libato.patch
new file mode 100644
index 0000000000..aa70d5e4d4
--- /dev/null
+++ b/main/gcc/0042-configure-fix-detection-of-atomic-builtins-in-libato.patch
@@ -0,0 +1,57 @@
+From debf21c395e9a6adc179a2410c6a6aada216e07b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net>
+Date: Sun, 29 Aug 2021 09:45:27 +0200
+Subject: [PATCH] configure: fix detection of atomic builtins in libatomic
+ configure script
+
+Alpine's --enable-autolink-libatomic (which is enabled for riscv64 by
+default) causes the libatomic configure script to incorrectly detect
+which builtins are available on riscv64. This then causes incorrect code
+generation for libatomic since it assumes compiler builtins to be
+available which are not actually available on riscv64.
+
+This commit fixes this issue by disabling linking of libatomic configure
+test code entirely, thereby preventing linking against libatomic.
+
+See:
+
+* https://gitlab.alpinelinux.org/alpine/aports/-/issues/12948
+* https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101996#c6
+---
+ libatomic/configure.tgt | 20 ++++++++++++++++++++
+ 1 file changed, 20 insertions(+)
+
+diff --git a/libatomic/configure.tgt b/libatomic/configure.tgt
+index 5dd0926d207..0b57a801e23 100644
+--- a/libatomic/configure.tgt
++++ b/libatomic/configure.tgt
+@@ -30,6 +30,26 @@
+ # on ${target_cpu}. For example to allow proper use of multilibs.
+ configure_tgt_pre_target_cpu_XCFLAGS="${XCFLAGS}"
+
++# The libatomic configure script performs several checks to determine
++# whether builtins for atomic operations are available. When compiling
++# with --enable-autolink-libatomic the test code compiled by the
++# configure script is also linked against libatomic. This causes it
++# to think that builtins are available, even if there are not, since
++# the tested symbols are provided by libatomic.
++#
++# This is a hack to ensure that we don't link against libatomic by not
++# linking any configure test code at all when --enable-autolink-libatomic
++# is given.
++#
++# See:
++#
++# * https://gitlab.alpinelinux.org/alpine/aports/-/issues/12817
++# * https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101996#c4
++#
++if test x$enable_autolink_libatomic = xyes; then
++ gcc_no_link=yes
++fi
++
+ case "${target_cpu}" in
+ alpha*)
+ # fenv.c needs this option to generate inexact exceptions.
+--
+2.33.0
+
diff --git a/main/gcc/APKBUILD b/main/gcc/APKBUILD
index 8c382fb7b6..9f44332a05 100644
--- a/main/gcc/APKBUILD
+++ b/main/gcc/APKBUILD
@@ -2,13 +2,13 @@
# Maintainer: Ariadne Conill <ariadne@dereferenced.org>
pkgname=gcc
_pkgbase=10.3.1
-pkgver=10.3.1_git20210625
+pkgver=10.3.1_git20210921
[ "$BOOTSTRAP" = "nolibc" ] && pkgname="gcc-pass2"
[ "$CBUILD" != "$CHOST" ] && _cross="-$CARCH" || _cross=""
[ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target=""
pkgname="$pkgname$_target"
-pkgrel=0
+pkgrel=1
pkgdesc="The GNU Compiler Collection"
url="https://gcc.gnu.org"
arch="all"
@@ -213,6 +213,7 @@ source="https://dev.alpinelinux.org/~nenolod/gcc-${pkgver}.tar.xz
0039-CRuntime_Musl-Support-v1.2.0-for-32-bits.patch
0040-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch
0041-Use-generic-errstr.go-implementation-on-musl.patch
+ 0042-configure-fix-detection-of-atomic-builtins-in-libato.patch
"
# we build out-of-tree
@@ -661,46 +662,47 @@ gnat() {
}
sha512sums="
-e3381e4511fff63f388b0898669f83eae82334c7833dac3a0d4e3a3241d4154400681b7c934253b2e773922cb91b33d586888ff6c1e00c8be96bf708c9247178 gcc-10.3.1_git20210625.tar.xz
-1d5788a2bede9ecdf2597a836fecaadd78ce4f5742838edbf5ef1091bc6fa73d2e43d862a5ccdcb45d404c49fc943a8110ba470608b2b4da165dbdcae00818ca 0001-posix_memalign.patch
-997b75b108cb95c47eecce8aabb60490bd07d4a0c4bd90d449dcef9f85319ab529fbb19b381fa984e7c73232cbe4e33d0e45a1677ff620dbaa14590518f4ce4b 0002-gcc-poison-system-directories.patch
-01623bd69b69bb4690511e0c8b00afddf816eb0040647de7140a588b75cd5ca8f4a087a52793092a8d8e9a95fee546562bc2ebf80141dafc9754ec3a0bde2cd1 0003-Turn-on-Wl-z-relro-z-now-by-default.patch
-bbf01f6f857d981d6d82859268c1c7392e277b3943332f47650ff758b791c5711b9d7cfe1c11ed2770dda77a42105433f0da9e974638aad1e263b29c0ee2cbf2 0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch
-b9e03d6f18861269d356a686438b848fa294cc1c9ac6ad972b89c64e92cb99a25cf8a0513344d18ee41698825b5d8ea9a23cac6f96c933e03f8e20afdd285516 0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch
-d9389c82d7075debade8d1b43ab6bd4a087a8bcdc6d1a812923ca80eefe6e45498e552b7a088780e74fd08d679cb83cf94973157ed78d78090594ca4c41eb816 0006-Enable-Wformat-and-Wformat-security-by-default.patch
-2a9727a9b6ec7dd05ade8be3e686d82b5702ab9b6185812f72afce627179b8438505b37b5dd3705a751ba600a5a246de69e23e81bf09faeb7680496f2e5803ab 0007-Enable-Wtrampolines-by-default.patch
-c8828ef94d4be1ee8979f41ad2fb5d956fd17e7509c0d3df6f88e75d6faf253b9bea8eaa2cf00ee925e0fafabb4823fbfc125d018dd1b19911ee982a3d073002 0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch
-c150051ffb049ffd6a92b85265dbd9d763044468259220332f196f234031dcbada00bf9fea4be77bac712c0fd554d58ba5bdaa61e437f4678edeb7bdc30bf0db 0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch
-68d59c2f2714ab41a90e3ea512187f3da8d5d7bd05d07c1fafb2d78681ec772698a5ff4303e98302230a69a3fc1f56bb5d32d58d1ae95dd33e20850d9e02dd79 0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch
-5059d3207f4abbab13b7b4aa1a9aa40b3fe519dd4a378e049553c13582787faada4f9e79cfee51e291c5ad88947d763217b15356730fecb8eebdde6fd4f285c1 0011-libiberty-copy-PIC-objects-during-build-process.patch
-18d6d84b08f4949f510c5c3899451fba08a68e0b1fde381a7df6d117e7493e9093839e660a1293ae4f1a5194b3200b65e89dbb61d6f60e09b292f4452e9f1411 0012-libitm-disable-FORTIFY.patch
-55165e4955ce7a881b80701a543d61253252011c21dfc86ab7fa8a49a105b708d2452b588bc631423cdb5dd0f454d877283635a40485684762ec2ad3a103c911 0013-libgcc_s.patch
-2e7af3e31f46a44cedeed949730a3c10f573b0d5071e3d6606444a40c9d1ebc5331d46d5e9955473d12bc84de118e3a84c15d0f70019e3a71c671d016dd7203c 0014-nopie.patch
-ae86e9dba038e1fcf536bf35fbb0b7f0f113cc5ced4d4507d3c4b8a9f1b59a7e039b4162df7dedf19730ffa7c4e546aa5704c160879cda005123b45a505c0993 0015-libffi-use-__linux__-instead-of-__gnu_linux__-for-mu.patch
-f4002aecd5a53547479c2869c0cf9b7b281d9c1f96f41c6959e81fc3af590a00530389647c0acc2e6f0df2f8bb4d185c9cdcd740487b124e0676b74cc9a3e6be 0016-dlang-update-zlib-binding.patch
-d280ac5c6675c063ca671e267c8789181e4b13de65c4248bdac702e0c1daa40089df277858f8740d8e182ee7773ac0518777e1625f20dcb96dbf3d9975ddd571 0017-dlang-fix-fcntl-on-mips-add-libucontext-dep.patch
-53ae0411ae86da64953b0e26bce171a222205697644428248cb2becd394e463a40496d4d06af587bfedcbeb8b323ecae4284d5f91a7c7b30b9053adad0b78a86 0018-ada-fix-shared-linking.patch
-37cf7167c1e7e387abaf91acc46d0c751d07f4d427a937d0efac3a479dd5f6a88f632c183462fb1ff4e0145474228960a98721f711c2176c9425a5f33649634d 0019-build-fix-CXXFLAGS_FOR_BUILD-passing.patch
-48e38d2d86843bbfaffc51288bb33d25478d32ab9832684da4066a487a92a6ef24ad6381feac2fb8a7905c5f3000709c3b10cf37f9be70685e1f9c70c63c4363 0020-add-fortify-headers-paths.patch
-fcee4fb2d8317490144404b6d6c632607e57a01591b69cb90d9119fc7b5446b59027e403cd65e6bf18dccee127dc5fda96c5a7b43adc14671b85ecd4303da2dd 0021-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch
-cedd53c2dd61c4ead859242ecbdac4ac674424ad68eda3326741187d187ff90d6b6e3e88f9b65ceb2e97d914eb38ae62670ac4b08cbaa3728129739fa8fa7f27 0022-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch
-fc7684b25163a43a2d97df0614b2d1c8da81a5a80169cbe853aefd442d8413d5d0717772bad1c87ca6e8eff6e26f8aa5f340cebf635ef44192227227e167f08c 0023-Pure-64-bit-MIPS.patch
-cdd42fe4a48cee11a23086aaaf9f9c8b55de69987cee88a39a3316878e064066511b5e9e9b98267a27af5042c1fdfcfaadeb5a3ac81fab4102c9b9e261b17410 0024-use-pure-64-bit-configuration-where-appropriate.patch
-79f1ab0e29bd3fc7e72d8c59cd380a2b50b6e4b872d5101d4f1ed1ac00368716e3b12b2d54bcbfa60a89104418811034c5a560ffb1de5712bbe590f16f74d2b5 0025-always-build-libgcc_eh.a.patch
-073eda8d12299723b2f4d190cfcbe467b529936d580240b1180d0c37286c9b5ab26d8aa99f8b59ce2e195ac46da708d84ad8b9a2f0946398b91448b590e9cae4 0026-ada-libgnarl-compatibility-for-musl.patch
-3cb3f153f67d10171b3bc9cb8f7acafb611f2f221dec2a6129cab63f9cb97bd3b9c0e512e9d70f985cc139859d64b266fe71504eb0ca2ce5ab59ca82445e4b14 0027-ada-musl-support-fixes.patch
-e8d8e7b2f39d706c7aed4b9e6b5f166482e317b2b68e9250880cd864932e0e69d9b595eaa9e10e573f88207697489cf89aa968d2e0a9aa3d92c44717c9f6e9f8 0028-gcc-go-Use-_off_t-type-instead-of-_loff_t.patch
-674a0599e9e0f450bbb924513a4a6ee1dfde0848d47110ce1415782b6f848335197bb86798063aae5626d01ee892c993762dec83c729052c536d97d6b86999f0 0029-gcc-go-Don-t-include-sys-user.h.patch
-8714dde37beda68d901ad6c50c208c3fd3dab81951898535a964348c6b45bd2896b1386302061fedeccf29228ba9d5e788657e550d3680c6562c024b6b135ea3 0030-gcc-go-Fix-ucontext_t-on-PPC64.patch
-e5c9bc4825f5adefe1eeee80dc24a05cc6224b20c5a4e36e1d3b74255ab1d2b1dda0f90915a208ce7d09a22853e1782aedb3c57729a4e650eb13a2c1f9bc0482 0031-gcc-go-Fix-handling-of-signal-34-on-musl.patch
-578d2adbdf036a1764143340fb63055b0f23cdfc75c79a91813194c0dd346900d36c5db334ea341ea29c51dd62e94618ce49db422603284bb565260d0ee2d4c6 0032-gcc-go-Use-int64-type-as-offset-argument-for-mmap.patch
-3e06a22fcda856bdde6d77d2ef11b0a60b5a99b3c8dc4a7919a4c4f3fc01b86f94f141b58df8129d739f9cc1b116ebf8b4e6d82d58e6c5c38eccb677c5f4c0aa 0033-gcc-go-Fix-st_-a-m-c-tim-fields-in-generated-sysinfo.patch
-5c4edc35d40b759d08dc3b536be5a20be727e5a37ea2755f0416de932d2c641661d4e197f24c3128f9fe79daa08f80528d925676920ff03ca0f8127ff13a9ea6 0034-gcc-go-signal-34-is-special-on-musl-libc.patch
-41ccc997352859f0c023c4b49f8a8f3d505727163db8ba9795d26c0ba89a004b232ea685da7cd6f210272641e107a09c398578ae3e0e6e065982912555f0d2bb 0035-gcc-go-Prefer-_off_t-over-_off64_t.patch
-c70b599de8698ea2b6ed865f5ca503a55ce1590c4d30af5af4c36d4fce1d42f19d347f44d6e62fbe84bebeeaac9c90d74bb9e17e2b7bc66d8e8988e98f81cac3 0036-gcc-go-undef-SETCONTEXT_CLOBBERS_TLS-in-proc.c.patch
-19ccab17f5ba7c02643a1ea85f3690554d3142e3bdd7a68d663a74381336f74007d1ef053fe4e78acc3154ee6f59606de5fbe54dac9efa72291ace76902b2856 0037-gcc-go-link-to-libucontext.patch
-b92ea62f8ffc7471dabbc8a6f770fc141702d4900f6eb4808a8b0c46042434617185366d93b491220e4f079827239b3849d078acd4389a360f6ef7fddf2ab249 0038-gcc-go-Disable-printing-of-unaccessible-ppc64-struct.patch
-1f54ea2ed780964da3238bd98b63719d68585ac97bd312211797dabec3fc7c54b60af9f7ffc490355c898ed42c0a2745e6486bfc0577b9adee88ee1fb35bf2d1 0039-CRuntime_Musl-Support-v1.2.0-for-32-bits.patch
-7e02eaf9e0261a2942cbc4db626cc6d67955bdfdc9036d505f1e3a4b3fa03993de403b58173137ca98db3365df28db234bf70ae76a74a463c39887a40780c2a7 0040-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch
-99ecfd0beeb8dfcd95ef84b3ad8fb43402edb87ac6b0591c7a8bd986b9e163e1b8ce2c5773ee3cbf1264dc40912b7312f450e6dde4ab8a6cf28b02541de7ce84 0041-Use-generic-errstr.go-implementation-on-musl.patch
+93dfd2d92cd9ff61d288df85f588907286108f9524c46bcb1c09010ed051dec18cc04ddaec2e0194fb4236ad2df3202b27eee8536c4b9818cf31504eea97dbeb gcc-10.3.1_git20210921.tar.xz
+eb9e3b118e327dd241cb0ce453f659ddfdbcba2069d85ec5095a0125b397feac03ca340b41519bd44372ff61ed9de5159cdd7bcd060e26a8704f7437f9402f0c 0001-posix_memalign.patch
+27cfbc444fa9ef791c30d5e3dce7d0810c824d2173b1c782128758e89128a70e4f4b54d3a6ff401f42e1d9f5fc2b717ef1c7f1cf174c0b258bd0131bb30c8dc9 0002-gcc-poison-system-directories.patch
+054778e85f68afe8d2fba42727bb15c6a2267cb5b58ee68a9ec33a1b5ce738eaec2bc7bb7b81e6d7ede650d03a99d58aaeaab0074102471c141f1400eba39693 0003-Turn-on-Wl-z-relro-z-now-by-default.patch
+64ffe2e1d3cfa61821dae13bb574050f3e189d8877ffbbc68e77d14c76b33b82033b20ce894597195f7a231c1847447f58c6c8e63768fea4b831d43f7b977e8b 0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch
+7797d46485f55cf8e9cd9da58469081ad7012f732e6d2239ecf9795d30dec652f535c969400adc5d5238da47415021d4677b949f8b7b7b0b51950cea97cd9f63 0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch
+f2b6195c9ac024fa1ea9392d6793482ca7c69ca6ff86f52588ad106c189e5f6e836d2887b75f8a5ccc9f932c39c46c3daaa713d4e23d0ca5f27cd7954102aa74 0006-Enable-Wformat-and-Wformat-security-by-default.patch
+80bb5c8dedb3d32891adb33f61d7f1a4800a049a3b0995480c7a8ac4465f0a21b48433ca06bd797725469ac3c8642c01fbd17d77521178db1701bf4bae2335ae 0007-Enable-Wtrampolines-by-default.patch
+b584e524dee4e07f0a82cb09802dcaa54fee155bcaa17677f026627d9c1634841390f639934718a4e120c7b5ddb507dca1f6b030b0c5691af4291bb56c52bd27 0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch
+c2fba1f42e78c821f75fb3c4dad61fab906a080ac31636f72864e8d92c165c5c94bec09fac6fdefe6189cc78be124190ef716aff18b188dc3a6b5b169b3d6943 0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch
+e145bf59d05ca00960748eca3a88f3ad7e9f6c069092aca91a65caf34cadfe5493e35b5b3a788ab0bfafbd297ea7369240927ba405e3f4a5da70d3ad014c6b01 0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch
+95bb461a6f1e6019646d9a8e0c500a65dc9dec1eb87a499d095ef6853c7304f4c1cac70a38f51253a484b78fb77a8235ac3718975894cae31ae6c61957c9f5be 0011-libiberty-copy-PIC-objects-during-build-process.patch
+e6d47eff6bbd6c6715529f8d8b10971f06f40c3625e32da2e0c4aaed7ef12b61cf40d8ab056ee86ee4a1132fff37426b6c1aa80e6e2c278a05240c545f12fc77 0012-libitm-disable-FORTIFY.patch
+2165f3d8cf460f850e1d416568d6dc356675037b1f8fb21a53480907b0378b249f0ce5a1fc41322116d26c3d29c2ebb69c3658675622e3e8ff206dbf902e2e2f 0013-libgcc_s.patch
+a0723f28376e16a42b33d46e7fd74dfa05749dc276b42ea1b0d703db16e86965dd553799f4c469d195a76090c2f27c8cae703865765b83d7dda2cdbc04530f67 0014-nopie.patch
+b9410883e27ddc80e69091f461876d58300c06863fdba360b6f92348c0ecb0281c4930a7c989db4e234da7ca89512b1bd214bdef3c79f5876955475d8262b0cc 0015-libffi-use-__linux__-instead-of-__gnu_linux__-for-mu.patch
+043f950947c24ad00362e0606b0f96f75436dd253c92571502bddbe788d687ff7f6f378c4f58675d4d44fe95f88e49aeb672648ffe03f7a3ae0c42679fd8455d 0016-dlang-update-zlib-binding.patch
+eb9e8a8585684e453aadcdf8fefaddaea5e557f110fe70e02a9b97e8b2ace84b9e237f051d918f390f6a2b4e265b99f091e68eaad4a08f0e972914ac64aedb70 0017-dlang-fix-fcntl-on-mips-add-libucontext-dep.patch
+a0435f37ba8f2a16bd35c06bcbf41c61919c01561050b2610250c40b7f2a348f29354099f67f6db3c53f83466bdb5ec440679ac4ce80696a7a6b6050c2aa18ae 0018-ada-fix-shared-linking.patch
+65cb8d5f1e92806da5c92a4d757eb8fcb0b0f720a756695d1bdd60b0e1d9854cc095d17695715c4b08ac7d85363736623753c70a0d321ceb78714536e1fbf404 0019-build-fix-CXXFLAGS_FOR_BUILD-passing.patch
+150a5014ce53e7dbab1eee1b620188d16f012502e2db7ee54f9755d662c9969000c0c95d0611ce710ffa18d1688ad32d18e4c0613c9ae4e708688f27228f2ede 0020-add-fortify-headers-paths.patch
+e8663cbfbba0a266696d2027e15efc692c699d21f42f90b7f77cf6cf5a5a60e30c6cf1f47538e34a878e932b28d847fff2953232d68cc2865c73ea2c4d971b29 0021-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch
+1dba61dc8bcd09125f44110f7a98313e8474107d9c8d4ddb7848d9bf84dbe809c43bf7f1f7d49eaece1192b247a5952cc918a60cebdbe2017f46dae42c66aa05 0022-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch
+9d7b4da0ce278c9662a109b8209e82532110dfd9429a36ba82d0b0b67107ac2143360a40c82e09edd6e4eb522699aba34b2e52145066cafa95fdececcc079b22 0023-Pure-64-bit-MIPS.patch
+27b670204c4b95f0d78848862ce2584d7dcc6f27834ce643d8ebf4ebd900af3a4fbf6349ecde0c88097ac5219c0af6109984f72606225333d6ff0737b5bc9693 0024-use-pure-64-bit-configuration-where-appropriate.patch
+65b3ccb681b984f62bef207628dad31574815fb92bee88a0bc2596971a100cae4f969f956ccf2bd5552197392df86e39d76a35d6d86265d7e163c2a6bbf7140d 0025-always-build-libgcc_eh.a.patch
+bbaa2a34fd2b645da69fd800c6527df28523a5bf6054f57ea64975baabacc2faab779e4f6664840e0588386abd36fb8b20c65f0fc5dfb3e4ec59ec3e691887df 0026-ada-libgnarl-compatibility-for-musl.patch
+8a5741126eae6112a0578c890be7c903b24ba2391c37ad2a13eb7b36ecd1aa10202dcd70a156889866402f5521654ad4abcab62a09a28454634d81136b3dae26 0027-ada-musl-support-fixes.patch
+74d95e0971ebcf63ed27ee69e044c892fddd14d839a92242935acf296c181105dc2732af8e6ed0436865a8678ddb46c9abd3ece9561df403922d4193093c5e6b 0028-gcc-go-Use-_off_t-type-instead-of-_loff_t.patch
+2b22452d40c94db198c290f91d50409b7d597f9c31722d50964ddc5069e1b71bfeb36fa61c79392459607d93d62c9a7902222461d49791f2f2192f05d8e6c270 0029-gcc-go-Don-t-include-sys-user.h.patch
+ac55f4ae63690c2a0f5ff79295c09c70113db75a51aaffb340b1c27cf33bd394301ea944a0e23727e544622a93a3342be79508090bcabc907b1949848afd31c6 0030-gcc-go-Fix-ucontext_t-on-PPC64.patch
+9e07c8b260d2316139f68c4ce570a52a6005030c1d1b5a0e5e7e4da25a06050ed84d2775f2b267d7c4066cfc7cde5c0468e90ff666ba6e97569a73baa7fafec3 0031-gcc-go-Fix-handling-of-signal-34-on-musl.patch
+76499f745195863d580eb35d8551cd61cb7d4ce1a81fdba431e139647058abfbcce15b27a7fa7f414459abb395a31e8d92a0c85ac0eeb731a7c5d8e8c2851c7e 0032-gcc-go-Use-int64-type-as-offset-argument-for-mmap.patch
+b60cea20b43302f8f74e01882ca660ff4a79623757e087a80ed654d96ff90cb2996ec33d8a85207538badeb2545620417396408d10e49239f77b67a4a6d30b0b 0033-gcc-go-Fix-st_-a-m-c-tim-fields-in-generated-sysinfo.patch
+24e0d65f4b179eee35bb9a2bf450c5b0d3732aa7f04d4b797e50671198ff910a61c900e8b6b985cfd1cbd9ce3fb529e25328b28076ca28eccf4cf60646ab057e 0034-gcc-go-signal-34-is-special-on-musl-libc.patch
+559b71e060807ac4171438436b50f21d0bbd05655e9a8e690cca5fecfb7ee1d48bbad57f66a4366d7a30323cd06ed479e07706eb2deb67804fa0117c4e978ed5 0035-gcc-go-Prefer-_off_t-over-_off64_t.patch
+e90e717abe26b9a5342a3f1686372bd9f9ab410dd1fb97484004938fee5a43f84e17ffd846c8193f336aadfd2694e79757752a8eee831f7e46d12860723cad5b 0036-gcc-go-undef-SETCONTEXT_CLOBBERS_TLS-in-proc.c.patch
+a260a51814dd8cfd2c0e5afc573bfdb33f51390ac320fc9ba312252c0c517df5ab4f5e733969664323a6c7308f7c0bf862c1d58f066e96cea94ceadf6d0667b5 0037-gcc-go-link-to-libucontext.patch
+835644c8a8fd2a26fdc1bfbf8a33098a1b7219842d5a7ec6725bb3853eb350030cdcca2c6fa2336f516e821f0c20f039bd7cd7ee8f98b358ca307087964f8abf 0038-gcc-go-Disable-printing-of-unaccessible-ppc64-struct.patch
+d415c887d281b24694deec41a445edf4d48add45caf8e3431c49528f2cfbf1f8a029f03af768ac02f14679f36be0f24307268a26026a3176cc37b1bb087fa268 0039-CRuntime_Musl-Support-v1.2.0-for-32-bits.patch
+932900fabd81671d403e55b0c19a7a4af46d482ee6cb90463861236b14b66a3a0fdcf5f9583e2ea45a5549e2bedf95307d5f6609c9af9cf92af3e5d2ade315cd 0040-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch
+03b56f4d62af44000c11c5c3dc7a83225392cfbae2a08035cafe4f915710944a04dfc6af106f9371b4fa2167e03da222b38c7b9cebd64493575431543ae3c453 0041-Use-generic-errstr.go-implementation-on-musl.patch
+2624a6c862e0804e0a1163d2d2a4e4fb563ae1f66d9ea8aea40b851c8d31c4764bb1ff6241478a9c23c019e8bd7d351d2cd9b8f746bb3debc29104130937f2b0 0042-configure-fix-detection-of-atomic-builtins-in-libato.patch
"
diff --git a/main/gd/APKBUILD b/main/gd/APKBUILD
index e4726b31b2..b8e62e8703 100644
--- a/main/gd/APKBUILD
+++ b/main/gd/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Carlo Landmeter <clandmeter@alpinelinux.org>
pkgname=gd
pkgver=2.3.2
-pkgrel=0
+pkgrel=1
_pkgreal=lib$pkgname
pkgdesc="Library for the dynamic creation of images by programmers"
url="https://libgd.github.io/"
@@ -16,15 +16,25 @@ makedepends="
zlib-dev
"
subpackages="$pkgname-dev $_pkgreal:libs"
-source="https://github.com/$_pkgreal/$_pkgreal/releases/download/gd-$pkgver/$_pkgreal-$pkgver.tar.xz"
+source="https://github.com/$_pkgreal/$_pkgreal/releases/download/gd-$pkgver/$_pkgreal-$pkgver.tar.xz
+ CVE-2021-38115.patch
+ CVE-2021-40145.patch
+ "
builddir="$srcdir/$_pkgreal-$pkgver"
-# https://github.com/libgd/libgd/issues/359
-options="!check"
+
+case "$CARCH" in
+ # https://github.com/libgd/libgd/issues/359
+ aarch64|mips*|ppc64le|riscv64|s390x|x86) options="!check";;
+esac
# secfixes:
+# 2.3.0-r1:
+# - CVE-2021-38115
+# - CVE-2021-40145
# 2.3.0-r0:
# - CVE-2019-11038
# - CVE-2018-14553
+# - CVE-2017-6363
# 2.2.5-r2:
# - CVE-2018-5711
# - CVE-2019-6977
@@ -60,4 +70,8 @@ dev() {
mv "$pkgdir"/usr/bin/bdftogd "$subpkgdir"/usr/bin/
}
-sha512sums="a31c6dbb64e7b725b63f3b400f7bebc289e2d776bdca0595af23006841660dc93a56c2247b98f8a584438a826f9e9ff0bea17d0b3900e48e281580b1308794d2 libgd-2.3.2.tar.xz"
+sha512sums="
+a31c6dbb64e7b725b63f3b400f7bebc289e2d776bdca0595af23006841660dc93a56c2247b98f8a584438a826f9e9ff0bea17d0b3900e48e281580b1308794d2 libgd-2.3.2.tar.xz
+cf455c3487dd3ef074abb0d89c2763e5652b11273a63eb050212dbed911e6fe9b65bf26c2de8ac9dc32d8225c096389075f518296280c3109c19612daafdb043 CVE-2021-38115.patch
+778ec72d6bcccd5fac032bb165f198cd588bc59e8358cb0933fe2e7e688416d693c517b0c2afd1c3b682619404a94bb4f0babbdf895774e83c869a34f191f84a CVE-2021-40145.patch
+"
diff --git a/main/gd/CVE-2021-38115.patch b/main/gd/CVE-2021-38115.patch
new file mode 100644
index 0000000000..94083594e0
--- /dev/null
+++ b/main/gd/CVE-2021-38115.patch
@@ -0,0 +1,26 @@
+From 8b111b2b4a4842179be66db68d84dda91a246032 Mon Sep 17 00:00:00 2001
+From: maryam ebrahimzadeh <maryam.ebr@student.sharif.edu>
+Date: Mon, 19 Jul 2021 10:07:13 +0430
+Subject: [PATCH] fix read out-of-bands in reading tga header file
+
+---
+ src/gd_tga.c | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/src/gd_tga.c b/src/gd_tga.c
+index cae9428da..286febb28 100644
+--- a/src/gd_tga.c
++++ b/src/gd_tga.c
+@@ -191,7 +191,11 @@ int read_header_tga(gdIOCtx *ctx, oTga *tga)
+ return -1;
+ }
+
+- gdGetBuf(tga->ident, tga->identsize, ctx);
++
++ if (gdGetBuf(tga->ident, tga->identsize, ctx) != tga->identsize) {
++ gd_error("fail to read header ident");
++ return -1;
++ }
+ }
+
+ return 1;
diff --git a/main/gd/CVE-2021-40145.patch b/main/gd/CVE-2021-40145.patch
new file mode 100644
index 0000000000..3f6b855eb2
--- /dev/null
+++ b/main/gd/CVE-2021-40145.patch
@@ -0,0 +1,124 @@
+From e95059590fadaabd9aadc0c0489804d75a3c5d52 Mon Sep 17 00:00:00 2001
+From: maryam ebrahimzadeh <maryam.ebr@student.sharif.edu>
+Date: Mon, 19 Jul 2021 18:52:50 +0430
+Subject: [PATCH 1/3] gdImageGd2Ptr memory leak
+
+---
+ src/gd_gd2.c | 18 ++++++++++++++----
+ 1 file changed, 14 insertions(+), 4 deletions(-)
+
+diff --git a/src/gd_gd2.c b/src/gd_gd2.c
+index 760e85b9f..84ec53375 100644
+--- a/src/gd_gd2.c
++++ b/src/gd_gd2.c
+@@ -1,4 +1,4 @@
+-/*
++
/*
+ * gd_gd2.c
+ *
+ * Implements the I/O and support for the GD2 format.
+@@ -910,9 +910,11 @@ _gd2PutHeader (gdImagePtr im, gdIOCtx * out, int cs, int fmt, int cx, int cy)
+
+ }
+
+-static void
++/* returns 0 on success, 1 on failure */
++static int
+ _gdImageGd2 (gdImagePtr im, gdIOCtx * out, int cs, int fmt)
+ {
++ int ret = 0;
+ int ncx, ncy, cx, cy;
+ int x, y, ylo, yhi, xlo, xhi;
+ int chunkLen;
+@@ -974,10 +976,12 @@ _gdImageGd2 (gdImagePtr im, gdIOCtx * out, int cs, int fmt)
+ /* */
+ chunkData = gdCalloc (cs * bytesPerPixel * cs, 1);
+ if (!chunkData) {
++ ret = 1;
+ goto fail;
+ }
+ compData = gdCalloc (compMax, 1);
+ if (!compData) {
++ ret = 1;
+ goto fail;
+ }
+
+@@ -992,6 +996,7 @@ _gdImageGd2 (gdImagePtr im, gdIOCtx * out, int cs, int fmt)
+
+ chunkIdx = gdCalloc (idxSize * sizeof (t_chunk_info), 1);
+ if (!chunkIdx) {
++ ret = 1;
+ goto fail;
+ }
+ };
+@@ -1107,6 +1112,8 @@ _gdImageGd2 (gdImagePtr im, gdIOCtx * out, int cs, int fmt)
+ }
+ GD2_DBG (printf ("Done\n"));
+
++ return ret;
++
+ }
+
+ /*
+@@ -1128,8 +1135,11 @@ BGD_DECLARE(void *) gdImageGd2Ptr (gdImagePtr im, int cs, int fmt, int *size)
+ void *rv;
+ gdIOCtx *out = gdNewDynamicCtx (2048, NULL);
+ if (out == NULL) return NULL;
+- _gdImageGd2 (im, out, cs, fmt);
+- rv = gdDPExtractData (out, size);
++ if (_gdImageGd2(im, out, cs, fmt)) {
++ rv = NULL;
++ } else {
++ rv = gdDPExtractData(out, size);
++ }
+ out->gd_free (out);
+ return rv;
+ }
+
+From e8eeb8dde5bc4c9d4e7ae1ab43d9fd1780ceb792 Mon Sep 17 00:00:00 2001
+From: Maryam Ebrahimzadeh <61263086+me22bee@users.noreply.github.com>
+Date: Tue, 24 Aug 2021 11:46:07 +0430
+Subject: [PATCH 2/3] trigger the github actions
+
+---
+ src/gd_gd2.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/gd_gd2.c b/src/gd_gd2.c
+index 84ec53375..097c93d0d 100644
+--- a/src/gd_gd2.c
++++ b/src/gd_gd2.c
+@@ -1135,11 +1135,13 @@ BGD_DECLARE(void *) gdImageGd2Ptr (gdImagePtr im, int cs, int fmt, int *size)
+ void *rv;
+ gdIOCtx *out = gdNewDynamicCtx (2048, NULL);
+ if (out == NULL) return NULL;
++
+ if (_gdImageGd2(im, out, cs, fmt)) {
+ rv = NULL;
+ } else {
+ rv = gdDPExtractData(out, size);
+ }
++
+ out->gd_free (out);
+ return rv;
+ }
+
+From a1d4caace613d31209b42d22d9f7ebe37c381f9a Mon Sep 17 00:00:00 2001
+From: Maryam Ebrahimzadeh <61263086+me22bee@users.noreply.github.com>
+Date: Tue, 24 Aug 2021 12:02:23 +0430
+Subject: [PATCH 3/3] remove non-printable bytes
+
+---
+ src/gd_gd2.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/gd_gd2.c b/src/gd_gd2.c
+index 097c93d0d..5c57d44a6 100644
+--- a/src/gd_gd2.c
++++ b/src/gd_gd2.c
+@@ -1,4 +1,4 @@
+-
/*
++/*
+ * gd_gd2.c
+ *
+ * Implements the I/O and support for the GD2 format.
diff --git a/main/gdb/APKBUILD b/main/gdb/APKBUILD
index 3521064282..dd3079f859 100644
--- a/main/gdb/APKBUILD
+++ b/main/gdb/APKBUILD
@@ -1,14 +1,15 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=gdb
-pkgver=10.2
+pkgver=11.1
pkgrel=0
pkgdesc="The GNU Debugger"
url="https://www.gnu.org/software/gdb/"
arch="all"
license="GPL-3.0-or-later LGPL-3.0-or-later"
makedepends="ncurses-dev expat-dev texinfo readline-dev python3-dev
- zlib-dev autoconf automake libtool linux-headers perl"
+ zlib-dev autoconf automake libtool linux-headers perl gmp-dev"
options="!check"
+[ "$CARCH" = "riscv64" ] && options="$options textrels"
subpackages="$pkgname-doc $pkgname-multiarch"
source="https://ftp.gnu.org/gnu/gdb/gdb-$pkgver.tar.xz
s390x-use-elf-gdb_fpregset_t.patch
@@ -74,8 +75,10 @@ multiarch() {
"$subpkgdir"/usr/bin/gdb-multiarch
}
-sha512sums="3653762ac008e065c37cd641653184c9ff7ce51ee2222ade1122bec9d6cc64dffd4fb74888ef11ac1942064a08910e96b7865112ad37f4602eb0a16bed074caa gdb-10.2.tar.xz
+sha512sums="
+c40bf970e2f7c2107b29c5aa6a7150daa709d75ddadb73ac20742419d4637d158e3063a4c6ff6e47fae8ca8e1d36253973f85ea15445d004be6d5d7a2dd9bd46 gdb-11.1.tar.xz
70e7d04e4d72461436da503b5bfa370c5779e03245c521f30e9779d5ff37dbb2d708b05f2afb27f43ad9defc44df4bd979d72f777e744851fdbf156295e1cc9f s390x-use-elf-gdb_fpregset_t.patch
04911f87904b62dd7662435f9182b20485afb29ddb3d6398a9d31fef13495f7b70639c77fdae3a40e2775e270d7cd40d0cfd7ddf832372b506808d33c8301e01 ppc-musl.patch
ab554899bbb2aa98261fd1b6beb4a71ed7c713a714bddd3fa7ec875258e39bd5474dc96a11accb4dadd316f3834f215e8395d3b373bf3affd122dc5b4a8fe710 ppc-ptregs.patch
-58aacc7cdc119eab729a3c5a5521f6a0db41c6a5bc2d09d6e32cbdd071d85dd1a31b5e6559616f8da1237c5b79ad9e04aab485211e957b4d1ca752c0c5ad660b musl-signals.patch"
+58aacc7cdc119eab729a3c5a5521f6a0db41c6a5bc2d09d6e32cbdd071d85dd1a31b5e6559616f8da1237c5b79ad9e04aab485211e957b4d1ca752c0c5ad660b musl-signals.patch
+"
diff --git a/main/gdbm/APKBUILD b/main/gdbm/APKBUILD
index c1ce331759..80939fbb06 100644
--- a/main/gdbm/APKBUILD
+++ b/main/gdbm/APKBUILD
@@ -2,12 +2,13 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=gdbm
pkgver=1.20
-pkgrel=0
+pkgrel=2
pkgdesc="GNU dbm is a set of database routines that use extensible hashing"
url="https://www.gnu.org/software/gdbm/"
arch="all"
license="GPL-3.0-or-later"
-subpackages="$pkgname-dev $pkgname-doc"
+depends_dev="$pkgname-tools=$pkgver-r$pkgrel"
+subpackages="$pkgname-dev $pkgname-doc $pkgname-tools"
source="https://ftp.gnu.org/gnu/gdbm/gdbm-$pkgver.tar.gz"
prepare() {
@@ -37,6 +38,13 @@ package() {
make DESTDIR="$pkgdir" install
}
+tools() {
+ pkgdesc="$pkgdesc (CLI tools)"
+ depends="$pkgname=$pkgver-r$pkgrel"
+
+ amove usr/bin/*
+}
+
sha512sums="
5f2fbd4318259e5b879ea2bff09e22defbb4e566ebbe11c44ac5b5369fd00745d7ed9f72ec1206153027eba245c4ee4a515a8ec6d67f84ec477483e72753590b gdbm-1.20.tar.gz
"
diff --git a/main/gdl/APKBUILD b/main/gdl/APKBUILD
index 6bb0b1688b..222197206f 100644
--- a/main/gdl/APKBUILD
+++ b/main/gdl/APKBUILD
@@ -2,7 +2,7 @@
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
pkgname=gdl
-pkgver=3.34.0
+pkgver=3.40.0
pkgrel=0
pkgdesc="Gnome Docking library"
url="https://gitlab.gnome.org/GNOME/gdl"
@@ -27,4 +27,6 @@ build() {
package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="8c43f330556dae67e4f64e92c3ba5c2e9351d3040d6002bda89f20f9494fc93030abe80072f0cf86280f98e290805154e9ca12aaa7013f0a341d8ea94323d3b0 gdl-3.34.0.tar.xz"
+sha512sums="
+38cf787a47e7eece445c7bf321cb5aa691cc6bdfcb31bc10fb51c83c525b74fc8374a20989621d79e70f25ef92d9d7cce46f6f0bb993cceba3fb93b9092c1e32 gdl-3.40.0.tar.xz
+"
diff --git a/main/geoip/APKBUILD b/main/geoip/APKBUILD
index dcde2c3a59..cebf347488 100644
--- a/main/geoip/APKBUILD
+++ b/main/geoip/APKBUILD
@@ -1,20 +1,18 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
-pkgname="geoip"
+pkgname=geoip
_pkgname="GeoIP"
pkgver=1.6.12
-pkgrel=1
+pkgrel=2
pkgdesc="Lookup countries by IP addresses"
url="http://www.maxmind.com/app/ip-location"
arch="all"
license="GPL"
makedepends="zlib-dev"
subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/maxmind/geoip-api-c/releases/download/v$pkgver/$_pkgname-$pkgver.tar.gz
- geoip.cron"
+source="https://github.com/maxmind/geoip-api-c/releases/download/v$pkgver/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- cd "$builddir"
./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -26,16 +24,14 @@ build() {
}
package() {
- cd "$builddir"
make DESTDIR="$pkgdir" install
mkdir -p "$pkgdir"/usr/share/GeoIP
- install -m755 -D ../../geoip.cron "$pkgdir"/etc/periodic/monthly/geoip
}
check() {
- cd "$builddir"
make check
}
-sha512sums="a1c8120692a7ba6de5836550917f86f4797dd236a8b7d71b6f92b5389e4b071d89e57036654f5de1d4b762730a2a5c331c31414eab0c889c9befaa097941fee7 GeoIP-1.6.12.tar.gz
-910b1efc93898416057aa7fc1a3f57d35f354973656ed40fbe266c737c4b4aa37f28b42e4163ed850a454c999bc880c27d863a04a14328b7b7e65348a85dd7d3 geoip.cron"
+sha512sums="
+a1c8120692a7ba6de5836550917f86f4797dd236a8b7d71b6f92b5389e4b071d89e57036654f5de1d4b762730a2a5c331c31414eab0c889c9befaa097941fee7 GeoIP-1.6.12.tar.gz
+"
diff --git a/main/geoip/geoip.cron b/main/geoip/geoip.cron
deleted file mode 100755
index 8d74aff5cf..0000000000
--- a/main/geoip/geoip.cron
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-wget -q http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz -O /tmp/GeoIP.dat.gz && gunzip /tmp/GeoIP.dat.gz && mv /tmp/GeoIP.dat /usr/share/GeoIP
-wget -q http://geolite.maxmind.com/download/geoip/database/GeoIPv6.dat.gz -O /tmp/GeoIPv6.dat.gz && gunzip /tmp/GeoIPv6.dat.gz && mv /tmp/GeoIPv6.dat /usr/share/GeoIP
-wget -q http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz -O /tmp/GeoLiteCity.dat.gz && gunzip /tmp/GeoLiteCity.dat.gz && mv /tmp/GeoLiteCity.dat /usr/share/GeoIP
-wget -q http://geolite.maxmind.com/download/geoip/database/GeoLiteCityv6-beta/GeoLiteCityv6.dat.gz -O /tmp/GeoLiteCityv6.dat.gz && gunzip /tmp/GeoLiteCityv6.dat.gz && mv /tmp/GeoLiteCityv6.dat /usr/share/GeoIP
-wget -q http://geolite.maxmind.com/download/geoip/database/asnum/GeoIPASNum.dat.gz -O /tmp/GeoIPASNum.dat.gz && gunzip /tmp/GeoIPASNum.dat.gz && mv /tmp/GeoIPASNum.dat /usr/share/GeoIP
-wget -q http://geolite.maxmind.com/download/geoip/database/asnum/GeoIPASNumv6.dat.gz -O /tmp/GeoIPASNumv6.dat.gz && gunzip /tmp/GeoIPASNumv6.dat.gz && mv /tmp/GeoIPASNumv6.dat /usr/share/GeoIP
diff --git a/main/ghostscript/APKBUILD b/main/ghostscript/APKBUILD
index e28d935649..163864c6bd 100644
--- a/main/ghostscript/APKBUILD
+++ b/main/ghostscript/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Cameron Banta <cbanta@gmail.com>
pkgname=ghostscript
pkgver=9.54.0
-pkgrel=0
+pkgrel=1
pkgdesc="An interpreter for the PostScript language and for PDF"
url="https://ghostscript.com/"
arch="all"
@@ -13,11 +13,14 @@ makedepends="autoconf automake libjpeg-turbo-dev libpng-dev expat-dev
cups-dev libtool jbig2dec-dev openjpeg-dev"
subpackages="$pkgname-dbg $pkgname-doc $pkgname-dev $pkgname-gtk"
source="https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${pkgver//./}/ghostscript-$pkgver.tar.gz
+ CVE-2021-3781.patch
ghostscript-system-zlib.patch
fix-sprintf.patch
"
# secfixes:
+# 9.54-r1:
+# - CVE-2021-3781
# 9.51-r0:
# - CVE-2020-16287
# - CVE-2020-16288
@@ -155,6 +158,9 @@ gtk() {
mv "$pkgdir"/usr/bin/gsx "$subpkgdir"/usr/bin/
}
-sha512sums="93cfac3a754d4a7fa94112f3e04ba2ae633c40bb924734db72229096aac2f07c95877737f37f2bfef6be1b1d074af79e75cde3d589ea102def7f4654403e4804 ghostscript-9.54.0.tar.gz
+sha512sums="
+93cfac3a754d4a7fa94112f3e04ba2ae633c40bb924734db72229096aac2f07c95877737f37f2bfef6be1b1d074af79e75cde3d589ea102def7f4654403e4804 ghostscript-9.54.0.tar.gz
+26a625518b18433309ccf404cbe90e2240a75091ae8c38d197d5dce5e1ac7e3df73be83683b64de2d38f429ffa45cb3eda9ecf9388e40094a1ca84328457a8f4 CVE-2021-3781.patch
70721e3a335afa5e21d4e6cf919119010bd4544a03ab8f53f5325c173902221ad9b88c118b4bfeee80b3e1956bcdbaf4c53f64ae7fb81f5ba57dbc956750c482 ghostscript-system-zlib.patch
-beefcf395f7f828e1b81c088022c08a506e218f27535b9de01e0f0edf7979b435316c318fa676771630f6ad16ff1ab059cd68aa128ed97e5a9f2f3fa840200c4 fix-sprintf.patch"
+beefcf395f7f828e1b81c088022c08a506e218f27535b9de01e0f0edf7979b435316c318fa676771630f6ad16ff1ab059cd68aa128ed97e5a9f2f3fa840200c4 fix-sprintf.patch
+"
diff --git a/main/ghostscript/CVE-2021-3781.patch b/main/ghostscript/CVE-2021-3781.patch
new file mode 100644
index 0000000000..5c0f6bcb4e
--- /dev/null
+++ b/main/ghostscript/CVE-2021-3781.patch
@@ -0,0 +1,232 @@
+From a9bd3dec9fde03327a4a2c69dad1036bf9632e20 Mon Sep 17 00:00:00 2001
+From: Chris Liddell <chris.liddell@artifex.com>
+Date: Tue, 7 Sep 2021 20:36:12 +0100
+Subject: [PATCH] Bug 704342: Include device specifier strings in access
+ validation
+
+for the "%pipe%", %handle%" and %printer% io devices.
+
+We previously validated only the part after the "%pipe%" Postscript device
+specifier, but this proved insufficient.
+
+This rebuilds the original file name string, and validates it complete. The
+slight complication for "%pipe%" is it can be reached implicitly using
+"|" so we have to check both prefixes.
+
+Addresses CVE-2021-3781
+---
+ base/gdevpipe.c | 22 +++++++++++++++-
+ base/gp_mshdl.c | 11 +++++++-
+ base/gp_msprn.c | 10 ++++++-
+ base/gp_os2pr.c | 13 +++++++++-
+ base/gslibctx.c | 69 ++++++++++---------------------------------------
+ 5 files changed, 65 insertions(+), 60 deletions(-)
+
+diff --git a/base/gdevpipe.c b/base/gdevpipe.c
+index 96d71f5d8..5bdc485be 100644
+--- a/base/gdevpipe.c
++++ b/base/gdevpipe.c
+@@ -72,8 +72,28 @@ pipe_fopen(gx_io_device * iodev, const char *fname, const char *access,
+ #else
+ gs_lib_ctx_t *ctx = mem->gs_lib_ctx;
+ gs_fs_list_t *fs = ctx->core->fs;
++ /* The pipe device can be reached in two ways, explicltly with %pipe%
++ or implicitly with "|", so we have to check for both
++ */
++ char f[gp_file_name_sizeof];
++ const char *pipestr = "|";
++ const size_t pipestrlen = strlen(pipestr);
++ const size_t preflen = strlen(iodev->dname);
++ const size_t nlen = strlen(fname);
++ int code1;
++
++ if (preflen + nlen >= gp_file_name_sizeof)
++ return_error(gs_error_invalidaccess);
++
++ memcpy(f, iodev->dname, preflen);
++ memcpy(f + preflen, fname, nlen + 1);
++
++ code1 = gp_validate_path(mem, f, access);
++
++ memcpy(f, pipestr, pipestrlen);
++ memcpy(f + pipestrlen, fname, nlen + 1);
+
+- if (gp_validate_path(mem, fname, access) != 0)
++ if (code1 != 0 && gp_validate_path(mem, f, access) != 0 )
+ return gs_error_invalidfileaccess;
+
+ /*
+diff --git a/base/gp_mshdl.c b/base/gp_mshdl.c
+index 2b964ed74..8d87ceadc 100644
+--- a/base/gp_mshdl.c
++++ b/base/gp_mshdl.c
+@@ -95,8 +95,17 @@ mswin_handle_fopen(gx_io_device * iodev, const char *fname, const char *access,
+ long hfile; /* Correct for Win32, may be wrong for Win64 */
+ gs_lib_ctx_t *ctx = mem->gs_lib_ctx;
+ gs_fs_list_t *fs = ctx->core->fs;
++ char f[gp_file_name_sizeof];
++ const size_t preflen = strlen(iodev->dname);
++ const size_t nlen = strlen(fname);
+
+- if (gp_validate_path(mem, fname, access) != 0)
++ if (preflen + nlen >= gp_file_name_sizeof)
++ return_error(gs_error_invalidaccess);
++
++ memcpy(f, iodev->dname, preflen);
++ memcpy(f + preflen, fname, nlen + 1);
++
++ if (gp_validate_path(mem, f, access) != 0)
+ return gs_error_invalidfileaccess;
+
+ /* First we try the open_handle method. */
+diff --git a/base/gp_msprn.c b/base/gp_msprn.c
+index ed4827968..746a974f7 100644
+--- a/base/gp_msprn.c
++++ b/base/gp_msprn.c
+@@ -168,8 +168,16 @@ mswin_printer_fopen(gx_io_device * iodev, const char *fname, const char *access,
+ uintptr_t *ptid = &((tid_t *)(iodev->state))->tid;
+ gs_lib_ctx_t *ctx = mem->gs_lib_ctx;
+ gs_fs_list_t *fs = ctx->core->fs;
++ const size_t preflen = strlen(iodev->dname);
++ const size_t nlen = strlen(fname);
+
+- if (gp_validate_path(mem, fname, access) != 0)
++ if (preflen + nlen >= gp_file_name_sizeof)
++ return_error(gs_error_invalidaccess);
++
++ memcpy(pname, iodev->dname, preflen);
++ memcpy(pname + preflen, fname, nlen + 1);
++
++ if (gp_validate_path(mem, pname, access) != 0)
+ return gs_error_invalidfileaccess;
+
+ /* First we try the open_printer method. */
+diff --git a/base/gp_os2pr.c b/base/gp_os2pr.c
+index f852c71fc..ba54cde66 100644
+--- a/base/gp_os2pr.c
++++ b/base/gp_os2pr.c
+@@ -107,9 +107,20 @@ os2_printer_fopen(gx_io_device * iodev, const char *fname, const char *access,
+ FILE ** pfile, char *rfname, uint rnamelen)
+ {
+ os2_printer_t *pr = (os2_printer_t *)iodev->state;
+- char driver_name[256];
++ char driver_name[gp_file_name_sizeof];
+ gs_lib_ctx_t *ctx = mem->gs_lib_ctx;
+ gs_fs_list_t *fs = ctx->core->fs;
++ const size_t preflen = strlen(iodev->dname);
++ const int size_t = strlen(fname);
++
++ if (preflen + nlen >= gp_file_name_sizeof)
++ return_error(gs_error_invalidaccess);
++
++ memcpy(driver_name, iodev->dname, preflen);
++ memcpy(driver_name + preflen, fname, nlen + 1);
++
++ if (gp_validate_path(mem, driver_name, access) != 0)
++ return gs_error_invalidfileaccess;
+
+ /* First we try the open_printer method. */
+ /* Note that the loop condition here ensures we don't
+diff --git a/base/gslibctx.c b/base/gslibctx.c
+index 6dfed6cd5..318039fad 100644
+--- a/base/gslibctx.c
++++ b/base/gslibctx.c
+@@ -655,82 +655,39 @@ rewrite_percent_specifiers(char *s)
+ int
+ gs_add_outputfile_control_path(gs_memory_t *mem, const char *fname)
+ {
+- char *fp, f[gp_file_name_sizeof];
+- const int pipe = 124; /* ASCII code for '|' */
+- const int len = strlen(fname);
+- int i, code;
++ char f[gp_file_name_sizeof];
++ int code;
+
+ /* Be sure the string copy will fit */
+- if (len >= gp_file_name_sizeof)
++ if (strlen(fname) >= gp_file_name_sizeof)
+ return gs_error_rangecheck;
+ strcpy(f, fname);
+- fp = f;
+ /* Try to rewrite any %d (or similar) in the string */
+ rewrite_percent_specifiers(f);
+- for (i = 0; i < len; i++) {
+- if (f[i] == pipe) {
+- fp = &f[i + 1];
+- /* Because we potentially have to check file permissions at two levels
+- for the output file (gx_device_open_output_file and the low level
+- fopen API, if we're using a pipe, we have to add both the full string,
+- (including the '|', and just the command to which we pipe - since at
+- the pipe_fopen(), the leading '|' has been stripped.
+- */
+- code = gs_add_control_path(mem, gs_permit_file_writing, f);
+- if (code < 0)
+- return code;
+- code = gs_add_control_path(mem, gs_permit_file_control, f);
+- if (code < 0)
+- return code;
+- break;
+- }
+- if (!IS_WHITESPACE(f[i]))
+- break;
+- }
+- code = gs_add_control_path(mem, gs_permit_file_control, fp);
++
++ code = gs_add_control_path(mem, gs_permit_file_control, f);
+ if (code < 0)
+ return code;
+- return gs_add_control_path(mem, gs_permit_file_writing, fp);
++ return gs_add_control_path(mem, gs_permit_file_writing, f);
+ }
+
+ int
+ gs_remove_outputfile_control_path(gs_memory_t *mem, const char *fname)
+ {
+- char *fp, f[gp_file_name_sizeof];
+- const int pipe = 124; /* ASCII code for '|' */
+- const int len = strlen(fname);
+- int i, code;
++ char f[gp_file_name_sizeof];
++ int code;
+
+ /* Be sure the string copy will fit */
+- if (len >= gp_file_name_sizeof)
++ if (strlen(fname) >= gp_file_name_sizeof)
+ return gs_error_rangecheck;
+ strcpy(f, fname);
+- fp = f;
+ /* Try to rewrite any %d (or similar) in the string */
+- for (i = 0; i < len; i++) {
+- if (f[i] == pipe) {
+- fp = &f[i + 1];
+- /* Because we potentially have to check file permissions at two levels
+- for the output file (gx_device_open_output_file and the low level
+- fopen API, if we're using a pipe, we have to add both the full string,
+- (including the '|', and just the command to which we pipe - since at
+- the pipe_fopen(), the leading '|' has been stripped.
+- */
+- code = gs_remove_control_path(mem, gs_permit_file_writing, f);
+- if (code < 0)
+- return code;
+- code = gs_remove_control_path(mem, gs_permit_file_control, f);
+- if (code < 0)
+- return code;
+- break;
+- }
+- if (!IS_WHITESPACE(f[i]))
+- break;
+- }
+- code = gs_remove_control_path(mem, gs_permit_file_control, fp);
++ rewrite_percent_specifiers(f);
++
++ code = gs_remove_control_path(mem, gs_permit_file_control, f);
+ if (code < 0)
+ return code;
+- return gs_remove_control_path(mem, gs_permit_file_writing, fp);
++ return gs_remove_control_path(mem, gs_permit_file_writing, f);
+ }
+
+ int
+--
+2.17.1
+
diff --git a/main/git/APKBUILD b/main/git/APKBUILD
index aa2f01e515..fed7d43949 100644
--- a/main/git/APKBUILD
+++ b/main/git/APKBUILD
@@ -29,34 +29,29 @@
# - CVE-2021-29468
pkgname=git
-pkgver=2.32.0
-pkgrel=2
+pkgver=2.33.1
+pkgrel=0
pkgdesc="Distributed version control system"
url="https://www.git-scm.com/"
arch="all"
license="GPL-2.0-or-later"
# we need tcl and tk to be built before git due to git-gui and gitk
-makedepends="zlib-dev openssl-dev curl-dev expat-dev perl-dev python3-dev
- pcre2-dev asciidoc xmlto perl-error tcl tk"
+makedepends="zlib-dev openssl1.1-compat-dev curl-dev expat-dev perl-dev
+ pcre2-dev xmlto perl-error"
# note that order matters
-subpackages="$pkgname-doc
- $pkgname-dbg
+subpackages="$pkgname-dbg
$pkgname-bash-completion
perl-$pkgname-svn:_perl_git_svn:noarch
perl-$pkgname:_perl_git:noarch
- $pkgname-svn
+ $pkgname-svn::noarch
$pkgname-email
$pkgname-fast-import:_fast_import
$pkgname-cvs::noarch
- $pkgname-p4::noarch
$pkgname-daemon
$pkgname-daemon-openrc:daemon_openrc
$pkgname-gitweb::noarch
$pkgname-subtree::noarch
- $pkgname-subtree-doc:subtree_doc:noarch
$pkgname-perl:_git_perl:noarch
- $pkgname-gui::noarch
- $pkgname-gitk::noarch
$pkgname-diff-highlight:diff_highlight:noarch
"
source="https://www.kernel.org/pub/software/scm/git/git-$pkgver.tar.xz
@@ -67,6 +62,17 @@ source="https://www.kernel.org/pub/software/scm/git/git-$pkgver.tar.xz
_gitcoredir=/usr/libexec/git-core
+if [ -z "$BOOTSTRAP" ]; then
+ makedepends="$makedepends asciidoc python3-dev tcl tk"
+ subpackages="$subpackages
+ $pkgname-doc
+ $pkgname-p4::noarch
+ $pkgname-gui::noarch
+ $pkgname-gitk::noarch
+ $pkgname-subtree-doc:subtree_doc:noarch
+ "
+fi
+
prepare() {
default_prepare
@@ -81,12 +87,12 @@ prepare() {
PYTHON_PATH=/usr/bin/python3
EOF
- # The multimail hook is installed with git. Use python3 to avoid an
- # unnecessary python2 dependency.
- sed -i -e '1s@#!\( */usr/bin/env python\|%{__python2}\)$@#!%{__python3}@' \
- contrib/hooks/multimail/git_multimail.py \
- contrib/hooks/multimail/migrate-mailhook-config \
- contrib/hooks/multimail/post-receive.example
+ if [ -n "$BOOTSTRAP" ]; then
+ cat >> config.mak <<-EOF
+ NO_PYTHON=YesPlease
+ NO_TCLTK=YesPlease
+ EOF
+ fi
}
build() {
@@ -100,9 +106,15 @@ check() {
}
package() {
+ local install_man
+ install_man=install-man
+ if [ -n "$BOOTSTRAP" ]; then
+ install_man=""
+ fi
+
make prefix=/usr DESTDIR="$pkgdir" INSTALLDIRS=vendor \
perllibdir=$(_perl_config vendorlib) \
- install install-man
+ install $install_man
mkdir -p "$pkgdir"/var/git
@@ -283,7 +295,7 @@ _perl_config() {
}
sha512sums="
-1ab3e7022ccee411d14a7da5c37d6259ef5c0f85ebed8f49698e25c65cbc7a46f8096919fcb6568360bfe284dd7475b596eee1a167db966096255a405853837c git-2.32.0.tar.xz
+16d417183232e1057bea754d59cdf4bbacc5f1527d1de6ee04cdd293a2512bfa7208e20f6130816605528b59cb1bc3188c5bddf1a42c1413095ee74e44dd2f91 git-2.33.1.tar.xz
89528cdd14c51fd568aa61cf6c5eae08ea0844e59f9af9292da5fc6c268261f4166017d002d494400945e248df6b844e2f9f9cd2d9345d516983f5a110e4c42a git-daemon.initd
fbf1f425206a76e2a8f82342537ed939ff7e623d644c086ca2ced5f69b36734695f9f80ebda1728f75a94d6cd2fcb71bf845b64239368caab418e4d368c141ec git-daemon.confd
be5d568fc5b8b84c9afb97b31e471e41f32ccfe188eba0588ea0ef98b2d96c2ce4b2c1a3d70e88205aa4f6667f850b3f32c13bbb149ecddbf670344c162a4e25 fix-t4219-with-sticky-bit.patch
diff --git a/main/glib/APKBUILD b/main/glib/APKBUILD
index 710c40ec10..8af7d07c7e 100644
--- a/main/glib/APKBUILD
+++ b/main/glib/APKBUILD
@@ -3,8 +3,8 @@
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
pkgname=glib
-pkgver=2.68.3
-pkgrel=0
+pkgver=2.70.0
+pkgrel=1
pkgdesc="Common C routines used by Gtk+ and other libs"
url="https://developer.gnome.org/glib/"
arch="all"
@@ -67,8 +67,8 @@ static() {
}
sha512sums="
-fb120105c4cb582491a53a0e4c61fe4bdd1f94b279bb7c362afd591369ede50a196c706375564ededf3550d4062a285b038e20b605e6d5dfe36f5d208f4bad3f glib-2.68.3.tar.xz
+fd3fcaebd34aebe0e63f9dc915b2df026a3f88a5c2254e9f17beea0a59ab0ac563976fca54eb57bd2f7af183c4ae76fb86f05951216bf4159d258b5e7b29696f glib-2.70.0.tar.xz
32e5aca9a315fb985fafa0b4355e4498c1f877fc1f0b58ad4ac261fb9fbced9f026c7756a5f2af7d61ce756b55c8cd02811bb08df397040e93510056f073756b 0001-gquark-fix-initialization-with-c-constructors.patch
744239ea2afb47e15d5d0214c37d7c798edac53797ca3ac14d515aee4cc3999ef9716ba744c64c40198fb259edc922559f77c9051104a568fc8ee4fc790810b1 deprecated-no-warn.patch
-2211140fde86c9a80f67d0ce54dfd3e9e77d61dc14aa9d4c3df6f995582dde48b334622785f54b516cdc37f9cb27e3c75018f4134a72b519801ddd64078841b8 musl-libintl.patch
+64aa4dff14d68989fd7152ebf48aa6e8aa043f0b1c3a18193249dce9b506fe089008f21c0aa58b262e4dee8504407ea4788331ae22ba64b12fa5af5a9de174d6 musl-libintl.patch
"
diff --git a/main/glib/musl-libintl.patch b/main/glib/musl-libintl.patch
index 21646a20b2..fe3d4d4f48 100644
--- a/main/glib/musl-libintl.patch
+++ b/main/glib/musl-libintl.patch
@@ -1,21 +1,22 @@
diff --git a/meson.build b/meson.build
-index 8320449..1d05edd 100644
+index 319f183..3a5fdfc 100644
--- a/meson.build
+++ b/meson.build
-@@ -2003,9 +2003,6 @@
+@@ -2047,9 +2047,6 @@ endif
# FIXME: glib-gettext.m4 has much more checks to detect broken/uncompatible
# implementations. This could be extended if issues are found in some platforms.
libintl_deps = []
--if cc.has_function('ngettext')
+-if cc.has_function('ngettext', args : osx_ldflags)
- have_bind_textdomain_codeset = cc.has_function('bind_textdomain_codeset')
-else
# First just find the bare library.
libintl = cc.find_library('intl', required : false)
# The bare library probably won't link without help if it's static.
-@@ -2037,7 +2034,6 @@
- have_bind_textdomain_codeset = cc.has_function('bind_textdomain_codeset',
+@@ -2081,7 +2078,6 @@ else
+ have_bind_textdomain_codeset = cc.has_function('bind_textdomain_codeset', args : osx_ldflags,
dependencies : libintl_deps)
endif
-endif
glib_conf.set('HAVE_BIND_TEXTDOMAIN_CODESET', have_bind_textdomain_codeset)
+
diff --git a/main/glslang/APKBUILD b/main/glslang/APKBUILD
index edf70e806d..575b26bbab 100644
--- a/main/glslang/APKBUILD
+++ b/main/glslang/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Leo <thinkabit.ukim@gmail.com>
# Maintainer:
pkgname=glslang
-pkgver=8.13.3743
-pkgrel=1
+pkgver=11.6.0
+pkgrel=0
pkgdesc="Khronos reference front-end for GLSL, ESSL, and sample SPIR-V generator"
url="https://github.com/KhronosGroup/glslang"
arch="all"
@@ -12,8 +12,6 @@ makedepends="cmake samurai python3 bison spirv-tools-dev"
checkdepends="bash"
subpackages="$pkgname-static $pkgname-dev"
source="$pkgname-$pkgver.tar.gz::https://github.com/KhronosGroup/glslang/archive/$pkgver.tar.gz
- pkgconfig.patch
- default-resources.patch
"
build() {
@@ -28,7 +26,6 @@ build() {
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
- -DCMAKE_C_FLAGS="$CFLAGS" \
-DBUILD_SHARED_LIBS=ON \
$CMAKE_CROSSOPTS ..
ninja
@@ -64,6 +61,6 @@ package() {
DESTDIR="$pkgdir" ninja -C build-static install
}
-sha512sums="19169c4ffa511113978af8e8efc57b290d4aa962a4c2429dbea1af72204787c6ce20ffbbb452dc04bef5416e00510819d84463a2e76295b9a59b409e12af6792 glslang-8.13.3743.tar.gz
-9490ed637a8f4a032fb0e0d266843b4ffccedce5983de1f16f96348c7b8340d4d8791f3a6a247f53ef5ea256deecf674d8cf0030d77b7d7d396091aed5bbb404 pkgconfig.patch
-f526443c070fc3e4639cdec0a4876e5a75529af4cf41282ba23b0d9234434f764bf55b93aaaf7ed1de757193842f3d0b51437cf62c41d955dd86907fcc1a911e default-resources.patch"
+sha512sums="
+f7c1affdb4923758f9ff5cae894c40ca86e723850a6265d9c13f996311451bd84c70a178d8d6c0961dcee39c19d724f02d19a21ee6f67f1bb4cdbc618fdc12cf glslang-11.6.0.tar.gz
+"
diff --git a/main/glslang/default-resources.patch b/main/glslang/default-resources.patch
deleted file mode 100644
index 3ba35f34cc..0000000000
--- a/main/glslang/default-resources.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/glslang/CMakeLists.txt b/glslang/CMakeLists.txt
-index a0259a3..e34ab9e 100644
---- a/glslang/CMakeLists.txt
-+++ b/glslang/CMakeLists.txt
-@@ -86,6 +86,7 @@ add_library(glslang ${LIB_TYPE} ${BISON_GLSLParser_OUTPUT_SOURCE} ${SOURCES} ${H
- set_property(TARGET glslang PROPERTY FOLDER glslang)
- set_property(TARGET glslang PROPERTY POSITION_INDEPENDENT_CODE ON)
- target_link_libraries(glslang OGLCompiler OSDependent)
-+target_sources(glslang PRIVATE ${CMAKE_SOURCE_DIR}/StandAlone/ResourceLimits.cpp)
- target_include_directories(glslang PUBLIC
- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>
- $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
diff --git a/main/glslang/pkgconfig.patch b/main/glslang/pkgconfig.patch
deleted file mode 100644
index bd280475ef..0000000000
--- a/main/glslang/pkgconfig.patch
+++ /dev/null
@@ -1,143 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index a80cd5f..0fd15ca 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -87,6 +87,13 @@ endmacro(glslang_pch)
-
- project(glslang)
-
-+# using pkg-config to configure include paths and link libraries
-+include(FindPkgConfig)
-+pkg_check_modules(SPIRV_TOOLS REQUIRED SPIRV-Tools>=2019.2.1)
-+if(BUILD_SHARED_LIBS)
-+ pkg_check_modules(SPIRV_TOOLS_SHARED REQUIRED SPIRV-Tools-shared>=2019.2.1)
-+endif(BUILD_SHARED_LIBS)
-+
- if(ENABLE_CTEST)
- include(CTest)
- endif()
-@@ -175,11 +182,7 @@ if(BUILD_EXTERNAL AND IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/External)
- add_subdirectory(External)
- endif()
-
--if(NOT TARGET SPIRV-Tools-opt)
-- set(ENABLE_OPT OFF)
--endif()
--
--if(ENABLE_OPT)
-+if(${SPIRV_TOOLS_FOUND} EQUAL 1)
- message(STATUS "optimizer enabled")
- add_definitions(-DENABLE_OPT=1)
- else()
-diff --git a/External/CMakeLists.txt b/External/CMakeLists.txt
-index 6ff4f47..cfb48bd 100644
---- a/External/CMakeLists.txt
-+++ b/External/CMakeLists.txt
-@@ -35,10 +35,3 @@ if(BUILD_TESTING)
- endif()
- endif()
-
--if(ENABLE_OPT AND NOT TARGET SPIRV-Tools-opt)
-- if(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/spirv-tools)
-- set(SPIRV_SKIP_TESTS ON CACHE BOOL "Skip building SPIRV-Tools tests")
-- add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/spirv-tools spirv-tools)
-- endif()
--endif()
--
-diff --git a/SPIRV/CMakeLists.txt b/SPIRV/CMakeLists.txt
-index 439b991..494e21f 100755
---- a/SPIRV/CMakeLists.txt
-+++ b/SPIRV/CMakeLists.txt
-@@ -40,6 +40,10 @@ target_include_directories(SPIRV PUBLIC
- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>
- $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
-
-+
-+set(SPIRV_NAME spirv)
-+set(SPIRV_VERSION 1.5.1)
-+
- if (ENABLE_SPVREMAPPER)
- add_library(SPVRemapper ${LIB_TYPE} ${SPVREMAP_SOURCES} ${SPVREMAP_HEADERS})
- set_property(TARGET SPVRemapper PROPERTY FOLDER glslang)
-@@ -53,15 +57,21 @@ if(WIN32 AND BUILD_SHARED_LIBS)
- endif()
- endif()
-
-+target_include_directories(SPIRV PUBLIC ${SPIRV_TOOLS_INCLUDE_DIRS})
-+target_compile_options(SPIRV PUBLIC ${SPIRV_TOOLS_CFLAGS_OTHER})
-+target_link_libraries(SPIRV ${SPIRV_TOOLS_LIBRARIES})
-+if(BUILD_SHARED_LIBS)
-+ target_include_directories(SPIRV PUBLIC ${SPIRV_TOOLS_SHARED_INCLUDE_DIRS})
-+ target_compile_options(SPIRV PUBLIC ${SPIRV_TOOLS_SHARED_CFLAGS_OTHER})
-+ target_link_libraries(SPIRV ${SPIRV_TOOLS_SHARED_LIBRARIES})
-+endif(BUILD_SHARED_LIBS)
-+
- if(ENABLE_OPT)
- target_include_directories(SPIRV
- PRIVATE ${spirv-tools_SOURCE_DIR}/include
- PRIVATE ${spirv-tools_SOURCE_DIR}/source
- )
-- target_link_libraries(SPIRV glslang SPIRV-Tools-opt)
-- target_include_directories(SPIRV PUBLIC
-- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../External>
-- $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/External>)
-+ target_link_libraries(SPIRV glslang)
- else()
- target_link_libraries(SPIRV glslang)
- endif(ENABLE_OPT)
-diff --git a/SPIRV/SpvTools.cpp b/SPIRV/SpvTools.cpp
-index 97bd4e7..098cb84 100644
---- a/SPIRV/SpvTools.cpp
-+++ b/SPIRV/SpvTools.cpp
-@@ -43,8 +43,8 @@
- #include <iostream>
-
- #include "SpvTools.h"
--#include "spirv-tools/optimizer.hpp"
--#include "spirv-tools/libspirv.h"
-+#include <spirv-tools/optimizer.hpp>
-+#include <spirv-tools/libspirv.h>
-
- namespace glslang {
-
-diff --git a/StandAlone/CMakeLists.txt b/StandAlone/CMakeLists.txt
-index 2cf2899..c981c0a 100644
---- a/StandAlone/CMakeLists.txt
-+++ b/StandAlone/CMakeLists.txt
-@@ -23,6 +23,14 @@ if(ENABLE_SPVREMAPPER)
- set(LIBRARIES ${LIBRARIES} SPVRemapper)
- endif()
-
-+if(BUILD_SHARED_LIBS)
-+ set(LIBRARIES ${LIBRARIES} ${SPIRV_TOOLS_SHARED_LIBRARIES})
-+ target_include_directories(glslangValidator PUBLIC ${SPIRV_TOOLS_SHARED_INCLUDE_DIRS})
-+else()
-+ set(LIBRARIES ${LIBRARIES} ${SPIRV_TOOLS_LIBRARIES})
-+ target_include_directories(glslangValidator PUBLIC ${SPIRV_TOOLS_INCLUDE_DIRS})
-+endif(BUILD_SHARED_LIBS)
-+
- if(WIN32)
- set(LIBRARIES ${LIBRARIES} psapi)
- elseif(UNIX)
-@@ -32,9 +40,6 @@ elseif(UNIX)
- endif(WIN32)
-
- target_link_libraries(glslangValidator ${LIBRARIES})
--target_include_directories(glslangValidator PUBLIC
-- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../External>
-- $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/External>)
-
- if(ENABLE_SPVREMAPPER)
- set(REMAPPER_SOURCES spirv-remap.cpp)
-diff --git a/glslang/CMakeLists.txt b/glslang/CMakeLists.txt
-index a0259a3..dab067d 100644
---- a/glslang/CMakeLists.txt
-+++ b/glslang/CMakeLists.txt
-@@ -80,6 +80,7 @@ set(HEADERS
- MachineIndependent/preprocessor/PpContext.h
- MachineIndependent/preprocessor/PpTokens.h)
-
-+set(VERSION 8.13.3559)
- glslang_pch(SOURCES MachineIndependent/pch.cpp)
-
- add_library(glslang ${LIB_TYPE} ${BISON_GLSLParser_OUTPUT_SOURCE} ${SOURCES} ${HEADERS})
diff --git a/main/gnu-efi/0001-Initial-support-for-RISCV64.patch b/main/gnu-efi/0001-Initial-support-for-RISCV64.patch
deleted file mode 100644
index c5ba83e303..0000000000
--- a/main/gnu-efi/0001-Initial-support-for-RISCV64.patch
+++ /dev/null
@@ -1,636 +0,0 @@
-From b95f138fa1550040e68ac3dd34cfce7d148d7984 Mon Sep 17 00:00:00 2001
-From: Heinrich Schuchardt <xypron.glpk@gmx.de>
-Date: Fri, 19 Mar 2021 17:38:42 +0100
-Subject: [PATCH] Initial support for RISCV64
-
-Add the RISCV64 architecture
-
-Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
----
- Make.defaults | 2 +
- gnuefi/crt0-efi-riscv64.S | 136 +++++++++++++++++++++++++++++++++++++
- gnuefi/elf_riscv64_efi.lds | 77 +++++++++++++++++++++
- gnuefi/reloc_riscv64.c | 91 +++++++++++++++++++++++++
- inc/efi.h | 2 +
- inc/efilib.h | 2 +
- inc/efirtlib.h | 2 +
- inc/riscv64/efibind.h | 31 +++++++++
- inc/riscv64/efilibplat.h | 7 ++
- lib/Makefile | 2 +-
- lib/riscv64/initplat.c | 11 +++
- lib/riscv64/math.c | 62 +++++++++++++++++
- lib/riscv64/setjmp.S | 69 +++++++++++++++++++
- 13 files changed, 493 insertions(+), 1 deletion(-)
- create mode 100644 gnuefi/crt0-efi-riscv64.S
- create mode 100644 gnuefi/elf_riscv64_efi.lds
- create mode 100644 gnuefi/reloc_riscv64.c
- create mode 100644 inc/riscv64/efibind.h
- create mode 100644 inc/riscv64/efilibplat.h
- create mode 100644 lib/riscv64/initplat.c
- create mode 100644 lib/riscv64/math.c
- create mode 100644 lib/riscv64/setjmp.S
-
-diff --git a/Make.defaults b/Make.defaults
-index 5695b2a..47ed361 100755
---- a/Make.defaults
-+++ b/Make.defaults
-@@ -142,10 +142,12 @@ endif
- ifneq ($(ARCH),aarch64)
- ifneq ($(ARCH),arm)
- ifneq ($(ARCH),mips64el)
-+ifneq ($(ARCH),riscv64)
- export HAVE_EFI_OBJCOPY=y
- endif
- endif
- endif
-+endif
-
- ifneq ($(ARCH),arm)
- export LIBGCC=$(shell $(CC) $(ARCH3264) -print-libgcc-file-name)
-diff --git a/gnuefi/crt0-efi-riscv64.S b/gnuefi/crt0-efi-riscv64.S
-new file mode 100644
-index 0000000..f8949a7
---- /dev/null
-+++ b/gnuefi/crt0-efi-riscv64.S
-@@ -0,0 +1,136 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+/*
-+ * Copright (C) 2014 Linaro Ltd. <ard.biesheuvel@linaro.org>
-+ * Copright (C) 2018 Alexander Graf <agraf@suse.de>
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions
-+ * are met:
-+ * 1. Redistributions of source code must retain the above copyright
-+ * notice and this list of conditions, without modification.
-+ * 2. The name of the author may not be used to endorse or promote products
-+ * derived from this software without specific prior written permission.
-+ *
-+ * Alternatively, this software may be distributed under the terms of the
-+ * GNU General Public License as published by the Free Software Foundation;
-+ * either version 2 of the License, or (at your option) any later version.
-+ */
-+
-+#ifndef EFI_SUBSYSTEM
-+#define EFI_SUBSYSTEM 10
-+#endif
-+
-+ .section .text.head
-+
-+ /*
-+ * Magic "MZ" signature for PE/COFF
-+ */
-+ .globl ImageBase
-+ImageBase:
-+ .ascii "MZ"
-+ .skip 58 // 'MZ' + pad + offset == 64
-+ .long pe_header - ImageBase // Offset to the PE header.
-+pe_header:
-+ .ascii "PE"
-+ .short 0
-+coff_header:
-+ .short 0x5064 // riscv64
-+ .short 2 // nr_sections
-+ .long 0 // TimeDateStamp
-+ .long 0 // PointerToSymbolTable
-+ .long 1 // NumberOfSymbols
-+ .short section_table - optional_header // SizeOfOptionalHeader
-+ .short 0x206 // Characteristics.
-+ // IMAGE_FILE_DEBUG_STRIPPED |
-+ // IMAGE_FILE_EXECUTABLE_IMAGE |
-+ // IMAGE_FILE_LINE_NUMS_STRIPPED
-+optional_header:
-+ .short 0x20b // PE32+ format
-+ .byte 0x02 // MajorLinkerVersion
-+ .byte 0x14 // MinorLinkerVersion
-+ .long _data - _start // SizeOfCode
-+ .long _data_size // SizeOfInitializedData
-+ .long 0 // SizeOfUninitializedData
-+ .long _start - ImageBase // AddressOfEntryPoint
-+ .long _start - ImageBase // BaseOfCode
-+
-+extra_header_fields:
-+ .quad 0 // ImageBase
-+ .long 0x1000 // SectionAlignment
-+ .long 0x200 // FileAlignment
-+ .short 0 // MajorOperatingSystemVersion
-+ .short 0 // MinorOperatingSystemVersion
-+ .short 0 // MajorImageVersion
-+ .short 0 // MinorImageVersion
-+ .short 0 // MajorSubsystemVersion
-+ .short 0 // MinorSubsystemVersion
-+ .long 0 // Win32VersionValue
-+
-+ .long _edata - ImageBase // SizeOfImage
-+
-+ // Everything before the kernel image is considered part of the header
-+ .long _start - ImageBase // SizeOfHeaders
-+ .long 0 // CheckSum
-+ .short EFI_SUBSYSTEM // Subsystem
-+ .short 0 // DllCharacteristics
-+ .quad 0 // SizeOfStackReserve
-+ .quad 0 // SizeOfStackCommit
-+ .quad 0 // SizeOfHeapReserve
-+ .quad 0 // SizeOfHeapCommit
-+ .long 0 // LoaderFlags
-+ .long 0x6 // NumberOfRvaAndSizes
-+
-+ .quad 0 // ExportTable
-+ .quad 0 // ImportTable
-+ .quad 0 // ResourceTable
-+ .quad 0 // ExceptionTable
-+ .quad 0 // CertificationTable
-+ .quad 0 // BaseRelocationTable
-+
-+ // Section table
-+section_table:
-+ /*
-+ * The EFI application loader requires a relocation section
-+ * because EFI applications must be relocatable. This is a
-+ * dummy section as far as we are concerned.
-+ */
-+ .ascii ".reloc\0\0"
-+ .long 0
-+ .long 0
-+ .long 0 // SizeOfRawData
-+ .long 0 // PointerToRawData
-+ .long 0 // PointerToRelocations
-+ .long 0 // PointerToLineNumbers
-+ .short 0 // NumberOfRelocations
-+ .short 0 // NumberOfLineNumbers
-+ .long 0x42100040 // Characteristics (section flags)
-+
-+ .ascii ".text\0\0\0"
-+ .long _edata - _start // VirtualSize
-+ .long _start - ImageBase // VirtualAddress
-+ .long _edata - _start // SizeOfRawData
-+ .long _start - ImageBase // PointerToRawData
-+
-+ .long 0 // PointerToRelocations (0 for executables)
-+ .long 0 // PointerToLineNumbers (0 for executables)
-+ .short 0 // NumberOfRelocations (0 for executables)
-+ .short 0 // NumberOfLineNumbers (0 for executables)
-+ .long 0xe0500020 // Characteristics (section flags)
-+
-+ .align 12
-+ .globl _start
-+_start:
-+ addi sp, sp, -24
-+ sd a0, 0(sp)
-+ sd a1, 8(sp)
-+ sd ra, 16(sp)
-+ lla a0, ImageBase
-+ lla a1, _DYNAMIC
-+ call _relocate
-+ bne a0, zero, 0f
-+ ld a1, 8(sp)
-+ ld a0, 0(sp)
-+ call efi_main
-+ ld ra, 16(sp)
-+0: addi sp, sp, 24
-+ ret
-diff --git a/gnuefi/elf_riscv64_efi.lds b/gnuefi/elf_riscv64_efi.lds
-new file mode 100644
-index 0000000..bb64d81
---- /dev/null
-+++ b/gnuefi/elf_riscv64_efi.lds
-@@ -0,0 +1,77 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+
-+OUTPUT_FORMAT("elf64-littleriscv", "elf64-littleriscv", "elf64-littleriscv")
-+OUTPUT_ARCH(riscv)
-+ENTRY(_start)
-+SECTIONS {
-+.text 0x0 :
-+ {
-+ _text = .;
-+ *(.text.head)
-+ *(.text)
-+ *(.text.*)
-+ *(.gnu.linkonce.t.*)
-+ *(.srodata)
-+ *(.rodata*)
-+ . = ALIGN(16);
-+ }
-+ _etext = .;
-+ _text_size = . - _text;
-+.dynamic :
-+ { *(.dynamic) }
-+.data :
-+ ALIGN(4096)
-+ {
-+ _data = .;
-+ *(.sdata)
-+ *(.data)
-+ *(.data1)
-+ *(.data.*)
-+ *(.got.plt)
-+ *(.got)
-+
-+ /* the EFI loader doesn't seem to like a .bss section, so we stick
-+ it all into .data: */
-+ . = ALIGN(16);
-+ _bss = .;
-+ *(.sbss)
-+ *(.scommon)
-+ *(.dynbss)
-+ *(.bss)
-+ *(COMMON)
-+ . = ALIGN(16);
-+ _bss_end = .;
-+ }
-+
-+.rela.text :
-+ { *(.rela.text) *(.rela.text*) }
-+.rela.dyn :
-+ { *(.rela.dyn) }
-+.rela.plt :
-+ { *(.rela.plt) }
-+.rela.got :
-+ { *(.rela.got) }
-+.rela.data :
-+ { *(.rela.data) *(.rela.data*) }
-+ . = ALIGN(512);
-+ _edata = .;
-+ _data_size = . - _data;
-+
-+ . = ALIGN(4096);
-+.dynsym :
-+ { *(.dynsym) }
-+ . = ALIGN(4096);
-+.dynstr :
-+ { *(.dynstr) }
-+ . = ALIGN(4096);
-+.note.gnu.build-id :
-+ { *(.note.gnu.build-id) }
-+/DISCARD/ :
-+ {
-+ *(.rel.reloc)
-+ *(.eh_frame)
-+ *(.note.GNU-stack)
-+ }
-+.comment 0 :
-+ { *(.comment) }
-+}
-diff --git a/gnuefi/reloc_riscv64.c b/gnuefi/reloc_riscv64.c
-new file mode 100644
-index 0000000..73e8d13
---- /dev/null
-+++ b/gnuefi/reloc_riscv64.c
-@@ -0,0 +1,91 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/* reloc_riscv.c - position independent ELF shared object relocator
-+ Copyright (C) 2018 Alexander Graf <agraf@suse.de>
-+ Copyright (C) 2014 Linaro Ltd. <ard.biesheuvel@linaro.org>
-+ Copyright (C) 1999 Hewlett-Packard Co.
-+ Contributed by David Mosberger <davidm@hpl.hp.com>.
-+
-+ All rights reserved.
-+
-+ Redistribution and use in source and binary forms, with or without
-+ modification, are permitted provided that the following conditions
-+ are met:
-+
-+ * Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above
-+ copyright notice, this list of conditions and the following
-+ disclaimer in the documentation and/or other materials
-+ provided with the distribution.
-+ * Neither the name of Hewlett-Packard Co. nor the names of its
-+ contributors may be used to endorse or promote products derived
-+ from this software without specific prior written permission.
-+
-+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
-+ CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
-+ INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
-+ BE LIABLE FOR ANYDIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
-+ OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-+ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-+ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
-+ TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
-+ THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+ SUCH DAMAGE.
-+*/
-+
-+#include <efi.h>
-+
-+#include <elf.h>
-+
-+#define Elf_Dyn Elf64_Dyn
-+#define Elf_Rela Elf64_Rela
-+#define ELF_R_TYPE ELF64_R_TYPE
-+
-+EFI_STATUS EFIAPI _relocate(long ldbase, Elf_Dyn *dyn)
-+{
-+ long relsz = 0, relent = 0;
-+ Elf_Rela *rel = NULL;
-+ unsigned long *addr;
-+ int i;
-+
-+ for (i = 0; dyn[i].d_tag != DT_NULL; ++i) {
-+ switch (dyn[i].d_tag) {
-+ case DT_RELA:
-+ rel = (Elf_Rela *)((unsigned long)dyn[i].d_un.d_ptr + ldbase);
-+ break;
-+ case DT_RELASZ:
-+ relsz = dyn[i].d_un.d_val;
-+ break;
-+ case DT_RELAENT:
-+ relent = dyn[i].d_un.d_val;
-+ break;
-+ default:
-+ break;
-+ }
-+ }
-+
-+ if (!rel && relent == 0)
-+ return EFI_SUCCESS;
-+
-+ if (!rel || relent == 0)
-+ return EFI_LOAD_ERROR;
-+
-+ while (relsz > 0) {
-+ /* apply the relocs */
-+ switch (ELF_R_TYPE(rel->r_info)) {
-+ case R_RISCV_RELATIVE:
-+ addr = (unsigned long *)(ldbase + rel->r_offset);
-+ *addr = ldbase + rel->r_addend;
-+ break;
-+ default:
-+ /* Panic */
-+ while (1) ;
-+ }
-+ rel = (Elf_Rela *)((char *)rel + relent);
-+ relsz -= relent;
-+ }
-+ return EFI_SUCCESS;
-+}
-diff --git a/inc/efi.h b/inc/efi.h
-index bd99451..f87477b 100644
---- a/inc/efi.h
-+++ b/inc/efi.h
-@@ -50,6 +50,8 @@ Revision History
- #include "arm/efibind.h"
- #elif defined (_M_MIPS64) || defined(__mips64__)
- #include "mips64el/efibind.h"
-+#elif defined (__riscv) && __riscv_xlen == 64
-+#include "riscv64/efibind.h"
- #else
- #error Usupported architecture
- #endif
-diff --git a/inc/efilib.h b/inc/efilib.h
-index f7db4b6..73f8cc8 100644
---- a/inc/efilib.h
-+++ b/inc/efilib.h
-@@ -33,6 +33,8 @@ Revision History
- #include "arm/efilibplat.h"
- #elif defined (_M_MIPS64) || defined(__mips64__)
- #include "mips64el/efilibplat.h"
-+#elif defined (__riscv) && __riscv_xlen == 64
-+#include "riscv64/efilibplat.h"
- #endif
- #include "efilink.h"
- #include "efirtlib.h"
-diff --git a/inc/efirtlib.h b/inc/efirtlib.h
-index 5071493..8643061 100644
---- a/inc/efirtlib.h
-+++ b/inc/efirtlib.h
-@@ -32,6 +32,8 @@ Revision History
- #include "arm/efilibplat.h"
- #elif defined (_M_MIPS64) || defined(__mips64__)
- #include "mips64el/efilibplat.h"
-+#elif defined (__riscv) && __riscv_xlen == 64
-+#include "riscv64/efilibplat.h"
- #endif
-
-
-diff --git a/inc/riscv64/efibind.h b/inc/riscv64/efibind.h
-new file mode 100644
-index 0000000..40b9c20
---- /dev/null
-+++ b/inc/riscv64/efibind.h
-@@ -0,0 +1,31 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+
-+#include <stdint.h>
-+
-+#define EFIAPI
-+#define EFI_ERROR_MASK 0x8000000000000000
-+#define EFIERR(a) (EFI_ERROR_MASK | a)
-+#define INTERFACE_DECL(x) struct x
-+#define MIN_ALIGNMENT_SIZE 8
-+#define RUNTIMEFUNCTION
-+#define VOID void
-+
-+typedef uint8_t BOOLEAN;
-+typedef int64_t INTN;
-+typedef uint64_t UINTN;
-+typedef int8_t INT8;
-+typedef uint8_t UINT8;
-+typedef int16_t INT16;
-+typedef uint16_t UINT16;
-+typedef int32_t INT32;
-+typedef uint32_t UINT32;
-+typedef int64_t INT64;
-+typedef uint64_t UINT64;
-+typedef uint16_t WCHAR;
-+
-+#define BREAKPOINT() while(1);
-+#define uefi_call_wrapper(func, va_num, ...) func(__VA_ARGS__)
-+
-+#define EFI_SIGNATURE_16(A,B) ((A) | (B<<8))
-+#define EFI_SIGNATURE_32(A,B,C,D) (EFI_SIGNATURE_16(A,B) | (EFI_SIGNATURE_16(C,D) << 16))
-+#define EFI_SIGNATURE_64(A,B,C,D,E,F,G,H) (EFI_SIGNATURE_32(A,B,C,D) | ((UINT64)(EFI_SIGNATURE_32(E,F,G,H)) << 32))
-diff --git a/inc/riscv64/efilibplat.h b/inc/riscv64/efilibplat.h
-new file mode 100644
-index 0000000..0a61b24
---- /dev/null
-+++ b/inc/riscv64/efilibplat.h
-@@ -0,0 +1,7 @@
-+/* SPDX-License-Identifier: GPL-2.0+ */
-+
-+VOID
-+InitializeLibPlatform (
-+ IN EFI_HANDLE ImageHandle,
-+ IN EFI_SYSTEM_TABLE *SystemTable
-+ );
-diff --git a/lib/Makefile b/lib/Makefile
-index d0902ca..cf4239d 100644
---- a/lib/Makefile
-+++ b/lib/Makefile
-@@ -64,7 +64,7 @@ endif
-
- OBJS = $(FILES:%=%.o)
-
--SUBDIRS = ia32 x86_64 ia64 aarch64 arm mips64el runtime
-+SUBDIRS = ia32 x86_64 ia64 aarch64 arm mips64el riscv64 runtime
-
- LIBDIRINSTALL = $(INSTALLROOT)$(LIBDIR)
-
-diff --git a/lib/riscv64/initplat.c b/lib/riscv64/initplat.c
-new file mode 100644
-index 0000000..ed42037
---- /dev/null
-+++ b/lib/riscv64/initplat.c
-@@ -0,0 +1,11 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+
-+#include "lib.h"
-+
-+VOID
-+InitializeLibPlatform (
-+ IN EFI_HANDLE ImageHandle EFI_UNUSED,
-+ IN EFI_SYSTEM_TABLE *SystemTable EFI_UNUSED
-+ )
-+{
-+}
-diff --git a/lib/riscv64/math.c b/lib/riscv64/math.c
-new file mode 100644
-index 0000000..3653e42
---- /dev/null
-+++ b/lib/riscv64/math.c
-@@ -0,0 +1,62 @@
-+// SPDX-License-Identifier: BSD-2-Clause-Patent
-+/*
-+ * This code is based on EDK II MdePkg/Library/BaseLib/Math64.c
-+ * Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.
-+ */
-+
-+#include "lib.h"
-+
-+/**
-+ * LShiftU64() - left shift
-+ */
-+UINT64
-+LShiftU64 (
-+ IN UINT64 Operand,
-+ IN UINTN Count
-+)
-+{
-+ return Operand << Count;
-+}
-+
-+/**
-+ * RShiftU64() - right shift
-+ */
-+UINT64
-+RShiftU64 (
-+ IN UINT64 Operand,
-+ IN UINTN Count
-+)
-+{
-+ return Operand >> Count;
-+}
-+
-+/**
-+ * MultU64x32() - multiply
-+ */
-+UINT64
-+MultU64x32 (
-+ IN UINT64 Multiplicand,
-+ IN UINTN Multiplier
-+)
-+{
-+ return Multiplicand * Multiplier;
-+}
-+
-+/**
-+ * DivU64x32() - divide
-+ */
-+UINT64
-+DivU64x32 (
-+ IN UINT64 Dividend,
-+ IN UINTN Divisor,
-+ OUT UINTN *Remainder OPTIONAL
-+)
-+{
-+ ASSERT(Divisor != 0);
-+
-+ if (Remainder) {
-+ *Remainder = Dividend % Divisor;
-+ }
-+
-+ return Dividend / Divisor;
-+}
-diff --git a/lib/riscv64/setjmp.S b/lib/riscv64/setjmp.S
-new file mode 100644
-index 0000000..fa187d1
---- /dev/null
-+++ b/lib/riscv64/setjmp.S
-@@ -0,0 +1,69 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/*
-+ * Copyright Heinrich Schuchardt <xypron.glpk@gmx.de>
-+ */
-+
-+ .text
-+ .p2align 3
-+
-+#define GREG_LIST \
-+ REG_ONE(s0, 0); \
-+ REG_ONE(s1, 8); \
-+ REG_ONE(s2, 16); \
-+ REG_ONE(s3, 24); \
-+ REG_ONE(s4, 32); \
-+ REG_ONE(s5, 40); \
-+ REG_ONE(s6, 48); \
-+ REG_ONE(s7, 56); \
-+ REG_ONE(s8, 64); \
-+ REG_ONE(s9, 72); \
-+ REG_ONE(s10, 80); \
-+ REG_ONE(s11, 88); \
-+ REG_ONE(sp, 96); \
-+ REG_ONE(ra, 104);
-+
-+#define FREG_LIST \
-+ FREG_ONE(fs0, 112); \
-+ FREG_ONE(fs1, 120); \
-+ FREG_ONE(fs2, 128); \
-+ FREG_ONE(fs3, 136); \
-+ FREG_ONE(fs4, 144); \
-+ FREG_ONE(fs5, 152); \
-+ FREG_ONE(fs6, 160); \
-+ FREG_ONE(fs7, 168); \
-+ FREG_ONE(fs8, 176); \
-+ FREG_ONE(fs9, 184); \
-+ FREG_ONE(fs10, 192); \
-+ FREG_ONE(fs11, 200);
-+
-+#define REG_ONE(R, P) sd R, P(a0)
-+#define FREG_ONE(R, P) fsd R, P(a0)
-+
-+ .globl setjmp
-+ .type setjmp, @function
-+
-+setjmp:
-+ GREG_LIST
-+#ifndef __riscv_float_abi_soft
-+ FREG_LIST
-+#endif
-+ li a0, 0
-+ ret
-+
-+#undef REG_ONE
-+#undef FREG_ONE
-+
-+#define REG_ONE(R, P) ld R, P(a0)
-+#define FREG_ONE(R, P) fld R, P(a0)
-+
-+ .globl longjmp
-+ .type longjmp, @function
-+
-+longjmp:
-+ GREG_LIST
-+#ifndef __riscv_float_abi_soft
-+ FREG_LIST
-+#endif
-+ seqz a0, a1
-+ add a0, a0, a1
-+ ret
---
-2.30.2
-
diff --git a/main/gnu-efi/APKBUILD b/main/gnu-efi/APKBUILD
index e6683d5d65..29d9f25300 100644
--- a/main/gnu-efi/APKBUILD
+++ b/main/gnu-efi/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=gnu-efi
-pkgver=3.0.13
+pkgver=3.0.14
pkgrel=0
pkgdesc="Development Libraries and headers for EFI"
url="ftp://ftp.hpl.hp.com/pub/linux-ia64"
@@ -10,7 +10,6 @@ subpackages="$pkgname-dev"
depends_dev="$pkgname"
source="https://downloads.sourceforge.net/project/gnu-efi/gnu-efi-$pkgver.tar.bz2
no-werror.patch
- 0001-Initial-support-for-RISCV64.patch
"
build() {
@@ -21,6 +20,7 @@ package() {
make PREFIX=/usr INSTALLROOT="$pkgdir" install
}
-sha512sums="cda0e7c04d4fa8431b93dc7caa36e0a5e1076470dcdeae25f8bd08949c5d387647fdd9ca3db6b551766857e2c24ce3c6d95869d5dc5154128a2d3540d410e1eb gnu-efi-3.0.13.tar.bz2
+sha512sums="
+37420ba3804e8547451a7b143a689ceb6af0557234fa7801efdeba3c2fc581a5354fe34cbaacb338d7b394d913e7274098ebf07026b7c1d50b2236d7f86c470c gnu-efi-3.0.14.tar.bz2
f384597dc967cc9b1cf738d4002dc75847606c8ab10efbaf9e23844c767f5b9a33518374321b2ae5c5d7e4c9c3abaed996d0690ea81a7906355cabec1426d248 no-werror.patch
-4695f9bb719f8046472d6e0f5e59a83b22c55a98805ffc242730b9a9b494c4fd68b6268f1188203afa27af80d42c9df9731a158da3b85794444338e750136c40 0001-Initial-support-for-RISCV64.patch"
+"
diff --git a/main/gnupg/0010-avoid-beta-warning.patch b/main/gnupg/0010-avoid-beta-warning.patch
new file mode 100644
index 0000000000..2c3c873fe6
--- /dev/null
+++ b/main/gnupg/0010-avoid-beta-warning.patch
@@ -0,0 +1,46 @@
+From: Debian GnuPG Maintainers <pkg-gnupg-maint@lists.alioth.debian.org>
+Date: Tue, 14 Apr 2015 10:02:31 -0400
+Subject: avoid-beta-warning
+
+avoid self-describing as a beta
+
+Using autoreconf against the source as distributed in tarball form
+invariably results in a package that thinks it's a "beta" package,
+which produces the "THIS IS A DEVELOPMENT VERSION" warning string.
+
+since we use dh_autoreconf, i need this patch to avoid producing
+builds that announce themselves as DEVELOPMENT VERSIONs.
+
+See discussion at:
+
+ http://lists.gnupg.org/pipermail/gnupg-devel/2014-November/029065.html
+---
+ autogen.sh | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+Patch-Source: https://sources.debian.org/data/main/g/gnupg2/2.2.27-2/debian/patches/debian-packaging/avoid-beta-warning.patch
+
+diff --git a/autogen.sh b/autogen.sh
+index b238550..9b86d3f 100755
+--- a/autogen.sh
++++ b/autogen.sh
+@@ -229,7 +229,7 @@ if [ "$myhost" = "find-version" ]; then
+ esac
+
+ beta=no
+- if [ -e .git ]; then
++ if false; then
+ ingit=yes
+ tmp=$(git describe --match "${matchstr1}" --long 2>/dev/null)
+ tmp=$(echo "$tmp" | sed s/^"$package"//)
+@@ -245,8 +245,8 @@ if [ "$myhost" = "find-version" ]; then
+ rvd=$((0x$(echo ${rev} | dd bs=1 count=4 2>/dev/null)))
+ else
+ ingit=no
+- beta=yes
+- tmp="-unknown"
++ beta=no
++ tmp=""
+ rev="0000000"
+ rvd="0"
+ fi
diff --git a/main/gnupg/0020-avoid-regenerating-defsincdate-use-shipped-file.patch b/main/gnupg/0020-avoid-regenerating-defsincdate-use-shipped-file.patch
new file mode 100644
index 0000000000..2ce171a48b
--- /dev/null
+++ b/main/gnupg/0020-avoid-regenerating-defsincdate-use-shipped-file.patch
@@ -0,0 +1,41 @@
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Date: Mon, 29 Aug 2016 12:34:42 -0400
+Subject: avoid regenerating defsincdate (use shipped file)
+
+upstream ships doc/defsincdate in its tarballs. but doc/Makefile.am
+tries to rewrite doc/defsincdate if it notices that any of the files
+have been modified more recently, and it does so assuming that we're
+running from a git repo.
+
+However, we'd rather ship the documents cleanly without regenerating
+defsincdate -- we don't have a git repo available (debian builds from
+upstream tarballs) and any changes to the texinfo files (e.g. from
+debian/patches/) might result in different dates on the files than we
+expect after they're applied by dpkg or quilt or whatever, which makes
+the datestamp unreproducible.
+---
+ doc/Makefile.am | 9 ---------
+ 1 file changed, 9 deletions(-)
+
+Patch-Source: https://sources.debian.org/data/main/g/gnupg2/2.2.27-2/debian/patches/debian-packaging/avoid-regenerating-defsincdate-use-shipped-file.patch
+
+diff --git a/doc/Makefile.am b/doc/Makefile.am
+index 2b882c3..6be571b 100644
+--- a/doc/Makefile.am
++++ b/doc/Makefile.am
+@@ -178,15 +178,6 @@ $(myman_pages) gnupg.7 : yat2m-stamp defs.inc
+
+ dist-hook: defsincdate
+
+-defsincdate: $(gnupg_TEXINFOS)
+- : >defsincdate ; \
+- if test -e $(top_srcdir)/.git; then \
+- (cd $(srcdir) && git log -1 --format='%ct' \
+- -- $(gnupg_TEXINFOS) 2>/dev/null) >>defsincdate; \
+- elif test x"$$SOURCE_DATE_EPOCH" != x; then \
+- echo "$$SOURCE_DATE_EPOCH" >>defsincdate ; \
+- fi
+-
+ defs.inc : defsincdate Makefile mkdefsinc
+ incd="`test -f defsincdate || echo '$(srcdir)/'`defsincdate"; \
+ ./mkdefsinc -C $(srcdir) --date "`cat $$incd 2>/dev/null`" \
diff --git a/main/gnupg/0110-avoid-simple-memory-dumps-via-ptrace.patch b/main/gnupg/0110-avoid-simple-memory-dumps-via-ptrace.patch
new file mode 100644
index 0000000000..644b8a5283
--- /dev/null
+++ b/main/gnupg/0110-avoid-simple-memory-dumps-via-ptrace.patch
@@ -0,0 +1,91 @@
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Date: Tue, 11 Aug 2015 20:28:26 -0400
+Subject: Avoid simple memory dumps via ptrace
+
+This avoids needing to setgid gpg-agent. It probably doesn't defend
+against all possible attacks, but it defends against one specific (and
+easy) one. If there are other protections we should do them too.
+
+This will make it slightly harder to debug the agent because the
+normal user won't be able to attach gdb to it directly while it runs.
+
+The remaining options for debugging are:
+
+ * launch the agent from gdb directly
+ * connect gdb to a running agent as the superuser
+
+Upstream bug: https://dev.gnupg.org/T1211
+---
+ agent/gpg-agent.c | 8 ++++++++
+ configure.ac | 2 +-
+ scd/scdaemon.c | 9 +++++++++
+ 3 files changed, 18 insertions(+), 1 deletion(-)
+
+Patch-Source: https://sources.debian.org/data/main/g/gnupg2/2.2.27-2/debian/patches/block-ptrace-on-secret-daemons/Avoid-simple-memory-dumps-via-ptrace.patch
+
+diff --git a/agent/gpg-agent.c b/agent/gpg-agent.c
+index b167c34..5afcf11 100644
+--- a/agent/gpg-agent.c
++++ b/agent/gpg-agent.c
+@@ -50,6 +50,9 @@
+ # include <signal.h>
+ #endif
+ #include <npth.h>
++#ifdef HAVE_PRCTL
++# include <sys/prctl.h>
++#endif
+
+ #define INCLUDED_BY_MAIN_MODULE 1
+ #define GNUPG_COMMON_NEED_AFLOCAL
+@@ -1030,6 +1033,11 @@ main (int argc, char **argv )
+
+ early_system_init ();
+
++#if defined(HAVE_PRCTL) && defined(PR_SET_DUMPABLE)
++ /* Disable ptrace on Linux without sgid bit */
++ prctl(PR_SET_DUMPABLE, 0);
++#endif
++
+ /* Before we do anything else we save the list of currently open
+ file descriptors and the signal mask. This info is required to
+ do the exec call properly. We don't need it on Windows. */
+diff --git a/configure.ac b/configure.ac
+index 7a2d410..2d8b050 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1426,7 +1426,7 @@ AC_CHECK_FUNCS([atexit canonicalize_file_name clock_gettime ctermid \
+ ftruncate funlockfile getaddrinfo getenv getpagesize \
+ getpwnam getpwuid getrlimit getrusage gettimeofday \
+ gmtime_r inet_ntop inet_pton isascii lstat memicmp \
+- memmove memrchr mmap nl_langinfo pipe raise rand \
++ memmove memrchr mmap nl_langinfo pipe prctl raise rand \
+ setenv setlocale setrlimit sigaction sigprocmask \
+ stat stpcpy strcasecmp strerror strftime stricmp \
+ strlwr strncasecmp strpbrk strsep strtol strtoul \
+diff --git a/scd/scdaemon.c b/scd/scdaemon.c
+index 5c519f8..cab66a0 100644
+--- a/scd/scdaemon.c
++++ b/scd/scdaemon.c
+@@ -37,6 +37,9 @@
+ #include <unistd.h>
+ #include <signal.h>
+ #include <npth.h>
++#ifdef HAVE_PRCTL
++# include <sys/prctl.h>
++#endif
+
+ #define INCLUDED_BY_MAIN_MODULE 1
+ #define GNUPG_COMMON_NEED_AFLOCAL
+@@ -446,6 +449,12 @@ main (int argc, char **argv )
+ npth_t pipecon_handler;
+
+ early_system_init ();
++
++#if defined(HAVE_PRCTL) && defined(PR_SET_DUMPABLE)
++ /* Disable ptrace on Linux without sgid bit */
++ prctl(PR_SET_DUMPABLE, 0);
++#endif
++
+ set_strusage (my_strusage);
+ gcry_control (GCRYCTL_SUSPEND_SECMEM_WARN);
+ /* Please note that we may running SUID(ROOT), so be very CAREFUL
diff --git a/main/gnupg/0210-dirmngr-hkp-avoid-potential-race-condition-when-some-host-die.patch b/main/gnupg/0210-dirmngr-hkp-avoid-potential-race-condition-when-some-host-die.patch
new file mode 100644
index 0000000000..1aa79c6c38
--- /dev/null
+++ b/main/gnupg/0210-dirmngr-hkp-avoid-potential-race-condition-when-some-host-die.patch
@@ -0,0 +1,83 @@
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Date: Sat, 29 Oct 2016 01:25:05 -0400
+Subject: dirmngr: hkp: Avoid potential race condition when some hosts die.
+
+* dirmngr/ks-engine-hkp.c (select_random_host): Use atomic pass
+through the host table instead of risking out-of-bounds write.
+
+--
+
+Multiple threads may write to hosttable[x]->dead while
+select_random_host() is running. For example, a housekeeping thread
+might clear the ->dead bit on some entries, or another connection to
+dirmngr might manually mark a host as alive.
+
+If one or more hosts are resurrected between the two loops over a
+given table in select_random_host(), then the allocation of tbl might
+not be large enough, resulting in a write past the end of tbl on the
+second loop.
+
+This change collapses the two loops into a single loop to avoid this
+discrepancy: each host's "dead" bit is now only checked once.
+
+As Werner points out, this isn't currently strictly necessary, since
+npth will not switch threads unless a blocking system call is made,
+and no blocking system call is made in these two loops.
+
+However, in a subsequent change in this series, we will call a
+function in this loop, and that function may sometimes write(2), or
+call other functions, which may themselves block. Keeping this as a
+single-pass loop avoids the need to keep track of what might block and
+what might not.
+
+Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+---
+ dirmngr/ks-engine-hkp.c | 23 ++++++++++-------------
+ 1 file changed, 10 insertions(+), 13 deletions(-)
+
+Patch-Source: https://sources.debian.org/data/main/g/gnupg2/2.2.27-2/debian/patches/dirmngr-idling/dirmngr-hkp-Avoid-potential-race-condition-when-some.patch
+
+diff --git a/dirmngr/ks-engine-hkp.c b/dirmngr/ks-engine-hkp.c
+index 14859c7..d425363 100644
+--- a/dirmngr/ks-engine-hkp.c
++++ b/dirmngr/ks-engine-hkp.c
+@@ -225,29 +225,26 @@ host_in_pool_p (hostinfo_t hi, int tblidx)
+ static int
+ select_random_host (hostinfo_t hi)
+ {
+- int *tbl;
+- size_t tblsize;
++ int *tbl = NULL;
++ size_t tblsize = 0;
+ int pidx, idx;
+
+ /* We create a new table so that we randomly select only from
+ currently alive hosts. */
+- for (idx = 0, tblsize = 0;
++ for (idx = 0;
+ idx < hi->pool_len && (pidx = hi->pool[idx]) != -1;
+ idx++)
+ if (hosttable[pidx] && !hosttable[pidx]->dead)
+- tblsize++;
++ {
++ tblsize++;
++ tbl = xtryrealloc(tbl, tblsize * sizeof *tbl);
++ if (!tbl)
++ return -1; /* memory allocation failed! */
++ tbl[tblsize-1] = pidx;
++ }
+ if (!tblsize)
+ return -1; /* No hosts. */
+
+- tbl = xtrymalloc (tblsize * sizeof *tbl);
+- if (!tbl)
+- return -1;
+- for (idx = 0, tblsize = 0;
+- idx < hi->pool_len && (pidx = hi->pool[idx]) != -1;
+- idx++)
+- if (hosttable[pidx] && !hosttable[pidx]->dead)
+- tbl[tblsize++] = pidx;
+-
+ if (tblsize == 1) /* Save a get_uint_nonce. */
+ pidx = tbl[0];
+ else
diff --git a/main/gnupg/0220-dirmngr-avoid-need-for-hkp-housekeeping.patch b/main/gnupg/0220-dirmngr-avoid-need-for-hkp-housekeeping.patch
new file mode 100644
index 0000000000..0e125fd9b9
--- /dev/null
+++ b/main/gnupg/0220-dirmngr-avoid-need-for-hkp-housekeeping.patch
@@ -0,0 +1,232 @@
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Date: Sat, 29 Oct 2016 02:00:50 -0400
+Subject: dirmngr: Avoid need for hkp housekeeping.
+
+* dirmngr/ks-engine-hkp.c (host_is_alive): New function. Test whether
+host is alive and resurrects it if it has been dead long enough.
+(select_random_host, map_host, ks_hkp_mark_host): Use host_is_alive
+instead of testing hostinfo_t->dead directly.
+(ks_hkp_housekeeping): Remove function, no longer needed.
+* dirmngr/dirmngr.c (housekeeping_thread): Remove call to
+ks_hkp_housekeeping.
+
+--
+
+Rather than resurrecting hosts upon scheduled resurrection times, test
+whether hosts should be resurrected as they're inspected for being
+dead. This removes the need for explicit housekeeping, and makes host
+resurrections happen "just in time", rather than being clustered on
+HOUSEKEEPING_INTERVAL seconds.
+
+According to 392e068e9f143d41f6350345619543cbcd47380f,
+dns_stuff_housekeeping only works on Windows, so it also isn't
+necessary in debian, but it remains in place for now.
+
+Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+---
+ dirmngr/dirmngr.c | 3 ---
+ dirmngr/dirmngr.h | 1 -
+ dirmngr/ks-engine-hkp.c | 72 ++++++++++++++++++++++++-------------------------
+ 3 files changed, 35 insertions(+), 41 deletions(-)
+
+Patch-Source: https://sources.debian.org/data/main/g/gnupg2/2.2.27-2/debian/patches/dirmngr-idling/dirmngr-Avoid-need-for-hkp-housekeeping.patch
+
+diff --git a/dirmngr/dirmngr.c b/dirmngr/dirmngr.c
+index ae967dd..89eea4e 100644
+--- a/dirmngr/dirmngr.c
++++ b/dirmngr/dirmngr.c
+@@ -1935,12 +1935,10 @@ static void *
+ housekeeping_thread (void *arg)
+ {
+ static int sentinel;
+- time_t curtime;
+ struct server_control_s ctrlbuf;
+
+ (void)arg;
+
+- curtime = gnupg_get_time ();
+ if (sentinel)
+ {
+ log_info ("housekeeping is already going on\n");
+@@ -1954,7 +1952,6 @@ housekeeping_thread (void *arg)
+ dirmngr_init_default_ctrl (&ctrlbuf);
+
+ dns_stuff_housekeeping ();
+- ks_hkp_housekeeping (curtime);
+ if (network_activity_seen)
+ {
+ network_activity_seen = 0;
+diff --git a/dirmngr/dirmngr.h b/dirmngr/dirmngr.h
+index 1b52a1d..4afc19b 100644
+--- a/dirmngr/dirmngr.h
++++ b/dirmngr/dirmngr.h
+@@ -217,7 +217,6 @@ const char* dirmngr_get_current_socket_name (void);
+ int dirmngr_use_tor (void);
+
+ /*-- Various housekeeping functions. --*/
+-void ks_hkp_housekeeping (time_t curtime);
+ void ks_hkp_reload (void);
+
+
+diff --git a/dirmngr/ks-engine-hkp.c b/dirmngr/ks-engine-hkp.c
+index d425363..c50681d 100644
+--- a/dirmngr/ks-engine-hkp.c
++++ b/dirmngr/ks-engine-hkp.c
+@@ -218,6 +218,24 @@ host_in_pool_p (hostinfo_t hi, int tblidx)
+ return 0;
+ }
+
++static int
++host_is_alive (hostinfo_t hi, time_t curtime)
++{
++ if (!hi)
++ return 0;
++ if (!hi->dead)
++ return 1;
++ if (!hi->died_at)
++ return 0; /* manually marked dead */
++ if (hi->died_at + RESURRECT_INTERVAL <= curtime
++ || hi->died_at > curtime)
++ {
++ hi->dead = 0;
++ log_info ("resurrected host '%s'", hi->name);
++ return 1;
++ }
++ return 0;
++}
+
+ /* Select a random host. Consult HI->pool which indices into the global
+ hosttable. Returns index into HI->pool or -1 if no host could be
+@@ -228,13 +246,15 @@ select_random_host (hostinfo_t hi)
+ int *tbl = NULL;
+ size_t tblsize = 0;
+ int pidx, idx;
++ time_t curtime;
+
++ curtime = gnupg_get_time ();
+ /* We create a new table so that we randomly select only from
+ currently alive hosts. */
+ for (idx = 0;
+ idx < hi->pool_len && (pidx = hi->pool[idx]) != -1;
+ idx++)
+- if (hosttable[pidx] && !hosttable[pidx]->dead)
++ if (hosttable[pidx] && host_is_alive (hosttable[pidx], curtime))
+ {
+ tblsize++;
+ tbl = xtryrealloc(tbl, tblsize * sizeof *tbl);
+@@ -462,6 +482,7 @@ map_host (ctrl_t ctrl, const char *name, const char *srvtag, int force_reselect,
+ int is_pool;
+ int new_hosts = 0;
+ char *cname;
++ time_t curtime;
+
+ *r_host = NULL;
+ if (r_httpflags)
+@@ -501,6 +522,7 @@ map_host (ctrl_t ctrl, const char *name, const char *srvtag, int force_reselect,
+ }
+ else
+ hi = hosttable[idx];
++ curtime = gnupg_get_time ();
+
+ is_pool = hi->pool != NULL;
+
+@@ -607,7 +629,7 @@ map_host (ctrl_t ctrl, const char *name, const char *srvtag, int force_reselect,
+ if (force_reselect)
+ hi->poolidx = -1;
+ else if (hi->poolidx >= 0 && hi->poolidx < hosttable_size
+- && hosttable[hi->poolidx] && hosttable[hi->poolidx]->dead)
++ && hosttable[hi->poolidx] && !host_is_alive (hosttable[hi->poolidx], curtime))
+ hi->poolidx = -1;
+
+ /* Select a host if needed. */
+@@ -665,7 +687,7 @@ map_host (ctrl_t ctrl, const char *name, const char *srvtag, int force_reselect,
+ return gpg_error_from_syserror ();
+ }
+
+- if (hi->dead)
++ if (!host_is_alive (hi, curtime))
+ {
+ log_error ("host '%s' marked as dead\n", hi->name);
+ if (r_httphost)
+@@ -770,7 +792,8 @@ ks_hkp_mark_host (ctrl_t ctrl, const char *name, int alive)
+ {
+ gpg_error_t err = 0;
+ hostinfo_t hi, hi2;
+- int idx, idx2, idx3, n;
++ int idx, idx2, idx3, n, is_alive;
++ time_t curtime;
+
+ if (!name || !*name || !strcmp (name, "localhost"))
+ return 0;
+@@ -779,13 +802,15 @@ ks_hkp_mark_host (ctrl_t ctrl, const char *name, int alive)
+ if (idx == -1)
+ return gpg_error (GPG_ERR_NOT_FOUND);
+
++ curtime = gnupg_get_time ();
+ hi = hosttable[idx];
+- if (alive && hi->dead)
++ is_alive = host_is_alive (hi, curtime);
++ if (alive && !is_alive)
+ {
+ hi->dead = 0;
+ err = ks_printf_help (ctrl, "marking '%s' as alive", name);
+ }
+- else if (!alive && !hi->dead)
++ else if (!alive && is_alive)
+ {
+ hi->dead = 1;
+ hi->died_at = 0; /* Manually set dead. */
+@@ -819,14 +844,15 @@ ks_hkp_mark_host (ctrl_t ctrl, const char *name, int alive)
+
+ hi2 = hosttable[n];
+ if (!hi2)
+- ;
+- else if (alive && hi2->dead)
++ continue;
++ is_alive = host_is_alive (hi2, curtime);
++ if (alive && !is_alive)
+ {
+ hi2->dead = 0;
+ err = ks_printf_help (ctrl, "marking '%s' as alive",
+ hi2->name);
+ }
+- else if (!alive && !hi2->dead)
++ else if (!alive && is_alive)
+ {
+ hi2->dead = 1;
+ hi2->died_at = 0; /* Manually set dead. */
+@@ -1112,34 +1138,6 @@ ks_hkp_resolve (ctrl_t ctrl, parsed_uri_t uri)
+ }
+
+
+-/* Housekeeping function called from the housekeeping thread. It is
+- used to mark dead hosts alive so that they may be tried again after
+- some time. */
+-void
+-ks_hkp_housekeeping (time_t curtime)
+-{
+- int idx;
+- hostinfo_t hi;
+-
+- for (idx=0; idx < hosttable_size; idx++)
+- {
+- hi = hosttable[idx];
+- if (!hi)
+- continue;
+- if (!hi->dead)
+- continue;
+- if (!hi->died_at)
+- continue; /* Do not resurrect manually shot hosts. */
+- if (hi->died_at + RESURRECT_INTERVAL <= curtime
+- || hi->died_at > curtime)
+- {
+- hi->dead = 0;
+- log_info ("resurrected host '%s'", hi->name);
+- }
+- }
+-}
+-
+-
+ /* Reload (SIGHUP) action for this module. We mark all host alive
+ * even those which have been manually shot. */
+ void
diff --git a/main/gnupg/0230-dirmngr-avoid-automatically-checking-upstream-swdb.patch b/main/gnupg/0230-dirmngr-avoid-automatically-checking-upstream-swdb.patch
new file mode 100644
index 0000000000..8ffd8973e3
--- /dev/null
+++ b/main/gnupg/0230-dirmngr-avoid-automatically-checking-upstream-swdb.patch
@@ -0,0 +1,51 @@
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Sun, 20 Nov 2016 23:09:24 -0500
+Date: Wed, 18 Aug 2021 21:08:20 +0200
+Subject: dirmngr: Avoid automatically checking upstream swdb.
+
+* dirmngr/dirmngr.c (housekeeping_thread): Avoid automatically
+checking upstream's software database. In Debian, software updates
+should be handled by the distro mechanism, and additional upstream
+checks only confuse the user.
+* doc/dirmngr.texi: document that --allow-version-check does nothing.
+
+Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+---
+ dirmngr/dirmngr.c | 2 --
+ doc/dirmngr.texi | 7 ++++---
+ 2 files changed, 4 insertions(+), 5 deletions(-)
+
+Patch-Source: https://sources.debian.org/data/main/g/gnupg2/2.2.27-2/debian/patches/dirmngr-idling/dirmngr-Avoid-automatically-checking-upstream-swdb.patch
+
+diff --git a/dirmngr/dirmngr.c b/dirmngr/dirmngr.c
+index 89eea4e..f26ed63 100644
+--- a/dirmngr/dirmngr.c
++++ b/dirmngr/dirmngr.c
+@@ -1955,8 +1955,6 @@ housekeeping_thread (void *arg)
+ if (network_activity_seen)
+ {
+ network_activity_seen = 0;
+- if (opt.allow_version_check)
+- dirmngr_load_swdb (&ctrlbuf, 0);
+ workqueue_run_global_tasks (&ctrlbuf, 1);
+ }
+ else
+diff --git a/doc/dirmngr.texi b/doc/dirmngr.texi
+index 843fdbf..84a8d28 100644
+--- a/doc/dirmngr.texi
++++ b/doc/dirmngr.texi
+@@ -291,9 +291,10 @@ Set the size of the queue for pending connections. The default is 64.
+ @item --allow-version-check
+ @opindex allow-version-check
+ Allow Dirmngr to connect to @code{https://versions.gnupg.org} to get
+-the list of current software versions. If this option is enabled
+-the list is retrieved in case the local
+-copy does not exist or is older than 5 to 7 days. See the option
++the list of current software versions.
++On Alpine-packaged versions, this option does nothing since software
++updates should be handled by the distribution.
++See the option
+ @option{--query-swdb} of the command @command{gpgconf} for more
+ details. Note, that regardless of this option a version check can
+ always be triggered using this command:
diff --git a/main/gnupg/0310-gpg-default-to-3072-bit-keys.patch b/main/gnupg/0310-gpg-default-to-3072-bit-keys.patch
new file mode 100644
index 0000000000..e04f480370
--- /dev/null
+++ b/main/gnupg/0310-gpg-default-to-3072-bit-keys.patch
@@ -0,0 +1,93 @@
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Date: Thu, 7 Sep 2017 18:41:10 -0400
+Subject: gpg: default to 3072-bit keys.
+
+* agent/command.c (hlp_genkey): update help text to suggest the use of
+3072 bits.
+* doc/wks.texi: Make example match default generation.
+* g10/keygen.c (gen_elg): update default from 2048 to 3072.
+* g10/keyid.c (pubkey_string): update comment so that first example
+is the default 3072-bit RSA.
+
+--
+
+3072-bit RSA is widely considered to be 128-bit-equivalent security.
+This is a sensible default in 2017.
+
+Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+
+(cherry picked from commit 909fbca19678e6e36968607e8a2348381da39d8c)
+---
+ agent/command.c | 2 +-
+ doc/wks.texi | 4 ++--
+ g10/keygen.c | 2 +-
+ g10/keyid.c | 4 ++--
+ 4 files changed, 6 insertions(+), 6 deletions(-)
+
+Patch-Source: https://sources.debian.org/data/main/g/gnupg2/2.2.27-2/debian/patches/from-master/gpg-default-to-3072-bit-keys.patch
+
+diff --git a/agent/command.c b/agent/command.c
+index 8642498..f94e770 100644
+--- a/agent/command.c
++++ b/agent/command.c
+@@ -843,7 +843,7 @@ static const char hlp_genkey[] =
+ "\n"
+ " C: GENKEY\n"
+ " S: INQUIRE KEYPARAM\n"
+- " C: D (genkey (rsa (nbits 2048)))\n"
++ " C: D (genkey (rsa (nbits 3072)))\n"
+ " C: END\n"
+ " S: D (public-key\n"
+ " S: D (rsa (n 326487324683264) (e 10001)))\n"
+diff --git a/doc/wks.texi b/doc/wks.texi
+index 119e31c..ae6c310 100644
+--- a/doc/wks.texi
++++ b/doc/wks.texi
+@@ -412,10 +412,10 @@ the submission address:
+ The output of the last command looks similar to this:
+
+ @example
+- sec rsa2048 2016-08-30 [SC]
++ sec rsa3072 2016-08-30 [SC]
+ C0FCF8642D830C53246211400346653590B3795B
+ uid [ultimate] key-submission@@example.net
+- ssb rsa2048 2016-08-30 [E]
++ ssb rsa3072 2016-08-30 [E]
+ @end example
+
+ Take the fingerprint from that output and manually publish the key:
+diff --git a/g10/keygen.c b/g10/keygen.c
+index d50acf8..79d4579 100644
+--- a/g10/keygen.c
++++ b/g10/keygen.c
+@@ -1436,7 +1436,7 @@ gen_elg (int algo, unsigned int nbits, KBNODE pub_root,
+
+ if (nbits < 1024)
+ {
+- nbits = 2048;
++ nbits = 3072;
+ log_info (_("keysize invalid; using %u bits\n"), nbits );
+ }
+ else if (nbits > 4096)
+diff --git a/g10/keyid.c b/g10/keyid.c
+index 69d85da..2987287 100644
+--- a/g10/keyid.c
++++ b/g10/keyid.c
+@@ -73,7 +73,7 @@ pubkey_letter( int algo )
+ is copied to the supplied buffer up a length of BUFSIZE-1.
+ Examples for the output are:
+
+- "rsa2048" - RSA with 2048 bit
++ "rsa3072" - RSA with 3072 bit
+ "elg1024" - Elgamal with 1024 bit
+ "ed25519" - ECC using the curve Ed25519.
+ "E_1.2.3.4" - ECC using the unsupported curve with OID "1.2.3.4".
+@@ -83,7 +83,7 @@ pubkey_letter( int algo )
+ If the option --legacy-list-mode is active, the output use the
+ legacy format:
+
+- "2048R" - RSA with 2048 bit
++ "3072R" - RSA with 3072 bit
+ "1024g" - Elgamal with 1024 bit
+ "256E" - ECDSA using a curve with 256 bit
+
diff --git a/main/gnupg/0320-gpg-default-to-aes256.patch b/main/gnupg/0320-gpg-default-to-aes256.patch
new file mode 100644
index 0000000000..2d9a90fe37
--- /dev/null
+++ b/main/gnupg/0320-gpg-default-to-aes256.patch
@@ -0,0 +1,37 @@
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Date: Thu, 7 Sep 2017 19:04:00 -0400
+Subject: gpg: default to AES-256.
+
+* g10/main.h (DEFAULT_CIPHER_ALGO): Prefer AES256 by default.
+
+--
+
+It's 2017, and pretty much everyone has AES-256 available. Symmetric
+crypto is also rarely the bottleneck (asymmetric crypto is much more
+expensive). AES-256 provides some level of protection against
+large-scale decryption efforts, and longer key lengths provide a hedge
+against unforseen cryptanalysis.
+
+Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+(cherry picked from commit 73ff075204df09db5248170a049f06498cdbb7aa)
+---
+ g10/main.h | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+Patch-Source: https://sources.debian.org/data/main/g/gnupg2/2.2.27-2/debian/patches/from-master/gpg-default-to-AES-256.patch
+
+diff --git a/g10/main.h b/g10/main.h
+index 68360e2..1983e42 100644
+--- a/g10/main.h
++++ b/g10/main.h
+@@ -31,7 +31,9 @@
+ (i.e. uncompressed) rather than 1 (zip). However, the real world
+ issues of speed and size come into play here. */
+
+-#if GPG_USE_AES128
++#if GPG_USE_AES256
++# define DEFAULT_CIPHER_ALGO CIPHER_ALGO_AES256
++#elif GPG_USE_AES128
+ # define DEFAULT_CIPHER_ALGO CIPHER_ALGO_AES
+ #elif GPG_USE_CAST5
+ # define DEFAULT_CIPHER_ALGO CIPHER_ALGO_CAST5
diff --git a/main/gnupg/0330-gpg-default-to-sha512-for-all-signature-types-on-rsa-keys.patch b/main/gnupg/0330-gpg-default-to-sha512-for-all-signature-types-on-rsa-keys.patch
new file mode 100644
index 0000000000..75c5b73a60
--- /dev/null
+++ b/main/gnupg/0330-gpg-default-to-sha512-for-all-signature-types-on-rsa-keys.patch
@@ -0,0 +1,66 @@
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Date: Thu, 7 Sep 2017 18:49:35 -0400
+Subject: gpg: Default to SHA-512 for all signature types on RSA keys.
+
+* g10/main.h (DEFAULT_DIGEST_ALGO): Use SHA512 instead of SHA256 in
+--gnupg mode (leave strict RFC and PGP modes alone).
+* configure.ac: Do not allow disabling sha512.
+* g10/misc.c (map_md_openpgp_to_gcry): Always support SHA512.
+
+--
+
+SHA512 is more performant on most 64-bit platforms than SHA256, and
+offers a better security margin. It is also widely implemented.
+
+Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+---
+ configure.ac | 2 +-
+ g10/main.h | 2 +-
+ g10/misc.c | 5 +----
+ 3 files changed, 3 insertions(+), 6 deletions(-)
+
+Patch-Source: https://sources.debian.org/data/main/g/gnupg2/2.2.27-2/debian/patches/update-defaults/gpg-Default-to-SHA-512-for-all-signature-types-on-RS.patch
+
+diff --git a/configure.ac b/configure.ac
+index 2d8b050..4b9d908 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -317,7 +317,7 @@ GNUPG_GPG_DISABLE_ALGO([rmd160],[RIPE-MD160 hash])
+ GNUPG_GPG_DISABLE_ALGO([sha224],[SHA-224 hash])
+ # SHA256 is a MUST algorithm for GnuPG.
+ GNUPG_GPG_DISABLE_ALGO([sha384],[SHA-384 hash])
+-GNUPG_GPG_DISABLE_ALGO([sha512],[SHA-512 hash])
++# SHA512 is a MUST algorithm for GnuPG.
+
+
+ # Allow disabling of zip support.
+diff --git a/g10/main.h b/g10/main.h
+index 1983e42..388eae3 100644
+--- a/g10/main.h
++++ b/g10/main.h
+@@ -41,7 +41,7 @@
+ # define DEFAULT_CIPHER_ALGO CIPHER_ALGO_3DES
+ #endif
+
+-#define DEFAULT_DIGEST_ALGO ((GNUPG)? DIGEST_ALGO_SHA256:DIGEST_ALGO_SHA1)
++#define DEFAULT_DIGEST_ALGO ((GNUPG)? DIGEST_ALGO_SHA512:DIGEST_ALGO_SHA1)
+ #define DEFAULT_S2K_DIGEST_ALGO DIGEST_ALGO_SHA1
+ #ifdef HAVE_ZIP
+ # define DEFAULT_COMPRESS_ALGO COMPRESS_ALGO_ZIP
+diff --git a/g10/misc.c b/g10/misc.c
+index 634d303..6fc2d58 100644
+--- a/g10/misc.c
++++ b/g10/misc.c
+@@ -849,11 +849,8 @@ map_md_openpgp_to_gcry (digest_algo_t algo)
+ case DIGEST_ALGO_SHA384: return 0;
+ #endif
+
+-#ifdef GPG_USE_SHA512
+ case DIGEST_ALGO_SHA512: return GCRY_MD_SHA512;
+-#else
+- case DIGEST_ALGO_SHA512: return 0;
+-#endif
++
+ default: return 0;
+ }
+ }
diff --git a/main/gnupg/0340-gpg-prefer-sha512-and-sha384-in-personal-digest.patch b/main/gnupg/0340-gpg-prefer-sha512-and-sha384-in-personal-digest.patch
new file mode 100644
index 0000000000..bac31b3f03
--- /dev/null
+++ b/main/gnupg/0340-gpg-prefer-sha512-and-sha384-in-personal-digest.patch
@@ -0,0 +1,48 @@
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Date: Wed, 3 Jan 2018 12:34:26 -0500
+Subject: gpg: Prefer SHA-512 and SHA-384 in personal-digest-preferences.
+
+* g10/keygen.c (keygen_set_std_prefs): prefer SHA-512
+and SHA-384 by default.
+
+--
+
+In 8ede3ae29a39641a2f98ad9a4cf61ea99085a892, upstream changed the
+defaults for --default-preference-list to advertise a preference for
+SHA-512, without touching --personal-digest-preferences. This makes
+the same change for --personal-digest-preferences, since every modern
+OpenPGP library supports them all.
+
+Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+---
+ g10/keygen.c | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+Patch-Source: https://sources.debian.org/data/main/g/gnupg2/2.2.27-2/debian/patches/update-defaults/gpg-Prefer-SHA-512-and-SHA-384-in-personal-digest.patch
+
+diff --git a/g10/keygen.c b/g10/keygen.c
+index 79d4579..cb92468 100644
+--- a/g10/keygen.c
++++ b/g10/keygen.c
+@@ -391,16 +391,16 @@ keygen_set_std_prefs (const char *string,int personal)
+ if (personal)
+ {
+ /* The default internal hash algo order is:
+- * SHA-256, SHA-384, SHA-512, SHA-224, SHA-1.
++ * SHA-512, SHA-384, SHA-256, SHA-224, SHA-1.
+ */
+- if (!openpgp_md_test_algo (DIGEST_ALGO_SHA256))
+- strcat (dummy_string, "H8 ");
++ if (!openpgp_md_test_algo (DIGEST_ALGO_SHA512))
++ strcat (dummy_string, "H10 ");
+
+ if (!openpgp_md_test_algo (DIGEST_ALGO_SHA384))
+ strcat (dummy_string, "H9 ");
+
+- if (!openpgp_md_test_algo (DIGEST_ALGO_SHA512))
+- strcat (dummy_string, "H10 ");
++ if (!openpgp_md_test_algo (DIGEST_ALGO_SHA256))
++ strcat (dummy_string, "H8 ");
+ }
+ else
+ {
diff --git a/main/gnupg/0410-make-gpg-zip-use-tar-from-path.patch b/main/gnupg/0410-make-gpg-zip-use-tar-from-path.patch
new file mode 100644
index 0000000000..b0d619e9cd
--- /dev/null
+++ b/main/gnupg/0410-make-gpg-zip-use-tar-from-path.patch
@@ -0,0 +1,29 @@
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Date: Sun, 18 Nov 2018 17:29:52 -0500
+Subject: Make gpg-zip use tar from $PATH
+
+Apparently there is no clean way to configure this from ./configure,
+and upstream is deprecating gpg-zip anyway. So just force-set tar to
+be manually "tar" (meaning, that we should look in the $PATH at
+runtime).
+
+See also https://dev.gnupg.org/T4251 and https://bugs.debian.org/913582
+---
+ tools/gpg-zip.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Patch-Source: https://sources.debian.org/data/main/g/gnupg2/2.2.27-2/debian/patches/Make-gpg-zip-use-tar-from-PATH.patch
+
+diff --git a/tools/gpg-zip.in b/tools/gpg-zip.in
+index 9047e36..3821f3a 100644
+--- a/tools/gpg-zip.in
++++ b/tools/gpg-zip.in
+@@ -23,7 +23,7 @@
+ # the GNU or POSIX variant of USTAR.
+
+ VERSION=@VERSION@
+-TAR=@TAR@
++TAR=tar
+ GPG=gpg
+
+ usage="\
diff --git a/main/gnupg/0420-gpg-drop-import-clean-from-default-keyserver-import-options.patch b/main/gnupg/0420-gpg-drop-import-clean-from-default-keyserver-import-options.patch
new file mode 100644
index 0000000000..46f23160ef
--- /dev/null
+++ b/main/gnupg/0420-gpg-drop-import-clean-from-default-keyserver-import-options.patch
@@ -0,0 +1,51 @@
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Date: Mon, 15 Jul 2019 16:24:35 -0400
+Subject: gpg: drop import-clean from default keyserver import options
+
+* g10/gpg.c (main): drop IMPORT_CLEAN from the
+default opt.keyserver_options.import_options
+* doc/gpg.texi: reflect this change in the documentation
+
+Given that SELF_SIGS_ONLY is already set, it's not clear what
+additional benefit IMPORT_CLEAN provides. Furthermore, IMPORT_CLEAN
+means that receiving an OpenPGP certificate from a keyserver will
+potentially delete data that is otherwise held in the local keyring,
+which is surprising to users who expect retrieval from the keyservers
+to be purely additive.
+
+GnuPG-Bug-Id: 4628
+Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+---
+ doc/gpg.texi | 2 +-
+ g10/gpg.c | 3 +--
+ 2 files changed, 2 insertions(+), 3 deletions(-)
+
+Patch-Source: https://sources.debian.org/data/main/g/gnupg2/2.2.27-2/debian/patches/gpg-drop-import-clean-from-default-keyserver-import-optio.patch
+
+diff --git a/doc/gpg.texi b/doc/gpg.texi
+index 7b603d7..104318a 100644
+--- a/doc/gpg.texi
++++ b/doc/gpg.texi
+@@ -1982,7 +1982,7 @@ are available for all keyserver types, some common options are:
+
+ @end table
+
+-The default list of options is: "self-sigs-only, import-clean,
++The default list of options is: "self-sigs-only,
+ repair-keys, repair-pks-subkey-bug, export-attributes,
+ honor-pka-record".
+
+diff --git a/g10/gpg.c b/g10/gpg.c
+index 6b44cfb..caa0487 100644
+--- a/g10/gpg.c
++++ b/g10/gpg.c
+@@ -2348,8 +2348,7 @@ main (int argc, char **argv)
+ opt.export_options = EXPORT_ATTRIBUTES;
+ opt.keyserver_options.import_options = (IMPORT_REPAIR_KEYS
+ | IMPORT_REPAIR_PKS_SUBKEY_BUG
+- | IMPORT_SELF_SIGS_ONLY
+- | IMPORT_CLEAN);
++ | IMPORT_SELF_SIGS_ONLY);
+ opt.keyserver_options.export_options = EXPORT_ATTRIBUTES;
+ opt.keyserver_options.options = KEYSERVER_HONOR_PKA_RECORD;
+ opt.verify_options = (LIST_SHOW_UID_VALIDITY
diff --git a/main/gnupg/APKBUILD b/main/gnupg/APKBUILD
index d3968fe40c..b0719a6c03 100644
--- a/main/gnupg/APKBUILD
+++ b/main/gnupg/APKBUILD
@@ -1,33 +1,88 @@
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=gnupg
-pkgver=2.2.29
+pkgver=2.2.31
_ver=${pkgver/_beta/-beta}
pkgrel=0
-pkgdesc="GNU Privacy Guard 2 - a PGP replacement tool"
+pkgdesc="GNU Privacy Guard 2 - meta package for full GnuPG suite"
url="https://www.gnupg.org/"
arch="all"
license="GPL-3.0-or-later"
-depends="pinentry"
-makedepends="gnutls-dev libksba-dev libgcrypt-dev libgpg-error-dev
- npth-dev zlib-dev libassuan-dev openldap-dev bzip2-dev
- sqlite-dev libusb-dev"
-subpackages="$pkgname-doc $pkgname-scdaemon"
+depends="gpg=$pkgver-r$pkgrel
+ gpg-agent=$pkgver-r$pkgrel
+ gpg-wks-server=$pkgver-r$pkgrel
+ gpgsm=$pkgver-r$pkgrel
+ gpgv=$pkgver-r$pkgrel
+ $pkgname-dirmngr=$pkgver-r$pkgrel
+ $pkgname-utils=$pkgver-r$pkgrel
+ $pkgname-wks-client=$pkgver-r$pkgrel
+ "
+makedepends="
+ autoconf
+ automake
+ bzip2-dev
+ gettext-dev
+ gnutls-dev
+ libassuan-dev
+ libgcrypt-dev
+ libgpg-error-dev
+ libksba-dev
+ libtool
+ libusb-dev
+ npth-dev
+ openldap-dev
+ sqlite-dev
+ texinfo
+ zlib-dev
+ "
+install="$pkgname-scdaemon.pre-install"
+subpackages="
+ $pkgname-doc
+ $pkgname-lang::noarch
+ $pkgname-dirmngr
+ $pkgname-gpgconf
+ $pkgname-scdaemon
+ $pkgname-wks-client:_wks_client
+ gpg
+ gpg-agent:_agent
+ gpg-wks-server:_wks_server
+ gpgsm
+ gpgv
+ $pkgname-utils
+ "
source="https://gnupg.org/ftp/gcrypt/gnupg/gnupg-$_ver.tar.bz2
0001-Include-sys-select.h-for-FD_SETSIZE.patch
+ 0010-avoid-beta-warning.patch
+ 0020-avoid-regenerating-defsincdate-use-shipped-file.patch
+ 0110-avoid-simple-memory-dumps-via-ptrace.patch
+ 0210-dirmngr-hkp-avoid-potential-race-condition-when-some-host-die.patch
+ 0220-dirmngr-avoid-need-for-hkp-housekeeping.patch
+ 0230-dirmngr-avoid-automatically-checking-upstream-swdb.patch
+ 0310-gpg-default-to-3072-bit-keys.patch
+ 0320-gpg-default-to-aes256.patch
+ 0330-gpg-default-to-sha512-for-all-signature-types-on-rsa-keys.patch
+ 0340-gpg-prefer-sha512-and-sha384-in-personal-digest.patch
+ 0410-make-gpg-zip-use-tar-from-path.patch
+ 0420-gpg-drop-import-clean-from-default-keyserver-import-options.patch
fix-i18n.patch
60-scdaemon.rules
"
-install="$pkgname-scdaemon.pre-install"
# secfixes:
-# 2.2.13-r0:
+# 2.2.23-r0:
# - CVE-2020-25125
# 2.2.18-r0:
# - CVE-2019-14855
# 2.2.8-r0:
# - CVE-2018-12020
+prepare() {
+ default_prepare
+
+ autoreconf -vif
+}
+
build() {
./configure \
--build=$CBUILD \
@@ -52,31 +107,143 @@ check() {
package() {
make DESTDIR="$pkgdir" install
- # install compat symlink
- ln -s gpg "$pkgdir"/usr/bin/gpg2
- ln -s gpgv "$pkgdir"/usr/bin/gpgv2
-
install -m755 tools/gpg-zip "$pkgdir"/usr/bin/gpg-zip
+ install -Dm644 -t "$pkgdir"/lib/udev/rules.d/ "$srcdir"/60-scdaemon.rules
+
+ cd "$pkgdir"
+
+ # install compat symlink
+ ln -s gpg usr/bin/gpg2
+ ln -s gpgv usr/bin/gpgv2
# Remove docs for systemd-user
- rm -rf "$pkgdir"/usr/share/doc/gnupg/examples/systemd-user
+ rm -rf usr/share/doc/gnupg/examples/systemd-user
+
+ # Remove gpg scheme interpreter - an internal tool used in gpg tests
+ rm -rf usr/bin/gpgscm
+}
+
+_agent() {
+ pkgdesc="GNU Privacy Guard 2 - cryptographic agent"
+ depends="$pkgname-gpgconf=$pkgver-r$pkgrel"
+ replaces="$pkgname" # for backward compatibility
+
+ amove usr/bin/gpg-agent
+ amove usr/libexec/gpg-check-pattern
+ amove usr/libexec/gpg-preset-passphrase
+ amove usr/libexec/gpg-protect-tool
+ amove usr/share/gnupg/help.txt
+}
+
+dirmngr() {
+ pkgdesc="GNU Privacy Guard 2 - network certificate management service"
+ depends="$pkgname-gpgconf=$pkgver-r$pkgrel"
+ provides="dirmngr=$pkgver-r$pkgrel" # alternative package name
+ replaces="$pkgname" # for backward compatibility
+
+ amove usr/bin/dirmngr*
+ amove usr/libexec/dirmngr_ldap
+ amove usr/share/gnupg/sks-keyservers.netCA.pem
+}
+
+gpg() {
+ pkgdesc="GNU Privacy Guard 2 - public key operations only"
+ depends="$pkgname-gpgconf=$pkgver-r$pkgrel !gnupg1"
+ replaces="$pkgname" # for backward compatibility
+ provider_priority=100 # highest (other provider of cmd:gpg is gnupg1)
+
+ amove usr/bin/gpg
+ amove usr/bin/gpg2
+}
+
+gpgconf() {
+ pkgdesc="GNU Privacy Guard 2 - core configuration utilities"
+ depends="pinentry"
+ replaces="$pkgname" # for backward compatibility
+ provides="gpgconf=$pkgver-r$pkgrel" # alternative package name
+
+ amove usr/bin/gpg-connect-agent
+ amove usr/bin/gpgconf
+ amove usr/share/gnupg/distsigkey.gpg
+}
+
+gpgsm() {
+ pkgdesc="GNU Privacy Guard 2 - S/MIME version"
+ depends="$pkgname-gpgconf=$pkgver-r$pkgrel"
+ replaces="$pkgname" # for backward compatibility
+
+ amove usr/bin/gpgsm
+}
+
+gpgv() {
+ pkgdesc="GNU Privacy Guard 2 - signature verification only"
+ depends="!gnupg1"
+ replaces="$pkgname" # for backward compatibility
+ provider_priority=100 # highest (other provider of cmd:gpgv is gnupg1)
+
+ amove usr/bin/gpgv
+ amove usr/bin/gpgv2
+}
+
+lang() {
+ pkgdesc="Languages for package gnupg"
+ depends=""
+ install_if="$pkgname=$pkgver-r$pkgrel lang"
+ replaces="$pkgname" # for backward compatibility
+
+ amove usr/share/gnupg/help.*.txt
}
scdaemon() {
pkgdesc="GNU Privacy Guard 2 - smart card support"
- depends="gnupg"
+ depends="gpg-agent=$pkgver-r$pkgrel"
+ replaces="$pkgname" # for backward compatibility
+
+ amove usr/libexec/scdaemon
+ amove lib/udev/rules.d
+}
+
+_wks_client() {
+ pkgdesc="GNU Privacy Guard 2 - Web Key Service client"
+ depends="gpg=$pkgver-r$pkgrel gpg-agent=$pkgver-r$pkgrel $pkgname-dirmngr=$pkgver-r$pkgrel"
+ replaces="$pkgname" # for backward compatibility
+
+ amove usr/libexec/gpg-wks-client
+}
+
+_wks_server() {
+ pkgdesc="GNU Privacy Guard 2 - Web Key Service server"
+ depends="gpg=$pkgver-r$pkgrel gpg-agent=$pkgver-r$pkgrel"
+ replaces="$pkgname" # for backward compatibility
+
+ amove usr/bin/gpg-wks-server
+}
- mkdir -p "$subpkgdir/usr/libexec"
- mkdir -p "$subpkgdir/lib/udev/rules.d"
+# Must be the last!
+utils() {
+ pkgdesc="GNU Privacy Guard 2 - utility programs"
+ depends="!gnupg1"
+ replaces="$pkgname" # for backward compatibility
+ provider_priority=100 # highest (other provider of cmd:gpg-zip cmd:gpgsplit is gnupg1)
- install -Dm644 -t "$subpkgdir/lib/udev/rules.d/" \
- "$srcdir/60-scdaemon.rules"
- mv "$pkgdir/usr/libexec/scdaemon" "$subpkgdir/usr/libexec/"
+ amove usr/*
}
sha512sums="
-12645e230fc6aa4811420ef33def6baa590e847ecdf7e5f8b96eb49122e6406cbdba4595d0b52fa26700d5d5def67acb4ed7dfe7f778e496d4d21ccbef3c476b gnupg-2.2.29.tar.bz2
+2f6fa200e08d6b8993b482e5825bea6083afc8686c4e1ae80386b36ae49e1c2d73066c508edaa359a7794cb26ba7a00f81555a906fa422d1117e41415cfa2fea gnupg-2.2.31.tar.bz2
c6cc4595081c5b025913fa3ebecf0dff87a84f3c669e3fef106e4fa040f1d4314ee52dd4c0e0002b213034fb0810221cfdd0033eae5349b6e3978f05d08bcac7 0001-Include-sys-select.h-for-FD_SETSIZE.patch
+0e2aef4ae5c43c43efe2c914534d73f8f7068b49b5826b1f999296c30395497c4af121e4e99152ff7b43dcf56d1792cd46aea5158ca48597d6e0fca6d7358711 0010-avoid-beta-warning.patch
+18004e52925b1f03e67a29a3d43b39e8119cf3426cdad4136824b932ad906ac499b4ceb3d7573177a9f16410d3b80c8f0e4bcdc54dd284f3f803a2cef609ad01 0020-avoid-regenerating-defsincdate-use-shipped-file.patch
+7c9f38ce480c5f6d06330c9b1fcfe9b32cac2b0b28695beec4e94e48508cf45a4f56ce406abfee795de11ed973598e8544440c3dfc0670cdeb37e27ca1e6caf0 0110-avoid-simple-memory-dumps-via-ptrace.patch
+6bc5ac393a72432ef09a31f524db973677fd730166457b881b88e6fad7536ac4fe8cceeed324b578125b9fd4d871645ae9c43c01b3563e00a146e8f835336ac3 0210-dirmngr-hkp-avoid-potential-race-condition-when-some-host-die.patch
+f4778aa2ec8a971ee700114b43b0446425b86459e4b21fd9b534f51de46a7ac9cfd21d79470b422a385e2a0244c54a5fb482ab76b4861f101745f77646f6f483 0220-dirmngr-avoid-need-for-hkp-housekeeping.patch
+1c38b039950fa9733e9584ac61d52e12aad56489d7f3aec396b2528d0bf41729971d3fe9b4d04d50595a2a954181892ed1ec93f1b7ade24e4da26744d78598fc 0230-dirmngr-avoid-automatically-checking-upstream-swdb.patch
+c4488de65913167a77fbc1c8d3a8867d15171c6021490e443ca0faddcb2109fff23f7f49c9a8922d1acd1e435530fc8a4bafb71f441d3cdf38618d3a113cf7e8 0310-gpg-default-to-3072-bit-keys.patch
+00dac445ba9f1c4c7e6078a8068e62e13e05c5b22e1d84b915f6f353eba55c4b172c6ea735f3bb551af0d6073652d3b6f0cafdfb1d6afb309626a7642775416f 0320-gpg-default-to-aes256.patch
+9e6c109f6617b4abb7a9d8abd4c8d128247dd21915bf7a75bb6a9f5b6da2a9d4dcee27147db3f88de79e4cb2621222ae62d95c0ce115658ef39bcd01587b5f82 0330-gpg-default-to-sha512-for-all-signature-types-on-rsa-keys.patch
+462af7b1e530e00d3870062666ef427d6df57ee8358b043c06fb8b7b54e50891fc8a49beeaabe45d1822d222ffc47da624798ceb8889a02e38ce85612453bb8b 0340-gpg-prefer-sha512-and-sha384-in-personal-digest.patch
+0e4d5d29de5279bda4e8b69334c664068404e697ad9e62868389ef1d97bc1a18d80e834d2d2e8147e0f537a81e6f3b360f18e1a958304a2cc2659c29e68c517a 0410-make-gpg-zip-use-tar-from-path.patch
+ac2199f2b49af1c0211ff6f7e441f0f7779d6101c2136f2d7cab0001d260598e4f2f07111aa478dd210a05385daa1f6aec77d9b0de3e379371433b0c82035855 0420-gpg-drop-import-clean-from-default-keyserver-import-options.patch
b19a44dacf061dd02b439ab8bd820e3c721aab77168f705f5ce65661f26527b03ea88eec16d78486a633c474120589ec8736692ebff57ab9b95f52f57190ba6b fix-i18n.patch
4bfb9742279c2d1c872d63cd4bcb01f6a2a13d94618eff954d3a37451fa870a9bb29687330854ee47e8876d6e60dc81cb2569c3931beaefacda33db23c464402 60-scdaemon.rules
"
diff --git a/main/goaccess/APKBUILD b/main/goaccess/APKBUILD
index 9fd7b9a4ce..2ad3604e6a 100644
--- a/main/goaccess/APKBUILD
+++ b/main/goaccess/APKBUILD
@@ -2,7 +2,7 @@
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=goaccess
-pkgver=1.5.1
+pkgver=1.5.2
pkgrel=0
pkgdesc="Real-time web log analyzer and interactive viewer"
options="!check" # no test suite
@@ -31,5 +31,5 @@ package() {
}
sha512sums="
-aefdc8a61d85d7f8148857c6873b4589eb2f1d3f5b4986a97d0d4223c1d30da23d5fc8e6ba3cbdf41654072b299036fbcbae397d1934a95d1d26931e7f2f5d9a goaccess-1.5.1.tar.gz
+11b59dc009ccb280e05e08135b02a3dee8b9d052803daaa7e85dc47623bd2621009aed540e83c00810bbc30e4688bcf5fadf2b7aae259175d2b0e87b7226c0d8 goaccess-1.5.2.tar.gz
"
diff --git a/main/gobject-introspection/APKBUILD b/main/gobject-introspection/APKBUILD
index 0a2f094bd3..a99a535387 100644
--- a/main/gobject-introspection/APKBUILD
+++ b/main/gobject-introspection/APKBUILD
@@ -2,7 +2,7 @@
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
pkgname=gobject-introspection
-pkgver=1.68.0
+pkgver=1.70.0
pkgrel=1
pkgdesc="Introspection system for GObject-based libraries"
url="https://wiki.gnome.org/action/show/Projects/GObjectIntrospection"
@@ -39,5 +39,7 @@ dev() {
replaces="gobject-introspection"
}
-sha512sums="d2e64c119aa500b624a57baa2cebe9126ab100003d98b771f4fb51cf92748635de352997f702f40656f7c665f3dfedfbfa19912cc7a2d039d254555243bbc381 gobject-introspection-1.68.0.tar.xz
-a55df8fbb8d27d073bbab7e3bd2ca5e272c3fca2a3e144207d4cac06dd90f51443373b077fa64543887e2d5da4bc017bd5245473b83dd0ed551a5a437eec9241 musl-time64.patch"
+sha512sums="
+216b376ed423f607e36c723dd6b67975dbfb63c253f2d8bd0b3661e3d69f8c8059cf221db8c5260b0262fad1b7d738f3b2e5fbd51fdbc31e40ccb115c209baf0 gobject-introspection-1.70.0.tar.xz
+a55df8fbb8d27d073bbab7e3bd2ca5e272c3fca2a3e144207d4cac06dd90f51443373b077fa64543887e2d5da4bc017bd5245473b83dd0ed551a5a437eec9241 musl-time64.patch
+"
diff --git a/main/gpsd/APKBUILD b/main/gpsd/APKBUILD
new file mode 100644
index 0000000000..e24e4b12d9
--- /dev/null
+++ b/main/gpsd/APKBUILD
@@ -0,0 +1,89 @@
+# Contributor: Nathan Angelacos <nangel@alpinelinux.org>
+# Maintainer: Nathan Angelacos <nangel@alpinelinux.org>
+
+# gpsd is commonly used with NTP servers to provide a stable clock,
+# please do not move to community.
+
+pkgname=gpsd
+pkgver=3.23
+pkgrel=0
+pkgdesc="GPS daemon"
+arch="all"
+url="http://catb.org/gpsd/"
+license="BSD-2-Clause"
+makedepends="scons asciidoctor python3-dev libcap-dev ncurses-dev"
+subpackages="
+ $pkgname-dev
+ $pkgname-doc
+ py3-$pkgname:_py:noarch
+ $pkgname-clients:_clients
+ $pkgname-openrc"
+source="https://download-mirror.savannah.gnu.org/releases/gpsd/gpsd-$pkgver.tar.gz
+ timepps.h
+ gpsd.initd
+ gpsd.confd"
+
+options="!check" # FIXME: tests fails
+
+prepare() {
+ # We copy timepps.h to the local build directory instead of
+ # creating a pps-tools-dev package for ppstime.h
+ # (See https://github.com/ago/pps-tools)
+ mkdir -p "$builddir"/sys
+ cp "$srcdir"/timepps.h "$builddir"/sys/
+
+ # Hack to get scons to respect python
+ ln -s /usr/bin/python3 python
+ export PATH="$PATH:."
+
+ default_prepare
+}
+
+build() {
+ CPPFLAGS="$CPPFLAGS -I$builddir -DHAVE_SYS_TIMEPPS_H"
+ scons -j${JOBS:-1} \
+ prefix=/usr \
+ target_python=python3 \
+ python_shebang=/usr/bin/python3 \
+ dbus_export=no \
+ systemd=no
+}
+
+check() {
+ scons check
+}
+
+package() {
+ DESTDIR="$pkgdir" scons install
+ install -m755 -D "$srcdir"/gpsd.initd "$pkgdir"/etc/init.d/gpsd
+ install -m644 -D "$srcdir"/gpsd.confd "$pkgdir"/etc/conf.d/gpsd
+}
+
+_py() {
+ local _py=${subpkgname##-*}
+ local _pyver=${_py%py}
+ pkgdesc="$pkgname library and clients for python $_pyver"
+ mkdir -p "$subpkgdir"/usr/lib
+ # As of 3.18.1, gpsd wants to put the python stuff in /usr/local
+ mv "$pkgdir"/usr/local/lib/python* "$subpkgdir"/usr/lib/
+ rm -rf "$pkgdir"/usr/local
+
+ mkdir -p "$subpkgdir"/usr/bin
+ for n in gpscat gpsfake gpsprof; do
+ mv "$pkgdir"/usr/bin/$n "$subpkgdir"/usr/bin/
+ done
+
+}
+
+_clients() {
+ pkgdesc="$pkgname clients"
+ mkdir -p "$subpkgdir"/usr/bin
+ mv "$pkgdir"/usr/bin/* "$subpkgdir"/usr/bin
+}
+
+sha512sums="
+967cc9801271418023630df02b457b76108968992151f6e80b569e99b856bd79cc3d0369d2088f3bc609b2ab22b29dba87639bf466bf262ab80b2b3f04055f8b gpsd-3.23.tar.gz
+eb11fc19243d1789016d88eb7645bfe67c46304547781489bf36eb1dd4c252d523681ff835a6488fa0ef62b6b9e2f781c672279f4439f5d5640a3f214a113048 timepps.h
+f88940570cbed761495c3a13949428e873c2c3d112e8ac25d36dd3230ecf2171f67b0f429c37e593bb360dc1e5622fe9066e597880264561c81376ff42d1a818 gpsd.initd
+75dbfe39eb900cc9587dd70794ee77ae2230765bbede47760ca227145aa3f2290b6995335ffcfeae6cd86f56b01ca87367548f4fbcf810aff1bc012b7416deef gpsd.confd
+"
diff --git a/main/gpsd/gpsd.confd b/main/gpsd/gpsd.confd
new file mode 100644
index 0000000000..0f52aa9b5e
--- /dev/null
+++ b/main/gpsd/gpsd.confd
@@ -0,0 +1,7 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+# Config file for gpsd server
+GPSD_OPTIONS=""
+DEVICES=""