Compare commits

...

110 Commits

Author SHA1 Message Date
Peter Korsgaard
80e565bbeb Update for 2020.02.1
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-10 22:42:41 +02:00
Fabrice Fontaine
b48716cda4 package/haproxy: security bump to version 2.1.4
- Fix CVE-2020-11100: In hpack_dht_insert in hpack-tbl.c in the HPACK
  decoder in HAProxy 1.8 through 2.x before 2.1.4, a remote attacker can
  write arbitrary bytes around a certain location on the heap via a
  crafted HTTP/2 request, possibly causing remote code execution.
- Update indentation of hash file (two spaces)

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 5ec43086bc)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-09 09:16:23 +02:00
Stefan Sørensen
b9e7a4349a package/gnutls: security bump to 3.6.13
Fixes the following security issue:

 * CVE-2020-11501: It was found that GnuTLS 3.6.3 introduced a
   regression in the DTLS protocol implementation. This caused the DTLS
   client to not contribute any randomness to the DTLS negotiation
   breaking the security guarantees of the DTLS protocol.

Signed-off-by: Stefan Sørensen <stefan.sorensen@spectralink.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 170d06cfc6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-09 00:01:24 +02:00
Peter Korsgaard
1c2319a1d5 {linux, linux-headers}: bump 5.{4, 5, 6}.x series
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b27a07ceb6)
[Peter: drop 5.5.x / 5.6.x bump]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-09 00:00:40 +02:00
James Hilliard
a279c559b8 package/gcc: pass -Wno-error to debug builds
gcc fails to build in debug build with debug optimisations:

BR2_x86_corei7=y
BR2_ENABLE_DEBUG=y
BR2_DEBUG_3=y
BR2_OPTIMIZE_G=y
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y

which fails with:
    ../../../../libsanitizer/libbacktrace/../../libbacktrace/elf.c:772:21: error: ‘st.st_mode’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
       return S_ISLNK (st.st_mode);
                     ^
Upstream has been unable to reproduce/fix properly, details:
https://gcc.gnu.org/legacy-ml/gcc-patches/2019-03/threads.html#00827

Upstream recommends passing -Wno-error as a workaround, see:
https://gcc.gnu.org/pipermail/gcc-patches/2019-April/519867.html

Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
[yann.morin.1998@free.fr: add the reproducing defconfig]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit dcaf6e75ac)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 16:33:35 +02:00
Thomas Petazzoni
db8d624958 package/pkg-generic.mk: also replace /lib by STAGING_DIR/lib in .la files
After the staging installation, we replace a number of paths in libtool
.la files so that those paths point to STAGING_DIR instead of a location
in the build machine.

However, we replace only paths that start with /usr. And it turns out
that the linux-pam package is configured with --libdir=/lib (linux-pam
seems to always be installed in /lib rather than /usr/lib).

Due to this, libpam.la contains the following line:

  libdir='/lib'

When building a configuration that has:

 - BR2_ROOTFS_MERGED_USR=y
 - BR2_PACKAGE_LINUX_PAM=y
 - BR2_PACKAGE_POLKIT=y

on a system that has its system-wide PAM library installed in /lib,
the build fails with:

/lib/libpam.so: file not recognized: File format not recognized

For some reason, libtool searches only in STAGING_DIR/usr/lib, but
when BR2_ROOTFS_MERGED_USR=y, STAGING_DIR/lib points to
STAGING_DIR/usr/lib, so libtool finds libpam.la. And this libpam.la
contains a bogus libdir='/lib' path. libtool then goes on, finds
/lib/libpam.so, and links with it, causing the build failure.

By doing the proper replacement of libdir='/lib', we have a correct
libpam.la, and solve the build issue.

There is no autobuilder failure associated to this issue, as it
requires /lib/libpam.so to exist. This is the case on ArchLinux, on
which Xogium reported the issue, which can also be reproduced in an
ArchLinux container.

Reported-by: Xogium <contact@xogium.me>
Cc: Xogium <contact@xogium.me>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Tested-by: Yann E. MORIN <yann.morin.1998@free.fr>
[yann.morin.1998@free.fr:
  - tested by manually creating a symlink to libpam.so in /lib
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 7ae7c82dd6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 16:31:47 +02:00
Fabrice Fontaine
8d9ebbb158 package/mcrypt: annotate CVEs
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit cdfa84a80d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 16:30:36 +02:00
Fabrice Fontaine
333142974b package/bubblewrap: security bump to version 0.4.1
Fix CVE-2020-5291: Bubblewrap (bwrap) before version 0.4.1, if installed
in setuid mode and the kernel supports unprivileged user namespaces,
then the `bwrap --userns2` option can be used to make the setuid process
keep running as root while being traceable. This can in turn be used to
gain root permissions. Note that this only affects the combination of
bubblewrap in setuid mode (which is typically used when unprivileged
user namespaces are not supported) and the support of unprivileged user
namespaces.

Also update indentation of hash file (two spaces)

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Reviewed-by: Adrian Perez de Castro <aperez@igalia.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit d82a5ade0b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 16:29:43 +02:00
Fabrice Fontaine
1b825bce82 package/vlc: fix build with opencv3
Fixes:
 - http://autobuild.buildroot.org/results/210424bd33f660aa0757f62a558e1e03faf0f371

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 516b3737bf)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 16:25:10 +02:00
Thomas Petazzoni
ce862d0f14 boot/syslinux: fix build of efi part with gnu-efi 3.0.10
The following defconfig:

BR2_x86_i686=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
BR2_TOOLCHAIN_EXTERNAL_URL="http://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--glibc--bleeding-edge-2018.11-1.tar.bz2"
BR2_TOOLCHAIN_EXTERNAL_GCC_8=y
BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_14=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y
BR2_TOOLCHAIN_EXTERNAL_CXX=y
BR2_INIT_NONE=y
BR2_TARGET_SYSLINUX=y
BR2_TARGET_SYSLINUX_EFI=y

fails to build due to missing setjmp/longjmp definitions, which is a
consequence of a change introduced between gnu-efi 3.0.9 and 3.0.10.

This build failure is fixed by adding another syslinux paytch, which
has been submitted upstream.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6d5da6d916)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 16:23:39 +02:00
James Hilliard
3ec50fbee5 package/swupdate: add optional systemd dependency
When the swupdate SYSTEMD option is enabled, systemd needs to be built
before swupdate, otherwise the build fails with:

core/notifier.c:27:10: fatal error: systemd/sd-daemon.h: No such file or directory
   27 | #include <systemd/sd-daemon.h>
      |          ^~~~~~~~~~~~~~~~~~~~~

Of course, it remains up to the user to make sure that the systemd
package is enabled when systemd support is enabled in the swupdate
configuration.

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit bea0d20c78)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 16:22:20 +02:00
Fabrice Fontaine
9fead6f65e package/libexif: annotate CVEs
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 094d9857bd)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 16:15:11 +02:00
Peter Korsgaard
4eb7aa1ea7 package/wireguard-tools: bump version to 1.0.20200319
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 11036ca0d2)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 16:12:55 +02:00
Peter Korsgaard
eed4fd569a package/wireguard-linux-compat: bump version to 1.0.20200401
Matching the now-mainline wireguard code in kernel 5.6.

For details, see the announcement:
https://lists.zx2c4.com/pipermail/wireguard/2020-April/005237.html

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 4285b1bac3)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 16:12:48 +02:00
Peter Korsgaard
b3136ae1b2 {linux, linux-headers}: bump 4.{4, 9, 14, 19}.x / 5.{4, 5, 6}.x series
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 79c640e2e0)
[Peter: drop 5.5.x / 5.6.x bump]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 15:45:46 +02:00
Fabio Estevam
b8cb0e2bca package/kmscube: Use the official gitlab URL
The cgit URL is a mirror of the gitlab repository.

The README.md file of the kmscube project also points
to the gitlab repository, so switch the URL accordingly.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 8ab9acbed8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 15:01:46 +02:00
Peter Seiderer
12776c1587 package/sysdig: update upstream URL in Config.in
The sysdig homepage we have points to an "on-sale" domain, that is
purportedly serving malware while at it. Update to point to the wiki on
github instead.

Fixes #12746.

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
[yann.morin.1998@free.fr:
  - use wiki instead of git repo
  - expand commit log
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit ca3166da48)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 15:01:35 +02:00
Sébastien Szymanski
cee522be2c package/ntp: security bump to version 4.2.8p14
"This release fixes three security issues in ntpd and provides 46
bugfixes and addresses 4 other issues." [1]

NONE: Sec 3610: process_control() should bail earlier on short packets.

MEDIUM: Sec 3596: Unauthenticated ntpd may be susceptible to IPv4 spoof
attack from highly predictable transmit timestamps.

MEDIUM: Sec 3592: DoS Attack on unauthenticated client.
The fix for https://bugs.ntp.org/3445 introduced a bug whereby a system that
is running ntp-4.2.8p12 (possibly earlier) or p13 that only has one
unauthenticated time source can be attacked in a way that causes the
victim's next poll to its source to be delayed, for as long as the attack is
maintained.

[1] http://support.ntp.org/bin/view/Main/SecurityNotice#March_2020_ntp_4_2_8p14_NTP_Rele

The copyright year has changed in the COPYRIGHT file, so adjust the hash to
match and adjust the spacing to match recent agreements:

@@ -3,7 +3,7 @@

    jpg "Clone me," says Dolly sheepishly.

-   Last update: 2-Jan-2017 11:58 UTC
+   Last update: 4-Feb-2020 23:47 UTC
      __________________________________________________________________

    The following copyright notice applies to all files collectively called
@@ -32,7 +32,7 @@
    Burnicki is:
 ***********************************************************************
 *                                                                     *
-* Copyright (c) Network Time Foundation 2011-2017                     *
+* Copyright (c) Network Time Foundation 2011-2020                     *
 *                                                                     *
 * All Rights Reserved                                                 *
 *                                                                     *

Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
[Peter: clarify security impact, document COPYRIGHT change]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 9daf7483e9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 14:51:35 +02:00
Thomas Petazzoni
c4f5436201 linux: adjust BR2_LINUX_KERNEL_IMAGE_NAME help text
The help text of BR2_LINUX_KERNEL_IMAGE_NAME is somewhat incomplete,
in the sense that it assumes just a filename can be passed, while it
can be a relative path, such as 'compressed/vmlinux.bin.z'. So make it
clear that such paths are relative to arch/ARCH/boot/.

Also, drop the part about this being only useful for Xtensa as this is
not true: on MIPS it might be needed as well for some specific image
types.

Reported-by: Paul Cercueil <paul@crapouillou.net>
Cc: Paul Cercueil <paul@crapouillou.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit ea044ee20c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 14:50:45 +02:00
Thomas Petazzoni
f7f95c1759 linux: do not install images in subdirectories
The Linux kernel image is typically found in arch/ARCH/boot/, which is
why LINUX_IMAGE_PATH is defined as:

LINUX_IMAGE_PATH = $(LINUX_ARCH_PATH)/boot/$(LINUX_IMAGE_NAME)

However, on MIPS, some kernel image types are available from
arch/mips/boot/compressed, or even at the top-level directory. For
such cases, LINUX_IMAGE_NAME might be set (using
BR2_LINUX_KERNEL_IMAGE_NAME) to values such as:

  compressed/vmlinux.bin.z

or

  ../../../uzImage.bin

Except that the line:

  $(INSTALL) -m 0644 -D $(LINUX_IMAGE_PATH) $(1)/$(LINUX_IMAGE_NAME)

will lead to such images be installed in:

  $(TARGET_DIR)/boot/compressed/vmlinux.bin.z
  $(BINARIES_DIR)/compressed/vmlinux.bin.z

and:

  $(TARGET_DIR)/boot/../../../uzImage.bin
  $(BINARIES_DIR)/../../../uzImage.bin

which of course is completely bogus.

So let's install them under their name, not their full relative path
to arch/ARCH/boot/.

Reported-by: Paul Cercueil <paul@crapouillou.net>
Cc: Paul Cercueil <paul@crapouillou.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 19be97d497)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 14:50:39 +02:00
Sébastien Szymanski
fcfdf366a1 package/libopenssl: security bump to version 1.1.1f
Fixes the following security issues (1.1.1e):

CVE-2019-1551 [Low severity]: There is an overflow bug in the x64_64
Montgomery squaring procedure used in exponentiation with 512-bit moduli.
No EC algorithms are affected.  Analysis suggests that attacks against
2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect
would be very difficult to perform and are not believed likely.  Attacks
against DH512 are considered just feasible.  However, for an attack the
target would have to re-use the DH512 private key, which is not recommended
anyway.  Also applications directly using the low level API BN_mod_exp may
be affected if they use BN_FLG_CONSTTIME.  Reported by OSS-Fuzz and Guido
Vranken.

https://www.openssl.org/news/secadv/20191206.txt

CVE-2019-1563 [Low severity]: In situations where an attacker receives
automated notification of the success or failure of a decryption attempt an
attacker, after sending a very large number of messages to be decrypted, can
recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted
message that was encrypted with the public RSA key, using a Bleichenbacher
padding oracle attack.  Applications are not affected if they use a
certificate together with the private RSA key to the CMS_decrypt or
PKCS7_decrypt functions to select the correct recipient info to decrypt.
Reported by Bernd Edlinger.

https://www.openssl.org/news/secadv/20190910.txt

Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
[Peter: mention security impact]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d397b231b7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 14:36:49 +02:00
Bernd Kuhls
9378c2e647 package/x11r7/xserver_xorg-server: bump version to 1.20.8
Removed patch applied upstream:
c2ef88c4d3

Removed md5 & sha1 hashes, not provided by upstream anymore.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 39472b50e0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 14:34:51 +02:00
Fabrice Fontaine
9afafc0456 package/wpa_supplicant: fix CVE-2019-16275
hostapd before 2.10 and wpa_supplicant before 2.10 allow an incorrect
indication of disconnection in certain situations because source address
validation is mishandled. This is a denial of service that should have
been prevented by PMF (aka management frame protection). The attacker
must send a crafted 802.11 frame from a location that is within the
802.11 communications range.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 650d907c13)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 13:43:07 +02:00
Fabrice Fontaine
e4526a5a24 package/hostapd: fix CVE-2019-16275
hostapd before 2.10 and wpa_supplicant before 2.10 allow an incorrect
indication of disconnection in certain situations because source address
validation is mishandled. This is a denial of service that should have
been prevented by PMF (aka management frame protection). The attacker
must send a crafted 802.11 frame from a location that is within the
802.11 communications range.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 749fbab0bb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 13:43:01 +02:00
Fabrice Fontaine
53c0425896 package/libsndfile: add upstream security fixes
- Fix CVE-2017-6892: In libsndfile version 1.0.28, an error in the
  "aiff_read_chanmap()" function (aiff.c) can be exploited to cause an
  out-of-bounds read memory access via a specially crafted AIFF file.

- Fix CVE-2017-8361: The flac_buffer_copy function in flac.c in
  libsndfile 1.0.28 allows remote attackers to cause a denial of service
  (buffer overflow and application crash) or possibly have unspecified
  other impact via a crafted audio file.

- Fix CVE-2017-8362: The flac_buffer_copy function in flac.c in
  libsndfile 1.0.28 allows remote attackers to cause a denial of service
  (invalid read and application crash) via a crafted audio file.

- Fix CVE-2017-8363: The flac_buffer_copy function in flac.c in
  libsndfile 1.0.28 allows remote attackers to cause a denial of service
  (heap-based buffer over-read and application crash) via a crafted
  audio file.

- Fix CVE-2017-8365: The i2les_array function in pcm.c in
  libsndfile 1.0.28 allows remote attackers to cause a denial of service
  (buffer over-read and application crash) via a crafted audio file.

- Fix CVE-2017-12562: Heap-based Buffer Overflow in the
  psf_binheader_writef function in common.c in libsndfile through 1.0.28
  allows remote attackers to cause a denial of service (application
  crash) or possibly have unspecified other impact.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 76d5ab4d17)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 13:35:06 +02:00
Nazım Gediz AYDINDOĞMUŞ
f74ae7bdec docs/manual: minor typo fix
Definition of LIBFOO_USERS actually ends on 33rd line.

Signed-off-by: Nazım Gediz Aydındoğmuş <gediz.aydindogmus@genemek.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 61f01794c8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 13:33:36 +02:00
Adam Duskett
7f92c0475d package/nftables: check for python
If python or python3 is selected, nftables should depend on the package
and set the --enable-python option, otherwise set --disable-python

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit d6f33d36af)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 13:32:35 +02:00
Fabio Estevam
218cd2fa5b package/kmscube: Change repository to gitlab
The https://cgit.freedesktop.org/mesa/kmscube repository
is mirrored from https://gitlab.freedesktop.org/mesa/kmscube, so
switch to the gitlab one.

The other advantage of using the gitlab repository is that it can handle
archive downloads, so switch to it.

Suggested-by: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 396191b156)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 13:29:43 +02:00
Yaroslav Syrytsia
453352c32a Makefile: make-4.3 now longer un-escapes \# in macros
make-4.3 shipped with a backward incompatible change in how sharp signs
are handled in macros. Previously, up to make 4.2, the sharp sign would
always start a comment, unless backslash-escaped, even in a macro or a
fucntion call.

Now, the sharp sign is no longer starting a comment when it appears
inside such a macro or function call. This behaviour was supposed to be
in force since 3.81, but was not; 4.3 fixed the code to match the doc.

As such, use of external toolchains is broken, as we use the sharp sign
in the copy_toolchain_sysroot macro, in shell variable expansion to
strip off any leading /: ${target\#/}.

Fix that by applying the workaround suggested in the release annoucement
[0], by using a variable to hold a sharp sign.

[0] https://lists.gnu.org/archive/html/info-gnu/2020-01/msg00004.html

Signed-off-by: Yaroslav Syrytsia <me@ys.lc>
[yann.morin.1998@free.fr:
  - move the SHARP_SIGN definition out of Makefile and into support/
  - expand the commit log
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 35c5cf56d2)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 13:25:28 +02:00
Fabrice Fontaine
a757768497 package/opencv3: fix build with protobuf
External protobuf is used instead of embedded one since commit
31c68a449e. However it fails to build on:

[ 63%] Building CXX object modules/dnn/CMakeFiles/opencv_dnn.dir/misc/caffe/opencv-caffe.pb.cc.o
In file included from /home/naourr/work/instance-0/output-1/build/opencv3-3.4.9/modules/dnn/misc/caffe/opencv-caffe.pb.cc:4:
/home/naourr/work/instance-0/output-1/build/opencv3-3.4.9/modules/dnn/misc/caffe/opencv-caffe.pb.h:17:2: error: #error This file was generated by an older version of protoc which is
   17 | #error This file was generated by an older version of protoc which is
      |  ^~~~~
/home/naourr/work/instance-0/output-1/build/opencv3-3.4.9/modules/dnn/misc/caffe/opencv-caffe.pb.h:18:2: error: #error incompatible with your Protocol Buffer headers. Please
   18 | #error incompatible with your Protocol Buffer headers.  Please
      |  ^~~~~
/home/naourr/work/instance-0/output-1/build/opencv3-3.4.9/modules/dnn/misc/caffe/opencv-caffe.pb.h:19:2: error: #error regenerate this file with a newer version of protoc.
   19 | #error regenerate this file with a newer version of protoc.
      |  ^~~~~
/home/naourr/work/instance-0/output-1/build/opencv3-3.4.9/modules/dnn/misc/caffe/opencv-caffe.pb.cc:12:10: fatal error: google/protobuf/wire_format_lite_inl.h: No such file or directory
   12 | #include <google/protobuf/wire_format_lite_inl.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Fix this error by setting PROTOBUF_UPDATE_FILES to ON

Fixes:
 - http://autobuild.buildroot.org/results/219258c90709fc34748929f1dcdf4f0649215e61

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ad6a0d0d65)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-08 13:22:57 +02:00
James Hilliard
2e2f8c76cd package/cog: fix segfaults on null xkb_data keymap/state
Fixes:
Program terminated with signal SIGSEGV, Segmentation fault.
#0  xkb_state_key_get_layout (state=state@entry=0x0, kc=kc@entry=50) at ../src/state.c:217

Program terminated with signal SIGSEGV, Segmentation fault.
#0  XkbKey (kc=kc@entry=45, keymap=0x0) at ../src/keymap.h:430

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 75fbc58f3f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 21:09:46 +02:00
Thomas Petazzoni
95a051f96e package/oprofile: fix build with binutils >= 2.34
The libbfd library provided by binutils unfortunately changed its API
in binutils >= 2.34. This is causing some build failures at the moment
on architectures such as ARC that are using a very recent binutils
version, but it would also cause build failures on other architectures
once they start using binutils 2.34.

We fix this build issue by backporting an upstream oprofile
patch. However, this patch touches configure.ac, which means we need
to autoreconf, which needs another fix in configure.ac for autoreconf
to succeed.

With all that in place, this commit fixes:

  http://autobuild.buildroot.net/results/583d281c6cd2aecb65556080b379db24101ae3a8/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 8883b8387a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 21:09:01 +02:00
Fabrice Fontaine
081c82c00c package/gvfs: fix CVE-2019-12795
daemon/gvfsdaemon.c in gvfsd from GNOME gvfs before 1.38.3, 1.40.x
before 1.40.2, and 1.41.x before 1.41.3 opened a private D-Bus server
socket without configuring an authorization rule. A local attacker could
connect to this server socket and issue D-Bus method calls. (Note that
the server socket only accepts a single connection, so the attacker
would have to discover the server and connect to the socket before its
owner does.)

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit a9f38acbf2)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 21:04:41 +02:00
Fabrice Fontaine
256a070187 package/gvfs: fix CVE-2019-12449
An issue was discovered in GNOME gvfs 1.29.4 through 1.41.2.
daemon/gvfsbackendadmin.c mishandles a file's user and group ownership
during move (and copy with G_FILE_COPY_ALL_METADATA) operations from
admin:// to file:// URIs, because root privileges are unavailable.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit fc42ac086a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 21:04:32 +02:00
Fabrice Fontaine
63a5345796 package/gvfs: fix CVE-2019-12447
An issue was discovered in GNOME gvfs 1.29.4 through 1.41.2.
daemon/gvfsbackendadmin.c mishandles file ownership because setfsuid is
not used.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 062d0f6913)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 21:04:21 +02:00
Fabrice Fontaine
16f4c84991 package/gvfs: fix CVE-2019-12448
An issue was discovered in GNOME gvfs 1.29.4 through 1.41.2.
daemon/gvfsbackendadmin.c has race conditions because the admin backend
doesn't implement query_info_on_read/write.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit e49aa31f5c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 21:04:16 +02:00
Fabrice Fontaine
374bc25feb package/gvfs: fix CVE-2019-3827
An incorrect permission check in the admin backend in gvfs before
version 1.39.4 was found that allows reading and modify arbitrary files
by privileged users without asking for password when no authentication
agent is running. This vulnerability can be exploited by malicious
programs running under privileges of users belonging to the wheel group
to further escalate its privileges by modifying system files without
user's knowledge. Successful exploitation requires uncommon system
configuration.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 346040e269)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 21:04:11 +02:00
Adam Duskett
7100f8bed2 package/vala: fix wrapper
Add double quotes around the $@ variable to prevent word splitting.

Reported-by: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Adam Duskett <Aduskett@gmail.com>
[yann.morin.1998@free.fr: s/globbing/word splitting/]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 30b6db05cb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 21:02:37 +02:00
Peter Seiderer
0c381102f0 package/localedef: fix gcc-10.0.1 compile
Fixes build with gcc-10, by backporting an upstream patch:

  programs/ld-ctype.c:855:18: error: array subscript 0 is outside the bounds of an interior zero-length array ‘unsigned char[0]’ [-Werror=zero-length-bounds]
    855 |  replace[0].bytes[0] = '?';
        |  ~~~~~~~~~~~~~~~~^~~

Fixes: #12711

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
[yann.morin.1998@free.fr: slight reword in commit log]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 13cc36dcfe)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 21:01:20 +02:00
Fabrice Fontaine
c79987b62e package/rocksdb: fix build without dlfcn.h
Fixes:
 - http://autobuild.buildroot.org/results/04c5afff034d8d71d11b95c998e3156292852de6

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 3e054d20cb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 20:55:33 +02:00
Fabrice Fontaine
8a8ce4e091 package/rocksdb: fix build on m68k_cf
Fixes:
 - http://autobuild.buildroot.org/results/04c5afff034d8d71d11b95c998e3156292852de6

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit c0ae390d43)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 20:55:28 +02:00
Fabrice Fontaine
a824284afc package/rocksdb: fix bzip2 option
Commit 95bf830e2a forgot to replace
ROCKSDB_CONF_OPTS by ROCKSDB_MAKE_OPTS for BR2_PACKAGE_BZIP2

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 8fc0b41c73)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 20:54:54 +02:00
Bernd Kuhls
f1c89c4bad package/gcc: define _REENTRANT for OpenRISC when -pthread is passed
Fixes:
http://autobuild.buildroot.net/results/ceb802eea0fee5812efd717ae4cdbd9673d9507e/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit eee96b0f0a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 20:53:48 +02:00
Merlin Büge
1f8d7588ad docs/manual: small typo fixes and cleanup
Fix a few punctuation mistakes. The removed link is redundant, see the
previous sentence.

Signed-off-by: Merlin Büge <merlin.buege@tuhh.de>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 20bd811c7e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 20:48:07 +02:00
Fabrice Fontaine
69af93f511 package/libical: fix CVE-2016-9584
libical allows remote attackers to cause a denial of service
(use-after-free) and possibly read heap memory via a crafted ics file.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 69b51259a2)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 20:36:41 +02:00
Fabrice Fontaine
1536f80f4d package/pure-ftpd: fix CVE-2020-9274
An issue was discovered in Pure-FTPd 1.0.49. An uninitialized pointer
vulnerability has been detected in the diraliases linked list. When the
*lookup_alias(const char alias) or print_aliases(void) function is
called, they fail to correctly detect the end of the linked list and try
to access a non-existent list member. This is related to init_aliases in
diraliases.c.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 1d8426b32c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 20:34:03 +02:00
Fabrice Fontaine
f58cb810c6 package/hiredis: install alloc.h
This will fix build of collectd, proftpd ... with latest hiredis

Fixes:
 - http://autobuild.buildroot.org/results/f5afe60defd63461a5fc06b26bd4759fb5f56a8f
 - http://autobuild.buildroot.org/results/45e980c85d170827d3a41e7443cf1088b2d59ead

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit b72be8c48b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 20:28:05 +02:00
Fabrice Fontaine
87ca39ff70 package/hiredis: security bump to version 0.14.1
- Fix CVE-2020-7105: async.c and dict.c in libhiredis.a in hiredis
  through 0.14.0 allow a NULL pointer dereference because malloc return
  values are unchecked.
- Update indentation of hash file (two spaces)

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 40bc86afe9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 20:27:58 +02:00
Fabrice Fontaine
6a62d51f7e package/sdbusplus: needs C++17
sdbusplus needs C++17 since
ca46b9d2e9

This is not needed for host-sdbusplus as libsdbusplus is disabled on
host through --disable-libsdbusplus

Fixes:
 - http://autobuild.buildroot.org/results/65a4652e5b419f03ace109c4b3738e9b997cdabe

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Reviewed-by: John Faith <jfaith@impinj.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit d127c5e4ea)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 20:24:58 +02:00
James Hilliard
ae0bca61ec package/python-pyyaml: security bump to version 5.3.1
Fixes the following security issue:

 386: Prevents arbitrary code execution during python/object/new
 constructor

https://github.com/yaml/pyyaml/pull/386

The hash of the license file changed due to the following diff:

-Copyright (c) 2017-2019 Ingy döt Net
+Copyright (c) 2017-2020 Ingy döt Net

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 9063df44da)
[Peter: mention security impact]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 20:17:57 +02:00
Carlos Santos
e11ad9ebae package/busybox: fix target-finalize hook
It was searching for CONFIG_ASH=y and CONFIG_HUSH=y at $(@D)/.config,
which does not contain the package build path at the target-finalize
step. Use $(BUSYBOX_DIR), instead.

Signed-off-by: Carlos Santos <unixmania@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 9ab1d565ee)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 18:56:12 +02:00
Graham Rhodes
73e918edd5 package/quagga: install quagga to staging
quagga installs libraries that provide interfaces to manage network routing
that can be used by other applications.

Signed-off-by: Graham Rhodes <graham.rhodes@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 1e3cd85e7a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 18:22:29 +02:00
Peter Seiderer
ac1cd30fab package/php: fix aarch64 uclibc-ng compile
The aarch64 compile uses the sys/auxv.h header which is not
provided by uclibc-ng. Add configure.ac patch to check for
the header before using it in ext/standard/crc32.c.

Fixes:

  https://bugs.busybox.net/show_bug.cgi?id=12626

  build/php-7.4.3/ext/standard/crc32.c:26:12: schwerwiegender Fehler: sys/auxv.h: Datei oder Verzeichnis nicht gefunden

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 16e0bf6b9f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 18:12:25 +02:00
Romain Naour
366f19c5db package/gcc: remove stray or1k-musl-5.4.0-20170218 patches
gcc or1k-musl-5.4.0-20170218 was removed in commit
f424b8afa2 but the patch directory was
forgotten.

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit e036d778aa)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 18:10:56 +02:00
Pascal de Bruijn
0798a93d22 package/collectd: keep postgresql_default.conf when needed
$(TARGET_DIR)/usr/share/collectd/postgresql_default.conf
should not be removed when postgresql support is enabled,
as that module tries to load that file by default.

Signed-off-by: Pascal de Bruijn <p.debruijn@unilogic.nl>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 35e845700f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 18:07:17 +02:00
Fabrice Fontaine
2580cf8a2e package/tslib: fix build with headers < 4.16
Commit fedaa28079 fixed build with
headers >= 4.16 but as a side effect, build with headers < 4.16 is now
failing so add an upstream patch

Fixes:
 - http://autobuild.buildroot.org/results/594cd1a0d9e6286eca62b575fd1ba2d3a5e01234

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 7eaf235e58)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 17:35:29 +02:00
Fabrice Fontaine
9fbb644a56 package/tslib: fix build with headers >= 4.16
Fixes:
 - http://autobuild.buildroot.org/results/bc8bc3f1d88f3b64765025fee7f941d30a81ee46

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit fedaa28079)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 17:35:16 +02:00
Baruch Siach
c51d4232b7 package/uacme: mention openssl crypto backend in description
uacme supports OpenSSL as crypto backend since version 1.0.8.

Cc: Nicola Di Lieto <nicola.dilieto@gmail.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b7eacd41bb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 17:34:00 +02:00
Peter Seiderer
6cba3cdfa1 package/mesa3d: disable v3d support for arm if neon is not supported
The v3d driver for arm uses neon instructions unconditionally, so
depend on BR2_ARM_CPU_HAS_NEON.

Fixes:

  http://autobuild.buildroot.net/results/66c4df4ee84b73160dde5fe4437b5abdbd2b50d2

  [1050/1079] Compiling C object 'src/gallium/drivers/v3d/99241e4@@v3d_neon@sta/v3d_tiling.c.o'.
  {standard input}: Assembler messages:
  {standard input}:417: Error: selected processor does not support `vldm r6,{q0,q1,q2,q3}' in ARM mode
  {standard input}:418: Error: selected processor does not support `vst1.8 d0,[r4],r5' in ARM mode
  {standard input}:419: Error: selected processor does not support `vst1.8 d1,[r4],r5' in ARM mode
  {standard input}:420: Error: selected processor does not support `vst1.8 d2,[r4],r5' in ARM mode
  {standard input}:421: Error: selected processor does not support `vst1.8 d3,[r4],r5' in ARM mode
  {standard input}:422: Error: selected processor does not support `vst1.8 d4,[r4],r5' in ARM mode
  {standard input}:423: Error: selected processor does not support `vst1.8 d5,[r4],r5' in ARM mode
  {standard input}:424: Error: selected processor does not support `vst1.8 d6,[r4],r5' in ARM mode

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ff00c284c5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 17:28:47 +02:00
Peter Seiderer
7a2767bd39 package/mesa3d: fix vc4 neon related compile failure
Add mesa3d patch to add a vc4 option to disable
the optional neon support and set it dependent
on BR2_ARM_CPU_HAS_NEON.

Fixes:

  http://autobuild.buildroot.net/results/6387b0a99e1a0922811919623d9a10b0943988df

  [1086/1254] Compiling C object 'src/gallium/drivers/vc4/691f666@@vc4_neon@sta/vc4_tiling_lt_neon.c.o'.
  {standard input}: Assembler messages:
  {standard input}:334: Error: selected processor does not support `vldm r4,{q0,q1,q2,q3}' in ARM mode
  {standard input}:335: Error: selected processor does not support `vst1.8 d0,[r3],r2' in ARM mode
  {standard input}:336: Error: selected processor does not support `vst1.8 d1,[r3],r2' in ARM mode
  {standard input}:337: Error: selected processor does not support `vst1.8 d2,[r3],r2' in ARM mode
  {standard input}:338: Error: selected processor does not support `vst1.8 d3,[r3],r2' in ARM mode
  {standard input}:339: Error: selected processor does not support `vst1.8 d4,[r3],r2' in ARM mode
  {standard input}:340: Error: selected processor does not support `vst1.8 d5,[r3],r2' in ARM mode
  {standard input}:341: Error: selected processor does not support `vst1.8 d6,[r3],r2' in ARM mode

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 85c95e3614)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 17:28:29 +02:00
Romain Naour
0219439a06 package/gcc: bump 9.x series to version 9.3.0
Remove upstream patch [1]
Rebase and rename 0002-xtensa-fix-PR-target-91880.patch
and 0003-or1k-Fix-issue-with-set_got-clobbering-LR-r9.patch

Tested using gitlab with Qemu runtime testing series [2] [3].

[1] https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=2e1e7ad18e121663082525a872f0d6fb32db4535
[2] https://gitlab.com/kubu93/buildroot/pipelines/125828238
[3] http://patchwork.ozlabs.org/project/buildroot/list/?series=159088

See:
https://gcc.gnu.org/pipermail/gcc-announce/2020/000161.html

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f6bf6281f0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 09:10:57 +02:00
Romain Naour
56809418f0 package/gcc: bump 8.x series to version 8.4.0
Remove upstream patch [1].
Rebase and rename 0002-xtensa-fix-PR-target-91880.patch

Tested using gitlab w/ Qemu runtime testing series [2] [3].

[1] https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=fba5d9b4c0f4488281efbeef56c100bb52e55165
[2] https://gitlab.com/kubu93/buildroot/pipelines/124684030
[3] http://patchwork.ozlabs.org/project/buildroot/list/?series=159088

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b7c2a2f22e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 09:10:48 +02:00
Carlos Santos
b3b746a156 linux: run depmod only if modules are enabled
If the kernel configuration CONFIG_MODULES disabled, there's no
/lib/modules/<version> directory, causing this:

depmod: ERROR: could not open directory [...]/target/lib/modules/4.19.8: No such file or directory
depmod: FATAL: could not search modules: No such file or directory
Makefile:745: recipe for target 'target-finalize' failed

Fixes:

https://gitlab.com/buildroot.org/buildroot/-/jobs/483712831
https://gitlab.com/buildroot.org/buildroot/-/jobs/483712817
https://gitlab.com/buildroot.org/buildroot/-/jobs/483712814
https://gitlab.com/buildroot.org/buildroot/-/jobs/483712796
https://gitlab.com/buildroot.org/buildroot/-/jobs/483712729
https://gitlab.com/buildroot.org/buildroot/-/jobs/483712727
https://gitlab.com/buildroot.org/buildroot/-/jobs/483712698
https://gitlab.com/buildroot.org/buildroot/-/jobs/483712691
https://gitlab.com/buildroot.org/buildroot/-/jobs/483712660
https://gitlab.com/buildroot.org/buildroot/-/jobs/483712573
https://gitlab.com/buildroot.org/buildroot/-/jobs/483712574

Reported-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Carlos Santos <unixmania@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 43f41a7bf8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 09:06:39 +02:00
Carlos Santos
8f5a610fe8 linux: Allow modprobe for out-of-tree modules
When a package installs a kernel module, it is currently not possible to
have it loaded with modprobe or when the kernel requests an alias for
it, as the module is not listed in /lib/modules/<kernel-version>/modules.dep
and the associated files.

So, we need to run depmod after all packages are installed, to register
any such out-of-tree module.

This means we should be able to let go of calling depmod at the time the
kernel is installed, but if we pass an invalid command, the kernel
whines:

      DEPMOD  5.4.27
    ./scripts/depmod.sh: 46: /dev/null: Permission denied
    make[2]: *** [Makefile:1326: _modinst_post] Error 126

This is because the kernel does not directly call to depmod, but uses a
wrapper that is not happy if depmod is not depmod.

Since the call to depmod does not cost much, we just keep it.

Signed-off-by: Carlos Santos <unixmania@gmail.com>
[yann.morin.1998@free.fr:
  - keep calling depmod when installing kernel
  - expand commit log
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 82e7656400)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 09:04:31 +02:00
Fabrice Fontaine
f99603a29e package/screen: add linux-pam optional dependency
linux-pam is an optional dependency for more than 5 years:
https://git.savannah.gnu.org/cgit/screen.git/commit/src/configure.ac?h=screen-v4&id=a8dc1fb5b47ee52c79884fc5270805a3a39cda4a

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit c685bded08)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 08:50:09 +02:00
Romain Naour
c3b2644723 package/localedef: add missing dependeny on host-gawk
While reviewing the patch [1], we noticed that host-gawk dependency
was missing. It may trigger an issue if gawk is missing on the host
since it's a "critical tool" [2].

Indeed, localedef package is actually glibc sources that check gawk
host binary.

host-gawk is listed in glibc package dependency [3], so add it to
localedef too.

[1] af90a104c0
[2] https://sourceware.org/git/?p=glibc.git;a=blob;f=configure.ac;h=49b900c1ed68fa4dd1dadca809ceb6e8b237a89c;hb=9ea3686266dca3f004ba874745a4087a89682617#l1021
[3] https://git.buildroot.net/buildroot/tree/package/glibc/glibc.mk?h=2020.02#n38

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 7a74bad0b4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-07 08:23:35 +02:00
Jörg Krause
312a28cf64 package/{bluez5_utils, bluez5_utils-headers}: security bump to version 5.54
Fixes the following security issue:

- CVE-2020-0556: Improper access control in subsystem for BlueZ before
  version 5.54 may allow an unauthenticated user to potentially enable
  escalation of privilege and denial of service via adjacent access

  https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00352.html

Changes since version 5.52:

5.54:
  Fix issue with HOGP to accept data only from bonded devices.
  Fix issue with A2DP sessions being connected at the same time.
  Fix issue with class UUID matches before connecting profile.
  Add support for handling MTU auto-tuning option for AVDTP.
  Add support for new policy for Just-Works repairing.
  Add support for Enhanced ATT bearer (EATT).

5.53:
  Fix issue with handling unregistration for advertisment.
  Fix issue with A2DP and handling recovering process.
  Fix issue with udpating input device information.
  Add support for loading blocked keys.

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 3a678c952f)
[Peter: mention security issue]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-06 23:50:19 +02:00
Fabrice Fontaine
b2d69924ff package/civetweb: add zlib optional dependency
zlib is an optional dependency since version 1.11 and
6b8b159353

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 41dfe5707c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-06 18:16:38 +02:00
Laurent Hartanerot
9e4f4bfcfb package/rcw: add missing host-python dependency
The rcw tool that compiles RCW sources file need host-python

Signed-off-by: Laurent Hartanerot <laurent.hartanerot@atos.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit cd5efaeb67)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-06 18:15:32 +02:00
Peter Seiderer
40d7bc04e5 package/libinput: bump version to 1.15.4
For details see [1].

[1] https://lists.freedesktop.org/archives/wayland-devel/2020-March/041332.html

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 1a414894cf)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-06 18:13:59 +02:00
Peter Korsgaard
4762644078 {linux, linux-headers}: bump 4.{4, 9, 14, 19}.x / 5.4.x series
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit caaee4fd66)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-06 17:19:34 +02:00
Thomas Petazzoni
6bba85671b support/scripts/check-kernel-headers.sh: do not print error for loose checks
The C program inside check-kernel-headers.sh has two checking mode: a
strict and a loose one.

In strict mode, we want the kernel headers version declared by the
user to match exactly the one of the toolchain.

In loose mode, we want the kernel headers version of the toolchain to
be greater than or equal to the one declared by the user: this is used
when we have a toolchain that has newer headers than the latest
version known by Buildroot.

However, in loose mode, we continue to show the "Incorrect kernel
headers version" message, even though we then return a zero error
code. This is very confusing: you see an error displayed on the
terminal, but the build goes on.

We fix that by first doing the loose check first, and returning 0 if
it succeeds. And then we move on with the strict check where we want
the version to be identical.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit c3c4b3dfa8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-06 17:18:25 +02:00
Bernd Kuhls
6a6a7732da package/kodi-screensaver-rsxs: switch license to GPL-2.0+
Upstream commit
dbb8853696

removed lib/rsxs-1.0 which was licensed as GPL-3.0.

During the latest version bump
https://git.buildroot.net/buildroot/commit/package/kodi-screensaver-rsxs?id=e68bcc985fbb17e50cfa2944807090b6cd57c871

KODI_SCREENSAVER_RSXS_LICENSE_FILES = lib/rsxs-1.0/COPYING

was removed but the corresponding license change was forgotton.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 4765abdd52)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-06 17:17:48 +02:00
Thomas Petazzoni
5b5b681c7d toolchain/toolchain-external: fix call to check_kernel_headers_version
The external toolchain configure step calls the
check_kernel_headers_version make function to compare the kernel
headers version declared in the configuration with the actual kernel
headers of the toolchain.

This function takes 4 arguments, but due to a missing comma what
should be the first two arguments are both passed into the first
argument. Due to this, when check_kernel_headers_version does:

	if ! support/scripts/check-kernel-headers.sh $(1) $(2) $(3) \
		$(if $(BR2_TOOLCHAIN_HEADERS_LATEST),$(4),strict); \

Then:

  $(1) contains "$(BUILD_DIR) $$(call toolchain_find_sysroot,$$(TOOLCHAIN_EXTERNAL_CC))"
  $(2) contains "$$(call qstrip,$$(BR2_TOOLCHAIN_HEADERS_AT_LEAST))"
  $(3) contains "$$(if $$(BR2_TOOLCHAIN_EXTERNAL_CUSTOM),loose,strict))"

So from the point of view of check-kernel-headers.sh, it already has
four arguments, and therefore the additional argument passed by:

   $(if $(BR2_TOOLCHAIN_HEADERS_LATEST),$(4),strict); \

is ignored, defeating the $(BR2_TOOLCHAIN_HEADERS_LATEST) test.

The practical consequence is that a toolchain that has 5.4 kernel
headers but declared as using 5.3 kernel headers does not abort the
build, because the check is considered "loose" while it should be
"strict".

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 96f8d0bb46)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-04-06 17:08:41 +02:00
Thomas De Schampheleire
bf67e6823f Makefile: assemble package file lists before calling post-build scripts
Post-build scripts may want to do something based on the list of files
installed by a package. However, since commit
0e2be4db8a the final packages-file-lists.txt
file is only created _after_ the post-build scripts.

Move the assembly of the file lists upwards, before the post-build scripts.

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit d4d52d907b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-28 08:38:50 +01:00
Thomas De Schampheleire
f283e56397 Makefile: fix package file list if FOO_SUBDIR is set
If a package sets a FOO_SUBDIR (meaning its sources are not under
output/build/foo-123 but under output/build/foo-123/$(FOO_SUBDIR)), the
.files-list.txt file were also created under FOO_SUBDIR, due to which the
logic in the Makefile would not find it.

Change the instrumentation steps so that the file list is directly under the
package dir, ignoring the subdir.

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 9f876c7f16)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-28 08:38:01 +01:00
Thomas Petazzoni
8c4fc019ee Makefile: don't hang the build if there are no file lists
In very limited configurations, it is possible to have a case where no
.files-list-staging.txt files are created. In this case:

    cat $(sort $(wildcard $(BUILD_DIR)/*/.files-list-staging.txt)) > \
        $(BUILD_DIR)/packages-file-list-staging.txt

becomes:

    cat > \
        $(BUILD_DIR)/packages-file-list-staging.txt

which of course makes the build hang.. forever.

So we fix this by checking the list is not empty. To keep the code
readable, we introduce an intermediate variable to store the list of
these files.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
[yann.morin.1998@free.fr: always create the file, even if empty]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit aa1e74745c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-28 08:35:57 +01:00
Alexander Mukhin
958c6986a3 package/radvd: drop dependency on flex runtime library
Radvd has its own main(), and does not use yywrap() from libfl.so,
because scanner.l module contains noyywrap option. So, none of the
functions exported by libfl.so are used, and there's no need to have
the flex runtime on target.

Signed-off-by: Alexander Mukhin <alexander.i.mukhin@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 6274868bd1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-28 08:33:51 +01:00
Bernd Kuhls
0168c3d725 package/samba4: bump version to 4.11.7
Release notes: https://www.samba.org/samba/history/samba-4.11.7.html

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 98cd8870f8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-28 08:31:25 +01:00
Bernd Kuhls
b439c1d695 package/php: security bump version to 7.4.4
Changelog: https://www.php.net/ChangeLog-7.php#7.4.4

Fixes CVE-2020-7064, CVE-2020-7065 & CVE-2020-7066.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 51cd6b8641)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-28 08:23:34 +01:00
Bernd Kuhls
d8e8d4c7bf package/tor: security bump version to 0.4.2.7
Release notes: https://blog.torproject.org/new-releases-03510-0419-0427

Fixes CVE-2020-10592 & CVE-2020-10593.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[yann.morin.1998@free.fr: two spaces in hash files]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit b356d9f92b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-28 00:08:41 +01:00
Yann E. MORIN
ea8b8e5a9b boot/barebox-aux: exclude git downloads from hash check
When barebox, and thus barebox-aux, are downloaded from a git tree, then
barebox-aux download fails because a hash check is attempted on the
downloaded archive:

    Could not fetch special ref 'v2020.03.0'; assuming it is not special.
    ERROR: No hash found for barebox-aux-v2020.03.0.tar.gz

This is because we only exclude from the check the archive of the bare
barebox:

    BR_NO_CHECK_HASH_FOR += $(BAREBOX_SOURCE)

However, the default name of an archive is based on the package name,
which for barebox-aux is not 'barebox'.

Since barebox-aux really uses the exact same source as the bare barebox,
it should also share the archive name.

This has two direct consequences and advantages:

  - the hash check is completely avoided for the barebox-aux archive;

  - the barebox-aux archive is not downloaded as it is already
    downloaded for barebox.

Reported-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Tested-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 451ee6fa54)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 23:46:41 +01:00
Yann E. MORIN
8528061765 boot/barebox-aux: store downloads in same dir as bare barebox
barebox and barebox-aux are really the same package, from the same URL
and the same version. They deserve being stored in the same directory.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Yegor Yefremov <yegorslists@googlemail.com>
Tested-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit ca7fa117b1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 23:46:28 +01:00
Robert Hancock
90e6eec1e8 linux-tools: perf: Add dependencies for binutils and openssl
perf auto-detects and uses the libbfd (from binutils) and openssl
libraries if they are detected and happen to be built before perf is,
but if they're not, or if per-package directories are enabled, it won't
detect these libraries. Explicitly add dependencies on these packages if
they are enabled, and disable the feature if not, so that the behavior
is deterministic.

Signed-off-by: Robert Hancock <hancock@sedsystems.ca>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 013cc68bf7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 23:32:30 +01:00
Titouan Christophe
7aff262ebe package/redis: security bump to v5.0.8
From the release notes:
https://raw.githubusercontent.com/antirez/redis/5.0/00-RELEASENOTES

================================================================================
Redis 5.0.8     Released Thu Mar 12 16:05:41 CET 2020
================================================================================

Upgrade urgency HIGH: This release fixes security issues.

[FIX] revisit CVE-2015-8080 vulnerability

Signed-off-by: Titouan Christophe <titouan.christophe@railnova.eu>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit caed3878a6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 23:24:57 +01:00
Joseph Kogut
ff495fd1a1 package/llvm: specify LLVM_ENABLE_BINDINGS=OFF
LLVM builds bindings for other languages such as Go and OCaml when the
appropriate dependencies can be found. We currently don't support
building these bindings in Buildroot, as they're currently unused by any
package.

Building these bindings was originally disabled by overriding the
dependencies with values indicating that they were not found.

Newer versions of LLVM no longer disable the OCaml bindings when overriding
OCAMLFIND. Consequently, the build process attempts to install the bindings
to the default location on the host of /usr/lib/ocaml/llvm, causing a
permissions error and build failure.

Additionally, LLVM has since added the variable LLVM_ENABLE_BINDINGS to
control whether bindings are enabled, so we override that to disable the
bindings.

Signed-off-by: Joseph Kogut <joseph.kogut@gmail.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit e6a1ee9a8a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 23:18:18 +01:00
Yann E. MORIN
49dcc6eb09 fs/initramfs: fix show-info
The initramfs is not a reall filesystem, so it does not use the
$(rootfs) infrastructure.

As a consequence, the usual rootfs-related variables are not set,
especially the name, type, and dependencies of the (non-)filesystem.

Yet, it is present in the list of rootfs to build, and thus we end
up including it in the output of show-info. But the missing variables
yield an incorrect json:

    "": {
        "type": "",
        "virtual": false,
        "version": "",
        "licenses": "",
        "dl_dir": "",
        "install_target": ,
        "install_staging": ,
        "install_images": ,
        "downloads": [ ],
        "dependencies": [ ],
        "reverse_dependencies": [ ]
    },

First, the object key is empty; second, the install_target,
install_staging, and install_images values are empty, which is not
valid (if they were null, that be OK though). Third, this is clearly
the layout of a 'package' entry, not that of a 'rootfs' entry.

An option to fix that would be to actually make use of the rootfs
infra. However, that would mean doing a lot of work for nothing
(there is actually nothing to do, yet the infra would still do a lot
of preparatory and clean up work).

The alternative is pretty simple: declare and set the variables as if
it were a real filesystem, so that show-info can filter it to the
proper layout and can spit out appropriate content (even if fake).

The third option would be to teach show-info (and its internal
implementation, the macro json-info) to ignore specific cases, like
no-name items, or replace empty values with null, or whatnots. This
again would be quite a lot of work for a single occurence.

So we go for the simple faked variables.

We add linux as a dependency, so that the graph-depends also properly
represent the dependency chain, which ends up with something liKe:

              ALL
               |
               v
        rootfs-initramfs
         |            |
         v            v
       linux     rootfs-cpio

which is pretty fitting in the end.

Reported-by: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Tested-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b42db7db9f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 23:13:12 +01:00
Thomas Petazzoni
cbac8a048c boot/arm-trusted-firmware: add optional host-dtc dependency
Some ATF configurations, such as the ones for the STM32MP1 processor
family, require DTC during the build as Device Tree files are
used. Without dtc, the build fails:

/bin/sh: 1: dtc: not found
dtc version too old (), you need at least version 1.4.4
plat/st/stm32mp1/platform.mk:239: recipe for target 'check_dtc_version' failed
make[1]: *** [check_dtc_version] Error 1

To solve this, this commit implements a
BR2_TARGET_ARM_TRUSTED_FIRMWARE_NEEDS_DTC option, in a way that mimics
the BR2_TARGET_UBOOT_NEEDS_DTC option we already have for the U-Boot
package.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit ddbb5dbd83)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 23:03:48 +01:00
Alexander Dahl
f80fb5bc54 package/monit: fix URL in hash file comment
Previous URL gives:

    % curl https://mmonit.com/monit/dist/monit-5.25.3.tar.gz.sha256
    c10258c8839d20864d30390e7cbf2ff5e0480a67a6fb80c02aa457d6e3390569 monit-5.25.3.tar.gz

Current URL is:

    % curl https://mmonit.com/monit/dist/monit-5.26.0.tar.gz.sha256
    87fc4568a3af9a2be89040efb169e3a2e47b262f99e78d5ddde99dd89f02f3c2 monit-5.26.0.tar.gz

This was probably just forgotten on the last version bump.

Fixes: ad250c3d18 ("package/monit: bump to version 5.26.0")
Signed-off-by: Alexander Dahl <post@lespocky.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6fb1eb95fe)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 22:49:01 +01:00
Yann E. MORIN
79f1c0cd18 package/localedef: fix dependencies
localedef needs bison to satisfy a .y.c rule to generate a parser for
plural forms, to ultimately generate data for the target. So we do not
want to depend on the host-provided bison; we want to build our own (for
reproducibility).

localedef is a host-only package, and dependencies are not inherited
from the target variant, so we need to make them explicit host
dependencies.

And move the assignment after all the download-related variables.

Reported-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit af90a104c0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 22:42:31 +01:00
Thomas Petazzoni
00f09e30ab Makefile: fix locale purge when BR2_PER_PACKAGE_DIRECTORIES=y
With BR2_PER_PACKAGE_DIRECTORIES=y, we have the following code in the
main Makefile:

target-finalize: $(PACKAGES) $(TARGET_DIR) host-finalize
	@$(call MESSAGE,"Finalizing target directory")
	$(call per-package-rsync,$(sort $(PACKAGES)),target,$(TARGET_DIR))
	$(foreach hook,$(TARGET_FINALIZE_HOOKS),$($(hook))$(sep))

The per-package-rsync call creates the global $(TARGET_DIR) from the
per-package $(TARGET_DIR). Then, we call the TARGET_FINALIZE_HOOKS.

One of the TARGET_FINALIZE_HOOKS, PURGE_LOCALES, remove locales that
are not desired by the user. It does so using a loop with the
$(wildcard ...) function.

However, the $(wildcard ...) function is expanded at the moment the
rule is evaluated. And with per-package directory, at the time the
rule is evaluated, the global $(TARGET_DIR) is empty, so $(wildcard
...) will return nothing. It is indeed only after the call to
per-package-rsync that the TARGET_DIR will be populated.

This commit fixes that by moving away from $(wildcard ...) and use a
shell test instead, since we are anyway in big block of shell code.

With this, locales are properly purged again when
BR2_PER_PACKAGE_DIRECTORIES=y.

Fixes: c4e6d5c8be ("core: implement per-package SDK and target")
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
[yann.morin.1998@free.fr:
  - make the style look like the code around (no space in front of ;)
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 658a80ec73)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 08:19:24 +01:00
Thomas De Schampheleire
1455754e50 package/syslog-ng: fix build if net-snmp is installed on the host
If syslog-ng is selected in Buildroot and net-snmp is not, but net-snmp is
found on the host machine (at least its net-snmp-config script) then
compilation of syslog-ng fails with:

  CC       modules/snmp-dest/modules_snmp_dest_libsnmpdest_la-snmpdest-grammar.lo
  CC       modules/snmp-dest/modules_snmp_dest_libsnmpdest_la-snmpdest.lo
  CC       modules/snmp-dest/modules_snmp_dest_libsnmpdest_la-snmpdest-plugin.lo
arm-none-linux-gnueabi-gcc: ERROR: unsafe header/library path used in cross-compilation: '-I/usr/include'
make[3]: *** [Makefile:17397: modules/snmp-dest/modules_snmp_dest_libsnmpdest_la-snmpdest-grammar.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
arm-none-linux-gnueabi-gcc: ERROR: unsafe header/library path used in cross-compilation: '-I/usr/include'
make[3]: *** [Makefile:17404: modules/snmp-dest/modules_snmp_dest_libsnmpdest_la-snmpdest.lo] Error 1
arm-none-linux-gnueabi-gcc: ERROR: unsafe header/library path used in cross-compilation: '-I/usr/include'
make[3]: *** [Makefile:17411: modules/snmp-dest/modules_snmp_dest_libsnmpdest_la-snmpdest-plugin.lo] Error 1
make[2]: *** [Makefile:21428: all-recursive] Error 1
make[1]: *** [Makefile:8740: all] Error 2
make[1]: Leaving directory '.../buildroot/output/build/syslog-ng-3.25.1'
make: *** [package/pkg-generic.mk:269: .../buildroot/output/build/syslog-ng-3.25.1/.stamp_built] Error 2

The path /usr/include is obtained via /usr/bin/net-snmp-config.

The fix comprises two parts:
1. only enable net-snmp support in syslog-ng if the net-snmp package is
enabled in Buildroot
2. for the case where net-snmp is selected in Buildroot, fix the configure
script of syslog-ng to allow parsing --with-netsnmp=<path> correctly.

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Reviewed-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 4ff6e52392)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 07:47:20 +01:00
Thomas Petazzoni
efae6ca603 package/pkg-generic.mk: create directories before calling hooks
In commit 0e2be4db8a
("package/pkg-generic: make file list logic parallel build
compatible"), the logic to create the list of files installed by a
particular package was significantly reworked to be compatible with
top-level parallel build.

Before this commit, there was only a after-install step of listing the
files in HOST_DIR/TARGET_DIR/STAGING_DIR. But after this commit, we
now have a before-install logic and an after-install logic.

It turns out that when the before-install logic is called for the very
first host package, $(HOST_DIR) doesn't exist yet, and therefore the
cd $(2) fails, with an error message:

/bin/sh: line 0: cd: /home/thomas/buildroot/output/host: No such file or directory

In fact, $(HOST_DIR), $(STAGING_DIR), $(TARGET_DIR) and
$(BINARIES_DIR) are created by the make rules for host installation,
staging installation, target installation and images installation, but
*after* calling the step_start hooks.

So, we simply fix this problem by creating the directories *before*
calling the step_start hooks.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit c84ce1f98c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 07:44:17 +01:00
Peter Seiderer
25723bf2e9 package/wireshark: add missing qt5 dependencies
- BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
- !BR2_arc

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit fade0f6088)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 07:42:43 +01:00
Peter Seiderer
9860ae2e0f package/pinentry: add missing qt5 dependencies
- BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
- !BR2_arc

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 4a1c35f0db)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 07:40:47 +01:00
Peter Seiderer
e1c91acb50 package/qt5: enable for xtensa
Add upstream patch to fix double-conversion compile for xtensa
and drop dependency on !BR_xtensa.

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 572b25c0d4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-27 07:39:09 +01:00
Peter Seiderer
63c6895b4c package/qt5: enable for nios2
The double-conversion support for nios2 is already enabled
by commit [1], so drop dependency on !BR2_nios2.

[1] https://git.buildroot.net/buildroot/commit/?id=e2fdb41f711db8894f9c5c83f32250728d4c3aa9

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 572e371f3c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-21 23:32:47 +01:00
Carlos Santos
a7d330f95e package/sysklogd: fix installation path of the daemons
Use "--exec-prefix=/" to install syslogd and klogd at /sbin, as required
by the init scripts. This also ensures that the BusyBox counterparts are
not installed.

Update the systemd unit files, accordingly.

Signed-off-by: Carlos Santos <unixmania@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 33642d8d95)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-21 22:57:36 +01:00
Fabrice Fontaine
1c2ec3ece2 package/polkit: fix build with NLS
Fixes:
 - http://autobuild.buildroot.org/results/258b734e14f8f31355eba1ddb734213bc3f29591

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 0c08a04e78)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-21 22:52:18 +01:00
Adam Duskett
9231ffe10b package/polkit: add linux-pam as a dependency if linux-pam is selected
Without linux-pam built first, polkit will throw a configuration error:
configure: error: Could not find pam/pam-devel, please install the needed packages.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 35a0878aa9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-21 22:51:44 +01:00
Adam Duskett
751f657689 package/gssdp: explicitly disable vapi
Currently, vapi support does not work with meson due to meson calling vapigen
directly instead of the vala wrapper. As such, when building typelib files for
gobject-introspection, vapigen fails to find the proper .gir files and fails
to build.

Explicitly disable vapi until a fix for vapi is made.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 9de3b9c094)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-21 22:30:31 +01:00
Anatoly Borodin
70d41a3966 package/ffmpeg: fix typo "--enable-bsfs" -> "--enable-bsf"
Fix ffmpeg configuration when BR2_PACKAGE_FFMPEG_BSFS is not default ("all"):

	Unknown option "--enable-bsfs=h264_metadata".
	See ./configure --help for available options.
	package/pkg-generic.mk:254: recipe for target '/root/buildroot/output/build/ffmpeg-4.2.2/.stamp_configured' failed

The option is named according to the scheme "--enable-SINGULAR=..." /
"--disable-PLURAL".

The typo is present since the release 2014.02:

https://git.buildroot.net/buildroot/commit/package/ffmpeg/ffmpeg.mk?id=62ab07ef769bd6504fe1db144aaac3fd45db9dad

Signed-off-by: Anatoly Borodin <anatoly.borodin@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f783486d07)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-21 21:08:45 +01:00
Carlos Santos
a17e2522cf package/util-linux: add missing SOB to patches
It is required that all patches in packages have the Signed-off-by of
the contributor who brought them into Buildroot.

Signed-off-by: Carlos Santos <unixmania@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 94784f092b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-21 21:02:45 +01:00
Carlos Santos
6c42b08b51 package/util-linux: fix build for riscv64 and powerpc64le
Pull two upstream patches that fix the declaration of pidfd_open and
pidfd_send_signal.

Fixes:
  http://autobuild.buildroot.net/results/2396b04478f9d358b94f2e2e05540625ddc9f205/
  http://autobuild.buildroot.net/results/ed4b5ec61bd33d3ccf0ebb16000af46d0499366d/

Signed-off-by: Carlos Santos <unixmania@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit e02356ebb7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-21 21:02:40 +01:00
Romain Naour
9f9b4ca64b package/gcc: disable gcc 9.x for csky
When building a toolchain with upstream gcc 9.x the build
fail due to several issues.

Note: The upstream Binutils support csky target since
release 2.32 but the support was never enabled in the
Buildroot packaging. So the latest version (2.33.1) was
tested here.

[upstream gcc 9.x w/ glibc csky fork with binutils csky for or binutils 2.33.1]
In file included from <command-line>:
./../include/libc-symbols.h:534:26: error: '__EI___errno_location' specifies less restrictive attributes than its target '__errno_location': 'const', 'nothrow' [-Werror=missing-attributes]
  534 |   extern __typeof (name) __EI_##name \

[upstream gcc 9.x w/ glibc 2.30 w/ binutils csky fork]
/tmp/ccThLRhb.s: Assembler messages:
/tmp/ccThLRhb.s:10: Error: invalid or unsupported encoding in .cfi_personality
/tmp/ccThLRhb.s:11: Error: invalid or unsupported encoding in .cfi_lsda

[upstream gcc 9.x w/ glibc 2.30 w/ binutils 2.33.1]
build/elf/librtld.os: in function `__sync_fetch_and_add_2':
libgcc/config/csky/linux-atomic.c:116: undefined reference to `__kernel_cmpxchg'

Currenlty, only the toolchain using binutils, gcc, glibc
fork produce a working toolchain. So disable gcc 9.x for
csky.

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Guo Ren <guoren@kernel.org>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 7542a59601)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-21 21:01:05 +01:00
Romain Naour
2d6dc56cd9 package/gcc: fix download url when using upstream gcc for csky
When the csky cpu support was added [1], the gcc download url was selected
depending on the csky cpu architecture (BR2_csky) rather than the csky gcc
fork version (BR2_GCC_VERSION_CSKY)[2].

When adding gcc 9.x version [3], we forgot to update the condition in order
to use the url to the gcc csky fork only when BR2_GCC_VERSION_CSKY=y.

Due to this error, the toolchain build with the upstream gcc 9.x for csky
cpu is broken due a download error.

Fix this by using BR2_GCC_VERSION_CSKY instead of BR2_csky.

Fixes:
https://gitlab.com/kubu93/buildroot/-/jobs/470072924

[1] 7873a5bd5e
[2] https://git.buildroot.net/buildroot/tree/package/gcc/gcc.mk?id=7873a5bd5ebbeb1674293dae6b06b50f0a1f2184#n19
[3] 089000eccf

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Guo Ren <guoren@kernel.org>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit a85b464b94)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-21 20:52:04 +01:00
John Keeping
df35b028ea package/pkg-meson.mk: fix multiple _MESON_EXTRA_BINARIES
If multiple entries are specified for _MESON_EXTRA_BINARIES, the current
sed expression will only replace the first one.

Specifically, from GNU sed 4.8 the manual says:

    /regexp/
        Match  lines matching the regular expression regexp.  Matching
        is performed on the current pattern space, which can be modified
        with commands such as ``s///''.

so after the first binary has been added, the next entry no longer
matches since the pattern space has been modifed.

Instead of adding a script for each value, apply the match once and add
a subsitution for all entries at once.

Signed-off-by: John Keeping <john@metanate.com>
Tested-by: Peter Seiderer <ps.report@gmx.net>
[yann.morin.1998@free.fr: do a single substitution]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit a1e3c7b693)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-21 20:44:30 +01:00
Gleb Mazovetskiy
0ab3bcee8c meson: Strip quotes from BR2_ENDIAN
The values in the cross-compilation file are expected to be quoted with
single quotes, which we have in our template.

However, the endian value we are injecting comes from Kconfig, so it is
double-quoted, and those quotes end up in the cross-compilation files we
generate (the internal one, and the SDK one):

    endian = '"little"'

So qstrip the value before we inject it.

Propagate the fix to the two generated files by using the same variable
HOST_MESON_TARGET_ENDIAN in both cases, rather than replicating the
(flawed) logic.

While at it, also use the common GCC_TARGET_CPU variable for the SDK
file too.

Signed-off-by: Gleb Mazovetskiy <glex.spb@gmail.com>
Reviewed-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 92eca65ddf)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-21 20:40:37 +01:00
Gleb Mazovetskiy
2989bcf09d package/pkg-meson.mk: fix cross-compilation.conf
$$(STAGING_DIR) -> $(STAGING_DIR) in PKG_MESON_INSTALL_CROSS_CONF.

$$ resulted in `$(STAGING_DIR)` in the file instead of the expanded
value.

Note that this change only affects the etc config at:
host/etc/meson/cross-compilation.conf

Per-package cross-compilation.conf files are already correct.

Reviewed-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Gleb Mazovetskiy <glex.spb@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 3fb784afb1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-21 20:38:04 +01:00
Fabrice Fontaine
9e07a36013 package/samba4: needs host-python3
host-python3 is a mandatory dependency since bump to version 4.10.0 and
5ddff307b4
because buildtools/bin/waf shebang is set to "/usr/bin/env python3"

Fixes:
 - http://autobuild.buildroot.org/results/2634eb7824beb34f485cf40670f6959515f008ad

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit bf341117f6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-03-21 20:05:13 +01:00
154 changed files with 2605 additions and 668 deletions

35
CHANGES
View File

@@ -1,3 +1,38 @@
2020.02.1, released April 10th, 2020
Important / security related fixes.
core: Also fixup /lib references in libtool .la files, similar
to how it is done for /usr/*.
Various fixes for builds with per-package target/host
directories.
toolchain: Fix kernel headers validation check for external
toolchains. Fix make 4.3+ compatibility in external toolchain
logic.
fs/initramfs: fix show-info so it also shows the usual
rootfs-related variables.
Updated/fixed packages: arm-trusted-firmware, barebox-aux,
bluez5_utils, bubblewrap, busybox, civetweb, cog, collectd,
ffmpeg, gcc, gnutls, gssdp, gvfs, haproxy, hiredis, hostapd,
kmscube, kodi-screensaver-rsxs, libical, libinput, libexif,
libopenssl, libsndfile, linux, linux-tools, llvm, localedef,
mcrypt, mesa3d, meson, monit, nftables, ntp, opencv3,
oprofile, php, pinentry, polkit, pure-ftpd, python-pyyaml,
qt5, quagga, radvd, rcw, redis, rocksdb, samba4, screen,
sdbusplus, swupdate, sysdig, sysklogd, syslinux, syslog-ng,
tor, tslib, uacme, util-linux, vala, vlc,
wireguard-linux-compat, wireguard-tools, wireshark,
wpa_supplicant, xserver_xorg-server
Issues resolved (http://bugs.uclibc.org):
#12711: host-localedef 2.30-20 fails to compile on fedora 32
#12746: "sysdig" package description points to http://sysdig.org, ..
2020.02, released March 8th, 2020
Various fixes.

View File

@@ -92,9 +92,9 @@ all:
.PHONY: all
# Set and export the version string
export BR2_VERSION := 2020.02
export BR2_VERSION := 2020.02.1
# Actual time the release is cut (for reproducible builds)
BR2_VERSION_EPOCH = 1583701800
BR2_VERSION_EPOCH = 1586551000
# Save running make version since it's clobbered by the make package
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
@@ -698,8 +698,9 @@ define PURGE_LOCALES
rm -f $(LOCALE_WHITELIST)
for i in $(LOCALE_NOPURGE) locale-archive; do echo $$i >> $(LOCALE_WHITELIST); done
for dir in $(wildcard $(addprefix $(TARGET_DIR),/usr/share/locale /usr/share/X11/locale /usr/lib/locale)); \
for dir in $(addprefix $(TARGET_DIR),/usr/share/locale /usr/share/X11/locale /usr/lib/locale); \
do \
if [ ! -d $$dir ]; then continue; fi; \
for langdir in $$dir/*; \
do \
if [ -e "$${langdir}" ]; \
@@ -727,6 +728,10 @@ $(TARGETS_ROOTFS): target-finalize
# Avoid the rootfs name leaking down the dependency chain
target-finalize: ROOTFS=
TARGET_DIR_FILES_LISTS = $(sort $(wildcard $(BUILD_DIR)/*/.files-list.txt))
HOST_DIR_FILES_LISTS = $(sort $(wildcard $(BUILD_DIR)/*/.files-list-host.txt))
STAGING_DIR_FILES_LISTS = $(sort $(wildcard $(BUILD_DIR)/*/.files-list-staging.txt))
.PHONY: host-finalize
host-finalize: $(PACKAGES) $(HOST_DIR) $(HOST_DIR_SYMLINK)
@$(call MESSAGE,"Finalizing host directory")
@@ -800,19 +805,19 @@ endif # merged /usr
$(call MESSAGE,"Copying overlay $(d)"); \
$(call SYSTEM_RSYNC,$(d),$(TARGET_DIR))$(sep))
$(if $(TARGET_DIR_FILES_LISTS), \
cat $(TARGET_DIR_FILES_LISTS)) > $(BUILD_DIR)/packages-file-list.txt
$(if $(HOST_DIR_FILES_LISTS), \
cat $(HOST_DIR_FILES_LISTS)) > $(BUILD_DIR)/packages-file-list-host.txt
$(if $(STAGING_DIR_FILES_LISTS), \
cat $(STAGING_DIR_FILES_LISTS)) > $(BUILD_DIR)/packages-file-list-staging.txt
@$(foreach s, $(call qstrip,$(BR2_ROOTFS_POST_BUILD_SCRIPT)), \
$(call MESSAGE,"Executing post-build script $(s)"); \
$(EXTRA_ENV) $(s) $(TARGET_DIR) $(call qstrip,$(BR2_ROOTFS_POST_SCRIPT_ARGS))$(sep))
touch $(TARGET_DIR)/usr
cat $(sort $(wildcard $(BUILD_DIR)/*/.files-list.txt)) > \
$(BUILD_DIR)/packages-file-list.txt
cat $(sort $(wildcard $(BUILD_DIR)/*/.files-list-host.txt)) > \
$(BUILD_DIR)/packages-file-list-host.txt
cat $(sort $(wildcard $(BUILD_DIR)/*/.files-list-staging.txt)) > \
$(BUILD_DIR)/packages-file-list-staging.txt
.PHONY: target-post-image
target-post-image: $(TARGETS_ROOTFS) target-finalize staging-finalize
@rm -f $(ROOTFS_COMMON_TAR)

View File

@@ -160,4 +160,11 @@ config BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES
Names of generated image files that are installed in the
output images/ directory.
config BR2_TARGET_ARM_TRUSTED_FIRMWARE_NEEDS_DTC
bool "Needs dtc"
select BR2_PACKAGE_HOST_DTC
help
Select this option if your ATF board configuration
requires the Device Tree compiler to be available.
endif

View File

@@ -29,6 +29,10 @@ endif
ARM_TRUSTED_FIRMWARE_INSTALL_IMAGES = YES
ifeq ($(BR2_TARGET_ARM_TRUSTED_FIRMWARE_NEEDS_DTC),y)
ARM_TRUSTED_FIRMWARE_DEPENDENCIES += host-dtc
endif
ARM_TRUSTED_FIRMWARE_PLATFORM = $(call qstrip,$(BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM))
ifeq ($(BR2_TARGET_ARM_TRUSTED_FIRMWARE_DEBUG),y)

View File

@@ -25,12 +25,18 @@ $(1)_SOURCE = $$(notdir $$($(1)_TARBALL))
else ifeq ($$(BR2_TARGET_BAREBOX_CUSTOM_GIT),y)
$(1)_SITE = $$(call qstrip,$$(BR2_TARGET_BAREBOX_CUSTOM_GIT_REPO_URL))
$(1)_SITE_METHOD = git
# Override the default value of _SOURCE to 'barebox-*' so that it is not
# downloaded a second time for barebox-aux; also alows avoiding the hash
# check:
$(1)_SOURCE = barebox-$$($(1)_VERSION).tar.gz
else
# Handle stable official Barebox versions
$(1)_SOURCE = barebox-$$($(1)_VERSION).tar.bz2
$(1)_SITE = https://www.barebox.org/download
endif
$(1)_DL_SUBDIR = barebox
$(1)_DEPENDENCIES = host-lzop
$(1)_LICENSE = GPL-2.0 with exceptions
ifeq ($(BR2_TARGET_BAREBOX_LATEST_VERSION),y)

View File

@@ -0,0 +1,60 @@
From 7d68fa68cd9f2987bd85339f3391913a8b0e58c7 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Date: Tue, 24 Mar 2020 10:21:27 +0100
Subject: [PATCH] efi/main.c: include <efisetjmp.h>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Building syslinux against gnu-efi 3.0.10 currently fails with:
syslinux/efi/main.c:33:8: error: unknown type name jmp_buf
33 | static jmp_buf load_error_buf;
| ^~~~~~~
syslinux/efi/main.c: In function local_boot:
syslinux/efi/main.c:189:5: warning: implicit declaration of function longjmp [-Wimplicit-function-declaration]
189 | longjmp(&load_error_buf, 1);
| ^~~~~~~
syslinux/efi/main.c: In function build_gdt:
syslinux/efi/main.c:907:75: warning: taking address of packed member of struct dt_desc may result in an unaligned pointer value [-Waddress-of-packed-member]
907 | status = emalloc(gdt.limit, __SIZEOF_POINTER__ , (EFI_PHYSICAL_ADDRESS *)&gdt.base);
| ^~~~~~~~~
syslinux/efi/main.c: In function efi_main:
syslinux/efi/main.c:1390:7: warning: implicit declaration of function setjmp [-Wimplicit-function-declaration]
1390 | if (!setjmp(&load_error_buf))
| ^~~~~~
make[3]: *** [syslinux/mk/efi.mk:63: main.o] Error 1
This is due to gnu-efi commit 486ba3c3bdd147b7d98159b9e650be60bce0f027
("Do not include efisetjmp.h on efi.h"), in which they state:
Do not include efisetjmp.h on efi.h
People than really want to use efisetjmp implementation can include
the header on their own.
Signed-off-by: leo <leo.sartre@geebol.fr>
So we act as specified, and include <efisetjmp.h> from efi/main.c.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Upstream: https://www.syslinux.org/archives/2020-March/026621.html
---
efi/main.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/efi/main.c b/efi/main.c
index 6a748412..e924cfb1 100644
--- a/efi/main.c
+++ b/efi/main.c
@@ -12,6 +12,7 @@
#include <sys/ansi.h>
#include "efi.h"
+#include <efisetjmp.h>
#include "fio.h"
#include "version.h"
#include "efi_pxe.h"
--
2.25.1

View File

@@ -142,7 +142,7 @@ All these steps rely on the +$(@D)+ variable, which
contains the directory where the source code of the package has been
extracted.
On lines 31..43, we define a user that is used by this package (e.g.
On lines 31..33, we define a user that is used by this package (e.g.
to run a daemon as non-root) (+LIBFOO_USERS+).
On line 35..37, we define a device-node file used by this package

View File

@@ -88,7 +88,7 @@ to +make+ or set in the environment:
Buildroot stores the cached files when using ccache.
+
* +BR2_DL_DIR+ to override the directory in which
Buildroot stores/retrieves downloaded files
Buildroot stores/retrieves downloaded files.
+
Note that the Buildroot download directory can also be set from the
configuration interface, so through the Buildroot +.config+ file. See

View File

@@ -53,7 +53,7 @@ directory.
The exception to +BR2_GLOBAL_PATCH_DIR+ being the preferred method for
specifying custom patches is +BR2_LINUX_KERNEL_PATCH+.
+BR2_LINUX_KERNEL_PATCH+ should be used to specify kernel patches that
are available at an URL. *Note:* +BR2_LINUX_KERNEL_PATCH+ specifies kernel
are available at a URL. *Note:* +BR2_LINUX_KERNEL_PATCH+ specifies kernel
patches that are applied after patches available in +BR2_GLOBAL_PATCH_DIR+,
as it is done from a post-patch hook of the Linux package.

View File

@@ -145,7 +145,7 @@ It is recommended to use the existing mechanisms to set file permissions
The difference between post-build scripts (above) and fakeroot scripts,
is that post-build scripts are not called in the fakeroot context.
+
.Note;
.Note:
Using `fakeroot` is not an absolute substitute for actually being root.
`fakeroot` only ever fakes the file access rights and types (regular,
block-or-char device...) and uid/gid; these are emulated in-memory.

View File

@@ -141,8 +141,8 @@ endif
The documentation uses the
http://www.methods.co.nz/asciidoc/[asciidoc] format.
For further details about the http://www.methods.co.nz/asciidoc/[asciidoc]
syntax, refer to http://www.methods.co.nz/asciidoc/userguide.html[].
For further details about the asciidoc syntax, refer to
http://www.methods.co.nz/asciidoc/userguide.html[].
=== Support scripts

View File

@@ -29,3 +29,8 @@ rootfs-initramfs-show-depends:
ifeq ($(BR2_TARGET_ROOTFS_INITRAMFS),y)
TARGETS_ROOTFS += rootfs-initramfs
endif
# Not using the rootfs infra, so fake the variables
ROOTFS_INITRAMFS_NAME = rootfs-initramfs
ROOTFS_INITRAMFS_TYPE = rootfs
ROOTFS_INITRAMFS_DEPENDENCIES = rootfs-cpio linux

View File

@@ -128,7 +128,7 @@ endif
config BR2_LINUX_KERNEL_VERSION
string
default "5.4.23" if BR2_LINUX_KERNEL_LATEST_VERSION
default "5.4.31" if BR2_LINUX_KERNEL_LATEST_VERSION
default "4.19.98-cip19" if BR2_LINUX_KERNEL_LATEST_CIP_VERSION
default "4.19.98-cip19-rt7" if BR2_LINUX_KERNEL_LATEST_CIP_RT_VERSION
default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \
@@ -338,10 +338,10 @@ config BR2_LINUX_KERNEL_IMAGE_NAME
string "Kernel image name"
depends on BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM
help
The filename of the kernel image, if it is different from the
make target (above). Only Xtensa uses a filename different
from the make target. Defaults to
BR2_LINUX_KERNEL_IMAGE_TARGET_NAME.
The filename of the kernel image, if it is different from
the make target (above). Defaults to
BR2_LINUX_KERNEL_IMAGE_TARGET_NAME. If specified, the
filename is relative to arch/ARCH/boot/.
If unsure, leave it empty.

View File

@@ -1,10 +1,10 @@
# From https://www.kernel.org/pub/linux/kernel/v5.x/sha256sums.asc
sha256 3f28aacdf5deddfdf80bb949884699b96053a3548dc3434552d30dc0bc781eca linux-5.4.23.tar.xz
sha256 a11083f8f809887f6a0f8d4467532385b99418f17998fe6e837807491c276eeb linux-5.4.31.tar.xz
# From https://www.kernel.org/pub/linux/kernel/v4.x/sha256sums.asc
sha256 28bcd3d4201da9feefdf3bcd65c516dd674acbbf45681ce3c7d784c53b33fe03 linux-4.4.215.tar.xz
sha256 236f2f47853700f22b9925cb17917d97ff7120fcc8110ec827c5a030a8129f48 linux-4.9.215.tar.xz
sha256 2318a1ab937580a079351ed20557c336a3d95b664f667b14e3ba49e3271b217a linux-4.14.172.tar.xz
sha256 654bac198d38e03e7bff9e2642b01f498dc0fa5d06198edd14bc30fe7fbf0240 linux-4.19.107.tar.xz
sha256 ea68cb8e9fa255bb1d0402c5aa8f26984f9b1c8607ff3bed5d3284109167f063 linux-4.4.218.tar.xz
sha256 df3a6e615ec4c57b04775e9c018c67045223ac662e696d28fd37baa5114349cd linux-4.9.218.tar.xz
sha256 cb440ac5d20071dcb482e5062958514064b0c5a8375c92653062ea201ae0222c linux-4.14.175.tar.xz
sha256 1e40a0dc6afc95a259f97b80d5f5ef8f89e2ee49e993ba6844e2bc55de361f0e linux-4.19.114.tar.xz
# Locally computed
sha256 18f9ddba0b777d1942d6c81877ba97c4bcd08488e2c409e57dcce866b9de5fc2 linux-cip-4.19.98-cip19.tar.gz
sha256 7d5aeb67da41dc66ef28621ef994ef4403e8b1f5c3df38b1843da20972444280 linux-cip-4.19.98-cip19-rt7.tar.gz

View File

@@ -127,6 +127,8 @@ LINUX_POST_EXTRACT_HOOKS += LINUX_XTENSA_OVERLAY_EXTRACT
LINUX_EXTRA_DOWNLOADS += $(ARCH_XTENSA_OVERLAY_URL)
endif
# We don't want to run depmod after installing the kernel. It's done in a
# target-finalize hook, to encompass modules installed by packages.
LINUX_MAKE_FLAGS = \
HOSTCC="$(HOSTCC) $(HOST_CFLAGS) $(HOST_LDFLAGS)" \
ARCH=$(KERNEL_ARCH) \
@@ -486,7 +488,7 @@ else
# Otherwise, just install the unique image generated by the kernel
# build process.
define LINUX_INSTALL_IMAGE
$(INSTALL) -m 0644 -D $(LINUX_IMAGE_PATH) $(1)/$(LINUX_IMAGE_NAME)
$(INSTALL) -m 0644 -D $(LINUX_IMAGE_PATH) $(1)/$(notdir $(LINUX_IMAGE_NAME))
endef
endif
@@ -526,6 +528,15 @@ define LINUX_INSTALL_TARGET_CMDS
$(LINUX_INSTALL_HOST_TOOLS)
endef
# Run depmod in a target-finalize hook, to encompass modules installed by
# packages.
define LINUX_RUN_DEPMOD
if grep -q "CONFIG_MODULES=y" $(LINUX_DIR)/.config; then \
$(HOST_DIR)/sbin/depmod -a -b $(TARGET_DIR) $(LINUX_VERSION_PROBED); \
fi
endef
LINUX_TARGET_FINALIZE_HOOKS += LINUX_RUN_DEPMOD
# Include all our extensions.
#
# Note: our package infrastructure uses the full-path of the last-scanned

View File

@@ -5,7 +5,7 @@
################################################################################
# Keep the version and patches in sync with bluez5_utils
BLUEZ5_UTILS_HEADERS_VERSION = 5.52
BLUEZ5_UTILS_HEADERS_VERSION = 5.54
BLUEZ5_UTILS_HEADERS_SOURCE = bluez-$(BLUEZ5_UTILS_VERSION).tar.xz
BLUEZ5_UTILS_HEADERS_SITE = $(BR2_KERNEL_MIRROR)/linux/bluetooth
BLUEZ5_UTILS_HEADERS_DL_SUBDIR = bluez5_utils

View File

@@ -1,4 +1,4 @@
# From https://www.kernel.org/pub/linux/bluetooth/sha256sums.asc:
sha256 f7144ce2039202cfac18ccb52426efea11c98e4f6e1bb8041bcb994b8378560a bluez-5.52.tar.xz
sha256 68cdab9e63e8832b130d5979dc8c96fdb087b31278f342874d992af3e56656dc bluez-5.54.tar.xz
sha256 b499eddebda05a8859e32b820a64577d91f1de2b52efa2a1575a2cb4000bc259 COPYING
sha256 ec60b993835e2c6b79e6d9226345f4e614e686eb57dc13b6420c15a33a8996e5 COPYING.LIB

View File

@@ -5,7 +5,7 @@
################################################################################
# Keep the version and patches in sync with bluez5_utils-headers
BLUEZ5_UTILS_VERSION = 5.52
BLUEZ5_UTILS_VERSION = 5.54
BLUEZ5_UTILS_SOURCE = bluez-$(BLUEZ5_UTILS_VERSION).tar.xz
BLUEZ5_UTILS_SITE = $(BR2_KERNEL_MIRROR)/linux/bluetooth
BLUEZ5_UTILS_INSTALL_STAGING = YES

View File

@@ -1,5 +1,5 @@
# Locally computed:
sha256 e5fe7d2f74bd7029b5306b0b70587cec31f74357739295e5276b4a3718712023 bubblewrap-0.4.0.tar.xz
sha256 b9c69b9b1c61a608f34325c8e1a495229bacf6e4a07cbb0c80cf7a814d7ccc03 bubblewrap-0.4.1.tar.xz
# Hash for license files:
sha256 b7993225104d90ddd8024fd838faf300bea5e83d91203eab98e29512acebd69c COPYING
sha256 b7993225104d90ddd8024fd838faf300bea5e83d91203eab98e29512acebd69c COPYING

View File

@@ -4,7 +4,7 @@
#
################################################################################
BUBBLEWRAP_VERSION = 0.4.0
BUBBLEWRAP_VERSION = 0.4.1
BUBBLEWRAP_SITE = https://github.com/containers/bubblewrap/releases/download/v$(BUBBLEWRAP_VERSION)
BUBBLEWRAP_SOURCE = bubblewrap-$(BUBBLEWRAP_VERSION).tar.xz
BUBBLEWRAP_DEPENDENCIES = host-pkgconf libcap

View File

@@ -318,11 +318,11 @@ endef
# Add /bin/{a,hu}sh to /etc/shells otherwise some login tools like dropbear
# can reject the user connection. See man shells.
define BUSYBOX_INSTALL_ADD_TO_SHELLS
if grep -q CONFIG_ASH=y $(@D)/.config; then \
if grep -q CONFIG_ASH=y $(BUSYBOX_DIR)/.config; then \
grep -qsE '^/bin/ash$$' $(TARGET_DIR)/etc/shells \
|| echo "/bin/ash" >> $(TARGET_DIR)/etc/shells; \
fi
if grep -q CONFIG_HUSH=y $(@D)/.config; then \
if grep -q CONFIG_HUSH=y $(BUSYBOX_DIR)/.config; then \
grep -qsE '^/bin/hush$$' $(TARGET_DIR)/etc/shells \
|| echo "/bin/hush" >> $(TARGET_DIR)/etc/shells; \
fi

View File

@@ -38,6 +38,12 @@ else
CIVETWEB_COPT += -DNO_SSL
endif
ifeq ($(BR2_PACKAGE_ZLIB),y)
CIVETWEB_CONF_OPTS += WITH_ZLIB=1
CIVETWEB_LIBS += -lz
CIVETWEB_DEPENDENCIES += zlib
endif
ifeq ($(BR2_PACKAGE_CIVETWEB_SERVER),y)
CIVETWEB_BUILD_TARGETS += build
CIVETWEB_INSTALL_TARGETS += install

View File

@@ -0,0 +1,30 @@
From 575ef199984ae4e8510ed36f8b1ae1babdff8ea9 Mon Sep 17 00:00:00 2001
From: James Hilliard <james.hilliard1@gmail.com>
Date: Thu, 26 Mar 2020 07:48:19 -0600
Subject: [PATCH] fdo: ensure xkb_data.state is not null before calling
xkb_state_key_get_one_sym (#192)
[james.hilliard1@gmail.com: backport from upstream commit
575ef199984ae4e8510ed36f8b1ae1babdff8ea9]
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
platform/cog-platform-fdo.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/platform/cog-platform-fdo.c b/platform/cog-platform-fdo.c
index 043f91d..93ff255 100644
--- a/platform/cog-platform-fdo.c
+++ b/platform/cog-platform-fdo.c
@@ -919,6 +919,9 @@ capture_app_key_bindings (uint32_t keysym,
static void
handle_key_event (uint32_t key, uint32_t state, uint32_t time)
{
+ if (xkb_data.state == NULL)
+ return;
+
uint32_t keysym = xkb_state_key_get_one_sym (xkb_data.state, key);
uint32_t unicode = xkb_state_key_get_utf32 (xkb_data.state, key);
--
2.20.1

View File

@@ -0,0 +1,30 @@
From 817f6c9dafd5ad23722eae0a8f43ba9211f37c95 Mon Sep 17 00:00:00 2001
From: James Hilliard <james.hilliard1@gmail.com>
Date: Thu, 26 Mar 2020 07:49:05 -0600
Subject: [PATCH] fdo: ensure xkb_data.keymap is not null before calling
xkb_keymap_key_repeats (#193)
[james.hilliard1@gmail.com: backport from upstream commit
817f6c9dafd5ad23722eae0a8f43ba9211f37c95]
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
platform/cog-platform-fdo.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/platform/cog-platform-fdo.c b/platform/cog-platform-fdo.c
index 93ff255..ecc05e9 100644
--- a/platform/cog-platform-fdo.c
+++ b/platform/cog-platform-fdo.c
@@ -990,7 +990,8 @@ keyboard_on_key (void *data,
memset (&wl_data.keyboard.repeat_data,
0x00,
sizeof (wl_data.keyboard.repeat_data));
- } else if (state == WL_KEYBOARD_KEY_STATE_PRESSED
+ } else if (xkb_data.keymap != NULL
+ && state == WL_KEYBOARD_KEY_STATE_PRESSED
&& xkb_keymap_key_repeats (xkb_data.keymap, key)) {
if (wl_data.keyboard.repeat_data.event_source)
g_source_remove (wl_data.keyboard.repeat_data.event_source);
--
2.20.1

View File

@@ -218,8 +218,14 @@ endif
define COLLECTD_INSTALL_TARGET_CMDS
$(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) -C $(@D) install
rm -f $(TARGET_DIR)/usr/bin/collectd-nagios
endef
ifeq ($(BR2_PACKAGE_COLLECTD_POSTGRESQL),)
define COLLECTD_REMOVE_UNNEEDED_POSTGRESQL_DEFAULT_CONF
rm -f $(TARGET_DIR)/usr/share/collectd/postgresql_default.conf
endef
COLLECTD_POST_INSTALL_TARGET_HOOKS += COLLECTD_REMOVE_UNNEEDED_POSTGRESQL_DEFAULT_CONF
endif
define COLLECTD_INSTALL_INIT_SYSTEMD
$(INSTALL) -D -m 644 package/collectd/collectd.service \

View File

@@ -135,7 +135,7 @@ endif
ifneq ($(call qstrip,$(BR2_PACKAGE_FFMPEG_BSFS)),all)
FFMPEG_CONF_OPTS += --disable-bsfs \
$(foreach x,$(call qstrip,$(BR2_PACKAGE_FFMPEG_BSFS)),--enable-bsfs=$(x))
$(foreach x,$(call qstrip,$(BR2_PACKAGE_FFMPEG_BSFS)),--enable-bsf=$(x))
endif
ifneq ($(call qstrip,$(BR2_PACKAGE_FFMPEG_PROTOCOLS)),all)

View File

@@ -1,43 +0,0 @@
From a592242578e573778241cae6d3928c064dcdfda4 Mon Sep 17 00:00:00 2001
From: jcmvbkbc <jcmvbkbc@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Tue, 18 Jun 2019 22:19:12 +0000
Subject: [PATCH] xtensa: fix for PR target/90922
Stack pointer adjustment code in prologue missed a case of no
callee-saved registers and a stack frame size bigger than 128 bytes.
Handle that case.
This fixes the following gcc tests with call0 ABI:
gcc.c-torture/execute/stdarg-2.c
gcc.dg/torture/pr55882.c
gcc.dg/torture/pr57569.c
gcc/
2019-06-18 Max Filippov <jcmvbkbc@gmail.com>
* config/xtensa/xtensa.c (xtensa_expand_prologue): Add stack
pointer adjustment for the case of no callee-saved registers and
stack frame bigger than 128 bytes.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
---
gcc/config/xtensa/xtensa.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c
index 19bd616d67f6..ee5612441e25 100644
--- a/gcc/config/xtensa/xtensa.c
+++ b/gcc/config/xtensa/xtensa.c
@@ -2862,7 +2862,8 @@ xtensa_expand_prologue (void)
gen_rtx_SET (mem, reg));
}
}
- if (total_size > 1024)
+ if (total_size > 1024
+ || (!callee_save_size && total_size > 128))
{
rtx tmp_reg = gen_rtx_REG (Pmode, A9_REG);
emit_move_insn (tmp_reg, GEN_INT (total_size -
--
2.11.0

View File

@@ -1,4 +1,4 @@
From 7c11710230921246156aecc20eb4b6ccaeaaa473 Mon Sep 17 00:00:00 2001
From 28623c81b50663e946790649352cb1b3ed23954d Mon Sep 17 00:00:00 2001
From: Max Filippov <jcmvbkbc@gmail.com>
Date: Tue, 24 Sep 2019 04:15:17 -0700
Subject: [PATCH] xtensa: fix PR target/91880
@@ -15,14 +15,16 @@ gcc/
block that precedes the loop is empty.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
[Romain: rebase on gcc 8.4.0]
Signed-off-by: Romain Naour <romain.naour@smile.fr>
---
Backported from: r276166
gcc/config/xtensa/xtensa.c | 5 ++--
gcc/config/xtensa/xtensa.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c
index ee5612441e25..2527468d57db 100644
index 08f9f7c7a8f..de206527810 100644
--- a/gcc/config/xtensa/xtensa.c
+++ b/gcc/config/xtensa/xtensa.c
@@ -4232,7 +4232,9 @@ hwloop_optimize (hwloop_info loop)
@@ -45,5 +47,5 @@ index ee5612441e25..2527468d57db 100644
|| (NOTE_P (entry_after)
&& NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK))
--
2.11.0
2.24.1

View File

@@ -1,43 +0,0 @@
From a592242578e573778241cae6d3928c064dcdfda4 Mon Sep 17 00:00:00 2001
From: jcmvbkbc <jcmvbkbc@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Tue, 18 Jun 2019 22:19:12 +0000
Subject: [PATCH] xtensa: fix for PR target/90922
Stack pointer adjustment code in prologue missed a case of no
callee-saved registers and a stack frame size bigger than 128 bytes.
Handle that case.
This fixes the following gcc tests with call0 ABI:
gcc.c-torture/execute/stdarg-2.c
gcc.dg/torture/pr55882.c
gcc.dg/torture/pr57569.c
gcc/
2019-06-18 Max Filippov <jcmvbkbc@gmail.com>
* config/xtensa/xtensa.c (xtensa_expand_prologue): Add stack
pointer adjustment for the case of no callee-saved registers and
stack frame bigger than 128 bytes.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
---
gcc/config/xtensa/xtensa.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c
index 19bd616d67f6..ee5612441e25 100644
--- a/gcc/config/xtensa/xtensa.c
+++ b/gcc/config/xtensa/xtensa.c
@@ -2865,7 +2865,8 @@ xtensa_expand_prologue (void)
gen_rtx_SET (mem, reg));
}
}
- if (total_size > 1024)
+ if (total_size > 1024
+ || (!callee_save_size && total_size > 128))
{
rtx tmp_reg = gen_rtx_REG (Pmode, A9_REG);
emit_move_insn (tmp_reg, GEN_INT (total_size -
--
2.11.0

View File

@@ -1,4 +1,4 @@
From 7c11710230921246156aecc20eb4b6ccaeaaa473 Mon Sep 17 00:00:00 2001
From 0a59aa440a4c125b81504c777b066ae4eb1f09f0 Mon Sep 17 00:00:00 2001
From: Max Filippov <jcmvbkbc@gmail.com>
Date: Tue, 24 Sep 2019 04:15:17 -0700
Subject: [PATCH] xtensa: fix PR target/91880
@@ -15,14 +15,15 @@ gcc/
block that precedes the loop is empty.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
Backported from: r276166
gcc/config/xtensa/xtensa.c | 5 ++--
gcc/config/xtensa/xtensa.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c
index ee5612441e25..2527468d57db 100644
index ee5612441e2..2527468d57d 100644
--- a/gcc/config/xtensa/xtensa.c
+++ b/gcc/config/xtensa/xtensa.c
@@ -4235,7 +4235,9 @@ hwloop_optimize (hwloop_info loop)
@@ -45,5 +46,5 @@ index ee5612441e25..2527468d57db 100644
|| (NOTE_P (entry_after)
&& NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK))
--
2.11.0
2.24.1

View File

@@ -1,4 +1,4 @@
From 94c7d630348671b781368d9270514dcf6c34e0c9 Mon Sep 17 00:00:00 2001
From 1383012ae409ed91903b2b76ee15137bc1f89900 Mon Sep 17 00:00:00 2001
From: shorne <shorne@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Sat, 31 Aug 2019 06:00:56 +0000
Subject: [PATCH] or1k: Fix issue with set_got clobbering LR (r9)
@@ -101,5 +101,5 @@ index 2dad51cd46b..88f3f02630f 100644
(clobber (reg:SI LR_REGNUM))]
""
--
2.23.0
2.24.1

View File

@@ -0,0 +1,31 @@
From 2aefc4ee703ce3ff70ad25915005cacfbaae0c49 Mon Sep 17 00:00:00 2001
From: Bernd Kuhls <bernd.kuhls@t-online.de>
Date: Fri, 27 Mar 2020 21:23:53 +0100
Subject: [PATCH] gcc: define _REENTRANT for OpenRISC when -pthread is passed
The detection of pthread support fails on OpenRISC unless _REENTRANT
is defined. Added the CPP_SPEC definition to correct this.
Patch sent upstream: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94372
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
gcc/config/or1k/linux.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/gcc/config/or1k/linux.h b/gcc/config/or1k/linux.h
index 4b2f7b6e1fd..b00d23ddfa0 100644
--- a/gcc/config/or1k/linux.h
+++ b/gcc/config/or1k/linux.h
@@ -32,6 +32,8 @@
#undef MUSL_DYNAMIC_LINKER
#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-or1k.so.1"
+#define CPP_SPEC "%{pthread:-D_REENTRANT}"
+
#undef LINK_SPEC
#define LINK_SPEC "%{h*} \
%{static:-Bstatic} \
--
2.21.0

View File

@@ -58,8 +58,9 @@ config BR2_GCC_VERSION_9_X
# https://gcc.gnu.org/ml/gcc/2018-04/msg00102.html
depends on !BR2_powerpc_SPE
# C-SKY sk610 needs abiv1, which is not supported in
# upstream gcc
depends on !BR2_ck610
# upstream gcc. C-SKY gcc upstream support not tested
# with upstream binutils and glibc.
depends on !BR2_csky
select BR2_TOOLCHAIN_GCC_AT_LEAST_9
endchoice
@@ -86,8 +87,8 @@ config BR2_GCC_VERSION
string
default "5.5.0" if BR2_GCC_VERSION_5_X
default "7.5.0" if BR2_GCC_VERSION_7_X
default "8.3.0" if BR2_GCC_VERSION_8_X
default "9.2.0" if BR2_GCC_VERSION_9_X
default "8.4.0" if BR2_GCC_VERSION_8_X
default "9.3.0" if BR2_GCC_VERSION_9_X
default "arc-2019.09-release" if BR2_GCC_VERSION_ARC
default "48152afb96c59733d5bc79e3399bb7b3d4b44266" if BR2_GCC_VERSION_CSKY

View File

@@ -2,10 +2,10 @@
sha512 670ff52c2ae12c7852c12987e91798c5aa8bd6daf21f0d6e0cd57a4aa59cc4f06a837fe76426eaa1424cfddca937bed377680700eadc04d76b9180d462364fa1 gcc-5.5.0.tar.xz
# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-7.5.0/sha512.sum
sha512 fe716cc19f2e3255d3a8b1b8290777bf769c6d98e6e0b07b81a3d6ad43f8af74cb170dfa18b1555dbfcd3f55ae582b91a286ccef496b9b65c1579902f96a1f60 gcc-7.5.0.tar.xz
# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-8.3.0/sha512.sum
sha512 1811337ae3add9680cec64968a2509d085b6dc5b6783fc1e8c295e3e47416196fd1a3ad8dfe7e10be2276b4f62c357659ce2902f239f60a8648548231b4b5802 gcc-8.3.0.tar.xz
# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-9.2.0/sha512.sum
sha512 a12dff52af876aee0fd89a8d09cdc455f35ec46845e154023202392adc164848faf8ee881b59b681b696e27c69fd143a214014db4214db62f9891a1c8365c040 gcc-9.2.0.tar.xz
# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-8.4.0/sha512.sum
sha512 6de904f552a02de33b11ef52312bb664396efd7e1ce3bbe37bfad5ef617f133095b3767b4804bc7fe78df335cb53bc83f1ac055baed40979ce4c2c3e46b70280 gcc-8.4.0.tar.xz
# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-9.3.0/sha512.sum
sha512 4b9e3639eef6e623747a22c37a904b4750c93b6da77cf3958d5047e9b5ebddb7eebe091cc16ca0a227c0ecbd2bf3b984b221130f269a97ee4cc18f9cf6c444de gcc-9.3.0.tar.xz
# Locally calculated (fetched from Github)
sha512 84648d13f174102733e06ccdf7b351150babe06af0f2b99b8dfb2b2d3c3f13e424547349939806fe19932ad347977cad79cd8b37be9cbb03e6a4d03cdf95a72e gcc-arc-2019.09-release.tar.gz

View File

@@ -13,7 +13,7 @@ GCC_VERSION = $(call qstrip,$(BR2_GCC_VERSION))
ifeq ($(BR2_GCC_VERSION_ARC),y)
GCC_SITE = $(call github,foss-for-synopsys-dwc-arc-processors,gcc,$(GCC_VERSION))
GCC_SOURCE = gcc-$(GCC_VERSION).tar.gz
else ifeq ($(BR2_csky),y)
else ifeq ($(BR2_GCC_VERSION_CSKY),y)
GCC_SITE = $(call github,c-sky,gcc,$(GCC_VERSION))
GCC_SOURCE = gcc-$(GCC_VERSION).tar.gz
else
@@ -100,6 +100,11 @@ HOST_GCC_COMMON_CONF_ENV = \
GCC_COMMON_TARGET_CFLAGS = $(TARGET_CFLAGS)
GCC_COMMON_TARGET_CXXFLAGS = $(TARGET_CXXFLAGS)
# used to fix ../../../../libsanitizer/libbacktrace/../../libbacktrace/elf.c:772:21: error: st.st_mode may be used uninitialized in this function [-Werror=maybe-uninitialized]
ifeq ($(BR2_ENABLE_DEBUG),y)
GCC_COMMON_TARGET_CFLAGS += -Wno-error
endif
# Propagate options used for target software building to GCC target libs
HOST_GCC_COMMON_CONF_ENV += CFLAGS_FOR_TARGET="$(GCC_COMMON_TARGET_CFLAGS)"
HOST_GCC_COMMON_CONF_ENV += CXXFLAGS_FOR_TARGET="$(GCC_COMMON_TARGET_CXXFLAGS)"

View File

@@ -1,15 +0,0 @@
Index: b/contrib/regression/objs-gcc.sh
===================================================================
--- a/contrib/regression/objs-gcc.sh
+++ b/contrib/regression/objs-gcc.sh
@@ -106,6 +106,10 @@
then
make all-gdb all-dejagnu all-ld || exit 1
make install-gdb install-dejagnu install-ld || exit 1
+elif [ $H_REAL_TARGET = $H_REAL_HOST -a $H_REAL_TARGET = i686-pc-linux-uclibc ]
+ then
+ make all-gdb all-dejagnu all-ld || exit 1
+ make install-gdb install-dejagnu install-ld || exit 1
elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then
make bootstrap || exit 1
make install || exit 1

View File

@@ -1,13 +0,0 @@
Index: b/boehm-gc/include/gc.h
===================================================================
--- a/boehm-gc/include/gc.h
+++ b/boehm-gc/include/gc.h
@@ -503,7 +503,7 @@
#if defined(__linux__) || defined(__GLIBC__)
# include <features.h>
# if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \
- && !defined(__ia64__)
+ && !defined(__ia64__) && !defined(__UCLIBC__)
# ifndef GC_HAVE_BUILTIN_BACKTRACE
# define GC_HAVE_BUILTIN_BACKTRACE
# endif

View File

@@ -1,273 +0,0 @@
Allow C99-depending features of libstdc++ with uClibc
The libstdc++ code is fairly restrictive on how it checks for C99
compatibility: it requires *complete* C99 support to enable certain
features. For example, uClibc provides a good number of C99 features,
but not C99 complex number support. For this reason, libstdc++
completely disables many the standard C++ methods that can in fact
work because uClibc provides the necessary functions.
This patch is similar and highly inspired from
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58393, but implemented in
a way that doesn't involve changing the configure.ac script, as
autoreconfiguring gcc is complicated. It simply relies on the fact
that uClibc defines the __UCLIBC__ definition.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Index: b/libstdc++-v3/config/locale/generic/c_locale.h
===================================================================
--- a/libstdc++-v3/config/locale/generic/c_locale.h
+++ b/libstdc++-v3/config/locale/generic/c_locale.h
@@ -70,7 +70,7 @@
__builtin_va_list __args;
__builtin_va_start(__args, __fmt);
-#ifdef _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
const int __ret = __builtin_vsnprintf(__out, __size, __fmt, __args);
#else
const int __ret = __builtin_vsprintf(__out, __fmt, __args);
Index: b/libstdc++-v3/config/locale/gnu/c_locale.h
===================================================================
--- a/libstdc++-v3/config/locale/gnu/c_locale.h
+++ b/libstdc++-v3/config/locale/gnu/c_locale.h
@@ -88,7 +88,7 @@
__builtin_va_list __args;
__builtin_va_start(__args, __fmt);
-#ifdef _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
const int __ret = __builtin_vsnprintf(__out, __size, __fmt, __args);
#else
const int __ret = __builtin_vsprintf(__out, __fmt, __args);
Index: b/libstdc++-v3/include/bits/basic_string.h
===================================================================
--- a/libstdc++-v3/include/bits/basic_string.h
+++ b/libstdc++-v3/include/bits/basic_string.h
@@ -5239,7 +5239,7 @@
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#if __cplusplus >= 201103L && defined(_GLIBCXX_USE_C99)
+#if __cplusplus >= 201103L && (defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__))
#include <ext/string_conversions.h>
Index: b/libstdc++-v3/include/bits/locale_facets.tcc
===================================================================
--- a/libstdc++-v3/include/bits/locale_facets.tcc
+++ b/libstdc++-v3/include/bits/locale_facets.tcc
@@ -992,7 +992,7 @@
char __fbuf[16];
__num_base::_S_format_float(__io, __fbuf, __mod);
-#ifdef _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
// Precision is always used except for hexfloat format.
const bool __use_prec =
(__io.flags() & ios_base::floatfield) != ios_base::floatfield;
Index: b/libstdc++-v3/include/bits/locale_facets_nonio.tcc
===================================================================
--- a/libstdc++-v3/include/bits/locale_facets_nonio.tcc
+++ b/libstdc++-v3/include/bits/locale_facets_nonio.tcc
@@ -578,7 +578,7 @@
{
const locale __loc = __io.getloc();
const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
-#ifdef _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
// First try a buffer perhaps big enough.
int __cs_size = 64;
char* __cs = static_cast<char*>(__builtin_alloca(__cs_size));
Index: b/libstdc++-v3/include/c_compatibility/math.h
===================================================================
--- a/libstdc++-v3/include/c_compatibility/math.h
+++ b/libstdc++-v3/include/c_compatibility/math.h
@@ -56,7 +56,7 @@
using std::floor;
using std::fmod;
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
using std::fpclassify;
using std::isfinite;
using std::isinf;
Index: b/libstdc++-v3/include/c_compatibility/wchar.h
===================================================================
--- a/libstdc++-v3/include/c_compatibility/wchar.h
+++ b/libstdc++-v3/include/c_compatibility/wchar.h
@@ -103,7 +103,7 @@
using std::wmemset;
using std::wcsftime;
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
using std::wcstold;
using std::wcstoll;
using std::wcstoull;
Index: b/libstdc++-v3/include/c_global/cstdlib
===================================================================
--- a/libstdc++-v3/include/c_global/cstdlib
+++ b/libstdc++-v3/include/c_global/cstdlib
@@ -195,7 +195,7 @@
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
#undef _Exit
#undef llabs
Index: b/libstdc++-v3/include/c_global/cwchar
===================================================================
--- a/libstdc++-v3/include/c_global/cwchar
+++ b/libstdc++-v3/include/c_global/cwchar
@@ -232,7 +232,7 @@
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
#undef wcstold
#undef wcstoll
@@ -289,7 +289,7 @@
using std::vwscanf;
#endif
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
using std::wcstold;
using std::wcstoll;
using std::wcstoull;
Index: b/libstdc++-v3/include/c_std/cstdio
===================================================================
--- a/libstdc++-v3/include/c_std/cstdio
+++ b/libstdc++-v3/include/c_std/cstdio
@@ -144,7 +144,7 @@
using ::vsprintf;
} // namespace std
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
#undef snprintf
#undef vfscanf
Index: b/libstdc++-v3/include/c_std/cstdlib
===================================================================
--- a/libstdc++-v3/include/c_std/cstdlib
+++ b/libstdc++-v3/include/c_std/cstdlib
@@ -192,7 +192,7 @@
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
#undef _Exit
#undef llabs
Index: b/libstdc++-v3/include/c_std/cwchar
===================================================================
--- a/libstdc++-v3/include/c_std/cwchar
+++ b/libstdc++-v3/include/c_std/cwchar
@@ -228,7 +228,7 @@
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
#undef wcstold
#undef wcstoll
Index: b/libstdc++-v3/include/ext/vstring.h
===================================================================
--- a/libstdc++-v3/include/ext/vstring.h
+++ b/libstdc++-v3/include/ext/vstring.h
@@ -2680,7 +2680,7 @@
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#if ((__cplusplus >= 201103L) && defined(_GLIBCXX_USE_C99))
+#if ((__cplusplus >= 201103L) && (defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)))
#include <ext/string_conversions.h>
Index: b/libstdc++-v3/include/tr1/cstdio
===================================================================
--- a/libstdc++-v3/include/tr1/cstdio
+++ b/libstdc++-v3/include/tr1/cstdio
@@ -33,7 +33,7 @@
#include <cstdio>
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
namespace std _GLIBCXX_VISIBILITY(default)
{
Index: b/libstdc++-v3/include/tr1/cstdlib
===================================================================
--- a/libstdc++-v3/include/tr1/cstdlib
+++ b/libstdc++-v3/include/tr1/cstdlib
@@ -35,7 +35,7 @@
#if _GLIBCXX_HOSTED
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
namespace std _GLIBCXX_VISIBILITY(default)
{
Index: b/libstdc++-v3/include/tr1/cwchar
===================================================================
--- a/libstdc++-v3/include/tr1/cwchar
+++ b/libstdc++-v3/include/tr1/cwchar
@@ -52,7 +52,7 @@
using std::vwscanf;
#endif
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
using std::wcstold;
using std::wcstoll;
using std::wcstoull;
Index: b/libstdc++-v3/include/tr1/stdlib.h
===================================================================
--- a/libstdc++-v3/include/tr1/stdlib.h
+++ b/libstdc++-v3/include/tr1/stdlib.h
@@ -33,7 +33,7 @@
#if _GLIBCXX_HOSTED
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
using std::tr1::atoll;
using std::tr1::strtoll;
Index: b/libstdc++-v3/src/c++11/debug.cc
===================================================================
--- a/libstdc++-v3/src/c++11/debug.cc
+++ b/libstdc++-v3/src/c++11/debug.cc
@@ -788,7 +788,7 @@
int __n __attribute__ ((__unused__)),
const char* __fmt, _Tp __s) const throw ()
{
-#ifdef _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
std::snprintf(__buf, __n, __fmt, __s);
#else
std::sprintf(__buf, __fmt, __s);
Index: b/libstdc++-v3/include/c_global/cstdio
===================================================================
--- a/libstdc++-v3/include/c_global/cstdio
+++ b/libstdc++-v3/include/c_global/cstdio
@@ -146,7 +146,7 @@
using ::vsprintf;
} // namespace
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
#undef snprintf
#undef vfscanf

View File

@@ -1,56 +0,0 @@
[PATCH] cilk: fix build without wchar
When building against uClibc with wchar support disabled, WCHAR_MIN and
WCHAR_MAX are not defined leading to compilation errors.
Fix it by only including the wchar code if available.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
---
libcilkrts/include/cilk/reducer_min_max.h | 8 ++++++++
1 file changed, 8 insertions(+)
Index: b/libcilkrts/include/cilk/reducer_min_max.h
===================================================================
--- a/libcilkrts/include/cilk/reducer_min_max.h
+++ b/libcilkrts/include/cilk/reducer_min_max.h
@@ -3154,7 +3154,9 @@
CILK_C_REDUCER_MAX_INSTANCE(char, char, CHAR_MIN)
CILK_C_REDUCER_MAX_INSTANCE(unsigned char, uchar, 0)
CILK_C_REDUCER_MAX_INSTANCE(signed char, schar, SCHAR_MIN)
+#ifdef WCHAR_MIN
CILK_C_REDUCER_MAX_INSTANCE(wchar_t, wchar_t, WCHAR_MIN)
+#endif
CILK_C_REDUCER_MAX_INSTANCE(short, short, SHRT_MIN)
CILK_C_REDUCER_MAX_INSTANCE(unsigned short, ushort, 0)
CILK_C_REDUCER_MAX_INSTANCE(int, int, INT_MIN)
@@ -3306,7 +3308,9 @@
CILK_C_REDUCER_MAX_INDEX_INSTANCE(char, char, CHAR_MIN)
CILK_C_REDUCER_MAX_INDEX_INSTANCE(unsigned char, uchar, 0)
CILK_C_REDUCER_MAX_INDEX_INSTANCE(signed char, schar, SCHAR_MIN)
+#ifdef WCHAR_MIN
CILK_C_REDUCER_MAX_INDEX_INSTANCE(wchar_t, wchar_t, WCHAR_MIN)
+#endif
CILK_C_REDUCER_MAX_INDEX_INSTANCE(short, short, SHRT_MIN)
CILK_C_REDUCER_MAX_INDEX_INSTANCE(unsigned short, ushort, 0)
CILK_C_REDUCER_MAX_INDEX_INSTANCE(int, int, INT_MIN)
@@ -3432,7 +3436,9 @@
CILK_C_REDUCER_MIN_INSTANCE(char, char, CHAR_MAX)
CILK_C_REDUCER_MIN_INSTANCE(unsigned char, uchar, CHAR_MAX)
CILK_C_REDUCER_MIN_INSTANCE(signed char, schar, SCHAR_MAX)
+#ifdef WCHAR_MAX
CILK_C_REDUCER_MIN_INSTANCE(wchar_t, wchar_t, WCHAR_MAX)
+#endif
CILK_C_REDUCER_MIN_INSTANCE(short, short, SHRT_MAX)
CILK_C_REDUCER_MIN_INSTANCE(unsigned short, ushort, USHRT_MAX)
CILK_C_REDUCER_MIN_INSTANCE(int, int, INT_MAX)
@@ -3584,7 +3590,9 @@
CILK_C_REDUCER_MIN_INDEX_INSTANCE(char, char, CHAR_MAX)
CILK_C_REDUCER_MIN_INDEX_INSTANCE(unsigned char, uchar, CHAR_MAX)
CILK_C_REDUCER_MIN_INDEX_INSTANCE(signed char, schar, SCHAR_MAX)
+#ifdef WCHAR_MAX
CILK_C_REDUCER_MIN_INDEX_INSTANCE(wchar_t, wchar_t, WCHAR_MAX)
+#endif
CILK_C_REDUCER_MIN_INDEX_INSTANCE(short, short, SHRT_MAX)
CILK_C_REDUCER_MIN_INDEX_INSTANCE(unsigned short, ushort, USHRT_MAX)
CILK_C_REDUCER_MIN_INDEX_INSTANCE(int, int, INT_MAX)

View File

@@ -1,14 +0,0 @@
disable split-stack for non-thread builds
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
diff -Nur gcc-5.3.0.orig/libgcc/config/t-stack gcc-5.3.0/libgcc/config/t-stack
--- gcc-5.3.0.orig/libgcc/config/t-stack 2010-10-01 21:31:49.000000000 +0200
+++ gcc-5.3.0/libgcc/config/t-stack 2016-03-07 03:25:32.000000000 +0100
@@ -1,4 +1,6 @@
# Makefile fragment to provide generic support for -fsplit-stack.
# This should be used in config.host for any host which supports
# -fsplit-stack.
+ifeq ($(enable_threads),yes)
LIB2ADD_ST += $(srcdir)/generic-morestack.c $(srcdir)/generic-morestack-thread.c
+endif

View File

@@ -1,6 +1,6 @@
# Locally calculated after checking pgp signature
# https://www.gnupg.org/ftp/gcrypt/gnutls/v3.6/gnutls-3.6.10.tar.xz.sig
sha256 b1f3ca67673b05b746a961acf2243eaae0ffe658b6a6494265c648e7c7812293 gnutls-3.6.10.tar.xz
# https://www.gnupg.org/ftp/gcrypt/gnutls/v3.6/gnutls-3.6.13.tar.xz.sig
sha256 32041df447d9f4644570cf573c9f60358e865637d69b7e59d1159b7240b52f38 gnutls-3.6.13.tar.xz
# Locally calculated
sha256 e79e9c8a0c85d735ff98185918ec94ed7d175efc377012787aebcf3b80f0d90b doc/COPYING
sha256 6095e9ffa777dd22839f7801aa845b31c9ed07f3d6bf8a26dc5d2dec8ccc0ef3 doc/COPYING.LESSER

View File

@@ -5,7 +5,7 @@
################################################################################
GNUTLS_VERSION_MAJOR = 3.6
GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).10
GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).13
GNUTLS_SOURCE = gnutls-$(GNUTLS_VERSION).tar.xz
GNUTLS_SITE = https://www.gnupg.org/ftp/gcrypt/gnutls/v$(GNUTLS_VERSION_MAJOR)
GNUTLS_LICENSE = LGPL-2.1+ (core library)

View File

@@ -14,7 +14,8 @@ GSSDP_INSTALL_STAGING = YES
GSSDP_DEPENDENCIES = host-pkgconf libglib2 libsoup
GSSDP_CONF_OPTS = \
-Dexamples=false \
-Dintrospection=false
-Dintrospection=false \
-Dvapi=false
ifeq ($(BR2_PACKAGE_LIBGTK3),y)
GSSDP_DEPENDENCIES += libgtk3

View File

@@ -0,0 +1,46 @@
From d8d0c8c40049cfd824b2b90d0cd47914052b9811 Mon Sep 17 00:00:00 2001
From: Ondrej Holy <oholy@redhat.com>
Date: Wed, 2 Jan 2019 17:13:27 +0100
Subject: [PATCH] admin: Prevent access if any authentication agent isn't
available
The backend currently allows to access and modify files without prompting
for password if any polkit authentication agent isn't available. This seems
isn't usually problem, because polkit agents are integral parts of
graphical environments / linux distributions. The agents can't be simply
disabled without root permissions and are automatically respawned. However,
this might be a problem in some non-standard cases.
This affects only users which belong to wheel group (i.e. those who are
already allowed to use sudo). It doesn't allow privilege escalation for
users, who don't belong to that group.
Let's return permission denied error also when the subject can't be
authorized by any polkit agent to prevent this behavior.
Closes: https://gitlab.gnome.org/GNOME/gvfs/issues/355
[Retrieved from:
https://gitlab.gnome.org/GNOME/gvfs/commit/d8d0c8c40049cfd824b2b90d0cd47914052b9811]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
daemon/gvfsbackendadmin.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/daemon/gvfsbackendadmin.c b/daemon/gvfsbackendadmin.c
index ec0f2392..0f849008 100644
--- a/daemon/gvfsbackendadmin.c
+++ b/daemon/gvfsbackendadmin.c
@@ -130,8 +130,7 @@ check_permission (GVfsBackendAdmin *self,
return FALSE;
}
- is_authorized = polkit_authorization_result_get_is_authorized (result) ||
- polkit_authorization_result_get_is_challenge (result);
+ is_authorized = polkit_authorization_result_get_is_authorized (result);
g_object_unref (result);
--
2.24.1

View File

@@ -0,0 +1,131 @@
From 5cd76d627f4d1982b6e77a0e271ef9301732d09e Mon Sep 17 00:00:00 2001
From: Ondrej Holy <oholy@redhat.com>
Date: Thu, 23 May 2019 10:24:36 +0200
Subject: [PATCH] admin: Add query_info_on_read/write functionality
Admin backend doesn't implement query_info_on_read/write which might
potentially lead to some race conditions which aren't really wanted
especially in case of admin backend. Let's add this missing functionality.
[Retrieved fom:
https://gitlab.gnome.org/GNOME/gvfs/commit/5cd76d627f4d1982b6e77a0e271ef9301732d09e]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
daemon/gvfsbackendadmin.c | 79 +++++++++++++++++++++++++++++++++------
1 file changed, 67 insertions(+), 12 deletions(-)
diff --git a/daemon/gvfsbackendadmin.c b/daemon/gvfsbackendadmin.c
index 65a979e7..23d16f16 100644
--- a/daemon/gvfsbackendadmin.c
+++ b/daemon/gvfsbackendadmin.c
@@ -42,6 +42,8 @@
#include "gvfsjobopenforwrite.h"
#include "gvfsjobqueryattributes.h"
#include "gvfsjobqueryinfo.h"
+#include "gvfsjobqueryinforead.h"
+#include "gvfsjobqueryinfowrite.h"
#include "gvfsjobread.h"
#include "gvfsjobseekread.h"
#include "gvfsjobseekwrite.h"
@@ -155,6 +157,19 @@ complete_job (GVfsJob *job,
g_vfs_job_succeeded (job);
}
+static void
+fix_file_info (GFileInfo *info)
+{
+ /* Override read/write flags, since the above call will use access()
+ * to determine permissions, which does not honor our privileged
+ * capabilities.
+ */
+ g_file_info_set_attribute_boolean (info, G_FILE_ATTRIBUTE_ACCESS_CAN_READ, TRUE);
+ g_file_info_set_attribute_boolean (info, G_FILE_ATTRIBUTE_ACCESS_CAN_WRITE, TRUE);
+ g_file_info_set_attribute_boolean (info, G_FILE_ATTRIBUTE_ACCESS_CAN_DELETE, TRUE);
+ g_file_info_set_attribute_boolean (info, G_FILE_ATTRIBUTE_ACCESS_CAN_RENAME, TRUE);
+}
+
static void
do_query_info (GVfsBackend *backend,
GVfsJobQueryInfo *query_info_job,
@@ -180,19 +195,57 @@ do_query_info (GVfsBackend *backend,
if (error != NULL)
goto out;
- /* Override read/write flags, since the above call will use access()
- * to determine permissions, which does not honor our privileged
- * capabilities.
- */
- g_file_info_set_attribute_boolean (real_info,
- G_FILE_ATTRIBUTE_ACCESS_CAN_READ, TRUE);
- g_file_info_set_attribute_boolean (real_info,
- G_FILE_ATTRIBUTE_ACCESS_CAN_WRITE, TRUE);
- g_file_info_set_attribute_boolean (real_info,
- G_FILE_ATTRIBUTE_ACCESS_CAN_DELETE, TRUE);
- g_file_info_set_attribute_boolean (real_info,
- G_FILE_ATTRIBUTE_ACCESS_CAN_RENAME, TRUE);
+ fix_file_info (real_info);
+ g_file_info_copy_into (real_info, info);
+ g_object_unref (real_info);
+
+ out:
+ complete_job (job, error);
+}
+
+static void
+do_query_info_on_read (GVfsBackend *backend,
+ GVfsJobQueryInfoRead *query_info_job,
+ GVfsBackendHandle handle,
+ GFileInfo *info,
+ GFileAttributeMatcher *matcher)
+{
+ GVfsJob *job = G_VFS_JOB (query_info_job);
+ GFileInputStream *stream = handle;
+ GError *error = NULL;
+ GFileInfo *real_info;
+
+ real_info = g_file_input_stream_query_info (stream, query_info_job->attributes,
+ job->cancellable, &error);
+ if (error != NULL)
+ goto out;
+
+ fix_file_info (real_info);
+ g_file_info_copy_into (real_info, info);
+ g_object_unref (real_info);
+
+ out:
+ complete_job (job, error);
+}
+
+static void
+do_query_info_on_write (GVfsBackend *backend,
+ GVfsJobQueryInfoWrite *query_info_job,
+ GVfsBackendHandle handle,
+ GFileInfo *info,
+ GFileAttributeMatcher *matcher)
+{
+ GVfsJob *job = G_VFS_JOB (query_info_job);
+ GFileOutputStream *stream = handle;
+ GError *error = NULL;
+ GFileInfo *real_info;
+
+ real_info = g_file_output_stream_query_info (stream, query_info_job->attributes,
+ job->cancellable, &error);
+ if (error != NULL)
+ goto out;
+ fix_file_info (real_info);
g_file_info_copy_into (real_info, info);
g_object_unref (real_info);
@@ -868,6 +921,8 @@ g_vfs_backend_admin_class_init (GVfsBackendAdminClass * klass)
backend_class->mount = do_mount;
backend_class->open_for_read = do_open_for_read;
backend_class->query_info = do_query_info;
+ backend_class->query_info_on_read = do_query_info_on_read;
+ backend_class->query_info_on_write = do_query_info_on_write;
backend_class->read = do_read;
backend_class->create = do_create;
backend_class->append_to = do_append_to;
--
2.24.1

View File

@@ -0,0 +1,34 @@
From daf1163aba229afcfddf0f925aef7e97047e8959 Mon Sep 17 00:00:00 2001
From: Ondrej Holy <oholy@redhat.com>
Date: Thu, 23 May 2019 10:29:08 +0200
Subject: [PATCH] admin: Allow changing file owner
CAP_CHOWN is dropped together with other privilages and thus the backend
can't change file owner. This might be probably e.g. in case of copy
operation when G_FILE_COPY_ALL_METADATA is used. Let's keep CAP_CHOWN
to fix this.
[Retrieved from:
https://gitlab.gnome.org/GNOME/gvfs/commit/daf1163aba229afcfddf0f925aef7e97047e8959]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
daemon/gvfsbackendadmin.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/daemon/gvfsbackendadmin.c b/daemon/gvfsbackendadmin.c
index 23d16f16..a74d09cf 100644
--- a/daemon/gvfsbackendadmin.c
+++ b/daemon/gvfsbackendadmin.c
@@ -968,7 +968,8 @@ g_vfs_backend_admin_init (GVfsBackendAdmin *self)
#define REQUIRED_CAPS (CAP_TO_MASK(CAP_FOWNER) | \
CAP_TO_MASK(CAP_DAC_OVERRIDE) | \
- CAP_TO_MASK(CAP_DAC_READ_SEARCH))
+ CAP_TO_MASK(CAP_DAC_READ_SEARCH) | \
+ CAP_TO_MASK(CAP_CHOWN))
static void
acquire_caps (uid_t uid)
--
2.24.1

View File

@@ -0,0 +1,91 @@
From 3895e09d784ebec0fbc4614d5c37068736120e1d Mon Sep 17 00:00:00 2001
From: Ondrej Holy <oholy@redhat.com>
Date: Thu, 23 May 2019 10:33:30 +0200
Subject: [PATCH] admin: Use fsuid to ensure correct file ownership
Files created over admin backend should be owned by root, but they are
owned by the user itself. This is because the daemon drops the uid to
make dbus connection work. Use fsuid and euid to fix this issue.
Closes: https://gitlab.gnome.org/GNOME/gvfs/issues/21
[Retrieved from:
https://gitlab.gnome.org/GNOME/gvfs/commit/3895e09d784ebec0fbc4614d5c37068736120e1d]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
daemon/gvfsbackendadmin.c | 29 +++++++----------------------
1 file changed, 7 insertions(+), 22 deletions(-)
diff --git a/daemon/gvfsbackendadmin.c b/daemon/gvfsbackendadmin.c
index a74d09cf..32b51b1a 100644
--- a/daemon/gvfsbackendadmin.c
+++ b/daemon/gvfsbackendadmin.c
@@ -157,19 +157,6 @@ complete_job (GVfsJob *job,
g_vfs_job_succeeded (job);
}
-static void
-fix_file_info (GFileInfo *info)
-{
- /* Override read/write flags, since the above call will use access()
- * to determine permissions, which does not honor our privileged
- * capabilities.
- */
- g_file_info_set_attribute_boolean (info, G_FILE_ATTRIBUTE_ACCESS_CAN_READ, TRUE);
- g_file_info_set_attribute_boolean (info, G_FILE_ATTRIBUTE_ACCESS_CAN_WRITE, TRUE);
- g_file_info_set_attribute_boolean (info, G_FILE_ATTRIBUTE_ACCESS_CAN_DELETE, TRUE);
- g_file_info_set_attribute_boolean (info, G_FILE_ATTRIBUTE_ACCESS_CAN_RENAME, TRUE);
-}
-
static void
do_query_info (GVfsBackend *backend,
GVfsJobQueryInfo *query_info_job,
@@ -195,7 +182,6 @@ do_query_info (GVfsBackend *backend,
if (error != NULL)
goto out;
- fix_file_info (real_info);
g_file_info_copy_into (real_info, info);
g_object_unref (real_info);
@@ -220,7 +206,6 @@ do_query_info_on_read (GVfsBackend *backend,
if (error != NULL)
goto out;
- fix_file_info (real_info);
g_file_info_copy_into (real_info, info);
g_object_unref (real_info);
@@ -245,7 +230,6 @@ do_query_info_on_write (GVfsBackend *backend,
if (error != NULL)
goto out;
- fix_file_info (real_info);
g_file_info_copy_into (real_info, info);
g_object_unref (real_info);
@@ -977,14 +961,15 @@ acquire_caps (uid_t uid)
struct __user_cap_header_struct hdr;
struct __user_cap_data_struct data;
- /* Tell kernel not clear capabilities when dropping root */
- if (prctl (PR_SET_KEEPCAPS, 1, 0, 0, 0) < 0)
- g_error ("prctl(PR_SET_KEEPCAPS) failed");
-
- /* Drop root uid, but retain the required permitted caps */
- if (setuid (uid) < 0)
+ /* Set euid to user to make dbus work */
+ if (seteuid (uid) < 0)
g_error ("unable to drop privs");
+ /* Set fsuid to still behave like root when working with files */
+ setfsuid (0);
+ if (setfsuid (-1) != 0)
+ g_error ("setfsuid failed");
+
memset (&hdr, 0, sizeof(hdr));
hdr.version = _LINUX_CAPABILITY_VERSION;
--
2.24.1

View File

@@ -0,0 +1,84 @@
From d5dfd823c94045488aef8727c553f1e0f7666b90 Mon Sep 17 00:00:00 2001
From: Ondrej Holy <oholy@redhat.com>
Date: Fri, 24 May 2019 09:43:43 +0200
Subject: [PATCH] admin: Ensure correct ownership when moving to file:// uri
User and group is not restored properly when moving (or copying with
G_FILE_COPY_ALL_METADATA) from admin:// to file://, because it is handled
by GIO fallback code, which doesn't run with root permissions. Let's
handle this case with pull method to ensure correct ownership.
[Retrieved from:
https://gitlab.gnome.org/GNOME/gvfs/commit/d5dfd823c94045488aef8727c553f1e0f7666b90]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
daemon/gvfsbackendadmin.c | 46 +++++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
diff --git a/daemon/gvfsbackendadmin.c b/daemon/gvfsbackendadmin.c
index 32b51b1a..9a7e8295 100644
--- a/daemon/gvfsbackendadmin.c
+++ b/daemon/gvfsbackendadmin.c
@@ -807,6 +807,51 @@ do_move (GVfsBackend *backend,
complete_job (job, error);
}
+static void
+do_pull (GVfsBackend *backend,
+ GVfsJobPull *pull_job,
+ const char *source,
+ const char *local_path,
+ GFileCopyFlags flags,
+ gboolean remove_source,
+ GFileProgressCallback progress_callback,
+ gpointer progress_callback_data)
+{
+ GVfsBackendAdmin *self = G_VFS_BACKEND_ADMIN (backend);
+ GVfsJob *job = G_VFS_JOB (pull_job);
+ GError *error = NULL;
+ GFile *src_file, *dst_file;
+
+ /* Pull method is necessary when user/group needs to be restored, return
+ * G_IO_ERROR_NOT_SUPPORTED in other cases to proceed with the fallback code.
+ */
+ if (!(flags & G_FILE_COPY_ALL_METADATA))
+ {
+ g_vfs_job_failed_literal (G_VFS_JOB (job), G_IO_ERROR,
+ G_IO_ERROR_NOT_SUPPORTED,
+ _("Operation not supported"));
+ return;
+ }
+
+ if (!check_permission (self, job))
+ return;
+
+ src_file = g_file_new_for_path (source);
+ dst_file = g_file_new_for_path (local_path);
+
+ if (remove_source)
+ g_file_move (src_file, dst_file, flags, job->cancellable,
+ progress_callback, progress_callback_data, &error);
+ else
+ g_file_copy (src_file, dst_file, flags, job->cancellable,
+ progress_callback, progress_callback_data, &error);
+
+ g_object_unref (src_file);
+ g_object_unref (dst_file);
+
+ complete_job (job, error);
+}
+
static void
do_query_settable_attributes (GVfsBackend *backend,
GVfsJobQueryAttributes *query_job,
@@ -927,6 +972,7 @@ g_vfs_backend_admin_class_init (GVfsBackendAdminClass * klass)
backend_class->set_attribute = do_set_attribute;
backend_class->delete = do_delete;
backend_class->move = do_move;
+ backend_class->pull = do_pull;
backend_class->query_settable_attributes = do_query_settable_attributes;
backend_class->query_writable_namespaces = do_query_writable_namespaces;
}
--
2.24.1

View File

@@ -0,0 +1,96 @@
From 70dbfc68a79faac49bd3423e079cb6902522082a Mon Sep 17 00:00:00 2001
From: Simon McVittie <smcv@collabora.com>
Date: Wed, 5 Jun 2019 13:33:38 +0100
Subject: [PATCH] gvfsdaemon: Check that the connecting client is the same user
Otherwise, an attacker who learns the abstract socket address from
netstat(8) or similar could connect to it and issue D-Bus method
calls.
Signed-off-by: Simon McVittie <smcv@collabora.com>
[Retrieved from:
https://gitlab.gnome.org/GNOME/gvfs/commit/70dbfc68a79faac49bd3423e079cb6902522082a]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
daemon/gvfsdaemon.c | 36 +++++++++++++++++++++++++++++++++++-
1 file changed, 35 insertions(+), 1 deletion(-)
diff --git a/daemon/gvfsdaemon.c b/daemon/gvfsdaemon.c
index 406d4f8e..be148a7b 100644
--- a/daemon/gvfsdaemon.c
+++ b/daemon/gvfsdaemon.c
@@ -79,6 +79,7 @@ struct _GVfsDaemon
gint mount_counter;
+ GDBusAuthObserver *auth_observer;
GDBusConnection *conn;
GVfsDBusDaemon *daemon_skeleton;
GVfsDBusMountable *mountable_skeleton;
@@ -171,6 +172,8 @@ g_vfs_daemon_finalize (GObject *object)
}
if (daemon->conn != NULL)
g_object_unref (daemon->conn);
+ if (daemon->auth_observer != NULL)
+ g_object_unref (daemon->auth_observer);
g_hash_table_destroy (daemon->registered_paths);
g_hash_table_destroy (daemon->client_connections);
@@ -236,6 +239,35 @@ name_vanished_handler (GDBusConnection *connection,
daemon->lost_main_daemon = TRUE;
}
+/*
+ * Authentication observer signal handler that authorizes connections
+ * from the same uid as this process. This matches the behaviour of a
+ * libdbus DBusServer/DBusConnection when no DBusAllowUnixUserFunction
+ * has been set, but is not the default in GDBus.
+ */
+static gboolean
+authorize_authenticated_peer_cb (GDBusAuthObserver *observer,
+ G_GNUC_UNUSED GIOStream *stream,
+ GCredentials *credentials,
+ G_GNUC_UNUSED gpointer user_data)
+{
+ gboolean authorized = FALSE;
+
+ if (credentials != NULL)
+ {
+ GCredentials *own_credentials;
+
+ own_credentials = g_credentials_new ();
+
+ if (g_credentials_is_same_user (credentials, own_credentials, NULL))
+ authorized = TRUE;
+
+ g_object_unref (own_credentials);
+ }
+
+ return authorized;
+}
+
static void
g_vfs_daemon_init (GVfsDaemon *daemon)
{
@@ -265,6 +297,8 @@ g_vfs_daemon_init (GVfsDaemon *daemon)
daemon->conn = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, NULL);
g_assert (daemon->conn != NULL);
+ daemon->auth_observer = g_dbus_auth_observer_new ();
+ g_signal_connect (daemon->auth_observer, "authorize-authenticated-peer", G_CALLBACK (authorize_authenticated_peer_cb), NULL);
daemon->daemon_skeleton = gvfs_dbus_daemon_skeleton_new ();
g_signal_connect (daemon->daemon_skeleton, "handle-get-connection", G_CALLBACK (handle_get_connection), daemon);
@@ -876,7 +910,7 @@ handle_get_connection (GVfsDBusDaemon *object,
server = g_dbus_server_new_sync (address1,
G_DBUS_SERVER_FLAGS_NONE,
guid,
- NULL, /* GDBusAuthObserver */
+ daemon->auth_observer,
NULL, /* GCancellable */
&error);
g_free (guid);
--
2.24.1

View File

@@ -15,6 +15,22 @@ GVFS_LICENSE = LGPL-2.0+
GVFS_LICENSE_FILES = COPYING
GVFS_LIBS = $(TARGET_NLS_LIBS)
# 0001-admin-Prevent-access-if-any-authentication-agent-isn-t-available.patch
GVFS_IGNORE_CVES += CVE-2019-3827
# package/gvfs/0002-admin-Add-query_info_on_read-write-functionality.patch
GVFS_IGNORE_CVES += CVE-2019-12448
# 0003-admin-Allow-changing-file-owner.patch
# 0004-admin-Use-fsuid-to-ensure-correct-file-ownership.patch
GVFS_IGNORE_CVES += CVE-2019-12447
# 0005-admin-Ensure-correct-ownership-when-moving-to-file-uri.patch
GVFS_IGNORE_CVES += CVE-2019-12449
# 0006-gvfsdaemon-Check-that-the-connecting-client-is-the-same-user.patch
GVFS_IGNORE_CVES += CVE-2019-12795
# Export ac_cv_path_LIBGCRYPT_CONFIG unconditionally to prevent
# build system from searching the host paths.
GVFS_CONF_ENV = \

View File

@@ -1,6 +1,6 @@
# From: http://www.haproxy.org/download/2.1/src/haproxy-2.1.2.tar.gz.sha256
sha256 6079b08a8905ade5a9a2835ead8963ee10a855d8508a85efb7181eea2d310b77 haproxy-2.1.2.tar.gz
# From: http://www.haproxy.org/download/2.1/src/haproxy-2.1.4.tar.gz.sha256
sha256 51030ff696d7067162b4d24d354044293aecfbb36d7acc2f840c8d928bfe91cd haproxy-2.1.4.tar.gz
# Locally computed:
sha256 0717ca51fceaa25ac9e5ccc62e0c727dcf27796057201fb5fded56a25ff6ca28 LICENSE
sha256 5df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a doc/lgpl.txt
sha256 ddb9db7630752f8fdc6898f7c99a99eaeeac5213627ecb093df9c82f56175dc7 doc/gpl.txt
sha256 0717ca51fceaa25ac9e5ccc62e0c727dcf27796057201fb5fded56a25ff6ca28 LICENSE
sha256 5df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a doc/lgpl.txt
sha256 ddb9db7630752f8fdc6898f7c99a99eaeeac5213627ecb093df9c82f56175dc7 doc/gpl.txt

View File

@@ -5,7 +5,7 @@
################################################################################
HAPROXY_VERSION_MAJOR = 2.1
HAPROXY_VERSION = $(HAPROXY_VERSION_MAJOR).2
HAPROXY_VERSION = $(HAPROXY_VERSION_MAJOR).4
HAPROXY_SITE = http://www.haproxy.org/download/$(HAPROXY_VERSION_MAJOR)/src
HAPROXY_LICENSE = GPL-2.0+ and LGPL-2.1+ with exceptions
HAPROXY_LICENSE_FILES = LICENSE doc/lgpl.txt doc/gpl.txt

View File

@@ -1,3 +1,3 @@
# Locally computed:
sha256 042f965e182b80693015839a9d0278ae73fae5d5d09d8bf6d0e6a39a8c4393bd hiredis-0.14.0.tar.gz
sha256 dca05ce8fc87a8261783b4aed0deef8becc9350b6aa770bc714d0c1833b896eb COPYING
sha256 2663b2aed9fd430507e30fc5e63274ee40cdd1a296026e22eafd7d99b01c8913 hiredis-0.14.1.tar.gz
sha256 dca05ce8fc87a8261783b4aed0deef8becc9350b6aa770bc714d0c1833b896eb COPYING

View File

@@ -5,7 +5,7 @@
################################################################################
HIREDIS_VERSION_MAJOR = 0.14
HIREDIS_VERSION = $(HIREDIS_VERSION_MAJOR).0
HIREDIS_VERSION = $(HIREDIS_VERSION_MAJOR).1
HIREDIS_SITE = $(call github,redis,hiredis,v$(HIREDIS_VERSION))
HIREDIS_LICENSE = BSD-3-Clause
HIREDIS_LICENSE_FILES = COPYING
@@ -55,7 +55,7 @@ endif
define HIREDIS_INSTALL_STAGING_CMDS
mkdir -p $(HIREDIS_INCLUDE_DIR)
cp -dpfr $(@D)/hiredis.h $(@D)/async.h $(@D)/read.h $(@D)/sds.h \
$(@D)/adapters $(HIREDIS_INCLUDE_DIR)
$(@D)/alloc.h $(@D)/adapters $(HIREDIS_INCLUDE_DIR)
$(INSTALL) -D -m 0644 $(@D)/hiredis.pc \
$(STAGING_DIR)/usr/lib/pkgconfig/hiredis.pc
$(HIREDIS_INSTALL_STAGING_STATIC_LIB)

View File

@@ -0,0 +1,77 @@
From 8c07fa9eda13e835f3f968b2e1c9a8be3a851ff9 Mon Sep 17 00:00:00 2001
From: Jouni Malinen <j@w1.fi>
Date: Thu, 29 Aug 2019 11:52:04 +0300
Subject: [PATCH] AP: Silently ignore management frame from unexpected source
address
Do not process any received Management frames with unexpected/invalid SA
so that we do not add any state for unexpected STA addresses or end up
sending out frames to unexpected destination. This prevents unexpected
sequences where an unprotected frame might end up causing the AP to send
out a response to another device and that other device processing the
unexpected response.
In particular, this prevents some potential denial of service cases
where the unexpected response frame from the AP might result in a
connected station dropping its association.
Signed-off-by: Jouni Malinen <j@w1.fi>
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Retrieved from:
https://w1.fi/security/2019-7/0001-AP-Silently-ignore-management-frame-from-unexpected-.patch]
---
src/ap/drv_callbacks.c | 13 +++++++++++++
src/ap/ieee802_11.c | 12 ++++++++++++
2 files changed, 25 insertions(+)
diff --git a/src/ap/drv_callbacks.c b/src/ap/drv_callbacks.c
index 31587685fe3b..34ca379edc3d 100644
--- a/src/ap/drv_callbacks.c
+++ b/src/ap/drv_callbacks.c
@@ -131,6 +131,19 @@ int hostapd_notif_assoc(struct hostapd_data *hapd, const u8 *addr,
"hostapd_notif_assoc: Skip event with no address");
return -1;
}
+
+ if (is_multicast_ether_addr(addr) ||
+ is_zero_ether_addr(addr) ||
+ os_memcmp(addr, hapd->own_addr, ETH_ALEN) == 0) {
+ /* Do not process any frames with unexpected/invalid SA so that
+ * we do not add any state for unexpected STA addresses or end
+ * up sending out frames to unexpected destination. */
+ wpa_printf(MSG_DEBUG, "%s: Invalid SA=" MACSTR
+ " in received indication - ignore this indication silently",
+ __func__, MAC2STR(addr));
+ return 0;
+ }
+
random_add_randomness(addr, ETH_ALEN);
hostapd_logger(hapd, addr, HOSTAPD_MODULE_IEEE80211,
diff --git a/src/ap/ieee802_11.c b/src/ap/ieee802_11.c
index c85a28db44b7..e7065372e158 100644
--- a/src/ap/ieee802_11.c
+++ b/src/ap/ieee802_11.c
@@ -4626,6 +4626,18 @@ int ieee802_11_mgmt(struct hostapd_data *hapd, const u8 *buf, size_t len,
fc = le_to_host16(mgmt->frame_control);
stype = WLAN_FC_GET_STYPE(fc);
+ if (is_multicast_ether_addr(mgmt->sa) ||
+ is_zero_ether_addr(mgmt->sa) ||
+ os_memcmp(mgmt->sa, hapd->own_addr, ETH_ALEN) == 0) {
+ /* Do not process any frames with unexpected/invalid SA so that
+ * we do not add any state for unexpected STA addresses or end
+ * up sending out frames to unexpected destination. */
+ wpa_printf(MSG_DEBUG, "MGMT: Invalid SA=" MACSTR
+ " in received frame - ignore this frame silently",
+ MAC2STR(mgmt->sa));
+ return 0;
+ }
+
if (stype == WLAN_FC_STYPE_BEACON) {
handle_beacon(hapd, mgmt, len, fi);
return 1;
--
2.20.1

View File

@@ -12,6 +12,10 @@ HOSTAPD_DEPENDENCIES = host-pkgconf
HOSTAPD_CFLAGS = $(TARGET_CFLAGS)
HOSTAPD_LICENSE = BSD-3-Clause
HOSTAPD_LICENSE_FILES = README
# 0001-AP-Silently-ignore-management-frame-from-unexpected-.patch
HOSTAPD_IGNORE_CVES += CVE-2019-16275
HOSTAPD_CONFIG_SET =
HOSTAPD_CONFIG_ENABLE = \

View File

@@ -6,4 +6,4 @@ config BR2_PACKAGE_KMSCUBE
help
kmscube is an application to test kms/drm drivers.
https://cgit.freedesktop.org/mesa/kmscube/
https://gitlab.freedesktop.org/mesa/kmscube

View File

@@ -5,7 +5,7 @@
################################################################################
KMSCUBE_VERSION = 6cbd03ab94066dddbba7bedfde87c7c4319c18d5
KMSCUBE_SITE = https://cgit.freedesktop.org/mesa/kmscube/snapshot
KMSCUBE_SITE = https://gitlab.freedesktop.org/mesa/kmscube/-/archive/$(KMSCUBE_VERSION)
KMSCUBE_LICENSE = MIT
KMSCUBE_DEPENDENCIES = host-pkgconf mesa3d libdrm
KMSCUBE_AUTORECONF = YES

View File

@@ -1,2 +1,3 @@
# Locally computed
sha256 22ff3f0ca9679c59ce1a90b98d918dd10a8012b789729b2e44c04d4ce8c86ad8 kodi-screensaver-rsxs-7cb648507440d87948dec10d5bfdab3b722d37fe.tar.gz
sha256 fa0ff8b6a6267b9477be7d505aa384056633b4be17e0b9d308df9bd70d1c99f6 debian/copyright

View File

@@ -6,7 +6,8 @@
KODI_SCREENSAVER_RSXS_VERSION = 7cb648507440d87948dec10d5bfdab3b722d37fe
KODI_SCREENSAVER_RSXS_SITE = $(call github,xbmc,screensavers.rsxs,$(KODI_SCREENSAVER_RSXS_VERSION))
KODI_SCREENSAVER_RSXS_LICENSE = GPL-3.0
KODI_SCREENSAVER_RSXS_LICENSE = GPL-2.0+
KODI_SCREENSAVER_RSXS_LICENSE_FILES = debian/copyright
KODI_SCREENSAVER_RSXS_DEPENDENCIES = bzip2 gli glm jpeg kodi libpng libtool tiff
$(eval $(cmake-package))

View File

@@ -12,4 +12,13 @@ LIBEXIF_DEPENDENCIES = host-pkgconf
LIBEXIF_LICENSE = LGPL-2.1+
LIBEXIF_LICENSE_FILES = COPYING
# 0001-fixes-some-not-all-buffer-overreads-during-decoding-.patch
LIBEXIF_IGNORE_CVES += CVE-2016-6328
# 0002-On-saving-makernotes-make-sure-the-makernote-contain.patch
LIBEXIF_IGNORE_CVES += CVE-2017-7544
# 0004-Improve-deep-recursion-detection-in-exif_data_load_d.patch
LIBEXIF_IGNORE_CVES += CVE-2018-20030
# 0005-fix-CVE-2019-9278.patch
LIBEXIF_IGNORE_CVES += CVE-2019-9278
$(eval $(autotools-package))

View File

@@ -0,0 +1,27 @@
From 6b9438d746cec6e4e632d78c5244f4be6314d1c9 Mon Sep 17 00:00:00 2001
From: Allen Winter <allen.winter@kdab.com>
Date: Sun, 28 May 2017 12:51:10 -0400
Subject: [PATCH] icaltypes.c - icalreqstattype_from_string(), copy the
reqstattype's debug string into its own memory in the ring buffer.
Issue#253
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Retrieved (and backported) from:
https://github.com/libical/libical/commit/6b9438d746cec6e4e632d78c5244f4be6314d1c9]
---
src/libical/icaltypes.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/libical/icaltypes.c b/src/libical/icaltypes.c
index 70c50d29..85c33545 100644
--- a/src/libical/icaltypes.c
+++ b/src/libical/icaltypes.c
@@ -140,7 +140,7 @@ struct icalreqstattype icalreqstattype_from_string(const char *str)
p2 = strchr(p1+1,';');
if (p2 != 0 && *p2 != 0){
- stat.debug = p2+1;
+ stat.debug = icalmemory_tmp_copy(p2+1);
}
return stat;

View File

@@ -10,6 +10,9 @@ LIBICAL_INSTALL_STAGING = YES
LIBICAL_LICENSE = MPL-1.0 or LGPL-2.1
LIBICAL_LICENSE_FILES = LICENSE
# 0002-icaltypes-c-icalreqstattype_from_string-copy-the-reqstattype.patch
LIBICAL_IGNORE_CVES += CVE-2016-9584
# building without this option is broken, it is used by
# Gentoo/alpinelinux as well
LIBICAL_CONF_OPTS = -DSHARED_ONLY=true

View File

@@ -1,8 +1,8 @@
# From https://lists.freedesktop.org/archives/wayland-devel/2020-March/041288.html
md5 6fbea8d51d9194d7ba33f96d7c4cee56 libinput-1.15.3.tar.xz
sha1 101fd149b851c197323129efcdfe5c1c6c940b43 libinput-1.15.3.tar.xz
sha256 5b12427dd50489c2b41b04ae2ca54e31a112a33cb861f00ccd15a2ad7a88694d libinput-1.15.3.tar.xz
sha512 6636fd618e2b9cfa5ee44701207dc98f2639adc53eb3ef135509d936fb19b2cedf5184eab58e887798d9cf8ee65f35bc9062f7e3630080bcbe45a90a8b631ef2 libinput-1.15.3.tar.xz
# From https://lists.freedesktop.org/archives/wayland-devel/2020-March/041332.html
md5 76c5cb1a55f5098ed353ae7d4e054c50 libinput-1.15.4.tar.xz
sha1 43740a5fec3f6d474906173cc01ff3d73d935d2f libinput-1.15.4.tar.xz
sha256 9c8b6846d94e374ee4bdb32634e4ac4aa318afc31f9a58fcb545cd3095c745c1 libinput-1.15.4.tar.xz
sha512 4659818952dc729cd5bdb78ebe21edbbacbf8a66a592b13ba30f3bb4c4e264208ec94440a253cfa4edc8b2ef904954eecea6be0f8d63cf239e3858d3abb64a80 libinput-1.15.4.tar.xz
# License files
sha256 70d5b1dfe5a9c50a1f2ea91b1c2b1c85d876c5c92339585edbb85cf69e945e14 COPYING

View File

@@ -4,7 +4,7 @@
#
################################################################################
LIBINPUT_VERSION = 1.15.3
LIBINPUT_VERSION = 1.15.4
LIBINPUT_SOURCE = libinput-$(LIBINPUT_VERSION).tar.xz
LIBINPUT_SITE = http://www.freedesktop.org/software/libinput
LIBINPUT_DEPENDENCIES = host-pkgconf libevdev mtdev udev

View File

@@ -1,5 +1,5 @@
# From https://www.openssl.org/source/openssl-1.1.1d.tar.gz.sha256
sha256 1e3a91bc1f9dfce01af26026f856e064eab4c8ee0a8f457b5ae30b40b8b711f2 openssl-1.1.1d.tar.gz
sha256 186c6bfe6ecfba7a5b48c47f8a1673d0f3b0e5ba2e25602dd23b629975da3f35 openssl-1.1.1f.tar.gz
# License files
sha256 c32913b33252e71190af2066f08115c69bc9fddadf3bf29296e20c835389841c LICENSE

View File

@@ -4,7 +4,7 @@
#
################################################################################
LIBOPENSSL_VERSION = 1.1.1d
LIBOPENSSL_VERSION = 1.1.1f
LIBOPENSSL_SITE = https://www.openssl.org/source
LIBOPENSSL_SOURCE = openssl-$(LIBOPENSSL_VERSION).tar.gz
LIBOPENSSL_LICENSE = OpenSSL or SSLeay

View File

@@ -0,0 +1,29 @@
From f833c53cb596e9e1792949f762e0b33661822748 Mon Sep 17 00:00:00 2001
From: Erik de Castro Lopo <erikd@mega-nerd.com>
Date: Tue, 23 May 2017 20:15:24 +1000
Subject: [PATCH] src/aiff.c: Fix a buffer read overflow
Secunia Advisory SA76717.
Found by: Laurent Delosieres, Secunia Research at Flexera Software
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Retrieved from:
https://github.com/erikd/libsndfile/commit/f833c53cb596e9e1792949f762e0b33661822748]
---
src/aiff.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/aiff.c b/src/aiff.c
index 5b5f9f53..45864b76 100644
--- a/src/aiff.c
+++ b/src/aiff.c
@@ -1759,7 +1759,7 @@ aiff_read_chanmap (SF_PRIVATE * psf, unsigned dword)
psf_binheader_readf (psf, "j", dword - bytesread) ;
if (map_info->channel_map != NULL)
- { size_t chanmap_size = psf->sf.channels * sizeof (psf->channel_map [0]) ;
+ { size_t chanmap_size = SF_MIN (psf->sf.channels, layout_tag & 0xffff) * sizeof (psf->channel_map [0]) ;
free (psf->channel_map) ;

View File

@@ -0,0 +1,68 @@
From fd0484aba8e51d16af1e3a880f9b8b857b385eb3 Mon Sep 17 00:00:00 2001
From: Erik de Castro Lopo <erikd@mega-nerd.com>
Date: Wed, 12 Apr 2017 19:45:30 +1000
Subject: [PATCH] FLAC: Fix a buffer read overrun
Buffer read overrun occurs when reading a FLAC file that switches
from 2 channels to one channel mid-stream. Only option is to
abort the read.
Closes: https://github.com/erikd/libsndfile/issues/230
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Retrieved from:
https://github.com/erikd/libsndfile/commit/fd0484aba8e51d16af1e3a880f9b8b857b385eb3]
---
src/common.h | 1 +
src/flac.c | 13 +++++++++++++
src/sndfile.c | 1 +
3 files changed, 15 insertions(+)
diff --git a/src/common.h b/src/common.h
index 0bd810c3..e2669b6a 100644
--- a/src/common.h
+++ b/src/common.h
@@ -725,6 +725,7 @@ enum
SFE_FLAC_INIT_DECODER,
SFE_FLAC_LOST_SYNC,
SFE_FLAC_BAD_SAMPLE_RATE,
+ SFE_FLAC_CHANNEL_COUNT_CHANGED,
SFE_FLAC_UNKOWN_ERROR,
SFE_WVE_NOT_WVE,
diff --git a/src/flac.c b/src/flac.c
index 84de0e26..986a7b8f 100644
--- a/src/flac.c
+++ b/src/flac.c
@@ -434,6 +434,19 @@ sf_flac_meta_callback (const FLAC__StreamDecoder * UNUSED (decoder), const FLAC_
switch (metadata->type)
{ case FLAC__METADATA_TYPE_STREAMINFO :
+ if (psf->sf.channels > 0 && psf->sf.channels != (int) metadata->data.stream_info.channels)
+ { psf_log_printf (psf, "Error: FLAC stream changed from %d to %d channels\n"
+ "Nothing to be but to error out.\n" ,
+ psf->sf.channels, metadata->data.stream_info.channels) ;
+ psf->error = SFE_FLAC_CHANNEL_COUNT_CHANGED ;
+ return ;
+ } ;
+
+ if (psf->sf.channels > 0 && psf->sf.samplerate != (int) metadata->data.stream_info.sample_rate)
+ { psf_log_printf (psf, "Warning: FLAC stream changed sample rates from %d to %d.\n"
+ "Carrying on as if nothing happened.",
+ psf->sf.samplerate, metadata->data.stream_info.sample_rate) ;
+ } ;
psf->sf.channels = metadata->data.stream_info.channels ;
psf->sf.samplerate = metadata->data.stream_info.sample_rate ;
psf->sf.frames = metadata->data.stream_info.total_samples ;
diff --git a/src/sndfile.c b/src/sndfile.c
index 41875610..e2a87be8 100644
--- a/src/sndfile.c
+++ b/src/sndfile.c
@@ -245,6 +245,7 @@ ErrorStruct SndfileErrors [] =
{ SFE_FLAC_INIT_DECODER , "Error : problem with initialization of the flac decoder." },
{ SFE_FLAC_LOST_SYNC , "Error : flac decoder lost sync." },
{ SFE_FLAC_BAD_SAMPLE_RATE, "Error : flac does not support this sample rate." },
+ { SFE_FLAC_CHANNEL_COUNT_CHANGED, "Error : flac channel changed mid stream." },
{ SFE_FLAC_UNKOWN_ERROR , "Error : unknown error in flac decoder." },
{ SFE_WVE_NOT_WVE , "Error : not a WVE file." },

View File

@@ -0,0 +1,54 @@
From ef1dbb2df1c0e741486646de40bd638a9c4cd808 Mon Sep 17 00:00:00 2001
From: Erik de Castro Lopo <erikd@mega-nerd.com>
Date: Fri, 14 Apr 2017 15:19:16 +1000
Subject: [PATCH] src/flac.c: Fix a buffer read overflow
A file (generated by a fuzzer) which increased the number of channels
from one frame to the next could cause a read beyond the end of the
buffer provided by libFLAC. Only option is to abort the read.
Closes: https://github.com/erikd/libsndfile/issues/231
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Retrieved from:
https://github.com/erikd/libsndfile/commit/ef1dbb2df1c0e741486646de40bd638a9c4cd808]
---
src/flac.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/src/flac.c b/src/flac.c
index 5a4f8c21..e4f9aaa0 100644
--- a/src/flac.c
+++ b/src/flac.c
@@ -169,6 +169,14 @@ flac_buffer_copy (SF_PRIVATE *psf)
const int32_t* const *buffer = pflac->wbuffer ;
unsigned i = 0, j, offset, channels, len ;
+ if (psf->sf.channels != (int) frame->header.channels)
+ { psf_log_printf (psf, "Error: FLAC frame changed from %d to %d channels\n"
+ "Nothing to do but to error out.\n" ,
+ psf->sf.channels, frame->header.channels) ;
+ psf->error = SFE_FLAC_CHANNEL_COUNT_CHANGED ;
+ return 0 ;
+ } ;
+
/*
** frame->header.blocksize is variable and we're using a constant blocksize
** of FLAC__MAX_BLOCK_SIZE.
@@ -202,7 +210,6 @@ flac_buffer_copy (SF_PRIVATE *psf)
return 0 ;
} ;
-
len = SF_MIN (pflac->len, frame->header.blocksize) ;
if (pflac->remain % channels != 0)
@@ -436,7 +443,7 @@ sf_flac_meta_callback (const FLAC__StreamDecoder * UNUSED (decoder), const FLAC_
{ case FLAC__METADATA_TYPE_STREAMINFO :
if (psf->sf.channels > 0 && psf->sf.channels != (int) metadata->data.stream_info.channels)
{ psf_log_printf (psf, "Error: FLAC stream changed from %d to %d channels\n"
- "Nothing to be but to error out.\n" ,
+ "Nothing to do but to error out.\n" ,
psf->sf.channels, metadata->data.stream_info.channels) ;
psf->error = SFE_FLAC_CHANNEL_COUNT_CHANGED ;
return ;

View File

@@ -0,0 +1,32 @@
From cd7da8dbf6ee4310d21d9e44b385d6797160d9e8 Mon Sep 17 00:00:00 2001
From: Erik de Castro Lopo <erikd@mega-nerd.com>
Date: Wed, 12 Apr 2017 20:19:34 +1000
Subject: [PATCH] src/flac.c: Fix another memory leak
When the FLAC decoder was passed a malformed file, the associated
`FLAC__StreamDecoder` object was not getting released.
Closes: https://github.com/erikd/libsndfile/issues/233
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Retrieved from:
https://github.com/erikd/libsndfile/commit/cd7da8dbf6ee4310d21d9e44b385d6797160d9e8]
---
src/flac.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/flac.c b/src/flac.c
index 986a7b8f..5a4f8c21 100644
--- a/src/flac.c
+++ b/src/flac.c
@@ -841,7 +841,9 @@ flac_read_header (SF_PRIVATE *psf)
psf_log_printf (psf, "End\n") ;
- if (psf->error == 0)
+ if (psf->error != 0)
+ FLAC__stream_decoder_delete (pflac->fsd) ;
+ else
{ FLAC__uint64 position ;
FLAC__stream_decoder_get_decode_position (pflac->fsd, &position) ;

View File

@@ -0,0 +1,92 @@
From cf7a8182c2642c50f1cf90dddea9ce96a8bad2e8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rn=20Heusipp?= <osmanx@problemloesungsmaschine.de>
Date: Wed, 14 Jun 2017 12:25:40 +0200
Subject: [PATCH] src/common.c: Fix heap buffer overflows when writing strings
in binheader
Fixes the following problems:
1. Case 's' only enlarges the buffer by 16 bytes instead of size bytes.
2. psf_binheader_writef() enlarges the header buffer (if needed) prior to the
big switch statement by an amount (16 bytes) which is enough for all cases
where only a single value gets added. Cases 's', 'S', 'p' however
additionally write an arbitrary length block of data and again enlarge the
buffer to the required amount. However, the required space calculation does
not take into account the size of the length field which gets output before
the data.
3. Buffer size requirement calculation in case 'S' does not account for the
padding byte ("size += (size & 1) ;" happens after the calculation which
uses "size").
4. Case 'S' can overrun the header buffer by 1 byte when no padding is
involved
("memcpy (&(psf->header.ptr [psf->header.indx]), strptr, size + 1) ;" while
the buffer is only guaranteed to have "size" space available).
5. "psf->header.ptr [psf->header.indx] = 0 ;" in case 'S' always writes 1 byte
beyond the space which is guaranteed to be allocated in the header buffer.
6. Case 's' can overrun the provided source string by 1 byte if padding is
involved ("memcpy (&(psf->header.ptr [psf->header.indx]), strptr, size) ;"
where "size" is "strlen (strptr) + 1" (which includes the 0 terminator,
plus optionally another 1 which is padding and not guaranteed to be
readable via the source string pointer).
Closes: https://github.com/erikd/libsndfile/issues/292
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Retrieved from:
https://github.com/erikd/libsndfile/commit/cf7a8182c2642c50f1cf90dddea9ce96a8bad2e8]
---
src/common.c | 15 +++++++--------
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/src/common.c b/src/common.c
index 1a6204ca..6b2a2ee9 100644
--- a/src/common.c
+++ b/src/common.c
@@ -681,16 +681,16 @@ psf_binheader_writef (SF_PRIVATE *psf, const char *format, ...)
/* Write a C string (guaranteed to have a zero terminator). */
strptr = va_arg (argptr, char *) ;
size = strlen (strptr) + 1 ;
- size += (size & 1) ;
- if (psf->header.indx + (sf_count_t) size >= psf->header.len && psf_bump_header_allocation (psf, 16))
+ if (psf->header.indx + 4 + (sf_count_t) size + (sf_count_t) (size & 1) > psf->header.len && psf_bump_header_allocation (psf, 4 + size + (size & 1)))
return count ;
if (psf->rwf_endian == SF_ENDIAN_BIG)
- header_put_be_int (psf, size) ;
+ header_put_be_int (psf, size + (size & 1)) ;
else
- header_put_le_int (psf, size) ;
+ header_put_le_int (psf, size + (size & 1)) ;
memcpy (&(psf->header.ptr [psf->header.indx]), strptr, size) ;
+ size += (size & 1) ;
psf->header.indx += size ;
psf->header.ptr [psf->header.indx - 1] = 0 ;
count += 4 + size ;
@@ -703,16 +703,15 @@ psf_binheader_writef (SF_PRIVATE *psf, const char *format, ...)
*/
strptr = va_arg (argptr, char *) ;
size = strlen (strptr) ;
- if (psf->header.indx + (sf_count_t) size > psf->header.len && psf_bump_header_allocation (psf, size))
+ if (psf->header.indx + 4 + (sf_count_t) size + (sf_count_t) (size & 1) > psf->header.len && psf_bump_header_allocation (psf, 4 + size + (size & 1)))
return count ;
if (psf->rwf_endian == SF_ENDIAN_BIG)
header_put_be_int (psf, size) ;
else
header_put_le_int (psf, size) ;
- memcpy (&(psf->header.ptr [psf->header.indx]), strptr, size + 1) ;
+ memcpy (&(psf->header.ptr [psf->header.indx]), strptr, size + (size & 1)) ;
size += (size & 1) ;
psf->header.indx += size ;
- psf->header.ptr [psf->header.indx] = 0 ;
count += 4 + size ;
break ;
@@ -724,7 +723,7 @@ psf_binheader_writef (SF_PRIVATE *psf, const char *format, ...)
size = (size & 1) ? size : size + 1 ;
size = (size > 254) ? 254 : size ;
- if (psf->header.indx + (sf_count_t) size > psf->header.len && psf_bump_header_allocation (psf, size))
+ if (psf->header.indx + 1 + (sf_count_t) size > psf->header.len && psf_bump_header_allocation (psf, 1 + size))
return count ;
header_put_byte (psf, size) ;

View File

@@ -24,6 +24,16 @@ LIBSNDFILE_IGNORE_CVES += CVE-2018-13419
LIBSNDFILE_IGNORE_CVES += CVE-2018-19758
# 0005-wav_write_header-don-t-read-past-the-array-end.patch
LIBSNDFILE_IGNORE_CVES += CVE-2019-3832
# 0006-src-aiff.c-Fix-a-buffer-read-overflow.patch
LIBSNDFILE_IGNORE_CVES += CVE-2017-6892
# 0007-FLAC-Fix-a-buffer-read-overrun.patch
LIBSNDFILE_IGNORE_CVES += CVE-2017-8361
# 0008-src-flac.c-Fix-a-buffer-read-overflow.patch
LIBSNDFILE_IGNORE_CVES += CVE-2017-8362 CVE-2017-8365
# 0009-src-flac-c-Fix-another-memory-leak.patch
LIBSNDFILE_IGNORE_CVES += CVE-2017-8363
# 0010-src-common-c-Fix-heap-buffer-overflows-when-writing-strings-in.patch
LIBSNDFILE_IGNORE_CVES += CVE-2017-12562
LIBSNDFILE_CONF_OPTS = \
--disable-sqlite \

View File

@@ -318,11 +318,11 @@ endchoice
config BR2_DEFAULT_KERNEL_HEADERS
string
default "4.4.215" if BR2_KERNEL_HEADERS_4_4
default "4.9.215" if BR2_KERNEL_HEADERS_4_9
default "4.14.172" if BR2_KERNEL_HEADERS_4_14
default "4.19.107" if BR2_KERNEL_HEADERS_4_19
default "5.4.23" if BR2_KERNEL_HEADERS_5_4
default "4.4.218" if BR2_KERNEL_HEADERS_4_4
default "4.9.218" if BR2_KERNEL_HEADERS_4_9
default "4.14.175" if BR2_KERNEL_HEADERS_4_14
default "4.19.114" if BR2_KERNEL_HEADERS_4_19
default "5.4.31" if BR2_KERNEL_HEADERS_5_4
default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION
default "custom" if BR2_KERNEL_HEADERS_CUSTOM_TARBALL
default BR2_KERNEL_HEADERS_CUSTOM_REPO_VERSION \

View File

@@ -82,6 +82,18 @@ else
PERF_MAKE_FLAGS += NO_LIBELF=1 NO_DWARF=1
endif
ifeq ($(BR2_PACKAGE_BINUTILS),y)
PERF_DEPENDENCIES += binutils
else
PERF_MAKE_FLAGS += NO_DEMANGLE=1
endif
ifeq ($(BR2_PACKAGE_OPENSSL),y)
PERF_DEPENDENCIES += openssl
else
PERF_MAKE_FLAGS += NO_LIBCRYPTO=1
endif
ifeq ($(BR2_PACKAGE_ZLIB),y)
PERF_DEPENDENCIES += zlib
else

View File

@@ -193,7 +193,8 @@ LLVM_CONF_OPTS += -DLLVM_HOST_TRIPLE=$(GNU_TARGET_NAME)
# check preventively. Building the Go and OCaml bindings is yet unsupported.
HOST_LLVM_CONF_OPTS += \
-DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND \
-DOCAMLFIND=OCAMLFIND-NOTFOUND
-DOCAMLFIND=OCAMLFIND-NOTFOUND \
-DLLVM_ENABLE_BINDINGS=OFF
# Builds a release host tablegen that gets used during the LLVM build.
HOST_LLVM_CONF_OPTS += -DLLVM_OPTIMIZED_TABLEGEN=ON

View File

@@ -0,0 +1,81 @@
From 6fea0a8e33760258c4baa5d0a6f3a145897427fe Mon Sep 17 00:00:00 2001
From: Florian Weimer <fweimer@redhat.com>
Date: Tue, 3 Sep 2019 14:01:39 +0200
Subject: [PATCH] localedef: Use initializer for flexible array member [BZ
#24950]
struct charseq used a zero-length array instead of a flexible array
member. This required a strange construct to initialize struct
charseq objects, and GCC 10 warns about that:
cc1: error: writing 1 byte into a region of size 0 [-Werror=stringop-overflow=]
In file included from programs/repertoire.h:24,
from programs/localedef.h:32,
from programs/ld-ctype.c:35:
programs/charmap.h:63:17: note: destination object declared here
63 | unsigned char bytes[0];
| ^~~~~
cc1: error: writing 1 byte into a region of size 0 [-Werror=stringop-overflow=]
programs/charmap.h:63:17: note: destination object declared here
cc1: error: writing 1 byte into a region of size 0 [-Werror=stringop-overflow=]
programs/charmap.h:63:17: note: destination object declared here
cc1: error: writing 1 byte into a region of size 0 [-Werror=stringop-overflow=]
programs/charmap.h:63:17: note: destination object declared here
The change makes the object physically const, but it is not expected
to be modified.
[Upstream: https://sourceware.org/git/?p=glibc.git;a=patch;h=1471fa556afb428c4a4c46cf5543a4101d5bcf91]
[Dropped confliciting ChangeLog part]
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
locale/programs/charmap.h | 2 +-
locale/programs/ld-ctype.c | 12 ++++++------
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/locale/programs/charmap.h b/locale/programs/charmap.h
index 870a9e95..70db330d 100644
--- a/locale/programs/charmap.h
+++ b/locale/programs/charmap.h
@@ -60,7 +60,7 @@ struct charseq
const char *name;
uint32_t ucs4;
int nbytes;
- unsigned char bytes[0];
+ unsigned char bytes[];
};
diff --git a/locale/programs/ld-ctype.c b/locale/programs/ld-ctype.c
index cfc9c43f..9123f64a 100644
--- a/locale/programs/ld-ctype.c
+++ b/locale/programs/ld-ctype.c
@@ -842,8 +842,6 @@ no input digits defined and none of the standard names in the charmap"));
for (cnt = 0; cnt < 10; ++cnt)
if (ctype->mboutdigits[cnt] == NULL)
{
- static struct charseq replace[2];
-
if (!warned)
{
record_error (0, 0, _("\
@@ -851,10 +849,12 @@ not all characters used in `outdigit' are available in the charmap"));
warned = 1;
}
- replace[0].nbytes = 1;
- replace[0].bytes[0] = '?';
- replace[0].bytes[1] = '\0';
- ctype->mboutdigits[cnt] = &replace[0];
+ static const struct charseq replace =
+ {
+ .nbytes = 1,
+ .bytes = "?",
+ };
+ ctype->mboutdigits[cnt] = (struct charseq *) &replace;
}
warned = 0;
--
2.26.0

View File

@@ -10,9 +10,13 @@
LOCALEDEF_VERSION = 2.30-20-g50f20fe506abb8853641006a7b90a81af21d7b91
LOCALEDEF_SOURCE = glibc-$(LOCALEDEF_VERSION).tar.gz
LOCALEDEF_SITE = $(call github,bminor,glibc,$(LOCALEDEF_VERSION))
LOCALEDEF_DEPENDENCIES = $(BR2_MAKE_HOST_DEPENDENCY)
HOST_LOCALEDEF_DL_SUBDIR = glibc
HOST_LOCALEDEF_DEPENDENCIES = \
$(BR2_MAKE_HOST_DEPENDENCY) \
host-bison \
host-gawk
HOST_LOCALEDEF_CONF_ENV += ac_cv_prog_MAKE="$(BR2_MAKE)"
# Even though we use the autotools-package infrastructure, we have to override

View File

@@ -14,4 +14,11 @@ MCRYPT_CONF_OPTS = --with-libmcrypt-prefix=$(STAGING_DIR)/usr
MCRYPT_LICENSE = GPL-3.0
MCRYPT_LICENSE_FILES = COPYING
# 0001-CVE-2012-4409.patch
MCRYPT_IGNORE_CVES += CVE-2012-4409
# 0002-CVE-2012-4426.patch
MCRYPT_IGNORE_CVES += CVE-2012-4426
# 0003-CVE-2012-4527.patch
MCRYPT_IGNORE_CVES += CVE-2012-4527
$(eval $(autotools-package))

View File

@@ -0,0 +1,82 @@
From e3b47c1b84964c62b3e1fa782f1ffa4be0ae62f9 Mon Sep 17 00:00:00 2001
From: Peter Seiderer <ps.report@gmx.net>
Date: Mon, 9 Mar 2020 13:01:14 +0100
Subject: [PATCH] vc4: add meson option to disable optional neon support
Not all toolchains are able to compile the runtime
optional vc4 neon support, so add an meson option
to force disabling it at compile time.
[Upstream: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4114]
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
meson_options.txt | 7 +++++++
src/gallium/drivers/vc4/meson.build | 4 ++--
src/gallium/drivers/vc4/vc4_tiling.h | 4 ++--
3 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/meson_options.txt b/meson_options.txt
index a39596a6f19..0f6b6c62b55 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -117,6 +117,13 @@ option(
choices : ['auto', 'true', 'false'],
description : 'enable gallium va state tracker.',
)
+option(
+ 'gallium-vc4-neon',
+ type : 'combo',
+ value : 'auto',
+ choices : ['auto', 'disabled'],
+ description : 'enable gallium vc4 optional neon support.',
+)
option(
'va-libs-path',
type : 'string',
diff --git a/src/gallium/drivers/vc4/meson.build b/src/gallium/drivers/vc4/meson.build
index 5ce5af5f6b4..e3f7d8d62ae 100644
--- a/src/gallium/drivers/vc4/meson.build
+++ b/src/gallium/drivers/vc4/meson.build
@@ -84,7 +84,7 @@ files_libvc4 = files(
vc4_c_args = []
libvc4_neon = []
-if host_machine.cpu_family() == 'arm'
+if host_machine.cpu_family() == 'arm' and get_option('gallium-vc4-neon') != 'disabled'
libvc4_neon = static_library(
'vc4_neon',
'vc4_tiling_lt_neon.c',
@@ -93,7 +93,7 @@ if host_machine.cpu_family() == 'arm'
],
c_args : '-mfpu=neon',
)
- vc4_c_args += '-DUSE_ARM_ASM'
+ vc4_c_args += '-DVC4_TILING_LT_NEON'
endif
if dep_simpenrose.found()
diff --git a/src/gallium/drivers/vc4/vc4_tiling.h b/src/gallium/drivers/vc4/vc4_tiling.h
index 66767e7f1f8..7446f1c3d0c 100644
--- a/src/gallium/drivers/vc4/vc4_tiling.h
+++ b/src/gallium/drivers/vc4/vc4_tiling.h
@@ -89,7 +89,7 @@ vc4_load_lt_image(void *dst, uint32_t dst_stride,
void *src, uint32_t src_stride,
int cpp, const struct pipe_box *box)
{
-#ifdef USE_ARM_ASM
+#ifdef VC4_TILING_LT_NEON
if (util_cpu_caps.has_neon) {
vc4_load_lt_image_neon(dst, dst_stride, src, src_stride,
cpp, box);
@@ -105,7 +105,7 @@ vc4_store_lt_image(void *dst, uint32_t dst_stride,
void *src, uint32_t src_stride,
int cpp, const struct pipe_box *box)
{
-#ifdef USE_ARM_ASM
+#ifdef VC4_TILING_LT_NEON
if (util_cpu_caps.has_neon) {
vc4_store_lt_image_neon(dst, dst_stride, src, src_stride,
cpp, box);
--
2.25.1

View File

@@ -256,7 +256,7 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_TEGRA
config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_V3D
bool "Gallium v3d driver"
depends on BR2_arm || BR2_aarch64
depends on (BR2_arm && BR2_ARM_CPU_HAS_NEON) || BR2_aarch64
select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
select BR2_PACKAGE_MESA3D_GALLIUM_KMSRO
select BR2_PACKAGE_LIBDRM_VC4

View File

@@ -69,6 +69,12 @@ MESA3D_CONF_OPTS += \
-Dgallium-xa=false
endif
ifeq ($(BR2_ARM_CPU_HAS_NEON),y)
MESA3D_CONF_OPTS += -Dgallium-vc4-neon=auto
else
MESA3D_CONF_OPTS += -Dgallium-vc4-neon=disabled
endif
# Drivers
#Gallium Drivers

View File

@@ -13,7 +13,7 @@ MESON_SETUP_TYPE = setuptools
HOST_MESON_DEPENDENCIES = host-ninja
HOST_MESON_NEEDS_HOST_PYTHON = python3
HOST_MESON_TARGET_ENDIAN = $(call LOWERCASE,$(BR2_ENDIAN))
HOST_MESON_TARGET_ENDIAN = $(call qstrip,$(call LOWERCASE,$(BR2_ENDIAN)))
HOST_MESON_TARGET_CPU = $(GCC_TARGET_CPU)
# https://mesonbuild.com/Reference-tables.html#cpu-families

View File

@@ -1,4 +1,4 @@
# From https://mmonit.com/monit/dist/monit-5.25.3.tar.gz.sha256:
# From https://mmonit.com/monit/dist/monit-5.26.0.tar.gz.sha256:
sha256 87fc4568a3af9a2be89040efb169e3a2e47b262f99e78d5ddde99dd89f02f3c2 monit-5.26.0.tar.gz
# Locally computed
sha256 d5a4f52b1a5e1e7fe14e01a76aac8b08dc6bbea15466058f271456c97aac1ada COPYING

View File

@@ -27,6 +27,13 @@ else
NFTABLES_CONF_OPTS += --without-json
endif
ifeq ($(BR2_PACKAGE_PYTHON)$(BR2_PACKAGE_PYTHON3),y)
NFTABLES_CONF_OPTS += --enable-python
NFTABLES_DEPENDENCIES += $(if $(BR2_PACKAGE_PYTHON),python,python3)
else
NFTABLES_CONF_OPTS += --disable-python
endif
ifeq ($(BR2_STATIC_LIBS)$(BR2_PACKAGE_LIBNFTNL_JSON),yy)
NFTABLES_LIBS += -ljansson -lm
endif

View File

@@ -1,5 +1,5 @@
# From https://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8p13.tar.gz.md5
md5 ea040ab9b4ca656b5229b89d6b822f13 ntp-4.2.8p13.tar.gz
# From https://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8p14.tar.gz.md5
md5 783edaf1d68ddf651bde64eda54a579d ntp-4.2.8p14.tar.gz
# Calculated based on the hash above
sha256 288772cecfcd9a53694ffab108d1825a31ba77f3a8466b0401baeca3bc232a38 ntp-4.2.8p13.tar.gz
sha256 3828da5fc8126889d6a64432288ace08526c490bf5427d799931689069968d91 COPYRIGHT
sha256 1960e4f081f6aafd108d721bc3ab15f9e8dfd08dc08339aa95bca9d2545e4eb7 ntp-4.2.8p14.tar.gz
sha256 957e6a13445cc61ab1ca3dc80d8c269cf9b0a6d9eaec20f9f39639b0b3e66ee8 COPYRIGHT

View File

@@ -5,7 +5,7 @@
################################################################################
NTP_VERSION_MAJOR = 4.2
NTP_VERSION = $(NTP_VERSION_MAJOR).8p13
NTP_VERSION = $(NTP_VERSION_MAJOR).8p14
NTP_SITE = https://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-$(NTP_VERSION_MAJOR)
NTP_DEPENDENCIES = host-pkgconf libevent
NTP_LICENSE = NTP

View File

@@ -282,7 +282,9 @@ OPENCV3_CONF_OPTS += -DWITH_PNG=OFF
endif
ifeq ($(BR2_PACKAGE_OPENCV3_WITH_PROTOBUF),y)
OPENCV3_CONF_OPTS += -DWITH_PROTOBUF=ON
OPENCV3_CONF_OPTS += \
-DPROTOBUF_UPDATE_FILES=ON \
-DWITH_PROTOBUF=ON
OPENCV3_DEPENDENCIES += protobuf
else
OPENCV3_CONF_OPTS += -DWITH_PROTOBUF=OFF

View File

@@ -0,0 +1,36 @@
From ff172a49d1ca5708f45939b9b4f125cafba01db3 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Date: Tue, 24 Mar 2020 22:50:32 +0100
Subject: [PATCH] configure.ac: add foreign option to AM_INIT_AUTOMAKE
oprofile doesn't provide the NEWS, AUTHORS and ChangeLog file, so
autoreconf complains with:
Makefile.am: error: required file './NEWS' not found
Makefile.am: error: required file './AUTHORS' not found
Makefile.am: error: required file './ChangeLog' not found
Such errors can be avoided by passing the "foreign" option to
AM_INIT_AUTOMAKE.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index 00e30079..87afe2b7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -13,7 +13,7 @@ AC_PREREQ(2.13)
AC_INIT([OProfile], [1.3.0])
AC_CONFIG_SRCDIR([libop/op_config.h])
-AM_INIT_AUTOMAKE
+AM_INIT_AUTOMAKE([foreign])
AC_CONFIG_HEADERS(config.h)
AC_CHECK_DECLS([basename], [], [], [[#include <libgen.h>]])
--
2.25.1

View File

@@ -0,0 +1,169 @@
From 377610414fb6cd7ac30e4485d9d6482fcf29aca6 Mon Sep 17 00:00:00 2001
From: William Cohen <wcohen@redhat.com>
Date: Wed, 18 Mar 2020 21:19:16 -0400
Subject: [PATCH] Macro wrappers to handle the binutils 2.34 api changes
Changes in binutils 2.34 API prevented oprofile from compiling with
it. This patch tests for the changes in the binutils API during
configuration and selects the appropiate wrappers to allow oprofile to
compile. This allows oprofile to compile with both older and newer
versions of binutils.
Upstream: 377610414fb6cd7ac30e4485d9d6482fcf29aca6
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
configure.ac | 20 ++++++++++++++++++++
libutil++/bfd_support.cpp | 11 ++++++-----
libutil/op_bfd_wrappers.h | 28 ++++++++++++++++++++++++++++
opjitconv/create_bfd.c | 7 ++++---
4 files changed, 58 insertions(+), 8 deletions(-)
create mode 100644 libutil/op_bfd_wrappers.h
diff --git a/configure.ac b/configure.ac
index ac2fd35e..df032a78 100644
--- a/configure.ac
+++ b/configure.ac
@@ -224,6 +224,26 @@ if test "$host_cpu" = "powerpc64le" -o "$host_cpu" = "powerpc64"; then
fi
AC_SUBST(PFM_LIB)
+HAVE_BINUTILS_234='1'
+AC_MSG_CHECKING([whether binutils 2.34 is being used])
+rm -f test-for-BINUTILS
+AC_LANG_CONFTEST(
+ [AC_LANG_PROGRAM([[#include <bfd.h>]],
+ [[asection * sect;
+ bfd_size_type buildid_sect_size = bfd_section_size(sect);
+ return 0;]])
+ ])
+$CC conftest.$ac_ext $CFLAGS $LDFLAGS $LIBS $PERF_EVENT_FLAGS -o test-for-BINUTILS > /dev/null 2>&1
+if test -f test-for-BINUTILS; then
+ echo "yes"
+ HAVE_BINUTILS_234='1'
+else
+ echo "no"
+ HAVE_BINUTILS_234='0'
+fi
+AC_DEFINE_UNQUOTED(HAVE_BINUTILS_234, $HAVE_BINUTILS_234, [Using binutils 2.34])
+rm -f test-for-BINUTILS*
+
AC_ARG_WITH(java,
[ --with-java=java-home Path to Java home directory (default is "no"; "yes" will use /usr as Java home)],
JAVA_HOMEDIR=$with_java, [with_java=no])
diff --git a/libutil++/bfd_support.cpp b/libutil++/bfd_support.cpp
index fa904839..cd0f4f71 100644
--- a/libutil++/bfd_support.cpp
+++ b/libutil++/bfd_support.cpp
@@ -19,6 +19,7 @@
#include "locate_images.h"
#include "op_libiberty.h"
#include "op_exception.h"
+#include "op_bfd_wrappers.h"
#include <unistd.h>
#include <errno.h>
@@ -137,7 +138,7 @@ static bool get_build_id(bfd * ibfd, unsigned char * build_id)
}
}
- bfd_size_type buildid_sect_size = bfd_section_size(ibfd, sect);
+ bfd_size_type buildid_sect_size = op_bfd_section_size(ibfd, sect);
char * contents = (char *) xmalloc(buildid_sect_size);
errno = 0;
if (!bfd_get_section_contents(ibfd, sect,
@@ -188,7 +189,7 @@ bool get_debug_link_info(bfd * ibfd, string & filename, unsigned long & crc32)
if (sect == NULL)
return false;
- bfd_size_type debuglink_size = bfd_section_size(ibfd, sect);
+ bfd_size_type debuglink_size = op_bfd_section_size(ibfd, sect);
char * contents = (char *) xmalloc(debuglink_size);
cverb << vbfd
<< ".gnu_debuglink section has size " << debuglink_size << endl;
@@ -346,7 +347,7 @@ void fixup_linenr(bfd * abfd, asection * section, asymbol ** syms,
// first restrict the search on a sensible range of vma, 16 is
// an intuitive value based on epilog code look
size_t max_search = 16;
- size_t section_size = bfd_section_size(abfd, section);
+ size_t section_size = op_bfd_section_size(abfd, section);
if (pc + max_search > section_size)
max_search = section_size - pc;
@@ -819,10 +820,10 @@ find_nearest_line(bfd_info const & b, op_bfd_symbol const & sym,
else
pc = (sym.value() + offset) - sym.filepos();
- if ((bfd_get_section_flags(abfd, section) & SEC_ALLOC) == 0)
+ if ((op_bfd_get_section_flags(abfd, section) & SEC_ALLOC) == 0)
goto fail;
- if (pc >= bfd_section_size(abfd, section))
+ if (pc >= op_bfd_section_size(abfd, section))
goto fail;
ret = bfd_find_nearest_line(abfd, section, syms, pc, &cfilename,
diff --git a/libutil/op_bfd_wrappers.h b/libutil/op_bfd_wrappers.h
new file mode 100644
index 00000000..b229cc12
--- /dev/null
+++ b/libutil/op_bfd_wrappers.h
@@ -0,0 +1,28 @@
+/**
+ * @file op_bfd_wrappers.h
+ * Wrappers to hide API changes in binutils 2.34
+ *
+ * @remark Copyright 2020 OProfile authors
+ * @remark Read the file COPYING
+ *
+ * @author William Cohen
+ */
+
+#ifndef OP_BFD_WRAPPERS_H
+#define OP_BFD_WRAPPERS_H
+
+#if HAVE_BINUTILS_234
+#define op_bfd_section_size(ibfd, sec) bfd_section_size(sec)
+#define op_bfd_get_section_flags(abfd, sec) bfd_section_flags(sec)
+#define op_bfd_set_section_flags(abfd, sec, flags) bfd_set_section_flags(sec, flags)
+#define op_bfd_set_section_vma(abfd, sec, vma) bfd_set_section_vma(sec, vma)
+#define op_bfd_set_section_size(abfd, sec, size) bfd_set_section_size(sec, size)
+#else
+#define op_bfd_section_size(ibfd, sec) bfd_section_size(ibfd, sec)
+#define op_bfd_get_section_flags(abfd, sec) bfd_get_section_flags(abfd, sec)
+#define op_bfd_set_section_flags(abfd, sec, flags) bfd_set_section_flags(abfd, sec, flags)
+#define op_bfd_set_section_vma(abfd, sec, vma) bfd_set_section_vma(abfd, sec, vma)
+#define op_bfd_set_section_size(abfd, sec, size) bfd_set_section_size(abfd, sec, size)
+#endif
+
+#endif /* !OP_BFD_WRAPPERS_H */
diff --git a/opjitconv/create_bfd.c b/opjitconv/create_bfd.c
index 48db143b..da1e6d29 100644
--- a/opjitconv/create_bfd.c
+++ b/opjitconv/create_bfd.c
@@ -16,6 +16,7 @@
#include "opjitconv.h"
#include "op_libiberty.h"
+#include "op_bfd_wrappers.h"
#include <bfd.h>
#include <assert.h>
@@ -86,12 +87,12 @@ asection * create_section(bfd * abfd, char const * section_name,
bfd_perror("bfd_make_section");
goto error;
}
- bfd_set_section_vma(abfd, section, vma);
- if (bfd_set_section_size(abfd, section, size) == FALSE) {
+ op_bfd_set_section_vma(abfd, section, vma);
+ if (op_bfd_set_section_size(abfd, section, size) == FALSE) {
bfd_perror("bfd_set_section_size");
goto error;
}
- if (bfd_set_section_flags(abfd, section, flags) == FALSE) {
+ if (op_bfd_set_section_flags(abfd, section, flags) == FALSE) {
bfd_perror("bfd_set_section_flags");
goto error;
}
--
2.25.1

View File

@@ -8,6 +8,9 @@ OPROFILE_VERSION = 1.3.0
OPROFILE_SITE = http://downloads.sourceforge.net/project/oprofile/oprofile/oprofile-$(OPROFILE_VERSION)
OPROFILE_LICENSE = GPL-2.0+
OPROFILE_LICENSE_FILES = COPYING
# 0002-configure.ac-add-foreign-option-to-AM_INIT_AUTOMAKE.patch
# 0003-Macro-wrappers-to-handle-the-binutils-2.34-api-chang.patch
OPROFILE_AUTORECONF = YES
OPROFILE_CONF_OPTS = \
--disable-account-check \
--enable-gui=no \

View File

@@ -0,0 +1,60 @@
From f150702d5ab72878d45b722b6d7d4194db92c44a Mon Sep 17 00:00:00 2001
From: Peter Seiderer <ps.report@gmx.net>
Date: Mon, 9 Mar 2020 15:36:48 +0100
Subject: [PATCH] Check for sys/auxv.h before using it.
Fixes aarch64 compile wiht uclibc-ng (does not provide
sys/auxv.h header file).
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Upstream: https://github.com/php/php-src/commit/f73528f0e0d59ac744ccb4a94a3a9d7b9f0fba1b
---
configure.ac | 1 +
ext/standard/crc32.c | 9 +++++++--
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index 5219a5f2..caf62302 100644
--- a/configure.ac
+++ b/configure.ac
@@ -440,6 +440,7 @@ resolv.h \
strings.h \
syslog.h \
sysexits.h \
+sys/auxv.h \
sys/ioctl.h \
sys/file.h \
sys/mman.h \
diff --git a/ext/standard/crc32.c b/ext/standard/crc32.c
index c3ca5903..e59ab45f 100644
--- a/ext/standard/crc32.c
+++ b/ext/standard/crc32.c
@@ -17,10 +17,15 @@
*/
#include "php.h"
+#ifdef PHP_WIN32
+#include "config.w32.h"
+#else
+#include <php_config.h>
+#endif
#include "basic_functions.h"
#include "crc32.h"
-#if defined(__aarch64__)
+#if defined(__aarch64__) && defined(HAVE_SYS_AUXV_H)
# include <arm_acle.h>
# if defined(__linux__)
# include <sys/auxv.h>
@@ -85,7 +90,7 @@ PHP_NAMED_FUNCTION(php_if_crc32)
crc = crcinit^0xFFFFFFFF;
-#if defined(__aarch64__)
+#if defined(__aarch64__) && defined(HAVE_SYS_AUXV_H)
if (has_crc32_insn()) {
crc = crc32_aarch64(crc, p, nr);
RETURN_LONG(crc^0xFFFFFFFF);
--
2.25.1

View File

@@ -1,5 +1,5 @@
# From https://www.php.net/downloads.php
sha256 cf1f856d877c268124ded1ede40c9fb6142b125fdaafdc54f855120b8bc6982a php-7.4.3.tar.xz
sha256 1873c4cefdd3df9a78dcffb2198bba5c2f0464f55c9c960720c84df483fca74c php-7.4.4.tar.xz
# License file
sha256 0967ad6cf4b7fe81d38709d7aaef3fecb3bd685be7eebb37b864aa34c991baa7 LICENSE

View File

@@ -4,7 +4,7 @@
#
################################################################################
PHP_VERSION = 7.4.3
PHP_VERSION = 7.4.4
PHP_SITE = http://www.php.net/distributions
PHP_SOURCE = php-$(PHP_VERSION).tar.xz
PHP_INSTALL_STAGING = YES

View File

@@ -61,6 +61,8 @@ config BR2_PACKAGE_PINENTRY_QT5
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_WCHAR
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
depends on !BR2_arc
depends on !BR2_STATIC_LIBS
select BR2_PACKAGE_QT5
select BR2_PACKAGE_QT5BASE_GUI
@@ -68,8 +70,10 @@ config BR2_PACKAGE_PINENTRY_QT5
help
The pinentry-qt5 tool
comment "pinentry-qt5 needs a toolchain w/ wchar, NPTL, C++, dynamic library"
comment "pinentry-qt5 needs a toolchain w/ wchar, NPTL, gcc >= 4.8, C++, dynamic library"
depends on !BR2_arc
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
!BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS
!BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || \
BR2_STATIC_LIBS
endif

View File

@@ -63,7 +63,7 @@ GLOBAL_INSTRUMENTATION_HOOKS += step_time
define step_pkg_size_before
cd $(2); \
LC_ALL=C find . \( -type f -o -type l \) -printf '%T@:%i:%#m:%y:%s,%p\n' \
| LC_ALL=C sort > $($(PKG)_BUILDDIR)/.files-list$(3).before
| LC_ALL=C sort > $($(PKG)_DIR)/.files-list$(3).before
endef
# $(1): package name
@@ -72,14 +72,14 @@ endef
define step_pkg_size_after
cd $(2); \
LC_ALL=C find . \( -type f -o -type l \) -printf '%T@:%i:%#m:%y:%s,%p\n' \
| LC_ALL=C sort > $($(PKG)_BUILDDIR)/.files-list$(3).after
| LC_ALL=C sort > $($(PKG)_DIR)/.files-list$(3).after
LC_ALL=C comm -13 \
$($(PKG)_BUILDDIR)/.files-list$(3).before \
$($(PKG)_BUILDDIR)/.files-list$(3).after \
$($(PKG)_DIR)/.files-list$(3).before \
$($(PKG)_DIR)/.files-list$(3).after \
| sed -r -e 's/^[^,]+/$(1)/' \
> $($(PKG)_BUILDDIR)/.files-list$(3).txt
rm -f $($(PKG)_BUILDDIR)/.files-list$(3).before
rm -f $($(PKG)_BUILDDIR)/.files-list$(3).after
> $($(PKG)_DIR)/.files-list$(3).txt
rm -f $($(PKG)_DIR)/.files-list$(3).before
rm -f $($(PKG)_DIR)/.files-list$(3).after
endef
define step_pkg_size
@@ -103,7 +103,7 @@ GLOBAL_INSTRUMENTATION_HOOKS += step_pkg_size
define check_bin_arch
$(if $(filter end-install-target,$(1)-$(2)),\
support/scripts/check-bin-arch -p $(3) \
-l $($(PKG)_BUILDDIR)/.files-list.txt \
-l $($(PKG)_DIR)/.files-list.txt \
$(foreach i,$($(PKG)_BIN_ARCH_EXCLUDE),-i "$(i)") \
-r $(TARGET_READELF) \
-a $(BR2_READELF_ARCH_NAME))
@@ -273,9 +273,9 @@ $(BUILD_DIR)/%/.stamp_built::
# Install to host dir
$(BUILD_DIR)/%/.stamp_host_installed:
@mkdir -p $(HOST_DIR)
@$(call step_start,install-host)
@$(call MESSAGE,"Installing to host directory")
@mkdir -p $(HOST_DIR)
$(foreach hook,$($(PKG)_PRE_INSTALL_HOOKS),$(call $(hook))$(sep))
+$($(PKG)_INSTALL_CMDS)
$(foreach hook,$($(PKG)_POST_INSTALL_HOOKS),$(call $(hook))$(sep))
@@ -303,9 +303,9 @@ $(BUILD_DIR)/%/.stamp_host_installed:
# empty when we use an internal toolchain.
#
$(BUILD_DIR)/%/.stamp_staging_installed:
@mkdir -p $(STAGING_DIR)
@$(call step_start,install-staging)
@$(call MESSAGE,"Installing to staging directory")
@mkdir -p $(STAGING_DIR)
$(foreach hook,$($(PKG)_PRE_INSTALL_STAGING_HOOKS),$(call $(hook))$(sep))
+$($(PKG)_INSTALL_STAGING_CMDS)
$(foreach hook,$($(PKG)_POST_INSTALL_STAGING_HOOKS),$(call $(hook))$(sep))
@@ -329,6 +329,7 @@ $(BUILD_DIR)/%/.stamp_staging_installed:
$(if $(TOOLCHAIN_EXTERNAL_INSTALL_DIR),\
-e "s:$(TOOLCHAIN_EXTERNAL_INSTALL_DIR):@TOOLCHAIN_EXTERNAL_INSTALL_DIR@:g") \
-e "s:\(['= ]\)/usr:\\1@STAGING_DIR@/usr:g" \
-e "s:\(['= ]\)/lib:\\1@STAGING_DIR@/lib:g" \
$(if $(TOOLCHAIN_EXTERNAL_INSTALL_DIR),\
-e "s:@TOOLCHAIN_EXTERNAL_INSTALL_DIR@:$(TOOLCHAIN_EXTERNAL_INSTALL_DIR):g") \
-e "s:@STAGING_DIR@:$(STAGING_DIR):g" \
@@ -345,8 +346,8 @@ $(BUILD_DIR)/%/.stamp_staging_installed:
# Install to images dir
$(BUILD_DIR)/%/.stamp_images_installed:
@$(call step_start,install-image)
@mkdir -p $(BINARIES_DIR)
@$(call step_start,install-image)
@$(call MESSAGE,"Installing to images directory")
$(foreach hook,$($(PKG)_PRE_INSTALL_IMAGES_HOOKS),$(call $(hook))$(sep))
+$($(PKG)_INSTALL_IMAGES_CMDS)
@@ -356,9 +357,9 @@ $(BUILD_DIR)/%/.stamp_images_installed:
# Install to target dir
$(BUILD_DIR)/%/.stamp_target_installed:
@mkdir -p $(TARGET_DIR)
@$(call step_start,install-target)
@$(call MESSAGE,"Installing to target")
@mkdir -p $(TARGET_DIR)
$(foreach hook,$($(PKG)_PRE_INSTALL_TARGET_HOOKS),$(call $(hook))$(sep))
+$($(PKG)_INSTALL_TARGET_CMDS)
$(if $(BR2_INIT_SYSTEMD),\

View File

@@ -69,16 +69,14 @@ define $(2)_CONFIGURE_CMDS
mkdir -p $$($$(PKG)_SRCDIR)/build
sed -e 's%@TARGET_CROSS@%$$(TARGET_CROSS)%g' \
-e 's%@TARGET_ARCH@%$$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
-e 's%@TARGET_CPU@%$$(GCC_TARGET_CPU)%g' \
-e 's%@TARGET_ENDIAN@%$$(call LOWERCASE,$$(BR2_ENDIAN))%g' \
-e 's%@TARGET_CPU@%$$(HOST_MESON_TARGET_CPU)%g' \
-e 's%@TARGET_ENDIAN@%$$(HOST_MESON_TARGET_ENDIAN)%g' \
-e 's%@TARGET_CFLAGS@%$$(call make-comma-list,$$($(2)_CFLAGS))%g' \
-e 's%@TARGET_LDFLAGS@%$$(call make-comma-list,$$($(2)_LDFLAGS))%g' \
-e 's%@TARGET_CXXFLAGS@%$$(call make-comma-list,$$($(2)_CXXFLAGS))%g' \
-e 's%@HOST_DIR@%$$(HOST_DIR)%g' \
-e 's%@STAGING_DIR@%$$(STAGING_DIR)%g' \
$$(foreach x,$$($(2)_MESON_EXTRA_BINARIES), \
-e "/^\[binaries\]$$$$/s:$$$$:\n$$(x):" \
) \
-e "/^\[binaries\]$$$$/s:$$$$:$$(foreach x,$$($(2)_MESON_EXTRA_BINARIES),\n$$(x)):" \
package/meson/cross-compilation.conf.in \
> $$($$(PKG)_SRCDIR)/build/cross-compilation.conf
PATH=$$(BR_PATH) $$($$(PKG)_CONF_ENV) $$(MESON) \
@@ -193,7 +191,7 @@ define PKG_MESON_INSTALL_CROSS_CONF
-e 's%@TARGET_LDFLAGS@%$(call make-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
-e 's%@TARGET_CXXFLAGS@%$(call make-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
-e 's%@HOST_DIR@%$(HOST_DIR)%g' \
-e 's%@STAGING_DIR@%$$(STAGING_DIR)%g' \
-e 's%@STAGING_DIR@%$(STAGING_DIR)%g' \
$(HOST_MESON_PKGDIR)/cross-compilation.conf.in \
> $(HOST_DIR)/etc/meson/cross-compilation.conf.in
sed -e 's%@PKG_TARGET_CFLAGS@%%g' \

View File

@@ -11,10 +11,13 @@ POLKIT_LICENSE_FILES = COPYING
POLKIT_INSTALL_STAGING = YES
POLKIT_DEPENDENCIES = libglib2 host-intltool expat spidermonkey
POLKIT_DEPENDENCIES = \
libglib2 host-intltool expat spidermonkey $(TARGET_NLS_DEPENDENCIES)
# spidermonkey needs C++11
POLKIT_CONF_ENV = CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++11"
POLKIT_CONF_ENV = \
CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++11" \
LIBS=$(TARGET_NLS_LIBS)
POLKIT_CONF_OPTS = \
--with-os-type=unknown \
@@ -24,6 +27,7 @@ POLKIT_CONF_OPTS = \
--disable-libsystemd-login
ifeq ($(BR2_PACKAGE_LINUX_PAM),y)
POLKIT_DEPENDENCIES += linux-pam
POLKIT_CONF_OPTS += --with-authfw=pam
else
POLKIT_CONF_OPTS += --with-authfw=shadow

View File

@@ -0,0 +1,35 @@
From 8d0d42542e2cb7a56d645fbe4d0ef436e38bcefa Mon Sep 17 00:00:00 2001
From: Frank Denis <github@pureftpd.org>
Date: Tue, 18 Feb 2020 18:36:58 +0100
Subject: [PATCH] diraliases: always set the tail of the list to NULL
Spotted and reported by Antonio Norales from GitHub Security Labs.
Thanks!
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Retrieved from:
https://github.com/jedisct1/pure-ftpd/commit/8d0d42542e2cb7a56d645fbe4d0ef436e38bcefa]
---
src/diraliases.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/diraliases.c b/src/diraliases.c
index 4002a36..fb70273 100644
--- a/src/diraliases.c
+++ b/src/diraliases.c
@@ -93,7 +93,6 @@ int init_aliases(void)
(tail->dir = strdup(dir)) == NULL) {
die_mem();
}
- tail->next = NULL;
} else {
DirAlias *curr;
@@ -105,6 +104,7 @@ int init_aliases(void)
tail->next = curr;
tail = curr;
}
+ tail->next = NULL;
}
fclose(fp);
aliases_up++;

View File

@@ -17,6 +17,9 @@ PURE_FTPD_IGNORE_CVES += CVE-2019-20176
# 0002-pure_strcmp-len-s2-can-be-len-s1.patch
PURE_FTPD_IGNORE_CVES += CVE-2020-9365
# 0003-diraliases-always-set-the-tail-of-the-list-to-NULL.patch
PURE_FTPD_IGNORE_CVES += CVE-2020-9274
PURE_FTPD_CONF_OPTS = \
--with-altlog \
--with-puredb

Some files were not shown because too many files have changed in this diff Show More