Compare commits

...

135 Commits

Author SHA1 Message Date
Peter Korsgaard 0269b2e6e2 Update for 2020.05.3
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-12 19:56:39 +02:00
Charles Hardin c6b64eeea6 fs/common.mk: move BR2_ROOTFS_POST_FAKEROOT_SCRIPT after pre cmd hooks
The fakeroot script does not appear to be used in any of the checked
in defconfig targets, but it seems that most often the post
fakeroot script should be done after all the packages rules have
been applied instead of before.

Given that a change in systemd moved the SYSTEMD_PRESET_ALL hook to
a ROOTFS_PRE_CMD_HOOKS, there was no way to use a FAKEROOT script
to disable a service or fixup a systemd configuration. The systemd
move makes sense, and this just tries to preserve the same ability
to fixup a rootfs after all the cmd hooks are processed.

Refer to commit 65b63785a6 for
the change that instigated this reordering.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 4bc4dbd630)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-12 19:55:35 +02:00
Peter Korsgaard f8fad4629e package/cryptsetup: add upstream patch to fix runtime issue with json-c >= 0.14.0
Fixes #13251

json-c >= 0.14.0 has a name clash with internal cryptsetup functions,
causing a runtime issue.  Backport an upstream patch to rename the internal
functions to fix this.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-12 11:26:54 +02:00
Peter Korsgaard 6d3331f3e0 package/python-sentry-sdk: drop asyncio files for python 2.x to fix pycompile issue
sentry-sdk has a set of optional "integrations", some of which use asyncio.

pycompile unfortunately errors out on these files when running under Python
2.x:

../scripts/pycompile.py ..
error:   File "/usr/lib/python2.7/site-packages/sentry_sdk/integrations/sanic.py", line 64
    async def sentry_handle_request(self, request, *args, **kwargs):
            ^
SyntaxError: invalid syntax

As a workaround, simply drop the unusable files from TARGET_DIR if building
for python 2.x.

Fixes:
http://autobuild.buildroot.net/results/9e4/9e47ee2a56153379e4e7bc839be5972a2302ba9f/

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d62f0042e8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-12 10:57:23 +02:00
Peter Korsgaard 4314768295 package/python-pymodbus: drop asyncio files for python 2.x to fix pycompile issue
Pymodbus has optional support for asyncio.  Pycompile unfortunately errors
out on these files when running under Python 2.x:

../scripts/pycompile.py ..
error:   File "/usr/lib/python2.7/site-packages/pymodbus/client/asynchronous/asyncio/__init__.py", line 257
    yield from self._connect()
             ^
SyntaxError: invalid syntax

As a workaround, simply drop the unusable files from TARGET_DIR if building
for python 2.x.

Fixes:
http://autobuild.buildroot.net/results/cc4/cc48927cbe9ae6c2d8b12d65467ec40df82febf6/

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 7d417ed7f3)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-12 10:56:54 +02:00
Peter Korsgaard 474a939072 package/bash: update to patch level 18
Fixes a regression introduced in patch level 16.

Rename the 2 uClibc patches so the upstream patch numbering matches ours.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d73ec6e0ab)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-12 10:37:49 +02:00
Peter Korsgaard ad99c98f02 {linux, linux-headers}: bump 4.19.x / 5.{4, 8}.x series
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 4dbae8ed2c)
[Peter: drop 5.8.x bump]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-12 10:18:52 +02:00
Fabrice Fontaine 21c0018455 package/mongodb: security bump to version 4.2.10
SERVER-50463 Make PooledLDAPConnection::refresh take self-ownership

https://docs.mongodb.com/manual/release-notes/4.2-changelog/#id1

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit a836c09a8f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-12 10:10:24 +02:00
Fabrice Fontaine 848352fe79 package/wireshark: security bump to version 3.2.7
- Fix CVE-2020-25862: In Wireshark 3.2.0 to 3.2.6, 3.0.0 to 3.0.13, and
  2.6.0 to 2.6.20, the TCP dissector could crash. This was addressed in
  epan/dissectors/packet-tcp.c by changing the handling of the invalid
  0xFFFF checksum.
- Fix CVE-2020-25863: In Wireshark 3.2.0 to 3.2.6, 3.0.0 to 3.0.13, and
  2.6.0 to 2.6.20, the MIME Multipart dissector could crash. This was
  addressed in epan/dissectors/packet-multipart.c by correcting the
  deallocation of invalid MIME parts.
- Fix CVE-2020-25866: In Wireshark 3.2.0 to 3.2.6 and 3.0.0 to 3.0.13,
  the BLIP protocol dissector has a NULL pointer dereference because a
  buffer was sized for compressed (not uncompressed) messages. This was
  addressed in epan/dissectors/packet-blip.c by allowing reasonable
  compression ratios and rejecting ZIP bombs.

https://www.wireshark.org/docs/relnotes/wireshark-3.2.7.html

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d9521e0447)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-12 09:19:30 +02:00
Peter Korsgaard c0d8882e5e python-scapy: add upstream patch fixing python 2.x compatibility
Fixes:
http://autobuild.buildroot.net/results/829/8293529a72ac4c8e93919b8bc0ea758fbb4bc444/

Python 2.x gets confused by rb"string", but not br"string", so add an
upstream patch changing the former to the latter to fix a pycompile issue
with python 2.x:

error:   File "/usr/lib/python2.7/site-packages/scapy/tools/generate_ethertypes.py", line 23
    reg = rb".*ETHERTYPE_([^\s]+)\s.0x([0-9A-Fa-f]+).*\/\*(.*)\*\/"
                                                                  ^
SyntaxError: invalid syntax

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-11 23:11:22 +02:00
Ryan Barnett 6b50092bc0 DEVELOPERS: add c-periphery to my package watch list
Signed-off-by: Ryan Barnett <ryanbarnett3@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 071a369c3d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-11 18:11:26 +02:00
Fabrice Fontaine e7432e0579 package/suricata: security bump to version 4.1.9
These are the second releases after Suricata joined the Oss-Fuzz
program, leading to discovery of a number of (potential) security
issues. We recommend upgrading as soon as possible.

https://suricata-ids.org/2020/10/08/suricata-4-1-9-and-5-0-4-released

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 1bfc53289a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-11 18:09:42 +02:00
Fabrice Fontaine a3cfc1c8d0 package/libhtp: bump to version 0.5.35
Drop patch (already in version)

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 5f5fe7de52)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-11 18:09:27 +02:00
Maxim Kochetkov 8d3243493b package/postgresql: add configure and includedir-server output to pg_config
Some external packages call pg_config to determine the installed
PostgreSQL server includedir and configure options. Add this output to
Buildroots own pg_config, so these packages correctly compile.

Signed-off-by: Maxim Kochetkov <fido_max@inbox.ru>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 787ad0b35d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-11 17:52:46 +02:00
Peter Korsgaard 0953cb557e package/fail2ban: fix fail2ban-python symlink
Fixes (reproducible):
http://autobuild.buildroot.net/results/50f/50f199bfe06d054cc6770760e73ac0de594a0670/diffoscope-results.txt

Fail2ban installs the fail2ban-python symlink pointing to the host python
intepreter used to run setup.py, which is naturally not valid at runtime and
breaks the reproducible tests as shown in the diffoscope results:

│ -lrwxrwxrwx   0        0        0        0 2020-10-04 10:50:38.000000 ./usr/bin/fail2ban-python -> /home/naourr/work/instance-0/output-1/host/bin/python
│ +lrwxrwxrwx   0        0        0        0 2020-10-04 10:50:38.000000 ./usr/bin/fail2ban-python -> /home/naourr/work/instance-0/output-2/host/bin/python

As a workaround, update the symlink after installation to point to the
correct target python.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 084ffc69be)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-10 22:59:59 +02:00
Peter Korsgaard d81ac76d9c package/python-engineio: drop asyncio files for python 2.x to fix pycompile issue
engineio has conditional logic to load asyncio files when running under
Python 3.x:

if sys.version_info >= (3, 5):  # pragma: no cover
    from .asyncio_server import AsyncServer
    from .asyncio_client import AsyncClient
    from .async_drivers.asgi import ASGIApp
    try:
        from .async_drivers.tornado import get_tornado_handler
    except ImportError:
        get_tornado_handler = None
else:  # pragma: no cover
    AsyncServer = None
    AsyncClient = None
    get_tornado_handler = None
    ASGIApp = None

pycompile unfortunately errors out on these files when running under Python
2.x:

../scripts/pycompile.py ..
error:   File "/usr/lib/python2.7/site-packages/engineio/asyncio_socket.py", line 13
    async def poll(self):
            ^
SyntaxError: invalid syntax

As a workaround, simply drop the unusable file from TARGET_DIR if building
for python 2.x.

Fixes:
http://autobuild.buildroot.net/results/72c/72cfdffeb4d0fb7c3032b52f0a26a4758eea6762/

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b8ae383dd3)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-10 22:59:15 +02:00
Peter Korsgaard 0ac0490aa0 package/python-socketio: drop asgi/asyncio files for python 2.x to fix pycompile issue
socketio has conditional logic to load asgi/asyncio files when running under
Python 3.x:

if sys.version_info >= (3, 5):  # pragma: no cover
    from .asyncio_client import AsyncClient
    from .asyncio_server import AsyncServer
    from .asyncio_manager import AsyncManager
    from .asyncio_namespace import AsyncNamespace, AsyncClientNamespace
    from .asyncio_redis_manager import AsyncRedisManager
    from .asyncio_aiopika_manager import AsyncAioPikaManager
    from .asgi import ASGIApp
else:  # pragma: no cover
    AsyncClient = None
    AsyncServer = None
    AsyncManager = None
    AsyncNamespace = None
    AsyncRedisManager = None
    AsyncAioPikaManager = None

pycompile unfortunately errors out on these files when running under Python
2.x:

../scripts/pycompile.py ..
error:   File "/usr/lib/python2.7/site-packages/socketio/asyncio_server.py", line 84
    async def emit(self, event, data=None, to=None, room=None, skip_sid=None,
            ^
SyntaxError: invalid syntax

As a workaround, simply drop the unusable file from TARGET_DIR if building
for python 2.x.

Fixes:
http://autobuild.buildroot.net/results/455f3e09a590f7a6724ab8cd1b86bdf2bba8071a/

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6beb6dd5c6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-10 22:59:14 +02:00
Peter Korsgaard ed9ef373ab support/scripts/apply-patches.sh: do not blindly remove *.orig files
apply-patches currently blindly removes *.orig / .*.orig files as GNU patch
by default writes these as backup files when patches only apply with fuzz.

This is unfortunate as package sources may contain files ending in .orig as
well, breaking the build.  Luckily GNU patch can be told to not write these
backup files using the --no-backup-if-mismatch option, so used that instead
of the .orig removal step.

--no-backup-if-mismatch is supported since GNU patch 2.3.8 (1997-06-17) and
busybox patch if built with CONFIG_DESKTOP, but E.G.  isn't supported by the
BSD patch, so add logic to dependencies.sh to error out if patch doesn't
support the flag.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 42f61e759a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-10 22:43:19 +02:00
Yann E. MORIN bcae88f0c7 package/mesa3d: drop r100 dependency on _HAS_ATOMIC
This partially reverts commit a3aac6d847,
just dropping the atomic dependency.

That dependency would introduce a "recursive dependency" chain in
Kconfig.

However, r100 is only available on i386 and x86-64, and they both have
sync4, which means libdrm's HAS_ATOMICS is always 'y' when r100 is
available.

So, like we did in 00c1a8c34f (package/mesa3d: propagate missing
libdrm-freedreno deps), we just add a fat comment that explains why the
dependency is not propagated.

Reported-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: James Hilliard <james.hilliard1@gmail.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
(cherry picked from commit 0b029cac1b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-10 22:39:27 +02:00
James Hilliard 950cbfaa8a package/mesa3d: add missing depends and driver name to r100 driver
Propagate libdrm dependencies.

Add r100 to menu name to differentiate from r200 dri driver.

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Reviewed-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit a3aac6d847)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-10 22:39:24 +02:00
Fabrice Fontaine b10a8d39b1 package/brotli: fix pkg-config
brotli pkg-config files are broken since version 1.0.8 and
https://github.com/google/brotli/commit/31754d4ffce14153b5c2addf7a11019ec23f51c1

This raise static build failures with all packages using brotli,
fontconfig or freetype such as fbterm:

-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -Os   -static -static  -static -o fbterm fbterm-fbconfig.o fbterm-fbio.o fbterm-fbshell.o fbterm-fbshellman.o fbterm-fbterm.o fbterm-font.o fbterm-input.o fbterm-mouse.o fbterm-screen.o fbterm-improxy.o fbterm-screen_render.o fbterm-fbdev.o fbterm-vesadev.o lib/libshell.a -L/srv/storage/autobuild/run/instance-1/output-1/host/bin/../arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -lfreetype -lbz2 -L/srv/storage/autobuild/run/instance-1/output-1/host/bin/../arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -L/srv/storage/autobuild/run/instance-1/output-1/host/bin/../arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -lz -lpng16 -lz -R/srv/storage/autobuild/run/instance-1/output-1/host/bin/../arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -lbrotlidec -L/srv/storage/autobuild/run/instance-1/output-1/host/bin/../arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -R/srv/storage/autobuild/run/instance-1/output-1/host/bin/../arm-buil
 droot-linux-uclibcgnueabihf/sysroot/usr/lib -lbrotlicommon  -L/srv/storage/autobuild/run/instance-1/output-1/host/bin/../arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -lfontconfig -lfreetype -lbz2 -L/srv/storage/autobuild/run/instance-1/output-1/host/bin/../arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -L/srv/storage/autobuild/run/instance-1/output-1/host/bin/../arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -lz -lpng16 -lz -R/srv/storage/autobuild/run/instance-1/output-1/host/bin/../arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -lbrotlidec -L/srv/storage/autobuild/run/instance-1/output-1/host/bin/../arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -R/srv/storage/autobuild/run/instance-1/output-1/host/bin/../arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -lbrotlicommon -L/srv/storage/autobuild/run/instance-1/output-1/host/bin/../arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib -luuid -lexpat   -lutil -lutil
arm-linux-g++.br_real: error: unrecognized command line option '-R'

Fixes:
 - http://autobuild.buildroot.org/results/21ede59686d4998c9e643ea874396a11b1c0df93

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 35a451d987)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-10 22:24:03 +02:00
Antoine Tenart dccb5b8cb0 DEVELOPERS: add Antoine Ténart for libselinux and refpolicy
Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f2a0da36ef)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-10 22:21:40 +02:00
Peter Seiderer 53d619667e boot/barebox: fix target bareboxenv command compile
The buildroot custom bareboxenv compile command misses the additional
include path 'scripts/include' to gain access to the local copy of the
kernel header files (which leads to compile error when using an older
toolchain).

This could be fixed by enhancing the custom bareboxenv compile command
(see [1]) or by using the barebox build system by simply enabling the
CONFIG_BAREBOXENV_TARGET option (available since April 2012, see [2])
instead (as suggested by Yann E. MORIN).

Fixes (with BR2_TARGET_BAREBOX_BAREBOXENV enabled):

  build/barebox-2019.12.0/scripts/bareboxenv.c:100:10: fatal error: linux/list.h: No such file or directory

[1] http://lists.busybox.net/pipermail/buildroot/2020-January/270942.html
[2] https://git.pengutronix.de/cgit/barebox/commit/?id=afb03d7a554a2911a3742e316f011319fcb416f1

Note: a user who would previously provide a barebox config file which
had CONFIG_BAREBOXENV_TARGET=y, but a Buildroot config file which did
not have BR2_TARGET_BAREBOX_BAREBOXENV=y, would have bareboxenv-target
built, but it would not be installed in the target. Now, and unset
BR2_TARGET_BAREBOX_BAREBOXENV will not even build it, but his is not a
regression: it was anyway previously not installed.

Reported-by: Frederick Gotham <cauldwell.thomas@gmail.com>
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
[yann.morin.1998@free.fr:
  - also explicitly disable it when not selected
  - rewrap commit log
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 3cc2534b57)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-10 21:51:13 +02:00
Fabrice Fontaine b7b3c1f672 package/vlc: fix build with live555 and without openssl
Pass -DNO_OPENSSL to avoid a build failure with live555 but without
openssl

Fixes:
 - http://autobuild.buildroot.org/results/70ca93aa5c9488a4657c7bcafa40bfb2e974a5b3

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit e0fb418f78)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-10 21:42:41 +02:00
Romain Naour e2e00b4dab package/supertux: build squirrel builtin library with fPIC
Ensure that squirrel is compiled with -fPIC to allow linking the static
libraries with dynamically linked programs. This is not a requirement
for most architectures but is mandatory for ARM.

Fixes:
http://autobuild.buildroot.org/results/46e8f5e622ce450a89bc6d70f4bfd38182557901
http://autobuild.buildroot.org/results/a43720492d817e4555d728546da9114e3ccba952

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 4473c41941)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-10 08:51:20 +02:00
Fabrice Fontaine 18e6e05cdc Revert "package/supertux: fix build with RELRO"
This reverts commit 80be040817 because
libsquirrel.so.0 and libsqstdlib.so.0 are missing in TARGET_DIR.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 7d85d5e5ed)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-10 08:51:10 +02:00
Fabrice Fontaine 32cec2af36 package/php: security bump to version 7.4.11
- Fix CVE-2020-7069: In PHP versions 7.2.x below 7.2.34, 7.3.x below
  7.3.23 and 7.4.x below 7.4.11, when AES-CCM mode is used with
  openssl_encrypt() function with 12 bytes IV, only first 7 bytes of the
  IV is actually used. This can lead to both decreased security and
  incorrect encryption data.
- Fix CVE-2020-7070: In PHP versions 7.2.x below 7.2.34, 7.3.x below
  7.3.23 and 7.4.x below 7.4.11, when PHP is processing incoming HTTP
  cookie values, the cookie names are url-decoded. This may lead to
  cookies with prefixes like __Host confused with cookies that decode to
  such prefix, thus leading to an attacker being able to forge cookie
  which is supposed to be secure. See also CVE-2020-8184 for more
  information.

https://www.php.net/ChangeLog-7.php#7.4.11

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 51d9617474)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-05 08:10:52 +02:00
Peter Korsgaard 84a26503fe package/python-cycler: drop redundant python|python3 dependencies
All the python packages are inside a

if BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3

conditional, so no need to repeat it in the Config.in.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 36031fd91d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-05 08:10:16 +02:00
Thomas De Schampheleire 29b869162b support/scripts/setlocalversion: fix/improve Mercurial output
Commit 9e4ffdc8cf modified the output of
'setlocalversion' so that the Buildroot version tag is included in the
output, the version part was added in Makefile.

Due to differences in behavior of the used git and Mercurial commands, this
caused different output for the Mercurial case, in BR2_VERSION_FULL and thus
/etc/os-release and 'make print-version'. Assuming the official Buildroot
releases are tagged and no project-specific tags are present, the output
after commit 9e4ffdc8cf is:
    -hg<commit>
whereas it is expected to be something like:
    2020.02.6-hg<commit>

Change the Mercurial case in setlocalversion to behave similar to git,
looking up the latest tag if the current revision is not itself tagged.

The number of commits after the latest tag is not added, unlike in git, as
this value is not commonly present in Mercurial output, and its added value
can be disputed in this context. Even one commit could bring a huge change
to the sources, so in order to interpret the number one has to look at the
repository anyhow, in which case the commit ID can just be used.

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 32eb5a1d16)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-05 08:09:38 +02:00
Francois Perrad 4f4e1de49d package/lua: split hash files, add license hash for 5.3 / 5.4
The content of the license file (doc/readme.html) differs between lua 5.3
and 5.4, so we cannot use a shared .hash file for all versions.

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
[Peter: extend commit message]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 036c41db1a)
[Peter: drop 5.4]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-05 08:08:29 +02:00
Peter Korsgaard 89051f8f21 package/python-fire.mk: drop test_components_py3.py file for python 2.x to fix pyfile issue
Fixes:
http://autobuild.buildroot.net/results/72e0cc78194a1b93bf26a50742e59a1e93bde1d1/

fire has conditional logic to load test_components_py3.py when running under
Python 3.x:

if six.PY3:
  from fire import test_components_py3 as py3

pycompile unfortunately errors out on it:

../scripts/pycompile.py ..

error:   File "/usr/lib/python2.7/site-packages/fire/test_components_py3.py", line 18
    def identity(arg1, arg2: int, arg3=10, arg4: int = 20, *arg5,
                           ^
SyntaxError: invalid syntax

As a workaround, simply drop the unusable _py3 file from TARGET_DIR if
building for python 2.x.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 6bfedaf577)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-05 08:03:55 +02:00
Peter Korsgaard 01f3310569 package/python-aenum: drop test_v3.py file for python 2.x to fix pycompile issue
Fixes:
http://autobuild.buildroot.net/results/4ca459d54545c0e20b0f0cdc63bd81844ecd7f36/

aenum has conditional logic to load python 3.x code located in test_v3.py:

if pyver >= 3.0:
    from aenum.test_v3 import TestEnumV3, TestOrderV3, TestNamedTupleV3

And contains logic in setup.py to drop that file during setup.py install if
building for python 2.x:

py3_only = ('aenum/test_v3.py', )
..
if __name__ == '__main__':
    if 'install' in sys.argv:
        import os, sys
	..
        if sys.version_info[0] != 3:
            for file in py3_only:
                try:
                    os.unlink(file)

But this doesn't work in Buildroot as pkg-python.dk first does setup.py
build (which copies test_v3.py to the build directory) before setup.py
install, so test_v3.py gets installed, leading to errors from pycompile:

error:   File "/usr/lib/python2.7/site-packages/aenum/test_v3.py", line 12
    class MagicAutoNumberEnum(Enum, settings=AutoNumber):
                                            ^
SyntaxError: invalid syntax

As a workaround, add a hook to drop it from the target directory when
building for python 2.x.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 753c031977)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-05 08:03:53 +02:00
Fabrice Fontaine f8ef4e3f21 package/memcached: security bump to version 1.5.22
- Fix a security issue: When enabling SASL authentication for binary
  protocol, enabling UDP mode would allow bypassing SASL. Now refuses
  to start with both UDP and SASL enabled. Text mode authentication was
  not vulnerable.
- Drop patches (already in version) and so autoreconf
- Update indentation in hash file (two spaces)

https://github.com/memcached/memcached/wiki/ReleaseNotes1522

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-04 20:42:29 +02:00
Peter Korsgaard 746379d7bd {linux, linux-headers}: bump 4.{4, 9, 14, 19}.x / 5.{4, 8}.x series
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit a6e8e8fae7)
[Peter: drop 5.8.x bump]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-03 22:59:02 +02:00
Peter Korsgaard a0f20de05e package/python3: bump to version 3.8.6
Contains a number of bugfixes. For details, see the changelog:

https://docs.python.org/release/3.8.6/whatsnew/changelog.html#changelog

Update the license hash for the addition of a note stating that the examples
and documentation is now dual licensed under the PSF and a Zero-Clause BSD
license since:

https://github.com/python/cpython/commit/9fef7c54a0adfade5ec94259d97f22e05fe9e3e3

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 3469e6e46b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-03 22:52:39 +02:00
Fabrice Fontaine 10b27e6288 package/freetype: unconditionally disable harfbuzz
Commit 939e714393 added an optional
harfbuzz dependency to freetype but this creates a circular dependency
so unconditionally disable it

Fixes:
 - http://autobuild.buildroot.org/results/3cc4ce3207a253186a9c4f8f5151ea0fc0854a28

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit a98b79e2e6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-03 10:39:53 +02:00
Fabrice Fontaine e23f4393ed package/freetype: add harfbuzz optional dependency
harfbuzz is an optional dependency (enabled by default) since version
2.5.3 and
https://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=86026a47b345a8c254dd5e6be77bf116737cdafb

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 939e714393)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-03 08:34:01 +02:00
Fabrice Fontaine 512796ff83 package/freetype: drop libpng workaround
libpng workaround which has been added with commit
f7313cadf2 is not needed since version
2.5.3 and
https://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=00c79ed9680a0d7a367c6914adc7485391299542

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 005a3437a5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-03 08:33:56 +02:00
Peter Korsgaard f17f8f1d65 package/nodejs: security bump to version 12.18.4
Fixes the following security issues:

- CVE-2020-8201: HTTP Request Smuggling due to CR-to-Hyphen conversion

  Affected Node.js versions converted carriage returns in HTTP request
  headers to a hyphen before parsing.  This can lead to HTTP Request
  Smuggling as it is a non-standard interpretation of the header.

  Impacts:
    All versions of the 14.x and 12.x releases line

- CVE-2020-8252: fs.realpath.native may cause buffer overflow

  libuv's realpath implementation incorrectly determined the buffer size
  which can result in a buffer overflow if the resolved path is longer than
  256 bytes.

  Impacts:
    All versions of the 10.x release line
    All versions of the 12.x release line

For more details, see the advisory:
https://nodejs.org/en/blog/vulnerability/september-2020-security-releases/

Adjust license hash for the addition of the BSD-3c licensed highlight.js:
https://github.com/nodejs/node/commit/6f8b7a85d239129273948386c34775810f2dc4a3

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit b6d64d7fa4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-03 08:17:29 +02:00
Thomas Petazzoni bcf40d2e77 package/gcc: drop leftovers from PowerPC conditional patching
We used to have a conditional patch applied on PowerPC soft-float, but
this logic was dropped in commit
0c82f3f635 ("package/gcc: remove powerpc
conditional patching logic"). However, we still have some related
leftovers in the calculation of the hashes for ccache, which can now
be dropped.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Romain Naour <romain.naour@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Acked-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit a4fb6dedfc)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-03 08:14:30 +02:00
Thomas Petazzoni d83e1902a8 package/gcc: help libbacktrace detection of sync builtins
The logic in libbacktrace/configure.ac to detect if __sync builtins
are available assumes they are as soon as target_subdir is not
empty, i.e when cross-compiling. However, some platforms do not have
__sync builtins, so help the configure script a bit.

"libbacktrace_cv_sys_sync=no" is lost when it is added to
HOST_GCC_COMMON_CONF_ENV because the environment is not exported
when executing the libbacktrace configure script.

Use target_configargs to force "libbacktrace_cv_sys_sync=no" when
executiong the libbacktrace configure script.

Fixes:
https://gitlab.com/bootlin/toolchains-builder/-/jobs/729359681

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
[Romain: use target_configargs="libbacktrace_cv_sys_sync=no"]
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 0bec4c8a4a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-03 08:08:40 +02:00
Fabrice Fontaine 215e4b7473 package/ghostscript: bump to version 9.53.2
- Drop first patch (already in version)
- Drop second patch (not needed since
  https://git.ghostscript.com/?p=ghostpdl.git;a=commit;h=f0d19bf181a156d011dba422ae4d165b36b0af7e)
- Drop autoreconf

https://www.ghostscript.com/doc/9.53.2/News.htm

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 56b6908bf6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-03 08:00:06 +02:00
Baruch Siach 1172a76773 package/bison: disable libtextstyle
Recent bison versions added support for fancy error output using gettext
provided libtextstyle. The Buildroot gettext version does not provided
all needed features. However host-bison might detect host installed
libtextstyle at configure time, but fail at run time because of missing
symbols in Buildroot provided libtextstyle.

We don't really need fancy output of host packages, so just disable
libtextstyle support.

Fixes (libpcap):
http://autobuild.buildroot.net/results/058e8ec90da3c06e31b31eb94541331cced44db3/
http://autobuild.buildroot.net/results/d99dda99722c53730b5964bd4ff1e1281c4ad759/
http://autobuild.buildroot.net/results/056fd1246554fe7def416429620175e86530c0a7/

Cc: Xogium <contact@xogium.me>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Tested-by: Xogium <contact@xogium.me>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 8d389c521c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-03 07:57:02 +02:00
Fabrice Fontaine 50ebf8d332 package/rsh-redone: disable rlogind on musl
Commit f89ca996b6 enabled linux-pam on
musl however rlogind fails to build on musl because it uses logwtmp:

/home/giuliobenetti/autobuild/run/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/x86_64-buildroot-linux-musl/8.3.0/../../../../x86_64-buildroot-linux-musl/bin/ld: rlogind.c:(.text.startup+0x9ec): undefined reference to `logwtmp'

As this package is unmaintained, just disable back rlogind on musl

Fixes:
 - http://autobuild.buildroot.org/results/f2eb1c0bab7c6c32d6c561da0f85a530bd419206

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 14532e4fc6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-02 22:39:20 +02:00
Thomas Petazzoni ada76af1e9 package/gdb: also disable gprof
When gdb is built from sources fetched from Git, it contains both the
gdb and the binutils code base. In order to really build only gdb, we
disable a number of binutils components in the
GDB_DISABLE_BINUTILS_CONF_OPTS variable: --disable-binutils,
--disable-ld, --disable-gas, etc. However, gprof was still being
built, so disable it as well.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 71719b91ee)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-02 22:32:54 +02:00
Gary Bisson 11ab49f43e package/qt5/qt5base: allow to use imx-gpu-viv as GBM provider
Needed in order to use eglfs_kms platform backend.

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Reviewed-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 82fb51d3b5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-02 21:48:07 +02:00
Peter Korsgaard 3921cdc3a5 package/python-txtorcon.mk: drop _py3 file for python 2.x to fix pycompile issue
Fixes:
http://autobuild.buildroot.net/results/76b580000e6311e88584874f942517badd6fadf6/

python-txtorcon DOES support python 2.x, but it contains some optional
python 3 / async code in controller_py3.py which is conditionally used from
controller.py:

try:
    from .controller_py3 import _AsyncOnionAuthContext
    HAVE_ASYNC = True
except Exception:
    HAVE_ASYNC = False

pycompile unfortunately errors out on the async code:

../scripts/pycompile.py ..
error:   File "/usr/lib/python2.7/site-packages/txtorcon/controller_py3.py", line 13
    async def __aenter__(self):
            ^
SyntaxError: invalid syntax

As a workaround, simply drop the unusable _py3 file from TARGET_DIR if
building for python 2.x.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 6728c67307)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-02 10:58:16 +02:00
Peter Korsgaard 894a141532 package/python-tinyrpc: not available for python 2.x
Fixes:
http://autobuild.buildroot.net/results/eef0969bac04800cec51fa27f1e1ecd3a4c8211e/

tinyrpc 1.x is not compatible with python 2.x, leading to errors during the
pycompile step:

error:   File "/usr/lib/python2.7/site-packages/tinyrpc/client.py", line 37
    self, protocol: RPCProtocol, transport: ClientTransport
                  ^
SyntaxError: invalid syntax

As also documented in the README:
The current version will support Python3 only.  Have a look at the 0.9.x
version if you need Python2 support

https://github.com/mbr/tinyrpc/blob/1.0.4/README.rst

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Reviewed-by: Asaf Kahlon <asafka7@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 6d87acc19f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-02 10:57:45 +02:00
Thomas De Schampheleire 72dcbcf42c package/zstd: avoid compilation during host-zstd install step
The host-zstd-build step was not actually compiling the library:

make[1]: Entering directory '/buildroot/output/build/host-zstd-1.4.5/lib'
make[1]: Nothing to be done for 'default'.
make[1]: Leaving directory '/buildroot/output/build/host-zstd-1.4.5/lib'

and the actual compilation was part of the install step.
This is not how other Buildroot packages work.

Make sure to specify which library targets we want instead. The total amount
of compiled files does not change with this patch.

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 2e8bf36dc4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-02 10:55:37 +02:00
Norbert Lange d950796a96 package/pkg-meson.mk: fix generation of pkg_config_static prop
fixes following in the generated cross-complation.conf file:
pkg_config_static = '$(if $(BR2_STATIC_LIBS),true,false)'

Signed-off-by: Norbert Lange <nolange79@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 78da84eca9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-02 10:39:58 +02:00
Thomas Petazzoni 7b5c39d4d9 package/gstreamer1/gst1-plugins-ugly: add missing comma in license variable
When one GPL-licensed plugin was enabled, the license of
gst1-plugins-ugly would be "LGPL-2.1+ GPL-2.0", but licenses should be
comma separated, not space separated. So let's fix that to get the
expected value of "LGPL-2.1+, GPL-2.0".

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 4626bafe5c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-02 10:31:47 +02:00
Francois Perrad ea56f3b863 package/lua: bump to version 5.3.6
Bugfix release.

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 86a6eb872c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-02 10:19:02 +02:00
Peter Korsgaard 50ad68dae9 package/python-semver: bump version to 2.10.2
Bugfix release, fixing an issue with version fields containing '0'.  For
details, see the changelog:

https://python-semver.readthedocs.io/en/2.10.2/changelog.html#version-2-10-2

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 2be774303d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-02 10:14:41 +02:00
Peter Korsgaard ce0faed683 package/python-semver: bump version to 2.10.1
And adjust the .hash spacing.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 63a3b012ba)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-02 10:14:39 +02:00
Peter Korsgaard ec5172e2f6 package/wireguard-linux-compat: bump version to 1.0.20200908
Fixes a race condition. For details, see the announcement:
https://lists.zx2c4.com/pipermail/wireguard/2020-September/005817.html

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit d8cb637442)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-02 10:11:46 +02:00
Peter Korsgaard 9615592138 package/python-texttable: bump version to 1.6.3
Bugfix release, fixing an issue with integer/float handling:
https://github.com/foutaise/texttable/issues/70

Adjust the .hash spacing and update the license hash for a copyright year
change:
https://github.com/foutaise/texttable/commit/13ff0b57d3f727a266ce45f86642f0458257bb8e

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit dc68be6944)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-10-02 10:02:48 +02:00
Matt Weber 0bfc3e915d package/gcc: transition PowerPC 32 to secureplt
PowerPC has two PLT models: BSS-PLT and Secure-PLT. BSS-PLT uses
runtime code generation to generate the PLT stubs. Secure-PLT was
introduced with GCC 4.1 and Binutils 2.17 (base has GCC 4.2.1 and
Binutils 2.17), and is a more secure PLT format, using a read-only
linkage table, with the dynamic linker populating a non-executable
index table.

References to other distro/BSD transitions:
  https://patchwork.openembedded.org/patch/106621/
  https://reviews.freebsd.org/D20598

Fixes a bug observed when creating SELinux policy where all apps
require execmem because the heap requires execute before this change.

Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f9b539bf40)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-29 21:09:11 +02:00
Joseph Kogut 6c7f4873e2 package/x11r7/xserver_xorg-server: fix segfault on brcm platforms
According to the original patch message:
    Some Broadcom set-top-box boards have PCI busses, but the GPU is
    still probed through DT.  We would dereference a null busid here
    in that case.

Fixes a segfault on at least the RPi 4 w/ xserver 1.20.9, probably
others as well.

Signed-off-by: Joseph Kogut <joseph.kogut@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6427ede939)
[Peter: move to 1.20.9 subdir]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-29 20:42:23 +02:00
Fabrice Fontaine 3dfb0e0775 package/vsftpd: renumber patches
Commit 415765b5a8 removed the second patch
without renumbering the remaining ones

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit cd847f0986)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-29 20:35:07 +02:00
Fabrice Fontaine 48512c25a4 package/cifs-utils: security bump to version 6.11
Fix CVE-2020-14342: It was found that cifs-utils' mount.cifs was
invoking a shell when requesting the Samba password, which could be used
to inject arbitrary commands. An attacker able to invoke mount.cifs with
special permission, such as via sudo rules, could use this flaw to
escalate their privileges.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ce0e86b293)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-29 17:34:55 +02:00
Bernd Kuhls 5be9c1fe41 package/samba4: security bump version to 4.11.13
Version 4.11.11 fixed
o CVE-2020-10730: NULL pointer de-reference and use-after-free in Samba AD DC
		  LDAP Server with ASQ, VLV and paged_results.
o CVE-2020-10745: Parsing and packing of NBT and DNS packets can consume
		  excessive CPU
o CVE-2020-10760: LDAP Use-after-free in Samba AD DC Global Catalog with
		  paged_results and VLV.
o CVE-2020-14303: Empty UDP packet DoS in Samba AD DC nbtd.

Version 4.11.12 was a bugfix-only release.

Version 4.11.13 fixes CVE-2020-1472.

Release notes:
https://www.samba.org/samba/history/samba-4.11.11.html
https://www.samba.org/samba/history/samba-4.11.12.html
https://www.samba.org/samba/security/CVE-2020-1472.html

Rebased patches 0001 & 0002.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit e56f54220e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-29 17:33:21 +02:00
Bernd Kuhls 6eeef5d51e package/php: bump version to 7.4.10
Changelog: https://www.php.net/ChangeLog-7.php#7.4.10

Rebased patches 0002 & 0003.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 4fecbce953)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-29 17:29:20 +02:00
Fabrice Fontaine 67d3b848b3 package/ympd: renumber patch
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 7018cacaf8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-29 17:20:42 +02:00
Fabrice Fontaine 619cf774f1 package/libxml2: fix CVE-2020-24977
GNOME project libxml2 v2.9.10 and earlier have a global Buffer Overflow
vulnerability in xmlEncodeEntitiesInternal at libxml2/entities.c.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit a530ca6bd9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-29 16:19:34 +02:00
Fabrice Fontaine bdd2630154 package/efl: needs host gcc >= 4.9
Commit dbe2d2e686 forgot to add a
host gcc >= 4.9 dependency on efl (because of host-efl)

Fixes:
 - http://autobuild.buildroot.org/results/f627d44919c20e068e377d7fe113833e2d4d0ad3

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 60cd158f0e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-29 16:17:56 +02:00
Peter Seiderer ed6699f643 package/wayland-protocols: change download url to https
- change download url to https (as redirected by the original http url)

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 79609dd78f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-29 15:57:16 +02:00
Fabrice Fontaine 9415e1f6b8 package/supertux: fix build with RELRO
Disable static building of external/squirrel to fix the following build
failure with RELRO:

/home/peko/autobuild/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/x86_64-buildroot-linux-musl/8.3.0/../../../../x86_64-buildroot-linux-musl/bin/ld: CMakeFiles/sq_static.dir/sq.c.o: relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/home/peko/autobuild/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/x86_64-buildroot-linux-musl/8.3.0/../../../../x86_64-buildroot-linux-musl/bin/ld: final link failed: nonrepresentable section on output
collect2: error: ld returned 1 exit status

Fixes:
 - http://autobuild.buildroot.org/results/46e8f5e622ce450a89bc6d70f4bfd38182557901
 - http://autobuild.buildroot.org/results/a43720492d817e4555d728546da9114e3ccba952

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 80be040817)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-29 15:43:55 +02:00
Fabrice Fontaine 5132c0ae0e package/dhcpdump: fix build without pod2man
Use dhcpdump target to avoid building dhcpdump.8 as it will raise the
following build failure if pod2man is not available:

pod2man --section 8 \
	--date "23 June 2008" \
	--name "DHCPDUMP" \
	--center "User Contributed Software" \
	dhcpdump.pod dhcpdump.8
/bin/sh: pod2man: command not found
make[1]: *** [Makefile:11: dhcpdump.8] Error 127

Fixes:
 - http://autobuild.buildroot.org/results/db3be149ec71de8376f685a6a9f027191d9bccc9

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 698dcb61ea)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-28 23:20:52 +02:00
Norbert Lange 3ab1aa236a DEVELOPERS: add myself as contact for systemd
As requested, I add myself to systemd.

Signed-off-by: Norbert Lange <nolange79@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit dcee2627f4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-28 23:19:28 +02:00
Fabrice Fontaine d8b325de66 package/jbig2dec: bump to version 0.19.0
This bump is needed to fix build with ghostscript 9.53.0

Fixes:
 - http://autobuild.buildroot.org/results/fbcc2fa29f3736f78212cb4b3869ffaeefda7a33

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f4d3dc9bc1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-28 23:17:06 +02:00
James Hilliard f774a3b730 package/meson: support additional cpu families
Meson expects known cpu families to be in a normalized format based on
https://mesonbuild.com/Reference-tables.html#cpu-families

Add support for m68k, microblaze and sh4 cpu families.

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 2f5a26630c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-28 23:14:57 +02:00
Fabrice Fontaine 1054b72b56 package/ecryptfs-utils: fix build failure without pod2man
Set ac_cv_path_POD2MAN to true to avoid the following build failure:

checking for pod2man... no
configure: error: I couldn't find pod2man; make sure it's installed and in your path

Fixes:
 - http://autobuild.buildroot.org/results/7a3a182aa91a07a720a02f854c59f952930708e1

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 1030f295e6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-28 23:01:46 +02:00
Michael Nosthoff 9bf7131495 package/postgresql: remove PIDFile from .service
commit eada187e77 changed the service to Type=notify.
notify units don't need a PIDFile so this can be removed.

Signed-off-by: Michael Nosthoff <buildroot@heine.tech>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit a9bc0024b6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-28 22:54:16 +02:00
Michael Nosthoff 3b7447c795 package/openvmtools: use /run for PIDFile
Fixes:

PIDFile= references a path below legacy directory /var/run/, updating
/var/run/vmtoolsd.pid → /run/vmtoolsd.pid; please update the unit file
accordingly.

Signed-off-by: Michael Nosthoff <buildroot@heine.tech>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit e97fe4f28c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-28 22:53:11 +02:00
Michael Nosthoff b3619b6a52 package/nss-pam-ldapd: use /run for PIDFile
Fixes:

PIDFile= references a path below legacy directory /var/run/, updating
/var/run/nslcd.pid → /run/nslcd.pid; please update the unit file
accordingly.

Signed-off-by: Michael Nosthoff <buildroot@heine.tech>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ce3d5129a6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-28 22:53:03 +02:00
Michael Nosthoff eaa7bafd82 package/minidlna: use /run for PIDFile
Fixes:

PIDFile= references a path below legacy directory /var/run/, updating
/var/run/minidlna.pid → /run/minidlna.pid; please update the unit file
accordingly.

Signed-off-by: Michael Nosthoff <buildroot@heine.tech>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ad46c0ac36)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-28 22:52:56 +02:00
Michael Nosthoff 3d742eb40a package/dhcpcd: use /run for PIDFile
Fixes:

PIDFile= references a path below legacy directory /var/run/, updating
/var/run/dhcpcd.pid → /run/dhcpcd.pid; please update the unit file
accordingly.

Signed-off-by: Michael Nosthoff <buildroot@heine.tech>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 9668296056)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-28 22:49:43 +02:00
Michael Nosthoff 98f563b99c package/bandwithd: use /run for PIDFile
Fixes:

PIDFile= references a path below legacy directory /var/run/, updating
/var/run/bandwithd.pid → /run/bandwithd.pid; please update the unit file
accordingly.

Signed-off-by: Michael Nosthoff <buildroot@heine.tech>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit cdc183eef0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-28 22:49:36 +02:00
Michael Nosthoff b0b61337a1 package/nginx: use /run for PIDFile
Fixes:

systemd[1]: /usr/lib/systemd/system/nginx.service:7: PIDFile= references
a path below legacy directory /var/run/, updating /var/run/nginx.pid →
/run/nginx.pid; please update the unit file accordingly.

Signed-off-by: Michael Nosthoff <buildroot@heine.tech>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 4027ba29f4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-25 17:38:31 +02:00
Fabrice Fontaine 0c6905b14d package/gstreamer1/gst1-plugins-base: gl needs api, platform and window
Build will fail if gl is enabled without an api, a platform and a
window:

Message: No OpenGL Platforms found or requested
Message: No OpenGL Window systems found or requested

gst-libs/gst/gl/meson.build:948:2: ERROR: Problem encountered: GStreamer OpenGL integration required via options, but needed dependencies not found.

This requirement is already specified in Config.in through a simple
comment:

comment "The opengl library needs an API, a platform and a window system"
	depends on !BR2_PACKAGE_GST1_PLUGINS_BASE_HAS_LIB_OPENGL

Fixes:
 - http://autobuild.buildroot.org/results/d171059801adf8dea1a2116d7c729a2aa5767ac8
 - http://autobuild.buildroot.org/results/b1bfa505bba534440d331c4948eea5eb2d165c97

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 66e484a751)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-25 15:30:21 +02:00
Heiko Thiery d86b338740 package/ipmitool: fix 0011-channel-Fix-buffer-overflow.patch
The previous commit to this package
(37c5e903a7) introduced a bunch of patches
to fix a CVE. Unfortunatly only applying of the patches was tested but
not building the package.

This commit replaces a define that was introduced in a previous patch
upstream and caused the build failure.

Tested:

                             br-arm-full [1/6]: OK
                  br-arm-cortex-a9-glibc [2/6]: OK
                   br-arm-cortex-m4-full [3/6]: SKIPPED
                          br-x86-64-musl [4/6]: OK
                      br-arm-full-static [5/6]: OK
                            sourcery-arm [6/6]: OK

Fixes:
 - http://autobuild.buildroot.net/results/3f7fe8ad181318153c459ba5e1afbbc8b49d541c/
 - and more

Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 3b81307162)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-23 21:06:42 +02:00
Thomas Petazzoni 5935b68772 package/pkg-meson: ensure the global cross-compilation.conf file is correct
Currently, the cross-compilation.conf installed in
$(HOST_DIR)/etc/meson/cross-compilation.conf for use by the SDK is
generated in a post-install-staging hook of the toolchain package.

With per-package directory support enabled, this means that the
generated cross-compilation.conf contains references to the
per-package directory of the toolchain/ package, which is not want we
want:

[binaries]
c = '/home/thomas/projets/buildroot/output/per-package/toolchain/host/bin/arm-linux-gcc'
cpp = '/home/thomas/projets/buildroot/output/per-package/toolchain/host/bin/arm-linux-g++'
ar = '/home/thomas/projets/buildroot/output/per-package/toolchain/host/bin/arm-linux-ar'
strip = '/home/thomas/projets/buildroot/output/per-package/toolchain/host/bin/arm-linux-strip'
pkgconfig = '/home/thomas/projets/buildroot/output/per-package/toolchain/host/usr/bin/pkg-config'

So instead, we generate this file in TOOLCHAIN_TARGET_FINALIZE_HOOKS,
so that the global paths are used:

[binaries]
c = '/home/thomas/projets/buildroot/output/host/bin/arm-linux-gcc'
cpp = '/home/thomas/projets/buildroot/output/host/bin/arm-linux-g++'
ar = '/home/thomas/projets/buildroot/output/host/bin/arm-linux-ar'
strip = '/home/thomas/projets/buildroot/output/host/bin/arm-linux-strip'
pkgconfig = '/home/thomas/projets/buildroot/output/host/usr/bin/pkg-config'

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Reviewed-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 48d2606e28)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 21:02:11 +02:00
Heiko Thiery 87cd0e943f package/ipmitool: fix CVE-2020-5208
Add several upstream patches that are made to fix this CVE. Since there
is still no dated plan to release a new version add this bunch of
patches.

Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 37c5e903a7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 20:59:52 +02:00
Michael Nosthoff d16b594675 package/localedef: depend host build on python3
Just like glibc, host-localedef needs python3 on the host to
build... since host-localedef is basically using the sources of glibc.

Fixes:

checking if /build/build/per-package/host-localedef/host/bin/ccache
/usr/bin/gcc is sufficient to build libc... yes
checking for x86_64-pc-linux-gnu-nm... /usr/bin/nm
checking for python3... no
checking for python... python
checking version of python... 2.7.18, bad
configure: error:
*** These critical programs are missing or too old: python
*** Check the INSTALL file for required versions.

As reported at:

  http://lists.busybox.net/pipermail/buildroot/2020-September/291929.html

Signed-off-by: Michael Nosthoff <buildroot@heine.tech>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6e73c71cc4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 20:57:53 +02:00
Christian Stewart 8d4d78924a package/docker-engine: bump to version 19.03.12
Signed-off-by: Christian Stewart <christian@paral.in>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f826e8817a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 20:53:49 +02:00
Christian Stewart 55e97d22a7 package/docker-cli: bump to version 19.03.12
Signed-off-by: Christian Stewart <christian@paral.in>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit e3d734c431)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 20:53:46 +02:00
Christian Stewart f95548b49e package/runc: security bump to version 1.0.0-rc92
1.0.0-rc91 fixes a minor security issue:
https://github.com/opencontainers/runc/security/advisories/GHSA-g54h-m393-cpwq

In addition, 1.0.0-rc92 fixes a regression introduced in 1.0.0-rc91.

Signed-off-by: Christian Stewart <christian@paral.in>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 2462bf1ba5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 20:44:12 +02:00
Fabrice Fontaine c05f4e2e0c package/efl: depends on gcc >= 4.9
efl depends on C++11 since version 1.22.0 and
https://github.com/Enlightenment/efl/commit/ac95f38d1b06ac6977ea6d8b9f14f9405396858f

Fixes:
 - http://autobuild.buildroot.org/results/458ec719a7251b59796edfc865b7226baaed6d8f

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit dbe2d2e686)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 20:20:35 +02:00
Fabrice Fontaine 5aebd918aa package/ghostscript: security bump to version 9.53.0
- Use tar.gz as SHA512SUMS does not contain the hash for tar.xz
- Fix CVE-2020-15900: A memory corruption issue was found in Artifex
  Ghostscript 9.50 and 9.52. Use of a non-standard PostScript operator
  can allow overriding of file access controls. The 'rsearch'
  calculation for the 'post' size resulted in a size that was too large,
  and could underflow to max uint32_t.

https://www.ghostscript.com/doc/9.53.0/News.htm

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit cae8be20ed)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 20:16:41 +02:00
Fabrice Fontaine f2e33a0289 package/libssh: security bump to version 0.9.5
- Drop patches (already in version)
- Fix CVE-2020-16135: libssh 0.9.4 has a NULL pointer dereference in
  tftpserver.c if ssh_buffer_new returns NULL.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Tested-by: Heiko Thiery <heiko.thiery@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit df2adb2a09)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 20:12:40 +02:00
Titouan Christophe f31cd341ac package/python: do not install MS Windows installers on the target
Buildroot generates Linux systems, so there is no need to have
MS Windows executables in there.

This reduces the target filesystem size by about 600kB:
$ du -hcs usr/lib/python2.7/distutils/command/wininst-*.exe
60K usr/lib/python2.7/distutils/command/wininst-6.0.exe
64K usr/lib/python2.7/distutils/command/wininst-7.1.exe
60K usr/lib/python2.7/distutils/command/wininst-8.0.exe
192K    usr/lib/python2.7/distutils/command/wininst-9.0.exe
220K    usr/lib/python2.7/distutils/command/wininst-9.0-amd64.exe
596K    total

Signed-off-by: Titouan Christophe <titouan.christophe@railnova.eu>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit a7e71716f5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 20:10:18 +02:00
Titouan Christophe 2caa1d5362 package/python3: do not install MS Windows installers on the target
Buildroot generates Linux systems, so there is no need to have
MS Windows executables in there.

This reduces the target filesystem size by about 2MB:
$ du -hcs usr/lib/python3.8/distutils/command/wininst-*.exe
60K usr/lib/python3.8/distutils/command/wininst-6.0.exe
64K usr/lib/python3.8/distutils/command/wininst-7.1.exe
60K usr/lib/python3.8/distutils/command/wininst-8.0.exe
192K    usr/lib/python3.8/distutils/command/wininst-9.0.exe
220K    usr/lib/python3.8/distutils/command/wininst-9.0-amd64.exe
188K    usr/lib/python3.8/distutils/command/wininst-10.0.exe
220K    usr/lib/python3.8/distutils/command/wininst-10.0-amd64.exe
448K    usr/lib/python3.8/distutils/command/wininst-14.0.exe
576K    usr/lib/python3.8/distutils/command/wininst-14.0-amd64.exe
2,0M    total

Signed-off-by: Titouan Christophe <titouan.christophe@railnova.eu>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 4e97032c82)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 20:10:16 +02:00
Robin Jarry d94ad9e4e9 support/scripts/pycompile: fix .pyc original source file paths
When generating a .pyc file, the original .py source file path is
encoded in it. It is used for various purposes: traceback generation,
.pyc file comparison with its .py source, and code inspection.

By default, the source path used when invoking compileall is encoded in
the .pyc file. Since we use paths relative to TARGET_DIR, we end up with
paths that are only valid when relative to '/' encoded in the installed
.pyc files on the target.

This breaks code inspection at runtime since the original source path
will be invalid unless the code is executed from '/'.

Unfortunately, compileall cannot be forced to use the proper path. It
was not written with cross-compilation usage in mind.

Rework the script to call py_compile.compile() directly with pertinent
options:

- The script now has a new --strip-root argument. This argument is
  optional but will always be specified when compiling py files in
  buildroot.
- All other (non-optional) arguments are folders in which all
  "importable" .py files will be compiled to .pyc.
- Using --strip-root=$(TARGET_DIR), the future runtime path of each .py
  file is computed and encoded into the compiled .pyc.

No need to change directory before running the script anymore.

The trickery used to handle error reporting was only applicable with
compileall. Since we implement our own "compileall", error reporting
becomes trivial.

Previously, we had a --force option to tell compileall.compiledir() to
forcibly recompile files if they had changed. Now, we would have to
handle it ourselves. It turns out to not be easy and would need us to
delve into the format of bytecompiled files to extract metadata and
compare it with the expected values, that being even dependent on the
python version being used (fortunately, only two for us: python 2.7 and
the latext 3.x).

Still, this is deemed too complex, and byte-compiling is pretty fast, so
much so that it should be eclipsed by the build duration anyway.

So we just drop support for --force, and instead we always byte-compile.

Signed-off-by: Julien Floret <julien.floret@6wind.com>
Signed-off-by: Robin Jarry <robin.jarry@6wind.com>
[yann.morin.1998@free.fr:
  - always byte-compile
  - drop --force
  - expand commit log to state so and explain why
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit c566f5206a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 20:05:40 +02:00
Robin Jarry 2bbdd246fc support/scripts/pycompile: sort imports
Signed-off-by: Robin Jarry <robin.jarry@6wind.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 4c77dca550)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 20:05:29 +02:00
Robin Jarry 92b118f856 support/scripts/pycompile: add main entry point
Only run code when the script is executed directly (not imported).
Factorize command description by using the script's __doc__ variable.
Fix typo in --force help message.

Signed-off-by: Robin Jarry <robin.jarry@6wind.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 7b3025f93e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 20:05:24 +02:00
Adrian Perez de Castro 5485d509db package/wlroots: always disable xcb-errors
Stop trying to enable the xcb-errors Meson option and always disable it:
there is no xcb-util-errors package in Buildroot. The build recipe was
wrongly assuming that the XCB errors library would be installed as part
of the xcb-util package, which is not the case.

Fixes the following autobuilder failure:

  http://autobuild.buildroot.net/results/1891aa624b29e4bbcbbe6bc752a1cc90c316024e/

Signed-off-by: Adrian Perez de Castro <aperez@igalia.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit c2bc0694c4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 19:55:46 +02:00
Peter Korsgaard 92da2f42e9 package/zeromq: security bump to version 4.3.3
Fixes the following security issues:

- CVE-2020-15166: Denial-of-Service on CURVE/ZAP-protected servers by
  unauthenticated clients.
  If a raw TCP socket is opened and connected to an endpoint that is fully
  configured with CURVE/ZAP, legitimate clients will not be able to exchange
  any message.  Handshakes complete successfully, and messages are delivered
  to the library, but the server application never receives them.  For more
  information see the security advisory:
  https://github.com/zeromq/libzmq/security/advisories/GHSA-25wp-cf8g-938m

- Stack overflow on server running PUB/XPUB socket (CURVE disabled).
  The PUB/XPUB subscription store (mtrie) is traversed using recursive
  function calls.  In the remove (unsubscription) case, the recursive calls
  are NOT tail calls, so even with optimizations the stack grows linearly
  with the length of a subscription topic.  Topics are under the control of
  remote clients - they can send a subscription to arbitrary length topics.
  An attacker can thus cause a server to create an mtrie sufficiently large
  such that, when unsubscribing, traversal will cause a stack overflow.  For
  more information see the security advisory:
  https://github.com/zeromq/libzmq/security/advisories/GHSA-qq65-x72m-9wr8

- Memory leak in PUB server induced by malicious client(s) without CURVE/ZAP.
  Messages with metadata are never processed by PUB sockets, but the
  metadata is kept referenced in the PUB object and never freed.  For more
  information see the security advisory:
  https://github.com/zeromq/libzmq/security/advisories/GHSA-4p5v-h92w-6wxw

- Memory leak in client induced by malicious server(s) without CURVE/ZAP.
  When a pipe processes a delimiter and is already not in active state but
  still has an unfinished message, the message is leaked.
  For more information see the security advisory:
  https://github.com/zeromq/libzmq/security/advisories/GHSA-wfr2-29gj-5w87

- Heap overflow when receiving malformed ZMTP v1 packets (CURVE disabled).
  By crafting a packet which is not valid ZMTP v2/v3, and which has two
  messages larger than 8192 bytes, the decoder can be tricked into changing
  the recorded size of the 8192 bytes static buffer, which then gets
  overflown by the next message.  The content that gets written in the
  overflown memory is entirely decided by the sender.
  For more information see the security advisory:
  https://github.com/zeromq/libzmq/security/advisories/GHSA-fc3w-qxf5-7hp6

Drop now upstreamed patches, autoreconf and reformat hash file with 2 space
delimiters.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit fd1ac2e762)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 19:47:20 +02:00
Brandon Maier 60522566b4 docs/manual: Add section about contributing to maintenance branches
Signed-off-by: Brandon Maier <brandon.maier@rockwellcollins.com>
[yann.morin.1998@free.fr:
  - s/release branch/maintenance branch/
  - extend the master-then-backport section
  - slight eye-candy on the rest
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 76ed69499d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-15 19:46:44 +02:00
Heiko Thiery 0378521a10 package/strace: disable mpers support
On aarch64 With the config option "--enable-mpers=check" the configure.ac
script searchs for a 32bit compiler. When a matching compiler is found
in the PATH some compatiblity checks are done. This can fail when the
available kernel headers on host and buildroot target does not match.

Since buildroot does not support 32bit binaries when building for 64bit
architecture (no -m32 option) we can disable this option unconditionally.

When disabling unconditionally also the configuration for toolchain using
MUSL can be removed.

Cc: Baruch Siach <baruch@tkos.co.il>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Brandon Maier <brandon.maier@rockwellcollins.com>
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit bae6142582)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-11 23:31:27 +02:00
Thomas Petazzoni abebe1c943 package/libxml-parser-perl: use the compiler as "LD"
Since commit efa95b19ae
("package/libxml-parser-perl: make host build use correct compiler"),
we pass $(HOST_CONFIGURE_OPTS) when building host-libxml-parser-perl,
in order to use the correct host compiler.

However, this means that LD="$(HOSTLD)" is passed. However, the
host-libxml-parser-perl passes compiler arguments to LD, so it really
assumes that LD is gcc, not ld. For example, it tries to pass
-mtune=generic.

So, let's tell host-libxml-parser-perl that LD is "$(HOSTCC)".

Fixes:

  http://autobuild.buildroot.net/results/2ed2e5ccefe9047c597f84d5880de2e8de2bdd94/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Tested-by: Joseph Kogut <joseph.kogut@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 43a26d7fe4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-11 23:18:21 +02:00
Norbert Lange d8f9a3009b package/libxml-parser-perl: make host build use correct compiler
This package uses gcc filename without absolute path, which breaks
the host build if host and target compiler have the same filename.
(Can happen with an external toolchain).

This patch adds the variables for the host as overrides,
as they are otherwise not picked up from the environment.

Signed-off-by: Norbert Lange <nolange79@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit efa95b19ae)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-11 23:18:19 +02:00
Fabrice Fontaine cbe86a76d9 package/libraw: security bump to version 0.20.0
- Fix CVE-2020-15503: LibRaw before 0.20-RC1 lacks a thumbnail size
  range check. This affects decoders/unpack_thumb.cpp,
  postprocessing/mem_image.cpp, and utils/thumb_utils.cpp. For example,
  malloc(sizeof(libraw_processed_image_t)+T.tlength) occurs without
  validating T.tlength.

- zlib is an optional dependency since
  https://github.com/LibRaw/LibRaw/commit/b63f017b063edb5e7091e3952ee20cb4d002edbe

Also update indentation in hash file (two spaces) as well as README.md
hash, no license changes:
 - https://github.com/LibRaw/LibRaw/commit/d1975cb0e055d2bfe58c9d845c9a3e57c346a2f9
 - https://github.com/LibRaw/LibRaw/commit/d38361b76e1a405a25b11165a1ee5495fc899246

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit fd50e0f93f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-11 23:06:21 +02:00
Fabrice Fontaine 4e112ff503 package/libraw: drop unrecognized options
demosaic packs have been removed since version 0.19.0 and
https://github.com/LibRaw/LibRaw/commit/b85690eb4881d613dd48068ee82f98ac246690b8

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 68480c9bf0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-11 23:06:18 +02:00
Adrian Perez de Castro 79efa92da6 package/brotli: security update to version 1.0.9
Contains fixes for overflows when input chunks are larger than 2 GiB,
an uninitialized data access, and minor correctness and performance
improvements. There does not seem to be any CVEs filed, but there is
a security notice in the release notes at:

  https://github.com/google/brotli/releases/tag/v1.0.9

Patch "0001-CMake-Allow-using-BUILD_SHARED_LIBS-to-choose-static.patch"
is rebased against the latest upstream changes.

Signed-off-by: Adrian Perez de Castro <aperez@igalia.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 777bbd1b07)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-11 23:04:30 +02:00
Fabrice Fontaine 67743d4ef1 package/memcached: fix build with gcc 10
Fixes:
 - http://autobuild.buildroot.org/results/ba8dcdece193b91845a30cd31d3574674ec30068

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f4d124b91c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-11 22:39:52 +02:00
Fabrice Fontaine 56bb63fb3c package/minidlna: fix CallStranger a.k.a. CVE-2020-12675
No MINIDLNA_IGNORE_CVES entry is added as no CVE has been assigned to
minidlna. Indeed, CallStranger vulnerability affect(ed) most of the UPnP
stacks (e.g. gupnp, libupnp)

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 9ab9118831)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-11 22:22:22 +02:00
Fabrice Fontaine 08e4a73695 package/minidlna: fix build with gcc 10
Fixes:
 - http://autobuild.buildroot.org/results/8754bb4f7d749f999d5f8ddfec587470ceec4476

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 9e31511d64)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-11 22:22:15 +02:00
Fabrice Fontaine 3807305ea6 package/apparmor: fix per-package build with apache
Per-package build of apparmor with apache fails on:

/usr/lfs/hdd_v1/rc-buildroot-test/scripts/instance-0/output-1/per-package/apparmor/host/x86_64-buildroot-linux-musl/sysroot/usr/bin/apxs  -c mod_apparmor.c -L/usr/lfs/hdd_v1/rc-buildroot-test/scripts/instance-0/output-1/per-package/apparmor/host/bin/../x86_64-buildroot-linux-musl/sysroot/usr/lib -lapparmor

/usr/lfs/hdd_v1/rc-buildroot-test/scripts/instance-0/output-1/per-package/apache/host/x86_64-buildroot-linux-musl/sysroot/usr/bin/../../usr/build-1/libtool --silent --mode=compile /usr/lfs/hdd_v1/rc-buildroot-test/scripts/instance-0/output-1/per-package/apache/host/bin/x86_64-linux-gcc -prefer-pic -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g2    -I/usr/lfs/hdd_v1/rc-buildroot-test/scripts/instance-0/output-1/per-package/apache/host/x86_64-buildroot-linux-musl/sysroot/usr/include  -I/usr/lfs/hdd_v1/rc-buildroot-test/scripts/instance-0/output-1/per-package/apache/host/x86_64-buildroot-linux-musl/sysroot/usr/bin/../../usr/include/apr-1   -I/usr/lfs/hdd_v1/rc-buildroot-test/scripts/instance-0/output-1/per-package/apache/host/x86_64-buildroot-linux-musl/sysroot/usr/bin/../../usr/include/apr-1 -I/usr/lfs/hdd_v1/rc-buildroot-test/scripts/instance-0/output-1/per-package/apache/host/x86_64-buildroot-linux-musl/sysroot/usr/bin/../../../../x86_64-buildroot-lin
 ux-musl/sysroot/usr/include  -c -o mod_apparmor.lo mod_apparmor.c && touch mod_apparmor.slo
mod_apparmor.c:28:10: fatal error: sys/apparmor.h: No such file or directory
 #include <sys/apparmor.h>
          ^~~~~~~~~~~~~~~~

The issue is that sys/appamor.h is not installed in the apache
per-package directory which is mangled by
APACHE_FIX_STAGING_APACHE_CONFIG, i.e.
/usr/lfs/hdd_v1/rc-buildroot-test/scripts/instance-0/output-1/per-package/apache/host/x86_64-buildroot-linux-musl/sysroot/usr/include

So implement the same workaround made on apache to replace those wrong
apache paths by apparmor paths in apxs binary and its configuration file
(i.e. config_vars.mk) as suggested by Thomas Petazzoni and Yann E. Morin
during review of the first iteration of this patch

Fixes:
 - http://autobuild.buildroot.org/results/ef1fcd57e0c09a2806bf2272bb21df6d3300b45b

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 3c836e5420)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-11 22:04:03 +02:00
Peter Korsgaard 95463fa943 {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: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit d25b9ead1e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-09 22:42:16 +02:00
Fabrice Fontaine d5c04f55fb package/gnutls: security bump to version 3.6.15
libgnutls: Fixed "no_renegotiation" alert handling at incorrect timing.
The server sending a "no_renegotiation" alert in an unexpected timing,
followed by an invalid second handshake was able to cause a TLS 1.3
client to crash via a null-pointer dereference. The crash happens in the
application's error handling path, where the gnutls_deinit function is
called after detecting a handshake failure (#1071).
[GNUTLS-SA-2020-09-04, CVSS: medium]

https://lists.gnupg.org/pipermail/gnutls-help/2020-September/004669.html

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit fb3b23220b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-09 22:30:58 +02:00
Thomas Petazzoni d18b83a524 package/linux-headers: the latest headers are 5.6
In commit c2009e9f75
("package/linux-headers: license files hashes only valid for latest
version"), we introduced BR2_KERNEL_HEADERS_LATEST, which should only
be set for the most recent kernel headers versions.

Indeed, the COPYING file of Linux has changed before/after Linux 5.6,
causing its hash file to be different. Since linux-headers uses
linux/linux.hash as the hash file, and this hash file contains the
COPYING hash of Linux >= 5.6, we cannot use that hash for Linux
versions older than 5.6.

When newer versions of the headers than 5.4 were added, this
BR2_KERNEL_HEADERS_LATEST was not moved as it should have been. We fix
this, which fixes a legal-info failure happening when Linux kernel
headers 5.4 are used:

>>> linux-headers 5.4.61 Patching
>>> linux-headers 5.4.61 Collecting legal info
ERROR: COPYING has wrong sha256 hash:
ERROR: expected: fb5a425bd3b3cd6071a3a9aff9909a859e7c1158d54d32e07658398cd67eb6a0
ERROR: got     : ee5808b032a67f587d3541099d46de34f5bec8cd5976114ba07f1299ee6001ff
ERROR: Incomplete download, or man-in-the-middle (MITM) attack
make: *** [package/linux-headers/linux-headers.mk:158: linux-headers-legal-info] Error 1

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-09 12:50:20 +02:00
Peter Korsgaard 5d34622343 package/go: security bump to version 1.13.15
Fixes the following security issue:

CVE-2020-16845: Go before 1.13.15 and 14.x before 1.14.7 can have an
infinite read loop in ReadUvarint and ReadVarint in encoding/binary via
invalid inputs

https://github.com/golang/go/issues/40620

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-08 23:12:30 +02:00
Peter Korsgaard ec766fc712 .gitlab-ci.yml: use python3 for flake8 run
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-05 22:04:40 +02:00
Yann E. MORIN a504792ef0 gitlab-ci: update the image version
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 7f654438c4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit a7f088767c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-05 22:04:27 +02:00
Fabrice Fontaine 56f5b50e83 package/usb_modeswitch: fix parallel install
Extract from bug report:

"In usb_modeswitch Makefile dispatcher-script, dispatcher-dynlink and
dispatcher-statlink are .PHONY targets. The result is that sources are
compiled also when install targets are called.
USB_MODESWITCH_INSTALL_TARGET_CMDS calls $(MAKE) which is a call to
parallel make eg. make -j9. So the install phase can install empty
usb_modeswitch binary (happened once) if the compiler have just cleared
the binary and install command installs it before compiler writes the
binary. USB_MODESWITCH_INSTALL_TARGET_CMDS should call $(MAKE1)."

Instead of disabling parellel install, use install-common target instead
of install-{dyn,stat}link targets. Indeed, the dynamic or static
usb_modeswitch_dispatcher binary will be built by
all-with-{dyn,stat}link-dispatcher targets, there is no need to rebuild
it during the install step

Fixes:
 - https://bugs.buildroot.org/show_bug.cgi?id=12911

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 345c68f04f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-05 14:24:18 +02:00
Fabrice Fontaine 954d90a5be package/wolfssl: disable examples and tests
Examples and tests are not needed especially because of them fails on
some architectures because it wrongly tries to use wc_Sha256FinalRaw:

  CCLD     tests/unit.test
/tmp/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/aarch64-none-linux-gnu/9.2.1/../../../../aarch64-none-linux-gnu/bin/ld: tests/tests_unit_test-api.o: in function `test_wc_Sha256FinalRaw':
/tmp/instance-0/output-1/build/wolfssl-4.5.0-stable/tests/api.c:6504: undefined reference to `wc_Sha256FinalRaw'

Fixes:
 - http://autobuild.buildroot.org/results/d5b6f97f7510874fe28c675e599be08cb8a78c7b

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 5a33de882e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-05 10:22:10 +02:00
John Keeping faed27194c package/alsa-utils: fix install if directories exist
"mkdir" (without "-p") fails if the target directory exists, which means
that if alsa-utils is being reinstalled or if other files have
previously been installed in the alsa-state.d or alsa-restore.d
directories the installation will fail.

Switch to "$(INSTALL) -d" which allows us to be explicit about the
permissions and handles the case of a pre-existing directory correctly.

Signed-off-by: John Keeping <john@metanate.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit a421da99a7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-05 10:17:57 +02:00
Arnout Vandecappelle (Essensium/Mind) cc04ce007e manual: board support: add more of our expectations
The manual has a section on adding board support to upstream buildroot,
but it fails to mention some of the things we expect. Add more of them.

- Internal toolchain.
- Beautify defconfig file.
- Fixed versions for components.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Adam Duskett <Aduskett@gmail.com>
Reviewed-by: Adam Duskett <aduskett@gmail.com>
[yann.morin.1998@free.fr:
  - use +monospace+ for the variables
  - use _italic_ for sections in defconfig
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit af6cffb64e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-05 10:14:37 +02:00
Angelo Compagnucci 8d87aedea1 package/cups: security bump to version 2.3.3
Fixes the following security issues:

CVE-2019-8842: The `ippReadIO` function may under-read an extension field

CVE-2020-3898: heap based buffer overflow in libcups's ppdFindOption() in
ppd-mark.c

Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
Tested-by: Adam Duskett <aduskett@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 9b4a6cbc21)
[Mention security fixes]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-05 10:13:27 +02:00
Angelo Compagnucci e748bdc292 package/cups: Add udev rules to assign usb printers group to lp
This patch is based on patch from the rockchip tree:

commit c8a337593660f27379c30248a11bf08dc8712113
Author: Jeffy Chen <jeffy.chen@rock-chips.com>
Date:   Tue Nov 13 18:59:43 2018 +0800

    package: cups: Add udev rules to assign usb printers' group to lp

    Change-Id: Ieae17deaa7d3623e1f0e1cc826871f1719d98d88
    Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>

but removes a hardcoded device usb vendor/id and keps only the usb
printer class.

Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
(cherry picked from commit 9c47056c0c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-05 10:02:47 +02:00
Angelo Compagnucci c8fc3a668b package/cups: Add lp user as default cups user
This patch is a backport from the rockchip tree.

Author: Jeffy Chen <jeffy.chen@rock-chips.com>
Date:   Tue Nov 13 18:25:34 2018 +0800

    package: cups: Add lp user as default cups user

    Change-Id: Ic7434fe0a7b41b86b5b8b097fa29dd9718e29aa5
    Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>

User lp is necessary for running the cups spooler.
Groups lpadmin grants administrative privileges to users.

Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
(cherry picked from commit 608c12c044)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-05 10:02:46 +02:00
Fabrice Fontaine ec01722090 package/mbedtls: security bump to version 2.16.8
Fix a "Local side channel attack on classical CBC decryption in (D)TLS"
a.k.a. CVE-2020-16150:
https://tls.mbed.org/tech-updates/security-advisories/mbedtls-security-advisory-2020-09-1

as well as a "Local side channel attack on RSA and static
Diffie-Hellman" (no CVE):
https://tls.mbed.org/tech-updates/security-advisories/mbedtls-security-advisory-2020-09-2

Also change MBEDTLS_SITE and retrieve hash provided by upstream

https://github.com/ARMmbed/mbedtls/releases/tag/v2.16.8

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 61bb1370d0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-05 09:42:41 +02:00
Peter Korsgaard f25ad2f317 package/python-django: security bump to version 3.0.10
Fixes the following security issues:

CVE-2020-24583: Incorrect permissions on intermediate-level directories on Python 3.7+
On Python 3.7+, FILE_UPLOAD_DIRECTORY_PERMISSIONS mode was not applied to
intermediate-level directories created in the process of uploading files and
to intermediate-level collected static directories when using the
collectstatic management command.

You should review and manually fix permissions on existing
intermediate-level directories.

CVE-2020-24584: Permission escalation in intermediate-level directories of
the file system cache on Python 3.7+
On Python 3.7+, the intermediate-level directories of the file system cache
had the system’s standard umask rather than 0o077 (no group or others
permissions).

https://docs.djangoproject.com/en/dev/releases/3.0.10/

In addition, 3.0.8..10 contains a number of bugfixes.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit eaefa775ed)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-05 09:40:26 +02:00
Lukasz Tekieli bced9e9109 package/busybox: fix avahi-autoipd error message
When using a combination of udhcpc and avahi-autoipd in case of receiving IP
from a DHCP server, the following message can be seen:
"Failed to kill daemon: No such file or directory".
Add a check for a running avahi-autoipd to fix this issue.

Signed-off-by: Lukasz Tekieli <tekieli.lukasz@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 3c5ca644ef)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-05 09:38:05 +02:00
Norbert Lange 50beb0a42d package/systemd: move preset-all HOOK to fakeroot stage
User can drop in more systemd units or presets
in an rootfs overlay, which will be copied over *after*
the TARGET_FINALIZE_HOOKS are run.

Instead, run preset-all afterwards from ROOTFS_PRE_CMD_HOOKS

Signed-off-by: Norbert Lange <nolange79@gmail.com>
Reviewed-by: Jérémy ROSEN <jeremy.rosen@smile.fr>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 65b63785a6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-04 11:48:47 +02:00
Peter Korsgaard 5940d5e434 package/avahi: disable introspection
Fixes:
http://autobuild.buildroot.net/results/b9bf7cea8be9231552a10e8ea828bf24394402ba/

Building with introspection (together with D-Bus) support currently fails.
Fixing it is not trivial, so explicitly disable introspection for now.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Tested-by: Adam Duskett <aduskett@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit b4fcf2ff58)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-01 21:40:01 +02:00
Peter Korsgaard fe976f68a5 package/docker-cli: fix version info since move to 19.03.x
Upstream changed the variables used when outputting version / git commit
info in docker version since:

 commit 04b5f44230162de40741acaa0f94c7af6f2fa1d5
 Author: Ian Campbell <ijc@docker.com>
 Date:   Tue Jan 8 15:03:51 2019 +0000

    Move versioning variables to a separate package.

    This helps to avoid circular includes, by separating the pure data out from the
    actual functionality in the cli subpackage, allowing other code which is
    imported to access the data.

    Signed-off-by: Ian Campbell <ijc@docker.com>
    Upstream-commit: 20c19830a95455e8562551aad52c715ad0807cc6
    Component: cli

Which is included in docker-cli 19.3.x - So adjust the _CLI_LDFLAGS to match
to get proper docker version output:

Client:
 Version:           19.03.11
 API version:       1.40
 Go version:        go1.13.14
 Git commit:        19.03.11

vs:

Client:
 Version:           unknown-version
 API version:       1.40
 Go version:        go1.13.14
 Git commit:        unknown-commit

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit bf27781bb1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-01 21:38:32 +02:00
Julien Grossholtz a6e0be46a1 package/paho-mqtt-c: bump to version 1.3.5
This is a paho-mqtt-c maintainace release. It fixes some memory leaks as
well as a potential deadlock:

https://github.com/eclipse/paho.mqtt.c/milestone/8?closed=1

Signed-off-by: Julien Grossholtz <julien.grossholtz@openest.io>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 179e8390a7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-01 21:38:01 +02:00
Iulian Onofrei e5c20ab7c7 package/libeXosip2: fix typos in help text
Signed-off-by: Iulian Onofrei <iulian.onofrei@yahoo.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit fef674dbf5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-01 21:35:40 +02:00
Iulian Onofrei a260fe9151 package/nvidia-driver: fix typos in comments
Signed-off-by: Iulian Onofrei <iulian.onofrei@yahoo.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 21fca042d9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-01 21:35:36 +02:00
Fabrice Fontaine 2c5e71594c package/imagemagick: (security) bump to version 7.0.10-28
- Fix CVE-2019-17547: In ImageMagick before 7.0.8-62, TraceBezier in
  MagickCore/draw.c has a use-after-free.
- Fix CVE-2019-18853: ImageMagick before 7.0.9-0 allows remote attackers
  to cause a denial of service because XML_PARSE_HUGE is not properly
  restricted in coders/svg.c, related to SVG and libxml2.
- Update hash of LICENSE file (update in year with
  https://github.com/ImageMagick/ImageMagick/commit/f775a5cf27a95c42bb6d19b50f4869db265fdaa9)
- Update indentation in hash file (two spaces)
- Switch to github helper - it has always been an autogenerated archive.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
[Arnout: use github helper]
(cherry picked from commit 8f2fe00f08)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-01 20:42:05 +02:00
Yann E. MORIN 8a2353faa0 package/pkg-kconfig: quote HOSTCC_NOCCACHE
HOSTCC may contain spaces, so needs to be quoted.

Most of the places where it is already quoted use double-quotes, so we
use that.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
(cherry picked from commit 94bb89ad57)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-01 20:41:25 +02:00
Fabrice Fontaine d912c6003a package/graphite2: fix static install
Don't install an incorrect libtool file when building a static library
to fix the following build failure with harfbuzz:

arm-linux-g++.br_real: error: /home/buildroot/autobuild/run/instance-3/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgraphite2.so: No such file or directory
make[5]: *** [main] Error 1

Fixes:
 - http://autobuild.buildroot.org/results/9ebe1d11e80755d59190ef2aae82bbba5cc45e44

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit dd2d4caf56)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-01 20:34:46 +02:00
Fabrice Fontaine 811542bdcc package/graphite2: security bump to version 1.3.14
- Switch site to github, here is an extract of
  https://sourceforge.net/projects/silgraphite:
  "This project has been deprecated. Graphite2, a new version of the
  Graphite engine, is available at: https://github.com/silnrsi/graphite
  with its own bug tracker."
- graphite2 can be built statically since version 1.3.11 and
  https://github.com/silnrsi/graphite/commit/2f143c04da5caa43ddf4dba437b2f2bc26bf4238
- Update indentation in hash file (two spaces)

Extract from ChangeLog:

1.3.14
    . Bug fixes
    . Allow features to be hidden (for aliases)
    . Move to python3
    . Rename doc files from .txt to .asc

1.3.13
    . Resolve minor spacing issue in rtl non-overlap kerning
    . python3 for graphite.py
    . Better fuzzing
    . Better building on windows

1.3.12
    . Graphite no longer does dumb rendering for fonts with no smarts
    . Segment caching code removed. Anything attempting to use the segment cache gets given a regular face instead
    . Add libfuzzer support
    . Builds now require C++11
    . Improvements to Windows 64 bit builds
    . Support different versions of python including 32 bit and python 3
    . Various minor bug fixes

1.3.11
    . Fixes due to security review
    . Minor collision avoidance fixes
    . Fix LZ4 decompressor against high compression

The fixes due to security review are a little bit vague, a quick search
on github seems to indicate that those issues could be related to
segcache which has been removed since version 1.3.12:
https://github.com/silnrsi/graphite/search?q=security&type=Issues
https://github.com/silnrsi/graphite/commit/b0f77e4a9dc50a888f74e904000a2486b2fc5527

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
(cherry picked from commit d3a06c2fc4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-01 20:34:40 +02:00
Yann E. MORIN 609ef2b110 package/uclibc: use HOSTCC_NOCCACHE as kconfig HOSTCC
uclibc is part of the toolchain, and as such does not have a dependency
on it. As a consequence, it does not have a dependency on host-ccache,
when this is needed.

Usually, host-ccache is built before uclibc, as part of the dependency
of gcc-initial, host-binutils, and a few other host packages that are
built before uclibc.

However, during top-level parallel builds, this ordering is only ever
guaranteed at the beginning of the configure step, and not before.

But for kconfig-packages, the moment we apply the configuration to
prepare the .config file is a pseudo step that happens somewhere in
limbo between the patch step and the configure step. As such, the
build ordering that is otherwise guaranteed by the _DEPENDENCIES is not
applicable yet.

And so, with top-level parallel builds with ccache enabled, there is
nothing that guarantees host-ccache to be built and installed by the
time we are trying to generate uclibc's .config file, which can be quite
early in the build process, and thus the build fails:

    /home/raphael/github/ftcommunity-TXT/buildroot-rootfs/output/per-package/uclibc/host/bin/ccache /usr/bin/gcc /home/raphael/github/ftcommunity-TXT/buildroot-rootfs/output/build/uclibc-1.0.34/extra/config/conf.c  -c -o ../../extra/config/conf.o -Os -I/usr/include/ncursesw -DCURSES_LOC="<curses.h>"  -DNCURSES_WIDECHAR=1 -DLOCALE -DKBUILD_NO_NLS -DCONFIG_='""'   -I/usr/include/ncursesw -DCURSES_LOC="<curses.h>"  -DNCURSES_WIDECHAR=1 -DLOCALE -DKBUILD_NO_NLS -DCONFIG_='""'
    /bin/sh: 1: /home/raphael/github/ftcommunity-TXT/buildroot-rootfs/output/per-package/uclibc/host/bin/ccache: not found
    make[2]: *** [Makefile:64: ../../extra/config/conf.o] Error 127
    make[1]: *** [Makefile.in:475: extra/config/conf] Error 2
    make[1]: Leaving directory '/home/raphael/github/ftcommunity-TXT/buildroot-rootfs/output/build/uclibc-1.0.34'
    make: *** [package/uclibc/uclibc.mk:458: /home/raphael/github/ftcommunity-TXT/buildroot-rootfs/output/build/uclibc-1.0.34/.stamp_dotconfig] Error 2
    make: *** Waiting for unfinished jobs....

The root cause is that uclibc sets;

    UCLIBC_KCONFIG_OPTS = $(UCLIBC_MAKE_FLAGS) [...]

with:

    UCLIBC_MAKE_FLAGS = [...] HOSTCC="$(HOSTCC)"

And then the kconfig-package infra calls to the configurators,
menuconfig, xconfig et al, but also olddefconfig et al.. with:

    [...] $($(1)_MAKE) [...] $(PKG_KCONFIG_COMMON_OPTS) $($(1)_KCONFIG_OPTS) [...]

with (note a latent bug in there, will be fixed in another patch):

    PKG_KCONFIG_COMMON_OPTS = HOSTCC=$(HOSTCC_NOCCACHE)

So, a HOSTCC as set by a package will always win onver the one set by
the infra, which is exactly what we want.

But in this case, uclibc sets HOSTCC so that it can build its host tools
needed during the build, and in doing so uses the ccache-enabled host c
compiler. Which might not yet be available for the kconfig-package infra
to generate the .config file.

We had a similar (non-)issue for the linux package, which was fixed in
commit 71a31b2357 (linux: use HOSTCC_NOCCACHE as kconfig HOSTCC).

But here, uclibc does not have the toolchain in its dependencies (as said
earlier, uclibc *is* part of the toolchain).

Since the host compiler is only used to build very few files to generate
the simple executable needed to generate the .config file, doing without
the ccache-enabled host compiler will be amply enough.

So, we override HOSTCC in UCLIBC_KCONFIG_OPTS, to use the non-cached
host compiler.

Note that, in a first approximation, one would be tempted to change the
ordering in the kconfig-package infra:

        $($(1)_KCONFIG_OPTS) $(PKG_KCONFIG_COMMON_OPTS)

so that the non-cached HOSTCC always wins over the cached one. But this
would be incorrect, in cases where the package really needs to override
HOSTCC; indeed we want the package-provided values to always win over
the default ones providing by the infra.

Reported-by: Raphael Jacob <r.jacob2002@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 689fe66100)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-09-01 20:34:24 +02:00
177 changed files with 2515 additions and 797 deletions
+2 -2
View File
@@ -4,7 +4,7 @@
# It needs to be regenerated every time a defconfig is added, using
# "make .gitlab-ci.yml".
image: buildroot/base:20191027.2027
image: buildroot/base:20200814.2228
.check_base:
rules:
@@ -28,7 +28,7 @@ check-flake8:
- find * -type f -print0 | xargs -0 file | grep 'Python script' | cut -d':' -f1 >> files.txt
- sort -u files.txt | tee files.processed
script:
- python -m flake8 --statistics --count --max-line-length=132 $(cat files.processed)
- python3 -m flake8 --statistics --count --max-line-length=132 $(cat files.processed)
after_script:
- wc -l files.processed
+2 -2
View File
@@ -4,7 +4,7 @@
# It needs to be regenerated every time a defconfig is added, using
# "make .gitlab-ci.yml".
image: buildroot/base:20191027.2027
image: buildroot/base:20200814.2228
.check_base:
rules:
@@ -28,7 +28,7 @@ check-flake8:
- find * -type f -print0 | xargs -0 file | grep 'Python script' | cut -d':' -f1 >> files.txt
- sort -u files.txt | tee files.processed
script:
- python -m flake8 --statistics --count --max-line-length=132 $(cat files.processed)
- python3 -m flake8 --statistics --count --max-line-length=132 $(cat files.processed)
after_script:
- wc -l files.processed
+51
View File
@@ -1,3 +1,54 @@
2020.05.3, released October 12th, 2020
Important / security related fixes.
meson: Correct SDK cross-compilation.conf file when
per-package builds were used to build SDK.
systemd: Use /run rather than /var/run for PID files in units.
Toolchain: use Secure-PLT rather than BSS-PLT for PowerPC 32.
Fakeroot scripts (BR2_ROOTFS_POST_FAKEROOT_SCRIPT) are now run
after all finalization hooks (including pre-rootfs) to ensure
they can override any late configuration done by packages.
support/script/pycompile: Rework logic to ensure .pyc files
contain absolute target paths, fixing code inspection at
runtime when executed with cwd != '/'.
support/scripts/setlocalversion: Correct Mercurial output to
match behaviour with Git.
support/scripts/apply-patches.sh: Use patch
--no-backup-if-mismatch, so we no longer blindly have to
remove *.orig files after patching, fixing issues with
packages containing such files.
Updated/fixed packages: alsa-utils, apparmor, avahi,
bandwidthd, barebox, bash, bison, brotli, busybox, cifs-utils,
cryptsetup, cups, dhcpcd, dhcpdump, docker-cli, docker-engine,
ecryptfs-utils, efl, fail2ban, freetype, gcc, gdb,
ghostscript, gnutls, go, graphite2, gst1-plugins-base,
gst1-plugins-ugly, imagemagick, ipmitool, jbig2dec, libhtp,
libraw, libssh, libxml2, libxml-parser-perl, linux-headers,
localedef, lua, mbedtls, memcached, mesa3d, meson, minidlna,
mongodb, nginx, nodejs, nss-pam-ldapd, openvmtools,
paho-mqtt-c, php, postgresql, python, python-aenum,
python-django, python-engineio, python-fire, python-pymodbus,
python-scapy, python-semver, python-sentry-sdk,
python-socketio, python-texttable, python-tinyrpc,
python-txtorcon, python3, qt5base, rsh-redone, runc, samba4,
strace, supertux, suricata, systemd, uclibc, usb_modeswitch,
vlc, vsftpd, wayland-protocols, wireguard-linux-compat,
wireshark, wlroots, wolfssl, xserver_xorg-server, ympd,
zeromq, zstd
Issues resolved (http://bugs.uclibc.org):
#12911: usb_modeswitch installation race condition
#13251: cryptsetup does not work on branch 2020.02 following..
2020.05.2, released August 29th, 2020
Important / security related fixes.
+4
View File
@@ -232,6 +232,8 @@ N: Anthony Viallard <viallard@syscom-instruments.com>
F: package/gnuplot/
N: Antoine Ténart <antoine.tenart@bootlin.com>
F: package/libselinux/
F: package/refpolicy/
F: package/wf111/
N: Antony Pavlov <antonynpavlov@gmail.com>
@@ -1888,6 +1890,7 @@ F: package/tpm-tools/
F: package/trousers/
N: Norbert Lange <nolange79@gmail.com>
F: package/systemd/
F: package/tcf-agent/
N: Nylon Chen <nylon7@andestech.com>
@@ -2220,6 +2223,7 @@ F: package/davfs2/
N: Ryan Barnett <ryan.barnett@rockwellcollins.com>
F: package/atftp/
F: package/c-periphery/
F: package/miraclecast/
F: package/python-pysnmp/
F: package/python-pysnmp-mibs/
+2 -2
View File
@@ -92,9 +92,9 @@ all:
.PHONY: all
# Set and export the version string
export BR2_VERSION := 2020.05.2
export BR2_VERSION := 2020.05.3
# Actual time the release is cut (for reproducible builds)
BR2_VERSION_EPOCH = 1598724000
BR2_VERSION_EPOCH = 1602525000
# Save running make version since it's clobbered by the make package
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
+13 -9
View File
@@ -88,13 +88,6 @@ $(1)_KCONFIG_DEPENDENCIES = \
$(BR2_BISON_HOST_DEPENDENCY) \
$(BR2_FLEX_HOST_DEPENDENCY)
ifeq ($$(BR2_TARGET_$(1)_BAREBOXENV),y)
define $(1)_BUILD_BAREBOXENV_CMDS
$$(TARGET_CC) $$(TARGET_CFLAGS) $$(TARGET_LDFLAGS) -o $$(@D)/bareboxenv \
$$(@D)/scripts/bareboxenv.c
endef
endif
ifeq ($$(BR2_TARGET_$(1)_CUSTOM_ENV),y)
$(1)_ENV_NAME = $$(notdir $$(call qstrip,\
$$(BR2_TARGET_$(1)_CUSTOM_ENV_PATH)))
@@ -109,12 +102,23 @@ endef
endif
ifneq ($$($(1)_CUSTOM_EMBEDDED_ENV_PATH),)
define $(1)_KCONFIG_FIXUP_CMDS
define $(1)_KCONFIG_FIXUP_CUSTOM_EMBEDDED_ENV_PATH
$$(call KCONFIG_ENABLE_OPT,CONFIG_DEFAULT_ENVIRONMENT)
$$(call KCONFIG_SET_OPT,CONFIG_DEFAULT_ENVIRONMENT_PATH,"$$($(1)_CUSTOM_EMBEDDED_ENV_PATH)")
endef
endif
define $(1)_KCONFIG_FIXUP_BAREBOXENV
$$(if $$(BR2_TARGET_$(1)_BAREBOXENV),\
$$(call KCONFIG_ENABLE_OPT,CONFIG_BAREBOXENV_TARGET),\
$$(call KCONFIG_DISABLE_OPT,CONFIG_BAREBOXENV_TARGET))
endef
define $(1)_KCONFIG_FIXUP_CMDS
$$($(1)_KCONFIG_FIXUP_CUSTOM_EMBEDDED_ENV_PATH)
$$($(1)_KCONFIG_FIXUP_BAREBOXENV)
endef
define $(1)_BUILD_CMDS
$$($(1)_BUILD_BAREBOXENV_CMDS)
$$(TARGET_MAKE_ENV) $$(MAKE) $$($(1)_MAKE_FLAGS) -C $$(@D)
@@ -136,7 +140,7 @@ endef
ifeq ($$(BR2_TARGET_$(1)_BAREBOXENV),y)
define $(1)_INSTALL_TARGET_CMDS
cp $$(@D)/bareboxenv $$(TARGET_DIR)/usr/bin
cp $$(@D)/scripts/bareboxenv-target $$(TARGET_DIR)/usr/bin/bareboxenv
endef
endif
+14 -4
View File
@@ -10,9 +10,9 @@ that is known to work. You are welcome to add support for other boards
to Buildroot too.
To do so, you need to create a normal Buildroot configuration that
builds a basic system for the hardware: toolchain, kernel, bootloader,
filesystem and a simple BusyBox-only userspace. No specific package
should be selected: the configuration should be as minimal as
builds a basic system for the hardware: (internal) toolchain, kernel,
bootloader, filesystem and a simple BusyBox-only userspace. No specific
package should be selected: the configuration should be as minimal as
possible, and should only build a working basic BusyBox system for the
target platform. You can of course use more complicated configurations
for your internal projects, but the Buildroot project will only
@@ -22,7 +22,17 @@ selections are highly application-specific.
Once you have a known working configuration, run +make
savedefconfig+. This will generate a minimal +defconfig+ file at the
root of the Buildroot source tree. Move this file into the +configs/+
directory, and rename it +<boardname>_defconfig+.
directory, and rename it +<boardname>_defconfig+. If the configuration
is a bit more complicated, it is nice to manually reformat it and
separate it into sections, with a comment before each section. Typical
sections are _Architecture_, _Toolchain options_ (typically just linux
headers version), _Firmware_, _Bootloader_, _Kernel_, and _Filesystem_.
Always use fixed versions or commit hashes for the different
components, not the "latest" version. For example, set
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y+ and
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE+ to the kernel version you tested
with.
It is recommended to use as much as possible upstream versions of the
Linux kernel and bootloaders, and to use as much as possible default
+31
View File
@@ -371,6 +371,37 @@ in the following cases:
* whenever you feel it will help presenting your work, your choices,
the review process, etc.
==== Patches for maintenance branches
When fixing bugs on a maintenance branch, bugs should be fixed on the
master branch first. The commit log for such a patch may then contain a
post-commit note specifying what branches are affected:
----
package/foo: fix stuff
Signed-off-by: Your Real Name <your@email.address>
---
Backport to: 2020.02.x, 2020.05.x
(2020.08.x not affected as the version was bumped)
----
Those changes will then be backported by a maintainer to the affected
branches.
However, some bugs may apply only to a specific release, for example
because it is using an older version of a package. In that case, patches
should be based off the maintenance branch, and the patch subject prefix
must include the maintenance branch name (for example "[PATCH 2020.02.x]").
This can be done with the +git format-patch+ flag +--subject-prefix+:
---------------------
$ git format-patch --subject-prefix "PATCH 2020.02.x" \
-M -s -o outgoing origin/2020.02.x
---------------------
Then send the patches with +git send-email+, as described above.
==== Patch revision changelog
When improvements are requested, the new revision of each commit
+2 -2
View File
@@ -163,11 +163,11 @@ $$(BINARIES_DIR)/$$(ROOTFS_$(2)_FINAL_IMAGE_NAME): $$(ROOTFS_$(2)_DEPENDENCIES)
echo "chown -h -R 0:0 $$(TARGET_DIR)" >> $$(FAKEROOT_SCRIPT)
PATH=$$(BR_PATH) $$(TOPDIR)/support/scripts/mkusers $$(ROOTFS_FULL_USERS_TABLE) $$(TARGET_DIR) >> $$(FAKEROOT_SCRIPT)
echo "$$(HOST_DIR)/bin/makedevs -d $$(ROOTFS_FULL_DEVICES_TABLE) $$(TARGET_DIR)" >> $$(FAKEROOT_SCRIPT)
$$(foreach hook,$$(ROOTFS_PRE_CMD_HOOKS),\
$$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))
$$(foreach s,$$(call qstrip,$$(BR2_ROOTFS_POST_FAKEROOT_SCRIPT)),\
echo "echo '$$(TERM_BOLD)>>> Executing fakeroot script $$(s)$$(TERM_RESET)'" >> $$(FAKEROOT_SCRIPT); \
echo $$(EXTRA_ENV) $$(s) $$(TARGET_DIR) $$(BR2_ROOTFS_POST_SCRIPT_ARGS) >> $$(FAKEROOT_SCRIPT)$$(sep))
$$(foreach hook,$$(ROOTFS_PRE_CMD_HOOKS),\
$$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))
$$(foreach hook,$$(ROOTFS_$(2)_PRE_GEN_HOOKS),\
$$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))
+5 -5
View File
@@ -1,12 +1,12 @@
# From https://www.kernel.org/pub/linux/kernel/v5.x/sha256sums.asc
sha256 62532fb257fe98a68601e4ca36bd3d34300b4f26f447bf495df4693442601ee8 linux-5.6.19.tar.xz
sha256 1448334371fb52f511255726832464d33877a210a7350260fb18eb225ae211eb linux-5.5.19.tar.xz
sha256 86f13d050f6389c5a1727fa81510ee8eceac795297bc584f443354609617fea4 linux-5.4.61.tar.xz
sha256 c0b3d8085c5ba235df38b00b740e053659709e8a5ca21957a239f6bc22c45007 linux-5.4.70.tar.xz
# From https://www.kernel.org/pub/linux/kernel/v4.x/sha256sums.asc
sha256 6994dda988e9fb7f5661cf80ff42039016cb0044acd39f830937ba0220296388 linux-4.4.234.tar.xz
sha256 756f8544d261e8117716c911261690e4fb5491e14c1f4612c83e0986453782e3 linux-4.9.234.tar.xz
sha256 394f28798670240baacd9e2cce521fbd79f8da5e1fc191695b0e11381445a021 linux-4.14.195.tar.xz
sha256 6912db1c242d72ce9c8d4ff71982ac935d97690822af5c1c6ec22412b31667a4 linux-4.19.142.tar.xz
sha256 067814035c17e77dee84076dcc06a95eb675344cd926b7b79a16b80fee593364 linux-4.4.238.tar.xz
sha256 b1eaf60b771ec4df0546d2b7539e164355008ea2f680a0642ae430e9cb134a3f linux-4.9.238.tar.xz
sha256 5d404a0224a34b5379f1871cc46825487d557c2660459d2b5c3cd4871d699a38 linux-4.14.200.tar.xz
sha256 f2f709ef086a4d8cb3c15a857daa44dfecf1b88d7d7c53c980fb180f6dccbace linux-4.19.150.tar.xz
# Locally computed
sha256 c20f9014b89ea3e27f55f1d407aa5a4724ed38ac520c197291e9d644f164c43a linux-cip-4.19.132-cip30.tar.gz
sha256 81dd791d9ad6c3fddaeaffc6d7d8df0e13831283a5fe494c437ac7820d79ca39 linux-cip-4.19.132-cip30-rt12.tar.gz
+2 -2
View File
@@ -90,10 +90,10 @@ define ALSA_UTILS_INSTALL_INIT_SYSTEMD
$(TARGET_DIR)/usr/lib/systemd/system/alsa-restore.service
$(INSTALL) -D -m 0644 $(@D)/alsactl/alsa-state.service \
$(TARGET_DIR)/usr/lib/systemd/system/alsa-state.service
mkdir $(TARGET_DIR)/usr/lib/systemd/system/alsa-restore.service.d
$(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/lib/systemd/system/alsa-restore.service.d
printf '[Install]\nWantedBy=multi-user.target\n' \
>$(TARGET_DIR)/usr/lib/systemd/system/alsa-restore.service.d/buildroot-enable.conf
mkdir $(TARGET_DIR)/usr/lib/systemd/system/alsa-state.service.d
$(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/lib/systemd/system/alsa-state.service.d
printf '[Install]\nWantedBy=multi-user.target\n' \
>$(TARGET_DIR)/usr/lib/systemd/system/alsa-state.service.d/buildroot-enable.conf;
endef
+9
View File
@@ -53,6 +53,15 @@ ifeq ($(BR2_PACKAGE_APACHE),y)
APPARMOR_DEPENDENCIES += apache
APPARMOR_TOOLS += changehat/mod_apparmor
APPARMOR_MAKE_OPTS += APXS=$(STAGING_DIR)/usr/bin/apxs
ifeq ($(BR2_PER_PACKAGE_DIRECTORIES),y)
define APPARMOR_FIXUP_APXS
$(SED) "s@$(PER_PACKAGE_DIR)/[^/]\+/@$(PER_PACKAGE_DIR)/apparmor/@g" \
$(STAGING_DIR)/usr/bin/apxs \
$(STAGING_DIR)/usr/build/config_vars.mk
endef
APPARMOR_POST_CONFIGURE_HOOKS += APPARMOR_FIXUP_APXS
endif
endif
define APPARMOR_BUILD_CMDS
+1
View File
@@ -35,6 +35,7 @@ AVAHI_CONF_OPTS = \
--disable-mono \
--disable-monodoc \
--disable-stack-protector \
--disable-introspection \
--with-distro=none \
--disable-manpages \
$(if $(BR2_PACKAGE_AVAHI_AUTOIPD),--enable,--disable)-autoipd \
+1 -1
View File
@@ -5,7 +5,7 @@ After=network.target
[Service]
Type=forking
ExecStart=/usr/bin/bandwidthd
PIDFile=/var/run/bandwidthd.pid
PIDFile=/run/bandwidthd.pid
[Install]
WantedBy=multi-user.target
+293
View File
@@ -0,0 +1,293 @@
From https://ftp.gnu.org/gnu/bash/bash-5.0-patches/bash55-017
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
BASH PATCH REPORT
=================
Bash-Release: 5.0
Patch-ID: bash50-017
Bug-Reported-by: Valentin Lab <valentin.lab@kalysto.org>
Bug-Reference-ID: <ab981b9c-60a5-46d0-b7e6-a6d88b80df50@kalysto.org>
Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-bash/2020-03/msg00062.html
Bug-Description:
There were cases where patch 16 reaped process substitution file descriptors
(or FIFOs) and processes to early. This is a better fix for the problem that
bash50-016 attempted to solve.
Patch (apply with `patch -p0'):
*** bash-5.0-patched/subst.c 2019-08-29 11:16:49.000000000 -0400
--- b/subst.c 2020-04-02 16:24:19.000000000 -0400
***************
*** 5337,5341 ****
}
! char *
copy_fifo_list (sizep)
int *sizep;
--- b/5337,5341 ----
}
! void *
copy_fifo_list (sizep)
int *sizep;
***************
*** 5343,5347 ****
if (sizep)
*sizep = 0;
! return (char *)NULL;
}
--- b/5343,5347 ----
if (sizep)
*sizep = 0;
! return (void *)NULL;
}
***************
*** 5409,5414 ****
if (fifo_list[i].file)
{
! fifo_list[j].file = fifo_list[i].file;
! fifo_list[j].proc = fifo_list[i].proc;
j++;
}
--- b/5409,5419 ----
if (fifo_list[i].file)
{
! if (i != j)
! {
! fifo_list[j].file = fifo_list[i].file;
! fifo_list[j].proc = fifo_list[i].proc;
! fifo_list[i].file = (char *)NULL;
! fifo_list[i].proc = 0;
! }
j++;
}
***************
*** 5426,5433 ****
void
close_new_fifos (list, lsize)
! char *list;
int lsize;
{
int i;
if (list == 0)
--- b/5431,5439 ----
void
close_new_fifos (list, lsize)
! void *list;
int lsize;
{
int i;
+ char *plist;
if (list == 0)
***************
*** 5437,5442 ****
}
! for (i = 0; i < lsize; i++)
! if (list[i] == 0 && i < fifo_list_size && fifo_list[i].proc != -1)
unlink_fifo (i);
--- b/5443,5448 ----
}
! for (plist = (char *)list, i = 0; i < lsize; i++)
! if (plist[i] == 0 && i < fifo_list_size && fifo_list[i].proc != -1)
unlink_fifo (i);
***************
*** 5560,5568 ****
}
! char *
copy_fifo_list (sizep)
int *sizep;
{
! char *ret;
if (nfds == 0 || totfds == 0)
--- b/5566,5574 ----
}
! void *
copy_fifo_list (sizep)
int *sizep;
{
! void *ret;
if (nfds == 0 || totfds == 0)
***************
*** 5570,5579 ****
if (sizep)
*sizep = 0;
! return (char *)NULL;
}
if (sizep)
*sizep = totfds;
! ret = (char *)xmalloc (totfds * sizeof (pid_t));
return (memcpy (ret, dev_fd_list, totfds * sizeof (pid_t)));
}
--- b/5576,5585 ----
if (sizep)
*sizep = 0;
! return (void *)NULL;
}
if (sizep)
*sizep = totfds;
! ret = xmalloc (totfds * sizeof (pid_t));
return (memcpy (ret, dev_fd_list, totfds * sizeof (pid_t)));
}
***************
*** 5648,5655 ****
void
close_new_fifos (list, lsize)
! char *list;
int lsize;
{
int i;
if (list == 0)
--- b/5654,5662 ----
void
close_new_fifos (list, lsize)
! void *list;
int lsize;
{
int i;
+ pid_t *plist;
if (list == 0)
***************
*** 5659,5664 ****
}
! for (i = 0; i < lsize; i++)
! if (list[i] == 0 && i < totfds && dev_fd_list[i])
unlink_fifo (i);
--- b/5666,5671 ----
}
! for (plist = (pid_t *)list, i = 0; i < lsize; i++)
! if (plist[i] == 0 && i < totfds && dev_fd_list[i])
unlink_fifo (i);
*** bash-5.0-patched/subst.h 2018-10-21 18:46:09.000000000 -0400
--- b/subst.h 2020-04-02 16:29:28.000000000 -0400
***************
*** 274,280 ****
extern void unlink_fifo __P((int));
! extern char *copy_fifo_list __P((int *));
! extern void unlink_new_fifos __P((char *, int));
! extern void close_new_fifos __P((char *, int));
extern void clear_fifo_list __P((void));
--- b/274,279 ----
extern void unlink_fifo __P((int));
! extern void *copy_fifo_list __P((int *));
! extern void close_new_fifos __P((void *, int));
extern void clear_fifo_list __P((void));
*** bash-5.0-patched/execute_cmd.c 2020-02-06 20:16:48.000000000 -0500
--- b/execute_cmd.c 2020-04-02 17:00:10.000000000 -0400
***************
*** 565,569 ****
#if defined (PROCESS_SUBSTITUTION)
volatile int ofifo, nfifo, osize, saved_fifo;
! volatile char *ofifo_list;
#endif
--- b/565,569 ----
#if defined (PROCESS_SUBSTITUTION)
volatile int ofifo, nfifo, osize, saved_fifo;
! volatile void *ofifo_list;
#endif
***************
*** 751,760 ****
# endif
! if (variable_context != 0) /* XXX - also if sourcelevel != 0? */
{
ofifo = num_fifos ();
ofifo_list = copy_fifo_list ((int *)&osize);
begin_unwind_frame ("internal_fifos");
! add_unwind_protect (xfree, ofifo_list);
saved_fifo = 1;
}
--- b/751,762 ----
# endif
! /* XXX - also if sourcelevel != 0? */
! if (variable_context != 0)
{
ofifo = num_fifos ();
ofifo_list = copy_fifo_list ((int *)&osize);
begin_unwind_frame ("internal_fifos");
! if (ofifo_list)
! add_unwind_protect (xfree, ofifo_list);
saved_fifo = 1;
}
***************
*** 1100,1123 ****
nfifo = num_fifos ();
if (nfifo > ofifo)
! close_new_fifos ((char *)ofifo_list, osize);
free ((void *)ofifo_list);
discard_unwind_frame ("internal_fifos");
}
- # if defined (HAVE_DEV_FD)
- /* Reap process substitutions at the end of loops */
- switch (command->type)
- {
- case cm_while:
- case cm_until:
- case cm_for:
- case cm_group:
- # if defined (ARITH_FOR_COMMAND)
- case cm_arith_for:
- # endif
- reap_procsubs ();
- default:
- break;
- }
- # endif /* HAVE_DEV_FD */
#endif
--- b/1102,1109 ----
nfifo = num_fifos ();
if (nfifo > ofifo)
! close_new_fifos ((void *)ofifo_list, osize);
free ((void *)ofifo_list);
discard_unwind_frame ("internal_fifos");
}
#endif
*** bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400
***************
*** 26,30 ****
looks for to find the patch level (for the sccs version string). */
! #define PATCHLEVEL 16
#endif /* _PATCHLEVEL_H_ */
--- b/26,30 ----
looks for to find the patch level (for the sccs version string). */
! #define PATCHLEVEL 17
#endif /* _PATCHLEVEL_H_ */
+49
View File
@@ -0,0 +1,49 @@
From https://ftp.gnu.org/gnu/bash/bash-5.0-patches/bash55-018
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
BASH PATCH REPORT
=================
Bash-Release: 5.0
Patch-ID: bash50-018
Bug-Reported-by: oguzismailuysal@gmail.com
Bug-Reference-ID:
Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-bash/2019-10/msg00098.html
Bug-Description:
In certain cases, bash does not perform quoted null removal on patterns
that are used as part of word expansions such as ${parameter##pattern}, so
empty patterns are treated as non-empty.
Patch (apply with `patch -p0'):
*** bash-5.0.17/subst.c 2020-04-02 17:14:58.000000000 -0400
--- b/subst.c 2020-07-09 15:28:19.000000000 -0400
***************
*** 5113,5116 ****
--- b/5113,5118 ----
(int *)NULL, (int *)NULL)
: (WORD_LIST *)0;
+ if (l)
+ word_list_remove_quoted_nulls (l);
pat = string_list (l);
dispose_words (l);
*** bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400
***************
*** 26,30 ****
looks for to find the patch level (for the sccs version string). */
! #define PATCHLEVEL 17
#endif /* _PATCHLEVEL_H_ */
--- b/26,30 ----
looks for to find the patch level (for the sccs version string). */
! #define PATCHLEVEL 18
#endif /* _PATCHLEVEL_H_ */
+1
View File
@@ -13,5 +13,6 @@ BISON_LICENSE_FILES = COPYING
BISON_MAKE = $(MAKE1)
HOST_BISON_DEPENDENCIES = host-m4
HOST_BISON_CONF_OPTS = --enable-relocatable
HOST_BISON_CONF_ENV = ac_cv_libtextstyle=no
$(eval $(host-autotools-package))
@@ -1,6 +1,6 @@
From 7289e5a378ba13801996a84d89d8fe95c3fc4c11 Mon Sep 17 00:00:00 2001
From 6cb16322decd643fed9de332d9cda77f7738b7af Mon Sep 17 00:00:00 2001
From: Adrian Perez de Castro <aperez@igalia.com>
Date: Mon, 26 Mar 2018 19:08:31 +0100
Date: Mon, 7 Sep 2020 12:14:22 +0300
Subject: [PATCH] CMake: Allow using BUILD_SHARED_LIBS to choose static/shared
libs
@@ -18,16 +18,16 @@ This way, the following will both work as expected:
This is helpful for distributions which need (or want) to build only
static libraries.
---
CMakeLists.txt | 42 ++++++++++++++----------------------------
c/fuzz/test_fuzzer.sh | 6 +++---
2 files changed, 17 insertions(+), 31 deletions(-)
Signed-off-by: Adrian Perez de Castro <aperez@igalia.com>
Upstream-Status: Submitted [https://github.com/google/brotli/pull/655]
[Upstream status: https://github.com/google/brotli/pull/655]
---
CMakeLists.txt | 46 ++++++++++++++-----------------------------
c/fuzz/test_fuzzer.sh | 6 +++---
2 files changed, 18 insertions(+), 34 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index fc45f80..3f87f13 100644
index 4ff3401..f889311 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -6,6 +6,8 @@ cmake_minimum_required(VERSION 2.8.6)
@@ -36,10 +36,10 @@ index fc45f80..3f87f13 100644
+option(BUILD_SHARED_LIBS "Build shared libraries" ON)
+
# If Brotli is being bundled in another project, we don't want to
# install anything. However, we want to let people override this, so
# we'll use the BROTLI_BUNDLED_MODE variable to let them do that; just
@@ -114,10 +116,6 @@ set(BROTLI_LIBRARIES_CORE brotlienc brotlidec brotlicommon)
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
message(STATUS "Setting build type to Release as none was specified.")
set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Choose the type of build." FORCE)
@@ -137,10 +139,6 @@ set(BROTLI_LIBRARIES_CORE brotlienc brotlidec brotlicommon)
set(BROTLI_LIBRARIES ${BROTLI_LIBRARIES_CORE} ${LIBM_LIBRARY})
mark_as_advanced(BROTLI_LIBRARIES)
@@ -50,14 +50,20 @@ index fc45f80..3f87f13 100644
if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
add_definitions(-DOS_LINUX)
elseif(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
@@ -137,24 +135,22 @@ endfunction()
transform_sources_list("scripts/sources.lst" "${CMAKE_CURRENT_BINARY_DIR}/sources.lst.cmake")
@@ -161,29 +159,25 @@ transform_sources_list("scripts/sources.lst" "${CMAKE_CURRENT_BINARY_DIR}/source
include("${CMAKE_CURRENT_BINARY_DIR}/sources.lst.cmake")
-add_library(brotlicommon SHARED ${BROTLI_COMMON_C})
-add_library(brotlidec SHARED ${BROTLI_DEC_C})
-add_library(brotlienc SHARED ${BROTLI_ENC_C})
-
if(BROTLI_EMSCRIPTEN)
- set(BROTLI_SHARED_LIBS "")
-else()
- set(BROTLI_SHARED_LIBS brotlicommon brotlidec brotlienc)
- add_library(brotlicommon SHARED ${BROTLI_COMMON_C})
- add_library(brotlidec SHARED ${BROTLI_DEC_C})
- add_library(brotlienc SHARED ${BROTLI_ENC_C})
+ set(BUILD_SHARED_LIBS OFF)
endif()
-set(BROTLI_STATIC_LIBS brotlicommon-static brotlidec-static brotlienc-static)
-add_library(brotlicommon-static STATIC ${BROTLI_COMMON_C})
-add_library(brotlidec-static STATIC ${BROTLI_DEC_C})
-add_library(brotlienc-static STATIC ${BROTLI_ENC_C})
@@ -68,27 +74,27 @@ index fc45f80..3f87f13 100644
# Older CMake versions does not understand INCLUDE_DIRECTORIES property.
include_directories(${BROTLI_INCLUDE_DIRS})
-foreach(lib IN LISTS BROTLI_SHARED_LIBS)
- target_compile_definitions(${lib} PUBLIC "BROTLI_SHARED_COMPILATION" )
- string(TOUPPER "${lib}" LIB)
- set_target_properties (${lib} PROPERTIES DEFINE_SYMBOL "${LIB}_SHARED_COMPILATION")
-endforeach()
+if(BUILD_SHARED_LIBS)
+ foreach(lib brotlicommon brotlidec brotlienc)
+ target_compile_definitions(${lib} PUBLIC "BROTLI_SHARED_COMPILATION" )
+ string(TOUPPER "${lib}" LIB)
+ set_target_properties (${lib} PROPERTIES DEFINE_SYMBOL "${LIB}_SHARED_COMPILATION" )
+ set_target_properties (${lib} PROPERTIES DEFINE_SYMBOL "${LIB}_SHARED_COMPILATION")
+ endforeach()
+endif()
+
foreach(lib brotlicommon brotlidec brotlienc)
- target_compile_definitions(${lib} PUBLIC "BROTLI_SHARED_COMPILATION" )
- string(TOUPPER "${lib}" LIB)
- set_target_properties (${lib} PROPERTIES DEFINE_SYMBOL "${LIB}_SHARED_COMPILATION" )
-endforeach()
-
-foreach(lib brotlicommon brotlidec brotlienc brotlicommon-static brotlidec-static brotlienc-static)
-foreach(lib IN LISTS BROTLI_SHARED_LIBS BROTLI_STATIC_LIBS)
+foreach(lib brotlicommon brotlidec brotlienc)
target_link_libraries(${lib} ${LIBM_LIBRARY})
set_property(TARGET ${lib} APPEND PROPERTY INCLUDE_DIRECTORIES ${BROTLI_INCLUDE_DIRS})
set_target_properties(${lib} PROPERTIES
@@ -167,9 +163,6 @@ endforeach()
target_link_libraries(brotlidec brotlicommon)
@@ -200,9 +194,6 @@ target_link_libraries(brotlidec brotlicommon)
target_link_libraries(brotlienc brotlicommon)
endif()
-target_link_libraries(brotlidec-static brotlicommon-static)
-target_link_libraries(brotlienc-static brotlicommon-static)
@@ -96,7 +102,7 @@ index fc45f80..3f87f13 100644
# For projects stuck on older versions of CMake, this will set the
# BROTLI_INCLUDE_DIRS and BROTLI_LIBRARIES variables so they still
# have a relatively easy way to use Brotli:
@@ -183,7 +176,7 @@ endif()
@@ -216,7 +207,7 @@ endif()
# Build the brotli executable
add_executable(brotli ${BROTLI_CLI_C})
@@ -104,8 +110,8 @@ index fc45f80..3f87f13 100644
+target_link_libraries(brotli ${BROTLI_LIBRARIES})
# Installation
if(NOT BROTLI_BUNDLED_MODE)
@@ -199,13 +192,6 @@ if(NOT BROTLI_BUNDLED_MODE)
if(NOT BROTLI_EMSCRIPTEN)
@@ -233,13 +224,6 @@ if(NOT BROTLI_BUNDLED_MODE)
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
)
@@ -119,26 +125,6 @@ index fc45f80..3f87f13 100644
install(
DIRECTORY ${BROTLI_INCLUDE_DIRS}/brotli
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}"
diff --git a/c/fuzz/test_fuzzer.sh b/c/fuzz/test_fuzzer.sh
index 9985194..4b99947 100755
--- a/c/fuzz/test_fuzzer.sh
+++ b/c/fuzz/test_fuzzer.sh
@@ -13,12 +13,12 @@ mkdir bin
cd bin
cmake $BROTLI -DCMAKE_C_COMPILER="$CC" \
- -DBUILD_TESTING=OFF -DENABLE_SANITIZER=address
-make -j$(nproc) brotlidec-static
+ -DBUILD_TESTING=OFF -DBUILD_SHARED_LIBS=OFF -DENABLE_SANITIZER=address
+make -j$(nproc) brotlidec
${CC} -o run_decode_fuzzer -std=c99 -fsanitize=address -I$SRC/include \
$SRC/fuzz/decode_fuzzer.c $SRC/fuzz/run_decode_fuzzer.c \
- ./libbrotlidec-static.a ./libbrotlicommon-static.a
+ ./libbrotlidec.a ./libbrotlicommon.a
mkdir decode_corpora
unzip $BROTLI/java/org/brotli/integration/fuzz_data.zip -d decode_corpora
--
2.19.1
2.28.0
@@ -0,0 +1,51 @@
From 09b0992b6acb7faa6fd3b23f9bc036ea117230fc Mon Sep 17 00:00:00 2001
From: Eugene Kliuchnikov <eustas.ru@gmail.com>
Date: Wed, 2 Sep 2020 11:38:26 +0200
Subject: [PATCH] Revert "Add runtime linker path to pkg-config files (#740)"
(#838)
This reverts commit 31754d4ffce14153b5c2addf7a11019ec23f51c1.
[Retrieved from:
https://github.com/google/brotli/commit/09b0992b6acb7faa6fd3b23f9bc036ea117230fc]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
scripts/libbrotlicommon.pc.in | 2 +-
scripts/libbrotlidec.pc.in | 2 +-
scripts/libbrotlienc.pc.in | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/scripts/libbrotlicommon.pc.in b/scripts/libbrotlicommon.pc.in
index 10ca969e..2a8cf7a3 100644
--- a/scripts/libbrotlicommon.pc.in
+++ b/scripts/libbrotlicommon.pc.in
@@ -7,5 +7,5 @@ Name: libbrotlicommon
URL: https://github.com/google/brotli
Description: Brotli common dictionary library
Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -R${libdir} -lbrotlicommon
+Libs: -L${libdir} -lbrotlicommon
Cflags: -I${includedir}
diff --git a/scripts/libbrotlidec.pc.in b/scripts/libbrotlidec.pc.in
index e7c3124f..6f8ef2e4 100644
--- a/scripts/libbrotlidec.pc.in
+++ b/scripts/libbrotlidec.pc.in
@@ -7,6 +7,6 @@ Name: libbrotlidec
URL: https://github.com/google/brotli
Description: Brotli decoder library
Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -R${libdir} -lbrotlidec
+Libs: -L${libdir} -lbrotlidec
Requires.private: libbrotlicommon >= 1.0.2
Cflags: -I${includedir}
diff --git a/scripts/libbrotlienc.pc.in b/scripts/libbrotlienc.pc.in
index 4dd0811b..2098afe2 100644
--- a/scripts/libbrotlienc.pc.in
+++ b/scripts/libbrotlienc.pc.in
@@ -7,6 +7,6 @@ Name: libbrotlienc
URL: https://github.com/google/brotli
Description: Brotli encoder library
Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -R${libdir} -lbrotlienc
+Libs: -L${libdir} -lbrotlienc
Requires.private: libbrotlicommon >= 1.0.2
Cflags: -I${includedir}
+1 -1
View File
@@ -1,5 +1,5 @@
# Locally generated:
sha512 a82362aa36d2f2094bca0b2808d9de0d57291fb3a4c29d7c0ca0a37e73087ec5ac4df299c8c363e61106fccf2fe7f58b5cf76eb97729e2696058ef43b1d3930a v1.0.7.tar.gz
sha512 b8e2df955e8796ac1f022eb4ebad29532cb7e3aa6a4b6aee91dbd2c7d637eee84d9a144d3e878895bb5e62800875c2c01c8f737a1261020c54feacf9f676b5f5 v1.0.9.tar.gz
# Hash for license files:
sha512 bae78184c2f50f86d8c727826d3982c469454c42b9af81f4ef007e39036434fa894cf5be3bf5fc65b7de2301f0a72d067a8186e303327db8a96bd14867e0a3a8 LICENSE
+1 -1
View File
@@ -4,7 +4,7 @@
#
################################################################################
BROTLI_VERSION = 1.0.7
BROTLI_VERSION = 1.0.9
BROTLI_SOURCE = v$(BROTLI_VERSION).tar.gz
BROTLI_SITE = https://github.com/google/brotli/archive
BROTLI_LICENSE = MIT
+3 -3
View File
@@ -42,19 +42,19 @@ case "$1" in
rm -f $TMPFILE
if [ -x /usr/sbin/avahi-autoipd ]; then
/usr/sbin/avahi-autoipd -k $interface
/usr/sbin/avahi-autoipd -c $interface && /usr/sbin/avahi-autoipd -k $interface
fi
;;
leasefail|nak)
if [ -x /usr/sbin/avahi-autoipd ]; then
/usr/sbin/avahi-autoipd -wD $interface --no-chroot
/usr/sbin/avahi-autoipd -c $interface || /usr/sbin/avahi-autoipd -wD $interface --no-chroot
fi
;;
renew|bound)
if [ -x /usr/sbin/avahi-autoipd ]; then
/usr/sbin/avahi-autoipd -k $interface
/usr/sbin/avahi-autoipd -c $interface && /usr/sbin/avahi-autoipd -k $interface
fi
/sbin/ifconfig $interface $ip $BROADCAST $NETMASK
if [ -n "$ipv6" ] ; then
+1 -1
View File
@@ -1,5 +1,5 @@
# Locally calculated after checking pgp signature
sha256 92fc29c8e9039637f3344267500f1fa381e2cccd7d10142f0c1676fa575904a7 cifs-utils-6.10.tar.bz2
sha256 b859239a3f204f8220d3e54ed43bf8109e1ef202042dd87ba87492f8878728d9 cifs-utils-6.11.tar.bz2
# Hash for license file:
sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING
+1 -1
View File
@@ -4,7 +4,7 @@
#
################################################################################
CIFS_UTILS_VERSION = 6.10
CIFS_UTILS_VERSION = 6.11
CIFS_UTILS_SOURCE = cifs-utils-$(CIFS_UTILS_VERSION).tar.bz2
CIFS_UTILS_SITE = http://ftp.samba.org/pub/linux-cifs/cifs-utils
CIFS_UTILS_LICENSE = GPL-3.0+
@@ -0,0 +1,512 @@
From 55cf272d275c561459f2c9c3dc943ef7a69c9d4c Mon Sep 17 00:00:00 2001
From: Ondrej Kozina <okozina@redhat.com>
Date: Tue, 14 Apr 2020 17:24:54 +0200
Subject: [PATCH] Avoid name clash with newer json-c library.
This is partial revert of previous commit and also
fixes wrong decision to name our internal helpers with
json_object prefix.
(cherry picked from commit e6a356974330e3ae21579a5737976e9a2aad1b51)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
---
lib/luks2/luks2_internal.h | 8 +++-----
lib/luks2/luks2_json_format.c | 6 +++---
lib/luks2/luks2_json_metadata.c | 18 ++++++++----------
lib/luks2/luks2_keyslot.c | 8 ++++----
lib/luks2/luks2_keyslot_luks2.c | 16 ++++++++--------
lib/luks2/luks2_keyslot_reenc.c | 20 ++++++++++----------
lib/luks2/luks2_luks1_convert.c | 22 +++++++++++-----------
lib/luks2/luks2_reencrypt.c | 16 ++++++++--------
lib/luks2/luks2_segment.c | 12 ++++++------
9 files changed, 61 insertions(+), 65 deletions(-)
diff --git a/lib/luks2/luks2_internal.h b/lib/luks2/luks2_internal.h
index 6a8b8f2a..d2222e84 100644
--- a/lib/luks2/luks2_internal.h
+++ b/lib/luks2/luks2_internal.h
@@ -59,11 +59,9 @@ json_object *LUKS2_get_segments_jobj(struct luks2_hdr *hdr);
void hexprint_base64(struct crypt_device *cd, json_object *jobj,
const char *sep, const char *line_sep);
-#if !(defined JSON_C_VERSION_NUM && JSON_C_VERSION_NUM >= ((13 << 8) | 99))
-uint64_t json_object_get_uint64(json_object *jobj);
-json_object *json_object_new_uint64(uint64_t value);
-#endif
-uint32_t json_object_get_uint32(json_object *jobj);
+uint64_t crypt_jobj_get_uint64(json_object *jobj);
+uint32_t crypt_jobj_get_uint32(json_object *jobj);
+json_object *crypt_jobj_new_uint64(uint64_t value);
int json_object_object_add_by_uint(json_object *jobj, unsigned key, json_object *jobj_val);
void json_object_object_del_by_uint(json_object *jobj, unsigned key);
diff --git a/lib/luks2/luks2_json_format.c b/lib/luks2/luks2_json_format.c
index d4f36247..32ea0ea4 100644
--- a/lib/luks2/luks2_json_format.c
+++ b/lib/luks2/luks2_json_format.c
@@ -325,8 +325,8 @@ int LUKS2_generate_hdr(
json_object_object_add_by_uint(jobj_segments, 0, jobj_segment);
- json_object_object_add(jobj_config, "json_size", json_object_new_uint64(metadata_size - LUKS2_HDR_BIN_LEN));
- json_object_object_add(jobj_config, "keyslots_size", json_object_new_uint64(keyslots_size));
+ json_object_object_add(jobj_config, "json_size", crypt_jobj_new_uint64(metadata_size - LUKS2_HDR_BIN_LEN));
+ json_object_object_add(jobj_config, "keyslots_size", crypt_jobj_new_uint64(keyslots_size));
JSON_DBG(cd, hdr->jobj, "Header JSON:");
return 0;
@@ -400,6 +400,6 @@ int LUKS2_set_keyslots_size(struct crypt_device *cd,
if (!json_object_object_get_ex(hdr->jobj, "config", &jobj_config))
return 1;
- json_object_object_add(jobj_config, "keyslots_size", json_object_new_uint64(keyslots_size));
+ json_object_object_add(jobj_config, "keyslots_size", crypt_jobj_new_uint64(keyslots_size));
return 0;
}
diff --git a/lib/luks2/luks2_json_metadata.c b/lib/luks2/luks2_json_metadata.c
index 52421fac..19fb9588 100644
--- a/lib/luks2/luks2_json_metadata.c
+++ b/lib/luks2/luks2_json_metadata.c
@@ -219,7 +219,7 @@ int LUKS2_get_default_segment(struct luks2_hdr *hdr)
* json_type_int needs to be validated first.
* See validate_json_uint32()
*/
-uint32_t json_object_get_uint32(json_object *jobj)
+uint32_t crypt_jobj_get_uint32(json_object *jobj)
{
return json_object_get_int64(jobj);
}
@@ -241,15 +241,14 @@ static json_bool json_str_to_uint64(json_object *jobj, uint64_t *value)
return 1;
}
-#if !(defined JSON_C_VERSION_NUM && JSON_C_VERSION_NUM >= ((13 << 8) | 99))
-uint64_t json_object_get_uint64(json_object *jobj)
+uint64_t crypt_jobj_get_uint64(json_object *jobj)
{
uint64_t r;
json_str_to_uint64(jobj, &r);
return r;
}
-json_object *json_object_new_uint64(uint64_t value)
+json_object *crypt_jobj_new_uint64(uint64_t value)
{
/* 18446744073709551615 */
char num[21];
@@ -263,7 +262,6 @@ json_object *json_object_new_uint64(uint64_t value)
jobj = json_object_new_string(num);
return jobj;
}
-#endif
/*
* Validate helpers
@@ -457,7 +455,7 @@ static int hdr_validate_json_size(struct crypt_device *cd, json_object *hdr_jobj
json = json_object_to_json_string_ext(hdr_jobj,
JSON_C_TO_STRING_PLAIN | JSON_C_TO_STRING_NOSLASHESCAPE);
- json_area_size = json_object_get_uint64(jobj1);
+ json_area_size = crypt_jobj_get_uint64(jobj1);
json_size = (uint64_t)strlen(json);
if (hdr_json_size != json_area_size) {
@@ -545,7 +543,7 @@ static int hdr_validate_crypt_segment(struct crypt_device *cd,
return 1;
}
- sector_size = json_object_get_uint32(jobj_sector_size);
+ sector_size = crypt_jobj_get_uint32(jobj_sector_size);
if (!sector_size || MISALIGNED_512(sector_size)) {
log_dbg(cd, "Illegal sector size: %" PRIu32, sector_size);
return 1;
@@ -1569,7 +1567,7 @@ static void hdr_dump_keyslots(struct crypt_device *cd, json_object *hdr_jobj)
log_std(cd, " %s: %s%s\n", slot, tmps, r == -ENOENT ? " (unbound)" : "");
if (json_object_object_get_ex(val, "key_size", &jobj2))
- log_std(cd, "\tKey: %u bits\n", json_object_get_uint32(jobj2) * 8);
+ log_std(cd, "\tKey: %u bits\n", crypt_jobj_get_uint32(jobj2) * 8);
log_std(cd, "\tPriority: %s\n", get_priority_desc(val));
@@ -1652,7 +1650,7 @@ static void hdr_dump_segments(struct crypt_device *cd, json_object *hdr_jobj)
log_std(cd, "\tcipher: %s\n", json_object_get_string(jobj1));
if (json_object_object_get_ex(jobj_segment, "sector_size", &jobj1))
- log_std(cd, "\tsector: %" PRIu32 " [bytes]\n", json_object_get_uint32(jobj1));
+ log_std(cd, "\tsector: %" PRIu32 " [bytes]\n", crypt_jobj_get_uint32(jobj1));
if (json_object_object_get_ex(jobj_segment, "integrity", &jobj1) &&
json_object_object_get_ex(jobj1, "type", &jobj2))
@@ -1749,7 +1747,7 @@ int LUKS2_get_data_size(struct luks2_hdr *hdr, uint64_t *size, bool *dynamic)
return 0;
}
- tmp += json_object_get_uint64(jobj_size);
+ tmp += crypt_jobj_get_uint64(jobj_size);
}
/* impossible, real device size must not be zero */
diff --git a/lib/luks2/luks2_keyslot.c b/lib/luks2/luks2_keyslot.c
index 7d06df80..d853fc8e 100644
--- a/lib/luks2/luks2_keyslot.c
+++ b/lib/luks2/luks2_keyslot.c
@@ -301,11 +301,11 @@ int LUKS2_keyslot_area(struct luks2_hdr *hdr,
if (!json_object_object_get_ex(jobj_area, "offset", &jobj))
return -EINVAL;
- *offset = json_object_get_uint64(jobj);
+ *offset = crypt_jobj_get_uint64(jobj);
if (!json_object_object_get_ex(jobj_area, "size", &jobj))
return -EINVAL;
- *length = json_object_get_uint64(jobj);
+ *length = crypt_jobj_get_uint64(jobj);
return 0;
}
@@ -840,8 +840,8 @@ int placeholder_keyslot_alloc(struct crypt_device *cd,
/* Area object */
jobj_area = json_object_new_object();
- json_object_object_add(jobj_area, "offset", json_object_new_uint64(area_offset));
- json_object_object_add(jobj_area, "size", json_object_new_uint64(area_length));
+ json_object_object_add(jobj_area, "offset", crypt_jobj_new_uint64(area_offset));
+ json_object_object_add(jobj_area, "size", crypt_jobj_new_uint64(area_length));
json_object_object_add(jobj_keyslot, "area", jobj_area);
json_object_object_add_by_uint(jobj_keyslots, keyslot, jobj_keyslot);
diff --git a/lib/luks2/luks2_keyslot_luks2.c b/lib/luks2/luks2_keyslot_luks2.c
index 7b438a8b..953ba168 100644
--- a/lib/luks2/luks2_keyslot_luks2.c
+++ b/lib/luks2/luks2_keyslot_luks2.c
@@ -220,7 +220,7 @@ static int luks2_keyslot_set_key(struct crypt_device *cd,
if (!json_object_object_get_ex(jobj_area, "offset", &jobj2))
return -EINVAL;
- area_offset = json_object_get_uint64(jobj2);
+ area_offset = crypt_jobj_get_uint64(jobj2);
if (!json_object_object_get_ex(jobj_area, "encryption", &jobj2))
return -EINVAL;
@@ -313,7 +313,7 @@ static int luks2_keyslot_get_key(struct crypt_device *cd,
if (!json_object_object_get_ex(jobj_area, "offset", &jobj2))
return -EINVAL;
- area_offset = json_object_get_uint64(jobj2);
+ area_offset = crypt_jobj_get_uint64(jobj2);
if (!json_object_object_get_ex(jobj_area, "encryption", &jobj2))
return -EINVAL;
@@ -494,8 +494,8 @@ static int luks2_keyslot_alloc(struct crypt_device *cd,
/* Area object */
jobj_area = json_object_new_object();
json_object_object_add(jobj_area, "type", json_object_new_string("raw"));
- json_object_object_add(jobj_area, "offset", json_object_new_uint64(area_offset));
- json_object_object_add(jobj_area, "size", json_object_new_uint64(area_length));
+ json_object_object_add(jobj_area, "offset", crypt_jobj_new_uint64(area_offset));
+ json_object_object_add(jobj_area, "size", crypt_jobj_new_uint64(area_length));
json_object_object_add(jobj_keyslot, "area", jobj_area);
json_object_object_add_by_uint(jobj_keyslots, keyslot, jobj_keyslot);
@@ -607,7 +607,7 @@ static int luks2_keyslot_dump(struct crypt_device *cd, int keyslot)
log_std(cd, "\tCipher: %s\n", json_object_get_string(jobj1));
json_object_object_get_ex(jobj_area, "key_size", &jobj1);
- log_std(cd, "\tCipher key: %u bits\n", json_object_get_uint32(jobj1) * 8);
+ log_std(cd, "\tCipher key: %u bits\n", crypt_jobj_get_uint32(jobj1) * 8);
json_object_object_get_ex(jobj_kdf, "type", &jobj1);
log_std(cd, "\tPBKDF: %s\n", json_object_get_string(jobj1));
@@ -617,7 +617,7 @@ static int luks2_keyslot_dump(struct crypt_device *cd, int keyslot)
log_std(cd, "\tHash: %s\n", json_object_get_string(jobj1));
json_object_object_get_ex(jobj_kdf, "iterations", &jobj1);
- log_std(cd, "\tIterations: %" PRIu64 "\n", json_object_get_uint64(jobj1));
+ log_std(cd, "\tIterations: %" PRIu64 "\n", crypt_jobj_get_uint64(jobj1));
} else {
json_object_object_get_ex(jobj_kdf, "time", &jobj1);
log_std(cd, "\tTime cost: %" PRIu64 "\n", json_object_get_int64(jobj1));
@@ -640,10 +640,10 @@ static int luks2_keyslot_dump(struct crypt_device *cd, int keyslot)
log_std(cd, "\tAF hash: %s\n", json_object_get_string(jobj1));
json_object_object_get_ex(jobj_area, "offset", &jobj1);
- log_std(cd, "\tArea offset:%" PRIu64 " [bytes]\n", json_object_get_uint64(jobj1));
+ log_std(cd, "\tArea offset:%" PRIu64 " [bytes]\n", crypt_jobj_get_uint64(jobj1));
json_object_object_get_ex(jobj_area, "size", &jobj1);
- log_std(cd, "\tArea length:%" PRIu64 " [bytes]\n", json_object_get_uint64(jobj1));
+ log_std(cd, "\tArea length:%" PRIu64 " [bytes]\n", crypt_jobj_get_uint64(jobj1));
return 0;
}
diff --git a/lib/luks2/luks2_keyslot_reenc.c b/lib/luks2/luks2_keyslot_reenc.c
index 64b8d274..c6b92db3 100644
--- a/lib/luks2/luks2_keyslot_reenc.c
+++ b/lib/luks2/luks2_keyslot_reenc.c
@@ -67,13 +67,13 @@ int reenc_keyslot_alloc(struct crypt_device *cd,
if (params->data_shift) {
json_object_object_add(jobj_area, "type", json_object_new_string("datashift"));
- json_object_object_add(jobj_area, "shift_size", json_object_new_uint64(params->data_shift << SECTOR_SHIFT));
+ json_object_object_add(jobj_area, "shift_size", crypt_jobj_new_uint64(params->data_shift << SECTOR_SHIFT));
} else
/* except data shift protection, initial setting is irrelevant. Type can be changed during reencryption */
json_object_object_add(jobj_area, "type", json_object_new_string("none"));
- json_object_object_add(jobj_area, "offset", json_object_new_uint64(area_offset));
- json_object_object_add(jobj_area, "size", json_object_new_uint64(area_length));
+ json_object_object_add(jobj_area, "offset", crypt_jobj_new_uint64(area_offset));
+ json_object_object_add(jobj_area, "size", crypt_jobj_new_uint64(area_length));
json_object_object_add(jobj_keyslot, "type", json_object_new_string("reencrypt"));
json_object_object_add(jobj_keyslot, "key_size", json_object_new_int(1)); /* useless but mandatory */
@@ -113,8 +113,8 @@ static int reenc_keyslot_store_data(struct crypt_device *cd,
!json_object_object_get_ex(jobj_area, "size", &jobj_length))
return -EINVAL;
- area_offset = json_object_get_uint64(jobj_offset);
- area_length = json_object_get_uint64(jobj_length);
+ area_offset = crypt_jobj_get_uint64(jobj_offset);
+ area_length = crypt_jobj_get_uint64(jobj_length);
if (!area_offset || !area_length || ((uint64_t)buffer_len > area_length))
return -EINVAL;
@@ -242,14 +242,14 @@ static int reenc_keyslot_dump(struct crypt_device *cd, int keyslot)
log_std(cd, "\t%-12s%d [bytes]\n", "Hash data:", json_object_get_int(jobj1));
} else if (!strcmp(json_object_get_string(jobj_resilience), "datashift")) {
json_object_object_get_ex(jobj_area, "shift_size", &jobj1);
- log_std(cd, "\t%-12s%" PRIu64 "[bytes]\n", "Shift size:", json_object_get_uint64(jobj1));
+ log_std(cd, "\t%-12s%" PRIu64 "[bytes]\n", "Shift size:", crypt_jobj_get_uint64(jobj1));
}
json_object_object_get_ex(jobj_area, "offset", &jobj1);
- log_std(cd, "\tArea offset:%" PRIu64 " [bytes]\n", json_object_get_uint64(jobj1));
+ log_std(cd, "\tArea offset:%" PRIu64 " [bytes]\n", crypt_jobj_get_uint64(jobj1));
json_object_object_get_ex(jobj_area, "size", &jobj1);
- log_std(cd, "\tArea length:%" PRIu64 " [bytes]\n", json_object_get_uint64(jobj1));
+ log_std(cd, "\tArea length:%" PRIu64 " [bytes]\n", crypt_jobj_get_uint64(jobj1));
return 0;
}
@@ -304,7 +304,7 @@ static int reenc_keyslot_validate(struct crypt_device *cd, json_object *jobj_key
return -EINVAL;
if (!validate_json_uint32(jobj_sector_size))
return -EINVAL;
- sector_size = json_object_get_uint32(jobj_sector_size);
+ sector_size = crypt_jobj_get_uint32(jobj_sector_size);
if (sector_size < SECTOR_SIZE || NOTPOW2(sector_size)) {
log_dbg(cd, "Invalid sector_size (%" PRIu32 ") for checksum resilience mode.", sector_size);
return -EINVAL;
@@ -313,7 +313,7 @@ static int reenc_keyslot_validate(struct crypt_device *cd, json_object *jobj_key
if (!(jobj_shift_size = json_contains(cd, jobj_area, "type:datashift", "Keyslot area", "shift_size", json_type_string)))
return -EINVAL;
- shift_size = json_object_get_uint64(jobj_shift_size);
+ shift_size = crypt_jobj_get_uint64(jobj_shift_size);
if (!shift_size)
return -EINVAL;
diff --git a/lib/luks2/luks2_luks1_convert.c b/lib/luks2/luks2_luks1_convert.c
index 7f5f26b7..cbaa8603 100644
--- a/lib/luks2/luks2_luks1_convert.c
+++ b/lib/luks2/luks2_luks1_convert.c
@@ -91,8 +91,8 @@ static int json_luks1_keyslot(const struct luks_phdr *hdr_v1, int keyslot, struc
}
area_size = offs_b - offs_a;
json_object_object_add(jobj_area, "key_size", json_object_new_int(hdr_v1->keyBytes));
- json_object_object_add(jobj_area, "offset", json_object_new_uint64(offset));
- json_object_object_add(jobj_area, "size", json_object_new_uint64(area_size));
+ json_object_object_add(jobj_area, "offset", crypt_jobj_new_uint64(offset));
+ json_object_object_add(jobj_area, "size", crypt_jobj_new_uint64(area_size));
json_object_object_add(keyslot_obj, "area", jobj_area);
*keyslot_object = keyslot_obj;
@@ -145,7 +145,7 @@ static int json_luks1_segment(const struct luks_phdr *hdr_v1, struct json_object
/* offset field */
number = (uint64_t)hdr_v1->payloadOffset * SECTOR_SIZE;
- field = json_object_new_uint64(number);
+ field = crypt_jobj_new_uint64(number);
if (!field) {
json_object_put(segment_obj);
return -ENOMEM;
@@ -401,8 +401,8 @@ static int json_luks1_object(struct luks_phdr *hdr_v1, struct json_object **luks
json_object_object_add(luks1_obj, "config", field);
json_size = LUKS2_HDR_16K_LEN - LUKS2_HDR_BIN_LEN;
- json_object_object_add(field, "json_size", json_object_new_uint64(json_size));
- json_object_object_add(field, "keyslots_size", json_object_new_uint64(keyslots_size));
+ json_object_object_add(field, "json_size", crypt_jobj_new_uint64(json_size));
+ json_object_object_add(field, "keyslots_size", crypt_jobj_new_uint64(keyslots_size));
*luks1_object = luks1_obj;
return 0;
@@ -418,8 +418,8 @@ static void move_keyslot_offset(json_object *jobj, int offset_add)
UNUSED(key);
json_object_object_get_ex(val, "area", &jobj_area);
json_object_object_get_ex(jobj_area, "offset", &jobj2);
- offset = json_object_get_uint64(jobj2) + offset_add;
- json_object_object_add(jobj_area, "offset", json_object_new_uint64(offset));
+ offset = crypt_jobj_get_uint64(jobj2) + offset_add;
+ json_object_object_add(jobj_area, "offset", crypt_jobj_new_uint64(offset));
}
}
@@ -749,7 +749,7 @@ int LUKS2_luks2_to_luks1(struct crypt_device *cd, struct luks2_hdr *hdr2, struct
return -EINVAL;
if (!json_object_object_get_ex(jobj_area, "offset", &jobj1))
return -EINVAL;
- offset = json_object_get_uint64(jobj1);
+ offset = crypt_jobj_get_uint64(jobj1);
} else {
if (LUKS2_find_area_gap(cd, hdr2, key_size, &offset, &area_length))
return -EINVAL;
@@ -781,7 +781,7 @@ int LUKS2_luks2_to_luks1(struct crypt_device *cd, struct luks2_hdr *hdr2, struct
if (!json_object_object_get_ex(jobj_kdf, "iterations", &jobj1))
continue;
- hdr1->keyblock[i].passwordIterations = json_object_get_uint32(jobj1);
+ hdr1->keyblock[i].passwordIterations = crypt_jobj_get_uint32(jobj1);
if (!json_object_object_get_ex(jobj_kdf, "salt", &jobj1))
continue;
@@ -822,7 +822,7 @@ int LUKS2_luks2_to_luks1(struct crypt_device *cd, struct luks2_hdr *hdr2, struct
if (!json_object_object_get_ex(jobj_digest, "iterations", &jobj1))
return -EINVAL;
- hdr1->mkDigestIterations = json_object_get_uint32(jobj1);
+ hdr1->mkDigestIterations = crypt_jobj_get_uint32(jobj1);
if (!json_object_object_get_ex(jobj_digest, "digest", &jobj1))
return -EINVAL;
@@ -847,7 +847,7 @@ int LUKS2_luks2_to_luks1(struct crypt_device *cd, struct luks2_hdr *hdr2, struct
if (!json_object_object_get_ex(jobj_segment, "offset", &jobj1))
return -EINVAL;
- offset = json_object_get_uint64(jobj1) / SECTOR_SIZE;
+ offset = crypt_jobj_get_uint64(jobj1) / SECTOR_SIZE;
if (offset > UINT32_MAX)
return -EINVAL;
/* FIXME: LUKS1 requires offset == 0 || offset >= luks1_hdr_size */
diff --git a/lib/luks2/luks2_reencrypt.c b/lib/luks2/luks2_reencrypt.c
index 6bac4420..c99577cc 100644
--- a/lib/luks2/luks2_reencrypt.c
+++ b/lib/luks2/luks2_reencrypt.c
@@ -165,7 +165,7 @@ static uint32_t reencrypt_alignment(struct luks2_hdr *hdr)
if (!json_object_object_get_ex(jobj_area, "sector_size", &jobj_sector_size))
return 0;
- return json_object_get_uint32(jobj_sector_size);
+ return crypt_jobj_get_uint32(jobj_sector_size);
}
static json_object *_enc_create_segments_shift_after(struct crypt_device *cd,
@@ -200,13 +200,13 @@ static json_object *_enc_create_segments_shift_after(struct crypt_device *cd,
json_segment_remove_flag(jobj_seg_new, "in-reencryption");
tmp = rh->length;
} else {
- json_object_object_add(jobj_seg_new, "offset", json_object_new_uint64(rh->offset + data_offset));
- json_object_object_add(jobj_seg_new, "iv_tweak", json_object_new_uint64(rh->offset >> SECTOR_SHIFT));
+ json_object_object_add(jobj_seg_new, "offset", crypt_jobj_new_uint64(rh->offset + data_offset));
+ json_object_object_add(jobj_seg_new, "iv_tweak", crypt_jobj_new_uint64(rh->offset >> SECTOR_SHIFT));
tmp = json_segment_get_size(jobj_seg_new, 0) + rh->length;
}
/* alter size of new segment, reenc_seg == 0 we're finished */
- json_object_object_add(jobj_seg_new, "size", reenc_seg > 0 ? json_object_new_uint64(tmp) : json_object_new_string("dynamic"));
+ json_object_object_add(jobj_seg_new, "size", reenc_seg > 0 ? crypt_jobj_new_uint64(tmp) : json_object_new_string("dynamic"));
json_object_object_add_by_uint(jobj_segs_post, reenc_seg, jobj_seg_new);
return jobj_segs_post;
@@ -256,7 +256,7 @@ static json_object *reencrypt_make_hot_segments_encrypt_shift(struct crypt_devic
jobj_seg_shrunk = NULL;
if (json_object_copy(LUKS2_get_segment_jobj(hdr, sg), &jobj_seg_shrunk))
goto err;
- json_object_object_add(jobj_seg_shrunk, "size", json_object_new_uint64(segment_size - rh->length));
+ json_object_object_add(jobj_seg_shrunk, "size", crypt_jobj_new_uint64(segment_size - rh->length));
json_object_object_add_by_uint(jobj_segs_hot, sg++, jobj_seg_shrunk);
}
@@ -336,7 +336,7 @@ static json_object *reencrypt_make_post_segments_forward(struct crypt_device *cd
goto err;
jobj_old_seg = jobj_old_seg_copy;
fixed_length = rh->device_size - fixed_length;
- json_object_object_add(jobj_old_seg, "size", json_object_new_uint64(fixed_length));
+ json_object_object_add(jobj_old_seg, "size", crypt_jobj_new_uint64(fixed_length));
} else
json_object_get(jobj_old_seg);
json_object_object_add_by_uint(jobj_segs_post, 1, jobj_old_seg);
@@ -491,7 +491,7 @@ static json_object *reencrypt_make_hot_segments_backward(struct crypt_device *cd
if (rh->offset) {
if (json_object_copy(LUKS2_get_segment_jobj(hdr, 0), &jobj_old_seg))
goto err;
- json_object_object_add(jobj_old_seg, "size", json_object_new_uint64(rh->offset));
+ json_object_object_add(jobj_old_seg, "size", crypt_jobj_new_uint64(rh->offset));
json_object_object_add_by_uint(jobj_segs_hot, sg++, jobj_old_seg);
}
@@ -575,7 +575,7 @@ static uint64_t reencrypt_data_shift(struct luks2_hdr *hdr)
if (!json_object_object_get_ex(jobj_area, "shift_size", &jobj_data_shift))
return 0;
- return json_object_get_uint64(jobj_data_shift);
+ return crypt_jobj_get_uint64(jobj_data_shift);
}
static crypt_reencrypt_mode_info reencrypt_mode(struct luks2_hdr *hdr)
diff --git a/lib/luks2/luks2_segment.c b/lib/luks2/luks2_segment.c
index 6ece2fdd..cd5108e8 100644
--- a/lib/luks2/luks2_segment.c
+++ b/lib/luks2/luks2_segment.c
@@ -55,7 +55,7 @@ uint64_t json_segment_get_offset(json_object *jobj_segment, unsigned blockwise)
!json_object_object_get_ex(jobj_segment, "offset", &jobj))
return 0;
- return blockwise ? json_object_get_uint64(jobj) >> SECTOR_SHIFT : json_object_get_uint64(jobj);
+ return blockwise ? crypt_jobj_get_uint64(jobj) >> SECTOR_SHIFT : crypt_jobj_get_uint64(jobj);
}
const char *json_segment_type(json_object *jobj_segment)
@@ -77,7 +77,7 @@ uint64_t json_segment_get_iv_offset(json_object *jobj_segment)
!json_object_object_get_ex(jobj_segment, "iv_tweak", &jobj))
return 0;
- return json_object_get_uint64(jobj);
+ return crypt_jobj_get_uint64(jobj);
}
uint64_t json_segment_get_size(json_object *jobj_segment, unsigned blockwise)
@@ -88,7 +88,7 @@ uint64_t json_segment_get_size(json_object *jobj_segment, unsigned blockwise)
!json_object_object_get_ex(jobj_segment, "size", &jobj))
return 0;
- return blockwise ? json_object_get_uint64(jobj) >> SECTOR_SHIFT : json_object_get_uint64(jobj);
+ return blockwise ? crypt_jobj_get_uint64(jobj) >> SECTOR_SHIFT : crypt_jobj_get_uint64(jobj);
}
const char *json_segment_get_cipher(json_object *jobj_segment)
@@ -229,8 +229,8 @@ static json_object *_segment_create_generic(const char *type, uint64_t offset, c
return NULL;
json_object_object_add(jobj, "type", json_object_new_string(type));
- json_object_object_add(jobj, "offset", json_object_new_uint64(offset));
- json_object_object_add(jobj, "size", length ? json_object_new_uint64(*length) : json_object_new_string("dynamic"));
+ json_object_object_add(jobj, "offset", crypt_jobj_new_uint64(offset));
+ json_object_object_add(jobj, "size", length ? crypt_jobj_new_uint64(*length) : json_object_new_string("dynamic"));
return jobj;
}
@@ -252,7 +252,7 @@ json_object *json_segment_create_crypt(uint64_t offset,
if (!jobj)
return NULL;
- json_object_object_add(jobj, "iv_tweak", json_object_new_uint64(iv_offset));
+ json_object_object_add(jobj, "iv_tweak", crypt_jobj_new_uint64(iv_offset));
json_object_object_add(jobj, "encryption", json_object_new_string(cipher));
json_object_object_add(jobj, "sector_size", json_object_new_int(sector_size));
if (reencryption)
--
2.20.1
@@ -6,15 +6,17 @@ Subject: [PATCH] Remove man from BUILDDIRS in configure
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Fabrice: updated for 2.3.0]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Michael: updated for 2.3.3]
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
---
config-scripts/cups-common.m4 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/config-scripts/cups-common.m4 b/config-scripts/cups-common.m4
index fbba715..77d0f5c 100644
index a460a73..d427acb 100644
--- a/config-scripts/cups-common.m4
+++ b/config-scripts/cups-common.m4
@@ -446,7 +446,7 @@ AC_ARG_WITH(components, [ --with-components set components to build:
@@ -434,7 +434,7 @@ LIBHEADERSPRIV="\$(COREHEADERSPRIV) \$(DRIVERHEADERSPRIV)"
case "$COMPONENTS" in
all)
@@ -24,5 +26,5 @@ index fbba715..77d0f5c 100644
core)
--
2.8.1
2.17.1
@@ -16,23 +16,25 @@ genstrings call.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Fabrice: updated for 2.3.0]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Michael: updated for 2.3.3]
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
---
ppdc/Makefile | 2 --
1 file changed, 2 deletions(-)
diff --git a/ppdc/Makefile b/ppdc/Makefile
index 68bf6b2..d57a0c9 100644
index 32e2e0b..7b18879 100644
--- a/ppdc/Makefile
+++ b/ppdc/Makefile
@@ -242,8 +242,6 @@ genstrings: genstrings.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) \
$(LD_CXX) $(ARCHFLAGS) $(ALL_LDFLAGS) -o genstrings genstrings.o \
libcupsppdc.a $(LINKCUPSSTATIC)
$(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
@@ -186,8 +186,6 @@ genstrings: genstrings.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) \
$(LD_CXX) $(ARCHFLAGS) $(ALL_LDFLAGS) -o genstrings genstrings.o \
libcupsppdc.a $(LINKCUPSSTATIC)
$(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
- echo Generating localization strings...
- ./genstrings >sample.c
#
--
2.6.4
2.17.1
@@ -13,15 +13,17 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Olivier Schonken <olivier.schonken@gmail.com>
[Fabrice: updated for 2.3.0]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Michael: updated for 2.3.3]
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
---
Makedefs.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makedefs.in b/Makedefs.in
index 3afef0a..299b297 100644
index 5f1d32f..d669ea8 100644
--- a/Makedefs.in
+++ b/Makedefs.in
@@ -148,7 +148,7 @@ IPPFIND_BIN = @IPPFIND_BIN@
@@ -155,7 +155,7 @@ ALL_CXXFLAGS = -I.. -D_CUPS_SOURCE $(CXXFLAGS) \
$(ONDEMANDFLAGS) $(OPTIONS)
ALL_DSOFLAGS = -L../cups @ARCHFLAGS@ @RELROFLAGS@ $(DSOFLAGS) $(OPTIM)
ALL_LDFLAGS = -L../cups @LDARCHFLAGS@ @RELROFLAGS@ $(LDFLAGS) \
@@ -31,5 +33,5 @@ index 3afef0a..299b297 100644
ARFLAGS = @ARFLAGS@
BACKLIBS = @BACKLIBS@
--
2.7.4
2.17.1
+3
View File
@@ -0,0 +1,3 @@
# Allow USB printers in the lp group
# Match rules converted from usblp.c driver's usblp_ids
ACTION=="add", SUBSYSTEM=="usb", ATTR{bInterfaceClass}=="07", ATTR{bInterfaceSubClass}=="01", GROUP="lp"
+1 -1
View File
@@ -1,4 +1,4 @@
# Locally calculated:
sha256 1bca9d89507e3f68cbc84482fe46ae8d5333af5bc2b9061347b2007182ac77ce cups-2.3.1-source.tar.gz
sha256 261fd948bce8647b6d5cb2a1784f0c24cc52b5c4e827b71d726020bcc502f3ee cups-2.3.3-source.tar.gz
sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE
sha256 a5d616e6322a9cb1a971e18765025edfca4f3cd9c0eafc32d6d2eb4b8c8787b5 NOTICE
+20 -1
View File
@@ -4,7 +4,7 @@
#
################################################################################
CUPS_VERSION = 2.3.1
CUPS_VERSION = 2.3.3
CUPS_SOURCE = cups-$(CUPS_VERSION)-source.tar.gz
CUPS_SITE = https://github.com/apple/cups/releases/download/v$(CUPS_VERSION)
CUPS_LICENSE = Apache-2.0 with GPL-2.0/LGPL-2.0 exception
@@ -22,6 +22,9 @@ CUPS_CONF_OPTS = \
--disable-gssapi \
--disable-pam \
--libdir=/usr/lib \
--with-cups-user=lp \
--with-cups-group=lp \
--with-system-groups="lpadmin sys root" \
--without-rcdir
CUPS_CONFIG_SCRIPTS = cups-config
CUPS_DEPENDENCIES = \
@@ -72,9 +75,25 @@ else
CUPS_CONF_OPTS += --disable-avahi
endif
ifeq ($(BR2_PACKAGE_HAS_UDEV),y)
define CUPS_INSTALL_UDEV_RULES
$(INSTALL) -D -m 0644 package/cups/70-usb-printers.rules \
$(TARGET_DIR)/lib/udev/rules.d/70-usb-printers.rules
endef
CUPS_POST_INSTALL_TARGET_HOOKS += CUPS_INSTALL_UDEV_RULES
endif
define CUPS_INSTALL_INIT_SYSV
$(INSTALL) -D -m 0755 package/cups/S81cupsd \
$(TARGET_DIR)/etc/init.d/S81cupsd
endef
# lp user is needed to run cups spooler
# lpadmin group membership grants administrative privileges
define CUPS_USERS
lp -1 lp -1 * /var/spool/lpd /bin/false - lp
- - lpadmin -1 * - - - Printers admin group.
endef
$(eval $(autotools-package))
+1 -1
View File
@@ -5,7 +5,7 @@ After=network.target
[Service]
Type=forking
EnvironmentFile=-/etc/default/dhcpcd
PIDFile=/var/run/dhcpcd.pid
PIDFile=/run/dhcpcd.pid
ExecStart=/sbin/dhcpcd $DAEMON_ARGS
Restart=always
+1 -1
View File
@@ -20,7 +20,7 @@ DHCPDUMP_CFLAGS = $(TARGET_CFLAGS) -DHAVE_STRSEP
define DHCPDUMP_BUILD_CMDS
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) CC="$(TARGET_CC) $(DHCPDUMP_CFLAGS) \
-D_GNU_SOURCE" LIBS="$(DHCPDUMP_LIBS)"
-D_GNU_SOURCE" LIBS="$(DHCPDUMP_LIBS)" dhcpdump
endef
define DHCPDUMP_INSTALL_TARGET_CMDS
+1 -1
View File
@@ -1,3 +1,3 @@
# Locally calculated
sha256 a5b1d6c5766f77896273e864a448a7f0ea4055bb52f50f884f14ad6ef0d5fdb4 docker-cli-19.03.11.tar.gz
sha256 00801d6b7e9777cf2cf54255ca5afb7b58b3d35c14bb0f60bb9f07d031883223 docker-cli-19.03.12.tar.gz
sha256 2d81ea060825006fc8f3fe28aa5dc0ffeb80faf325b612c955229157b8c10dc0 LICENSE
+3 -3
View File
@@ -4,7 +4,7 @@
#
################################################################################
DOCKER_CLI_VERSION = 19.03.11
DOCKER_CLI_VERSION = 19.03.12
DOCKER_CLI_SITE = $(call github,docker,cli,v$(DOCKER_CLI_VERSION))
DOCKER_CLI_WORKSPACE = gopath
@@ -17,8 +17,8 @@ DOCKER_CLI_TAGS = autogen
DOCKER_CLI_BUILD_TARGETS = cmd/docker
DOCKER_CLI_LDFLAGS = \
-X github.com/docker/cli/cli.GitCommit=$(DOCKER_CLI_VERSION) \
-X github.com/docker/cli/cli.Version=$(DOCKER_CLI_VERSION)
-X github.com/docker/cli/cli/version.GitCommit=$(DOCKER_CLI_VERSION) \
-X github.com/docker/cli/cli/version.Version=$(DOCKER_CLI_VERSION)
ifeq ($(BR2_PACKAGE_DOCKER_CLI_STATIC),y)
DOCKER_CLI_LDFLAGS += -extldflags '-static'
+1 -1
View File
@@ -1,3 +1,3 @@
# Locally calculated
sha256 5ff62d7b3638a275b2c459e53a4d1a7a8fb03dde8305defcd55e05e059e5618d docker-engine-19.03.11.tar.gz
sha256 858e4e74ee0097bcbdb71d737e268dfcfd1970efa4a1600354253b02fd403e39 docker-engine-19.03.12.tar.gz
sha256 7c87873291f289713ac5df48b1f2010eb6963752bbd6b530416ab99fc37914a8 LICENSE
+1 -1
View File
@@ -4,7 +4,7 @@
#
################################################################################
DOCKER_ENGINE_VERSION = 19.03.11
DOCKER_ENGINE_VERSION = 19.03.12
DOCKER_ENGINE_SITE = $(call github,docker,engine,v$(DOCKER_ENGINE_VERSION))
DOCKER_ENGINE_LICENSE = Apache-2.0
+1
View File
@@ -15,6 +15,7 @@ ECRYPTFS_UTILS_CONF_OPTS = --disable-pywrap
#Needed for build system to find pk11func.h and libnss3.so
ECRYPTFS_UTILS_CONF_ENV = \
ac_cv_path_POD2MAN=true \
NSS_CFLAGS="-I$(STAGING_DIR)/usr/include/nss -I$(STAGING_DIR)/usr/include/nspr" \
NSS_LIBS="-lnss3"
+6 -5
View File
@@ -1,7 +1,7 @@
config BR2_PACKAGE_EFL
bool "efl"
# g++ issue with 4.4.5, tested with g++ 4.7.2
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++11
depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-efl
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HAS_THREADS # untested without threads
depends on BR2_USE_MMU
@@ -301,8 +301,9 @@ comment "SVG loader needs a toolchain w/ gcc >= 4.8"
endif # BR2_PACKAGE_EFL
comment "efl needs a toolchain w/ C++, dynamic library, gcc >= 4.7, threads, wchar"
comment "efl needs a toolchain w/ C++, dynamic library, gcc >= 4.9, host gcc >= 4.9, threads, wchar"
depends on !BR2_INSTALL_LIBSTDCPP \
|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 \
|| BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 \
|| !BR2_HOST_GCC_AT_LEAST_4_9 || BR2_STATIC_LIBS \
|| !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
depends on BR2_USE_MMU
+7
View File
@@ -27,6 +27,13 @@ define FAIL2BAN_FIX_DEFAULT_CONFIG
endef
FAIL2BAN_POST_INSTALL_TARGET_HOOKS += FAIL2BAN_FIX_DEFAULT_CONFIG
# fail2ban-python points to host python
define FAIL2BAN_FIX_FAIL2BAN_PYTHON_SYMLINK
ln -snf $(if $(BR2_PACKAGE_PYTHON),python,python3) \
$(TARGET_DIR)/usr/bin/fail2ban-python
endef
FAIL2BAN_POST_INSTALL_TARGET_HOOKS += FAIL2BAN_FIX_FAIL2BAN_PYTHON_SYMLINK
define FAIL2BAN_INSTALL_INIT_SYSV
$(INSTALL) -D -m 755 package/fail2ban/S60fail2ban \
$(TARGET_DIR)/etc/init.d/S60fail2ban
+10 -13
View File
@@ -14,8 +14,16 @@ FREETYPE_LICENSE_FILES = docs/LICENSE.TXT docs/FTL.TXT docs/GPLv2.TXT
FREETYPE_DEPENDENCIES = host-pkgconf
FREETYPE_CONFIG_SCRIPTS = freetype-config
# harfbuzz already depends on freetype so disable harfbuzz in freetype to avoid
# a circular dependency
FREETYPE_CONF_OPTS = --without-harfbuzz
HOST_FREETYPE_DEPENDENCIES = host-pkgconf
HOST_FREETYPE_CONF_OPTS = --without-zlib --without-bzip2 --without-png
HOST_FREETYPE_CONF_OPTS = \
--without-bzip2 \
--without-harfbuzz \
--without-png \
--without-zlib
# since 2.9.1 needed for freetype-config install
FREETYPE_CONF_OPTS += --enable-freetype-config
@@ -37,9 +45,7 @@ endif
ifeq ($(BR2_PACKAGE_LIBPNG),y)
FREETYPE_DEPENDENCIES += libpng
FREETYPE_CONF_OPTS += LIBPNG_CFLAGS="`$(STAGING_DIR)/usr/bin/libpng-config --cflags`" \
LIBPNG_LDFLAGS="`$(STAGING_DIR)/usr/bin/libpng-config --ldflags`"
FREETYPE_LIBPNG_LIBS = "`$(STAGING_DIR)/usr/bin/libpng-config --libs`"
FREETYPE_CONF_OPTS += --with-png
else
FREETYPE_CONF_OPTS += --without-png
endif
@@ -52,14 +58,5 @@ define FREETYPE_FIX_CONFIG_FILE
endef
FREETYPE_POST_INSTALL_STAGING_HOOKS += FREETYPE_FIX_CONFIG_FILE
# libpng isn't included in freetype-config & freetype2.pc :-/
define FREETYPE_FIX_CONFIG_FILE_LIBS
$(SED) "s,^Libs.private:,& $(FREETYPE_LIBPNG_LIBS)," \
$(STAGING_DIR)/usr/lib/pkgconfig/freetype2.pc
$(SED) "s,-lfreetype,& $(FREETYPE_LIBPNG_LIBS)," \
$(STAGING_DIR)/usr/bin/freetype-config
endef
FREETYPE_POST_INSTALL_STAGING_HOOKS += FREETYPE_FIX_CONFIG_FILE_LIBS
$(eval $(autotools-package))
$(eval $(host-autotools-package))
+15 -5
View File
@@ -130,6 +130,14 @@ ifeq ($(BR2_sparc)$(BR2_sparc64),y)
HOST_GCC_COMMON_CONF_OPTS += --disable-libsanitizer
endif
# The logic in libbacktrace/configure.ac to detect if __sync builtins
# are available assumes they are as soon as target_subdir is not
# empty, i.e when cross-compiling. However, some platforms do not have
# __sync builtins, so help the configure script a bit.
ifeq ($(BR2_TOOLCHAIN_HAS_SYNC_4),)
HOST_GCC_COMMON_CONF_ENV += target_configargs="libbacktrace_cv_sys_sync=no"
endif
# TLS support is not needed on uClibc/no-thread and
# uClibc/linux-threads, otherwise, for all other situations (glibc,
# musl and uClibc/NPTL), we need it.
@@ -212,6 +220,13 @@ HOST_GCC_COMMON_CONF_OPTS += \
--with-long-double-128
endif
# Set default to Secure-PLT to prevent run-time
# generation of PLT stubs (supports RELRO and
# SELinux non-exemem capabilities)
ifeq ($(BR2_powerpc),y)
HOST_GCC_COMMON_CONF_OPTS += --enable-secureplt
endif
# PowerPC64 big endian by default uses the elfv1 ABI, and PowerPC 64
# little endian by default uses the elfv2 ABI. However, musl has
# decided to use the elfv2 ABI for both, so we force the elfv2 ABI for
@@ -260,11 +275,6 @@ HOST_GCC_COMMON_CCACHE_HASH_FILES += \
ifeq ($(BR2_xtensa),y)
HOST_GCC_COMMON_CCACHE_HASH_FILES += $(ARCH_XTENSA_OVERLAY_TAR)
endif
ifeq ($(ARCH),powerpc)
ifneq ($(BR2_SOFT_FLOAT),)
HOST_GCC_COMMON_CCACHE_HASH_FILES += package/gcc/$(GCC_VERSION)/1000-powerpc-link-with-math-lib.patch.conditional
endif
endif
# _CONF_OPTS contains some references to the absolute path of $(HOST_DIR)
# and a reference to the Buildroot git revision (BR2_VERSION_FULL),
+2 -1
View File
@@ -69,7 +69,8 @@ GDB_DISABLE_BINUTILS_CONF_OPTS = \
--disable-binutils \
--disable-install-libbfd \
--disable-ld \
--disable-gas
--disable-gas \
--disable-gprof
GDB_CONF_ENV = \
ac_cv_type_uintptr_t=yes \
@@ -1,36 +0,0 @@
From 5fed765abb8ff07c381cc3ebb9367e9560f7a658 Mon Sep 17 00:00:00 2001
From: Bernd Kuhls <bernd.kuhls@t-online.de>
Date: Mon, 20 Mar 2017 23:43:03 +0100
Subject: [PATCH] Fix cross compilation issue
Without this patch unsafe paths are used:
x86_64-linux-gcc: ERROR: unsafe header/library path used in cross-compilation: '/libtiff'
Downloaded from
http://bugs.ghostscript.com/show_bug.cgi?id=696508#c3
Slightly updated to work with 9.23
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index d0f62d7..0d49344 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1173,7 +1173,7 @@ XPSWRITEDEVICE=''
LIBTIFFDIR='src'
-LIBTIFFCONFDIR=''
+LIBTIFFCONFDIR='src'
TIFFCFLAGS=''
TIFFDEVS_ALL='tiffs tiff12nc tiff24nc tiff48nc tiff32nc tiff64nc tiffcrle tifflzw tiffpack tiffgray tiffsep tiffsep1 tiffscaled tiffscaled4 tiffscaled8 tiffscaled24 tiffscaled32'
FAX_DEVS_ALL='cfax dfaxlow dfaxhigh fax faxg3 faxg32d faxg4 tiffg3 tiffg32d tiffg4 tfax'
--
2.7.4
+2 -2
View File
@@ -1,5 +1,5 @@
# From https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs952/SHA512SUMS
sha512 4c4a33884e1138bad553eee61fac1a72158297ad5c2ce46a4b36150848dea8158affaf2b902f4ff03e4f72ebc8154c198b618112624f409230a610b7648faa67 ghostscript-9.52.tar.xz
# From https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs9532/SHA512SUMS
sha512 73aa6013aeecbd1345317a40349089a2f19a2205fc11b8ca0b619df1e91f2ca8b03efc09be9e079cb5ab8e1b838aa2236349cd1c177217c14308242f99138ae4 ghostscript-9.53.2.tar.gz
# Hash for license file:
sha256 6f852249f975287b3efd43a5883875e47fa9f3125e2f1b18b5c09517ac30ecf2 LICENSE
+1 -4
View File
@@ -4,13 +4,10 @@
#
################################################################################
GHOSTSCRIPT_VERSION = 9.52
GHOSTSCRIPT_VERSION = 9.53.2
GHOSTSCRIPT_SITE = https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs$(subst .,,$(GHOSTSCRIPT_VERSION))
GHOSTSCRIPT_SOURCE = ghostscript-$(GHOSTSCRIPT_VERSION).tar.xz
GHOSTSCRIPT_LICENSE = AGPL-3.0
GHOSTSCRIPT_LICENSE_FILES = LICENSE
# 0001-Fix-cross-compilation-issue.patch
GHOSTSCRIPT_AUTORECONF = YES
GHOSTSCRIPT_DEPENDENCIES = \
host-lcms2 \
host-libjpeg \
+2 -2
View File
@@ -1,6 +1,6 @@
# Locally calculated after checking pgp signature
# https://www.gnupg.org/ftp/gcrypt/gnutls/v3.6/gnutls-3.6.14.tar.xz.sig
sha256 5630751adec7025b8ef955af4d141d00d252a985769f51b4059e5affa3d39d63 gnutls-3.6.14.tar.xz
# https://www.gnupg.org/ftp/gcrypt/gnutls/v3.6/gnutls-3.6.15.tar.xz.sig
sha256 0ea8c3283de8d8335d7ae338ef27c53a916f15f382753b174c18b45ffd481558 gnutls-3.6.15.tar.xz
# Locally calculated
sha256 e79e9c8a0c85d735ff98185918ec94ed7d175efc377012787aebcf3b80f0d90b doc/COPYING
sha256 6095e9ffa777dd22839f7801aa845b31c9ed07f3d6bf8a26dc5d2dec8ccc0ef3 doc/COPYING.LESSER
+1 -1
View File
@@ -5,7 +5,7 @@
################################################################################
GNUTLS_VERSION_MAJOR = 3.6
GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).14
GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).15
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)
+1 -1
View File
@@ -1,3 +1,3 @@
# From https://golang.org/dl/
sha256 197333e97290e9ea8796f738d61019dcba1c377c2f3961fd6a114918ecc7ab06 go1.13.14.src.tar.gz
sha256 5fb43171046cf8784325e67913d55f88a683435071eef8e9da1aa8a1588fcf5d go1.13.15.src.tar.gz
sha256 2d36597f7117c38b006835ae7f537487207d8ec407aa9d9980794b2030cbc067 LICENSE
+1 -1
View File
@@ -4,7 +4,7 @@
#
################################################################################
GO_VERSION = 1.13.14
GO_VERSION = 1.13.15
GO_SITE = https://storage.googleapis.com/golang
GO_SOURCE = go$(GO_VERSION).src.tar.gz
@@ -0,0 +1,67 @@
From 3edb88b55c0870989778c670d555aa159a2c3abc Mon Sep 17 00:00:00 2001
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Date: Mon, 31 Aug 2020 20:56:43 +0200
Subject: [PATCH] don't install a libtool file with static library
Static library is supported since version 1.3.11 and
https://github.com/silnrsi/graphite/commit/2f143c04da5caa43ddf4dba437b2f2bc26bf4238
However, graphite2 is still installing libgraphite2.la which contains
incorrect information (i.e. dlname set to libgraphite2.so and
old_library set to ''):
dlname='libgraphite2.so'
library_names='libgraphite2.so.3.2.1 libgraphite2.so.3 libgraphite2.so'
old_library=''
dependency_libs=''
This will result in the following build failure with any applications
using this file such as harfbuzz:
arm-linux-g++.br_real: error: /home/buildroot/autobuild/run/instance-3/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgraphite2.so: No such file or directory
make[5]: *** [main] Error 1
Instead of trying to fix this libtool file, just disable it when
building a static library as it is not needed
Fixes:
- http://autobuild.buildroot.org/results/9ebe1d11e80755d59190ef2aae82bbba5cc45e44
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Upstream status: https://github.com/silnrsi/graphite/pull/65]
---
src/CMakeLists.txt | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index b6ac26bf..a7ace040 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -131,7 +131,9 @@ if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
nolib_test(stdc++ $<TARGET_SONAME_FILE:graphite2>)
endif ()
set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "")
- CREATE_LIBTOOL_FILE(graphite2 "/lib${LIB_SUFFIX}")
+ if (BUILD_SHARED_LIBS)
+ CREATE_LIBTOOL_FILE(graphite2 "/lib${LIB_SUFFIX}")
+ endif()
endif()
if (${CMAKE_SYSTEM_NAME} STREQUAL "Darwin")
@@ -146,7 +148,9 @@ if (${CMAKE_SYSTEM_NAME} STREQUAL "Darwin")
include(Graphite)
nolib_test(stdc++ $<TARGET_SONAME_FILE:graphite2>)
set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "")
- CREATE_LIBTOOL_FILE(graphite2 "/lib${LIB_SUFFIX}")
+ if (BUILD_SHARED_LIBS)
+ CREATE_LIBTOOL_FILE(graphite2 "/lib${LIB_SUFFIX}")
+ endif()
endif()
if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
--
2.28.0
+3 -4
View File
@@ -1,13 +1,12 @@
config BR2_PACKAGE_GRAPHITE2
bool "graphite2"
depends on BR2_INSTALL_LIBSTDCPP
depends on !BR2_STATIC_LIBS
help
Graphite is a project within SIL's scripts and software dev
groups to provide cross-platform rendering for complex
writing systems.
http://graphite.sil.org/
https://github.com/silnrsi/graphite
comment "graphite2 needs a toolchain w/ C++, dynamic library"
depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS
comment "graphite2 needs a toolchain w/ C++"
depends on !BR2_INSTALL_LIBSTDCPP
+2 -4
View File
@@ -1,6 +1,4 @@
# From http://sourceforge.net/projects/silgraphite/files/graphite2
md5 b39d5ed21195f8b709bcee548c87e2b5 graphite2-1.3.10.tgz
sha1 668f3bce96fc02d90ea875b401ed36b2e8957d2f graphite2-1.3.10.tgz
# From https://github.com/silnrsi/graphite/releases/download/1.3.14/graphite2-1.3.14.sha256sum
sha256 f99d1c13aa5fa296898a181dff9b82fb25f6cc0933dbaa7a475d8109bd54209d graphite2-1.3.14.tgz
# Locally computed
sha256 90fde3b2f9ea95d68ffb19278d07d9b8a7efa5ba0e413bebcea802ce05cda1ae graphite2-1.3.10.tgz
sha256 a9bdde5616ecdd1e980b44f360600ee8783b1f99b8cc83a2beb163a0a390e861 LICENSE
+3 -2
View File
@@ -4,9 +4,10 @@
#
################################################################################
GRAPHITE2_VERSION = 1.3.10
GRAPHITE2_VERSION = 1.3.14
GRAPHITE2_SOURCE = graphite2-$(GRAPHITE2_VERSION).tgz
GRAPHITE2_SITE = http://downloads.sourceforge.net/project/silgraphite/graphite2
GRAPHITE2_SITE = \
https://github.com/silnrsi/graphite/releases/download/$(GRAPHITE2_VERSION)
GRAPHITE2_INSTALL_STAGING = YES
GRAPHITE2_LICENSE = LGPL-2.1+
GRAPHITE2_LICENSE_FILES = LICENSE
@@ -51,19 +51,22 @@ else
GST1_PLUGINS_BASE_CONF_OPTS += -Dorc=disabled
endif
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE_LIB_OPENGL_HAS_API),y)
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE_LIB_OPENGL_HAS_API)$(BR2_PACKAGE_GST1_PLUGINS_BASE_LIB_OPENGL_HAS_PLATFORM)$(BR2_PACKAGE_GST1_PLUGINS_BASE_LIB_OPENGL_HAS_WINDOW),yyy)
GST1_PLUGINS_BASE_CONF_OPTS += -Dgl=enabled
else
GST1_PLUGINS_BASE_CONF_OPTS += -Dgl=disabled
endif
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE_LIB_OPENGL_OPENGL),y)
GST1_PLUGINS_BASE_GL_API_LIST = opengl
GST1_PLUGINS_BASE_DEPENDENCIES += libgl libglu
endif
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE_LIB_OPENGL_GLES2),y)
GST1_PLUGINS_BASE_GL_API_LIST += gles2
GST1_PLUGINS_BASE_DEPENDENCIES += libgles
endif
else
GST1_PLUGINS_BASE_CONF_OPTS += -Dgl=disabled
endif
GST1_PLUGINS_BASE_CONF_OPTS += -Dgl_api='$(subst $(space),$(comma),$(GST1_PLUGINS_BASE_GL_API_LIST))'
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE_LIB_OPENGL_GLX),y)
@@ -89,7 +89,7 @@ endif
# Add GPL license if GPL plugins enabled.
ifeq ($(GST1_PLUGINS_UGLY_HAS_GPL_LICENSE),y)
GST1_PLUGINS_UGLY_LICENSE += GPL-2.0
GST1_PLUGINS_UGLY_LICENSE += , GPL-2.0
endif
# Use the following command to extract license info for plugins.
+2 -2
View File
@@ -1,3 +1,3 @@
# Locally computed
sha256 238ee17196fcb80bb58485910aaefc12d48f99e4043c2a28f06ff9588161c4e3 7.0.8-59.tar.gz
sha256 5b47db932754743460eba7a226aea85b63e3408d3c7affb4d0117f70c9594ded LICENSE
sha256 9f2b8b131222354b196c640fca4e53eb0bbf62246621b9d467f223366272d7a7 imagemagick-7.0.10-28.tar.gz
sha256 e2d364de83dd9e7c866bd99ee7dac2fe92071fb70e9b187293353fb285cf09ac LICENSE
+2 -3
View File
@@ -4,9 +4,8 @@
#
################################################################################
IMAGEMAGICK_VERSION = 7.0.8-59
IMAGEMAGICK_SOURCE = $(IMAGEMAGICK_VERSION).tar.gz
IMAGEMAGICK_SITE = https://github.com/ImageMagick/ImageMagick/archive
IMAGEMAGICK_VERSION = 7.0.10-28
IMAGEMAGICK_SITE = $(call github,ImageMagick,ImageMagick,$(IMAGEMAGICK_VERSION))
IMAGEMAGICK_LICENSE = Apache-2.0
IMAGEMAGICK_LICENSE_FILES = LICENSE
@@ -0,0 +1,132 @@
From d615cb6c39d401a569941be2a615176191afa7ac Mon Sep 17 00:00:00 2001
From: Chrostoper Ertl <chertl@microsoft.com>
Date: Thu, 28 Nov 2019 16:33:59 +0000
Subject: [PATCH] fru: Fix buffer overflow vulnerabilities
Partial fix for CVE-2020-5208, see
https://github.com/ipmitool/ipmitool/security/advisories/GHSA-g659-9qxw-p7cp
The `read_fru_area_section` function only performs size validation of
requested read size, and falsely assumes that the IPMI message will not
respond with more than the requested amount of data; it uses the
unvalidated response size to copy into `frubuf`. If the response is
larger than the request, this can result in overflowing the buffer.
The same issue affects the `read_fru_area` function.
[Retrieve from
https://github.com/ipmitool/ipmitool/commit/e824c23316ae50beb7f7488f2055ac65e8b341f2]
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
---
lib/ipmi_fru.c | 33 +++++++++++++++++++++++++++++++--
1 file changed, 31 insertions(+), 2 deletions(-)
diff --git a/lib/ipmi_fru.c b/lib/ipmi_fru.c
index cf00eff..af99aa9 100644
--- a/lib/ipmi_fru.c
+++ b/lib/ipmi_fru.c
@@ -615,7 +615,10 @@ int
read_fru_area(struct ipmi_intf * intf, struct fru_info *fru, uint8_t id,
uint32_t offset, uint32_t length, uint8_t *frubuf)
{
- uint32_t off = offset, tmp, finish;
+ uint32_t off = offset;
+ uint32_t tmp;
+ uint32_t finish;
+ uint32_t size_left_in_buffer;
struct ipmi_rs * rsp;
struct ipmi_rq req;
uint8_t msg_data[4];
@@ -628,10 +631,12 @@ read_fru_area(struct ipmi_intf * intf, struct fru_info *fru, uint8_t id,
finish = offset + length;
if (finish > fru->size) {
+ memset(frubuf + fru->size, 0, length - fru->size);
finish = fru->size;
lprintf(LOG_NOTICE, "Read FRU Area length %d too large, "
"Adjusting to %d",
offset + length, finish - offset);
+ length = finish - offset;
}
memset(&req, 0, sizeof(req));
@@ -667,6 +672,7 @@ read_fru_area(struct ipmi_intf * intf, struct fru_info *fru, uint8_t id,
}
}
+ size_left_in_buffer = length;
do {
tmp = fru->access ? off >> 1 : off;
msg_data[0] = id;
@@ -707,9 +713,18 @@ read_fru_area(struct ipmi_intf * intf, struct fru_info *fru, uint8_t id,
}
tmp = fru->access ? rsp->data[0] << 1 : rsp->data[0];
+ if(rsp->data_len < 1
+ || tmp > rsp->data_len - 1
+ || tmp > size_left_in_buffer)
+ {
+ printf(" Not enough buffer size");
+ return -1;
+ }
+
memcpy(frubuf, rsp->data + 1, tmp);
off += tmp;
frubuf += tmp;
+ size_left_in_buffer -= tmp;
/* sometimes the size returned in the Info command
* is too large. return 0 so higher level function
* still attempts to parse what was returned */
@@ -742,7 +757,9 @@ read_fru_area_section(struct ipmi_intf * intf, struct fru_info *fru, uint8_t id,
uint32_t offset, uint32_t length, uint8_t *frubuf)
{
static uint32_t fru_data_rqst_size = 20;
- uint32_t off = offset, tmp, finish;
+ uint32_t off = offset;
+ uint32_t tmp, finish;
+ uint32_t size_left_in_buffer;
struct ipmi_rs * rsp;
struct ipmi_rq req;
uint8_t msg_data[4];
@@ -755,10 +772,12 @@ read_fru_area_section(struct ipmi_intf * intf, struct fru_info *fru, uint8_t id,
finish = offset + length;
if (finish > fru->size) {
+ memset(frubuf + fru->size, 0, length - fru->size);
finish = fru->size;
lprintf(LOG_NOTICE, "Read FRU Area length %d too large, "
"Adjusting to %d",
offset + length, finish - offset);
+ length = finish - offset;
}
memset(&req, 0, sizeof(req));
@@ -773,6 +792,8 @@ read_fru_area_section(struct ipmi_intf * intf, struct fru_info *fru, uint8_t id,
if (fru->access && fru_data_rqst_size > 16)
#endif
fru_data_rqst_size = 16;
+
+ size_left_in_buffer = length;
do {
tmp = fru->access ? off >> 1 : off;
msg_data[0] = id;
@@ -804,8 +825,16 @@ read_fru_area_section(struct ipmi_intf * intf, struct fru_info *fru, uint8_t id,
}
tmp = fru->access ? rsp->data[0] << 1 : rsp->data[0];
+ if(rsp->data_len < 1
+ || tmp > rsp->data_len - 1
+ || tmp > size_left_in_buffer)
+ {
+ printf(" Not enough buffer size");
+ return -1;
+ }
memcpy((frubuf + off)-offset, rsp->data + 1, tmp);
off += tmp;
+ size_left_in_buffer -= tmp;
/* sometimes the size returned in the Info command
* is too large. return 0 so higher level function
--
2.20.1
@@ -0,0 +1,52 @@
From 879f57c3b1ff17b1ca0dbdc8aac9c7a814e876fc Mon Sep 17 00:00:00 2001
From: Chrostoper Ertl <chertl@microsoft.com>
Date: Thu, 28 Nov 2019 16:44:18 +0000
Subject: [PATCH] fru: Fix buffer overflow in ipmi_spd_print_fru
Partial fix for CVE-2020-5208, see
https://github.com/ipmitool/ipmitool/security/advisories/GHSA-g659-9qxw-p7cp
The `ipmi_spd_print_fru` function has a similar issue as the one fixed
by the previous commit in `read_fru_area_section`. An initial request is
made to get the `fru.size`, which is used as the size for the allocation
of `spd_data`. Inside a loop, further requests are performed to get the
copy sizes which are not checked before being used as the size for a
copy into the buffer.
[Retrieve from:
https://github.com/ipmitool/ipmitool/commit/840fb1cbb4fb365cb9797300e3374d4faefcdb10]
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
---
lib/dimm_spd.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/lib/dimm_spd.c b/lib/dimm_spd.c
index 41e30db..68f3b4f 100644
--- a/lib/dimm_spd.c
+++ b/lib/dimm_spd.c
@@ -1621,7 +1621,7 @@ ipmi_spd_print_fru(struct ipmi_intf * intf, uint8_t id)
struct ipmi_rq req;
struct fru_info fru;
uint8_t *spd_data, msg_data[4];
- int len, offset;
+ uint32_t len, offset;
msg_data[0] = id;
@@ -1697,6 +1697,13 @@ ipmi_spd_print_fru(struct ipmi_intf * intf, uint8_t id)
}
len = rsp->data[0];
+ if(rsp->data_len < 1
+ || len > rsp->data_len - 1
+ || len > fru.size - offset)
+ {
+ printf(" Not enough buffer size");
+ return -1;
+ }
memcpy(&spd_data[offset], rsp->data + 1, len);
offset += len;
} while (offset < fru.size);
--
2.20.1
@@ -0,0 +1,52 @@
From cd785a7fe4f42ab59bcefcf01b9175f039af29b5 Mon Sep 17 00:00:00 2001
From: Chrostoper Ertl <chertl@microsoft.com>
Date: Thu, 28 Nov 2019 16:51:49 +0000
Subject: [PATCH] session: Fix buffer overflow in ipmi_get_session_info
Partial fix for CVE-2020-5208, see
https://github.com/ipmitool/ipmitool/security/advisories/GHSA-g659-9qxw-p7cp
The `ipmi_get_session_info` function does not properly check the
response `data_len`, which is used as a copy size, allowing stack buffer
overflow.
[Retrieve from:
https://github.com/ipmitool/ipmitool/commit/41d7026946fafbd4d1ec0bcaca3ea30a6e8eed22]
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
---
lib/ipmi_session.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/lib/ipmi_session.c b/lib/ipmi_session.c
index 141f0f4..b9af1fd 100644
--- a/lib/ipmi_session.c
+++ b/lib/ipmi_session.c
@@ -309,8 +309,10 @@ ipmi_get_session_info(struct ipmi_intf * intf,
}
else
{
- memcpy(&session_info, rsp->data, rsp->data_len);
- print_session_info(&session_info, rsp->data_len);
+ memcpy(&session_info, rsp->data,
+ __min(rsp->data_len, sizeof(session_info)));
+ print_session_info(&session_info,
+ __min(rsp->data_len, sizeof(session_info)));
}
break;
@@ -341,8 +343,10 @@ ipmi_get_session_info(struct ipmi_intf * intf,
break;
}
- memcpy(&session_info, rsp->data, rsp->data_len);
- print_session_info(&session_info, rsp->data_len);
+ memcpy(&session_info, rsp->data,
+ __min(rsp->data_len, sizeof(session_info)));
+ print_session_info(&session_info,
+ __min(rsp->data_len, sizeof(session_info)));
} while (i <= session_info.session_slot_count);
break;
--
2.20.1
@@ -0,0 +1,46 @@
From 1d479fc61feacc64adea64da9601f3dfcf6f74b3 Mon Sep 17 00:00:00 2001
From: Chrostoper Ertl <chertl@microsoft.com>
Date: Thu, 28 Nov 2019 16:56:38 +0000
Subject: [PATCH] channel: Fix buffer overflow
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Partial fix for CVE-2020-5208, see
https://github.com/ipmitool/ipmitool/security/advisories/GHSA-g659-9qxw-p7cp
The `ipmi_get_channel_cipher_suites` function does not properly check
the final responses `data_len`, which can lead to stack buffer overflow
on the final copy.
[Retrieve from:
https://github.com/ipmitool/ipmitool/commit/9452be87181a6e83cfcc768b3ed8321763db50e4
The patch is slightly modified manually. The define
(MAX_CIPHER_SUITE_DATA_LEN) was introduced upstream in another patch.
Replace the define by the value 0x10.]
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
---
lib/ipmi_channel.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/lib/ipmi_channel.c b/lib/ipmi_channel.c
index fab2e54..59ac227 100644
--- a/lib/ipmi_channel.c
+++ b/lib/ipmi_channel.c
@@ -413,7 +413,10 @@ ipmi_get_channel_cipher_suites(struct ipmi_intf *intf, const char *payload_type,
lprintf(LOG_ERR, "Unable to Get Channel Cipher Suites");
return -1;
}
- if (rsp->ccode > 0) {
+ if (rsp->ccode
+ || rsp->data_len < 1
+ || rsp->data_len > sizeof(uint8_t) + 0x10)
+ {
lprintf(LOG_ERR, "Get Channel Cipher Suites failed: %s",
val2str(rsp->ccode, completion_code_vals));
return -1;
--
2.20.1
@@ -0,0 +1,92 @@
From ceebf5998b71e11c81133680560b498977d3d3cd Mon Sep 17 00:00:00 2001
From: Chrostoper Ertl <chertl@microsoft.com>
Date: Thu, 28 Nov 2019 17:06:39 +0000
Subject: [PATCH] lanp: Fix buffer overflows in get_lan_param_select
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Partial fix for CVE-2020-5208, see
https://github.com/ipmitool/ipmitool/security/advisories/GHSA-g659-9qxw-p7cp
The `get_lan_param_select` function is missing a validation check on the
responses `data_len`, which it then returns to caller functions, where
stack buffer overflow can occur.
[Retrieve from:
https://github.com/ipmitool/ipmitool/commit/d45572d71e70840e0d4c50bf48218492b79c1a10]
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
---
lib/ipmi_lanp.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/lib/ipmi_lanp.c b/lib/ipmi_lanp.c
index 65d881b..022c7f1 100644
--- a/lib/ipmi_lanp.c
+++ b/lib/ipmi_lanp.c
@@ -1809,7 +1809,7 @@ ipmi_lan_alert_set(struct ipmi_intf * intf, uint8_t chan, uint8_t alert,
if (p == NULL) {
return (-1);
}
- memcpy(data, p->data, p->data_len);
+ memcpy(data, p->data, __min(p->data_len, sizeof(data)));
/* set new ipaddr */
memcpy(data+3, temp, 4);
printf("Setting LAN Alert %d IP Address to %d.%d.%d.%d\n", alert,
@@ -1824,7 +1824,7 @@ ipmi_lan_alert_set(struct ipmi_intf * intf, uint8_t chan, uint8_t alert,
if (p == NULL) {
return (-1);
}
- memcpy(data, p->data, p->data_len);
+ memcpy(data, p->data, __min(p->data_len, sizeof(data)));
/* set new macaddr */
memcpy(data+7, temp, 6);
printf("Setting LAN Alert %d MAC Address to "
@@ -1838,7 +1838,7 @@ ipmi_lan_alert_set(struct ipmi_intf * intf, uint8_t chan, uint8_t alert,
if (p == NULL) {
return (-1);
}
- memcpy(data, p->data, p->data_len);
+ memcpy(data, p->data, __min(p->data_len, sizeof(data)));
if (strncasecmp(argv[1], "def", 3) == 0 ||
strncasecmp(argv[1], "default", 7) == 0) {
@@ -1864,7 +1864,7 @@ ipmi_lan_alert_set(struct ipmi_intf * intf, uint8_t chan, uint8_t alert,
if (p == NULL) {
return (-1);
}
- memcpy(data, p->data, p->data_len);
+ memcpy(data, p->data, __min(p->data_len, sizeof(data)));
if (strncasecmp(argv[1], "on", 2) == 0 ||
strncasecmp(argv[1], "yes", 3) == 0) {
@@ -1889,7 +1889,7 @@ ipmi_lan_alert_set(struct ipmi_intf * intf, uint8_t chan, uint8_t alert,
if (p == NULL) {
return (-1);
}
- memcpy(data, p->data, p->data_len);
+ memcpy(data, p->data, __min(p->data_len, sizeof(data)));
if (strncasecmp(argv[1], "pet", 3) == 0) {
printf("Setting LAN Alert %d destination to PET Trap\n", alert);
@@ -1917,7 +1917,7 @@ ipmi_lan_alert_set(struct ipmi_intf * intf, uint8_t chan, uint8_t alert,
if (p == NULL) {
return (-1);
}
- memcpy(data, p->data, p->data_len);
+ memcpy(data, p->data, __min(p->data_len, sizeof(data)));
if (str2uchar(argv[1], &data[2]) != 0) {
lprintf(LOG_ERR, "Invalid time: %s", argv[1]);
@@ -1933,7 +1933,7 @@ ipmi_lan_alert_set(struct ipmi_intf * intf, uint8_t chan, uint8_t alert,
if (p == NULL) {
return (-1);
}
- memcpy(data, p->data, p->data_len);
+ memcpy(data, p->data, __min(p->data_len, sizeof(data)));
if (str2uchar(argv[1], &data[3]) != 0) {
lprintf(LOG_ERR, "Invalid retry: %s", argv[1]);
--
2.20.1
@@ -0,0 +1,141 @@
From bf3ded3a474d85da99eb717acdcd8ff4f89f9879 Mon Sep 17 00:00:00 2001
From: Chrostoper Ertl <chertl@microsoft.com>
Date: Thu, 28 Nov 2019 17:13:45 +0000
Subject: [PATCH] fru, sdr: Fix id_string buffer overflows
Final part of the fixes for CVE-2020-5208, see
https://github.com/ipmitool/ipmitool/security/advisories/GHSA-g659-9qxw-p7cp
9 variants of stack buffer overflow when parsing `id_string` field of
SDR records returned from `CMD_GET_SDR` command.
SDR record structs have an `id_code` field, and an `id_string` `char`
array.
The length of `id_string` is calculated as `(id_code & 0x1f) + 1`,
which can be larger than expected 16 characters (if `id_code = 0xff`,
then length will be `(0xff & 0x1f) + 1 = 32`).
In numerous places, this can cause stack buffer overflow when copying
into fixed buffer of size `17` bytes from this calculated length.
[Retrieve from:
https://github.com/ipmitool/ipmitool/commit/7ccea283dd62a05a320c1921e3d8d71a87772637]
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
---
lib/ipmi_fru.c | 2 +-
lib/ipmi_sdr.c | 40 ++++++++++++++++++++++++----------------
2 files changed, 25 insertions(+), 17 deletions(-)
diff --git a/lib/ipmi_fru.c b/lib/ipmi_fru.c
index af99aa9..98bc984 100644
--- a/lib/ipmi_fru.c
+++ b/lib/ipmi_fru.c
@@ -3062,7 +3062,7 @@ ipmi_fru_print(struct ipmi_intf * intf, struct sdr_record_fru_locator * fru)
return 0;
memset(desc, 0, sizeof(desc));
- memcpy(desc, fru->id_string, fru->id_code & 0x01f);
+ memcpy(desc, fru->id_string, __min(fru->id_code & 0x01f, sizeof(desc)));
desc[fru->id_code & 0x01f] = 0;
printf("FRU Device Description : %s (ID %d)\n", desc, fru->device_id);
diff --git a/lib/ipmi_sdr.c b/lib/ipmi_sdr.c
index 2a9cbe3..62aac08 100644
--- a/lib/ipmi_sdr.c
+++ b/lib/ipmi_sdr.c
@@ -2084,7 +2084,7 @@ ipmi_sdr_print_sensor_eventonly(struct ipmi_intf *intf,
return -1;
memset(desc, 0, sizeof (desc));
- snprintf(desc, (sensor->id_code & 0x1f) + 1, "%s", sensor->id_string);
+ snprintf(desc, sizeof(desc), "%.*s", (sensor->id_code & 0x1f) + 1, sensor->id_string);
if (verbose) {
printf("Sensor ID : %s (0x%x)\n",
@@ -2135,7 +2135,7 @@ ipmi_sdr_print_sensor_mc_locator(struct ipmi_intf *intf,
return -1;
memset(desc, 0, sizeof (desc));
- snprintf(desc, (mc->id_code & 0x1f) + 1, "%s", mc->id_string);
+ snprintf(desc, sizeof(desc), "%.*s", (mc->id_code & 0x1f) + 1, mc->id_string);
if (verbose == 0) {
if (csv_output)
@@ -2228,7 +2228,7 @@ ipmi_sdr_print_sensor_generic_locator(struct ipmi_intf *intf,
char desc[17];
memset(desc, 0, sizeof (desc));
- snprintf(desc, (dev->id_code & 0x1f) + 1, "%s", dev->id_string);
+ snprintf(desc, sizeof(desc), "%.*s", (dev->id_code & 0x1f) + 1, dev->id_string);
if (!verbose) {
if (csv_output)
@@ -2285,7 +2285,7 @@ ipmi_sdr_print_sensor_fru_locator(struct ipmi_intf *intf,
char desc[17];
memset(desc, 0, sizeof (desc));
- snprintf(desc, (fru->id_code & 0x1f) + 1, "%s", fru->id_string);
+ snprintf(desc, sizeof(desc), "%.*s", (fru->id_code & 0x1f) + 1, fru->id_string);
if (!verbose) {
if (csv_output)
@@ -2489,35 +2489,43 @@ ipmi_sdr_print_name_from_rawentry(struct ipmi_intf *intf, uint16_t id,
int rc =0;
char desc[17];
+ const char *id_string;
+ uint8_t id_code;
memset(desc, ' ', sizeof (desc));
switch ( type) {
case SDR_RECORD_TYPE_FULL_SENSOR:
record.full = (struct sdr_record_full_sensor *) raw;
- snprintf(desc, (record.full->id_code & 0x1f) +1, "%s",
- (const char *)record.full->id_string);
+ id_code = record.full->id_code;
+ id_string = record.full->id_string;
break;
+
case SDR_RECORD_TYPE_COMPACT_SENSOR:
record.compact = (struct sdr_record_compact_sensor *) raw ;
- snprintf(desc, (record.compact->id_code & 0x1f) +1, "%s",
- (const char *)record.compact->id_string);
+ id_code = record.compact->id_code;
+ id_string = record.compact->id_string;
break;
+
case SDR_RECORD_TYPE_EVENTONLY_SENSOR:
record.eventonly = (struct sdr_record_eventonly_sensor *) raw ;
- snprintf(desc, (record.eventonly->id_code & 0x1f) +1, "%s",
- (const char *)record.eventonly->id_string);
- break;
+ id_code = record.eventonly->id_code;
+ id_string = record.eventonly->id_string;
+ break;
+
case SDR_RECORD_TYPE_MC_DEVICE_LOCATOR:
record.mcloc = (struct sdr_record_mc_locator *) raw ;
- snprintf(desc, (record.mcloc->id_code & 0x1f) +1, "%s",
- (const char *)record.mcloc->id_string);
+ id_code = record.mcloc->id_code;
+ id_string = record.mcloc->id_string;
break;
+
default:
rc = -1;
- break;
- }
+ }
+ if (!rc) {
+ snprintf(desc, sizeof(desc), "%.*s", (id_code & 0x1f) + 1, id_string);
+ }
- lprintf(LOG_INFO, "ID: 0x%04x , NAME: %-16s", id, desc);
+ lprintf(LOG_INFO, "ID: 0x%04x , NAME: %-16s", id, desc);
return rc;
}
--
2.20.1
+8
View File
@@ -10,6 +10,14 @@ IPMITOOL_SITE = http://downloads.sourceforge.net/project/ipmitool/ipmitool/$(IPM
IPMITOOL_LICENSE = BSD-3-Clause
IPMITOOL_LICENSE_FILES = COPYING
# 0008-fru-Fix-buffer-overflow-vulnerabilities.patch
# 0009-fru-Fix-buffer-overflow-in-ipmi_spd_print_fru.patch
# 0010-session-Fix-buffer-overflow-in-ipmi_get_session_info.patch
# 0011-channel-Fix-buffer-overflow.patch
# 0012-lanp-Fix-buffer-overflows-in-get_lan_param_select.patch
# 0013-fru-sdr-Fix-id_string-buffer-overflows.patch
IPMITOOL_IGNORE_CVES += CVE-2020-5208
ifeq ($(BR2_PACKAGE_IPMITOOL_LANPLUS),y)
IPMITOOL_DEPENDENCIES += openssl
IPMITOOL_CONF_OPTS += --enable-intf-lanplus
+2 -2
View File
@@ -1,7 +1,7 @@
# https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs952/MD5SUMS
# https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs9530/MD5SUMS
# and SHA512SUMS are missing the hashes for this file.
# Locally computed:
sha256 9e19775237350e299c422b7b91b0c045e90ffa4ba66abf28c8fb5eb005772f5e jbig2dec-0.18.tar.gz
sha256 279476695b38f04939aa59d041be56f6bade3422003a406a85e9792c27118a37 jbig2dec-0.19.tar.gz
# Hash for license files:
sha256 1bf5258afe453934484fd0cea97508b72301633a6a78b0ae8a9ee44ac78f26d9 LICENSE
+3 -2
View File
@@ -4,8 +4,9 @@
#
################################################################################
JBIG2DEC_VERSION = 0.18
JBIG2DEC_SITE = https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs952
JBIG2DEC_VERSION = 0.19
JBIG2DEC_SITE = \
https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs9530
JBIG2DEC_LICENSE = AGPL-3.0+
JBIG2DEC_LICENSE_FILES = LICENSE
JBIG2DEC_INSTALL_STAGING = YES
+2 -2
View File
@@ -4,10 +4,10 @@ config BR2_PACKAGE_LIBEXOSIP2
select BR2_PACKAGE_LIBOSIP2
help
eXosip is a library that hides the complexity of using the
SIP protocol for mutlimedia session establishement.
SIP protocol for multimedia session establishment.
This protocol is mainly to be used by VoIP telephony
applications (endpoints or conference server) but might be
also usefull for any application that wish to establish
also useful for any application that wish to establish
sessions like multiplayer games.
eXosip is based in libosip.
@@ -1,29 +0,0 @@
From 39e534ab696157b244ec226d649c789dcf423e42 Mon Sep 17 00:00:00 2001
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Date: Wed, 24 Apr 2019 20:48:57 +0200
Subject: [PATCH] htp.pc.in: add -lz to Libs.private
zlib is a mandatory dependency so add it to Libs.private otherwise
static linking of packages linking with htp (e.g. suricata) will fail.
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Upstream status: https://github.com/OISF/libhtp/pull/294]
---
htp.pc.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/htp.pc.in b/htp.pc.in
index 2fec995..9b1a6cc 100644
--- a/htp.pc.in
+++ b/htp.pc.in
@@ -7,6 +7,6 @@ Name: @PACKAGE_NAME@
Description: A security-aware HTTP parser, designed for use in IDS/IPS and WAF products.
Version: @PACKAGE_VERSION@
Libs: -L${libdir} -lhtp
-Libs.private: @LIBICONV@
+Libs.private: -lz @LIBICONV@
Cflags: -I${includedir} -I${libdir}/htp/include
--
2.20.1
+1 -1
View File
@@ -1,3 +1,3 @@
# Locally computed:
sha256 953651fdfe828805bb82dc1aa8b56187b0e2f80781727343e68ccf8afd6a9122 libhtp-0.5.33.tar.gz
sha256 4c3ac4c6027710455ffe725f24ac6a83b2c13fe0afc83b74df2cca78ba46976a libhtp-0.5.35.tar.gz
sha256 87c93904e5434c81622ea690c2b90097b9f162aaa92a96542649a157dbf98d15 LICENSE
+1 -1
View File
@@ -4,7 +4,7 @@
#
################################################################################
LIBHTP_VERSION = 0.5.33
LIBHTP_VERSION = 0.5.35
LIBHTP_SITE = $(call github,OISF,libhtp,$(LIBHTP_VERSION))
LIBHTP_LICENSE = BSD-3-Clause
LIBHTP_LICENSE_FILES = LICENSE
+4 -4
View File
@@ -1,5 +1,5 @@
# Locally calculated
sha256 40a262d7cc71702711a0faec106118ee004f86c86cc228281d12d16da03e02f5 LibRaw-0.19.5.tar.gz
sha256 eea173a556abac0370461e57e12aab266894ea6be3874c2be05fd87871f75449 LICENSE.LGPL
sha256 0e3098d2d54a12434715f6679ea408d57da5e8d613c385c58ecc6fe5d30cc81f LICENSE.CDDL
sha256 ed971b7f1f57fd8e7d28419ff7749cfe0f296e701687756e798a69555fd76646 README.md
sha256 1f0a383da2ce9f409087facd28261decbf6be72cc90c78cd003b0766e4d694a3 LibRaw-0.20.0.tar.gz
sha256 eea173a556abac0370461e57e12aab266894ea6be3874c2be05fd87871f75449 LICENSE.LGPL
sha256 0e3098d2d54a12434715f6679ea408d57da5e8d613c385c58ecc6fe5d30cc81f LICENSE.CDDL
sha256 313415f7f48f6cd3cc78856626aab4bbe97dbb1e9a11db9c25396ca8d0e76cd9 README.md
+9 -4
View File
@@ -4,15 +4,13 @@
#
################################################################################
LIBRAW_VERSION = 0.19.5
LIBRAW_VERSION = 0.20.0
LIBRAW_SOURCE = LibRaw-$(LIBRAW_VERSION).tar.gz
LIBRAW_SITE = http://www.libraw.org/data
LIBRAW_INSTALL_STAGING = YES
LIBRAW_CONF_OPTS += \
--disable-examples \
--disable-openmp \
--disable-demosaic-pack-gpl2 \
--disable-demosaic-pack-gpl3
--disable-openmp
LIBRAW_LICENSE = LGPL-2.1 or CDDL-1.0
LIBRAW_LICENSE_FILES = LICENSE.LGPL LICENSE.CDDL README.md
LIBRAW_DEPENDENCIES = host-pkgconf
@@ -43,4 +41,11 @@ else
LIBRAW_CONF_OPTS += --disable-lcms
endif
ifeq ($(BR2_PACKAGE_ZLIB),y)
LIBRAW_CONF_OPTS += --enable-zlib
LIBRAW_DEPENDENCIES += zlib
else
LIBRAW_CONF_OPTS += --disable-zlib
endif
$(eval $(autotools-package))
@@ -1,29 +0,0 @@
From 8d8428cbbc2c00d078cfbc967e4e6fee7ff7bf0b Mon Sep 17 00:00:00 2001
From: Heiko Thiery <heiko.thiery@gmail.com>
Date: Wed, 15 Apr 2020 11:57:29 +0200
Subject: [PATCH] libssh.h: bump to version 0.9.4
In the released version of libssh the version bump was not done
properly. Therefore the current release 0.9.4 reports 0.9.3.
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
---
include/libssh/libssh.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/libssh/libssh.h b/include/libssh/libssh.h
index 79030131..e2a8d991 100644
--- a/include/libssh/libssh.h
+++ b/include/libssh/libssh.h
@@ -79,7 +79,7 @@
/* libssh version */
#define LIBSSH_VERSION_MAJOR 0
#define LIBSSH_VERSION_MINOR 9
-#define LIBSSH_VERSION_MICRO 3
+#define LIBSSH_VERSION_MICRO 4
#define LIBSSH_VERSION_INT SSH_VERSION_INT(LIBSSH_VERSION_MAJOR, \
LIBSSH_VERSION_MINOR, \
--
2.20.1
@@ -1,45 +0,0 @@
From 6417f5a3cac8537ac6f6ff7fc1642dfaa0917fb4 Mon Sep 17 00:00:00 2001
From: Jakub Jelen <jjelen@redhat.com>
Date: Thu, 16 Apr 2020 11:13:34 +0200
Subject: [PATCH] channels: Avoid returning SSH_AGAIN from
ssh_channel_poll_timeout()
This addresses a regression introduced in 3bad0607, partially fixed in 022409e9,
but the function was still able to return SSH_AGAIN, which was not expected by
callers.
Based on discussion in [1] and [2]
[1] https://gitlab.com/libssh/libssh-mirror/-/merge_requests/101
[2] https://www.libssh.org/archive/libssh/2020-03/0000029.html
Signed-off-by: Jakub Jelen <jjelen@redhat.com>
Reviewed-by: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
[Backport from upstream commit:
6417f5a3cac8537ac6f6ff7fc1642dfaa0917fb4]
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
---
src/channels.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/channels.c b/src/channels.c
index bcc1c207..9fe309d0 100644
--- a/src/channels.c
+++ b/src/channels.c
@@ -3116,6 +3116,12 @@ int ssh_channel_poll_timeout(ssh_channel channel, int timeout, int is_stderr)
session->session_state == SSH_SESSION_STATE_ERROR) {
rc = SSH_ERROR;
goto out;
+ } else if (rc == SSH_AGAIN) {
+ /* If the above timeout expired, it is ok and we do not need to
+ * attempt to check the read buffer. The calling functions do not
+ * expect us to return SSH_AGAIN either here. */
+ rc = SSH_OK;
+ goto out;
}
len = ssh_buffer_get_len(stdbuf);
if (len > 0) {
--
2.20.1
+2 -2
View File
@@ -1,5 +1,5 @@
# Locally calculated after checking pgp signature
# https://www.libssh.org/files/0.9/libssh-0.9.3.tar.xz.asc
# https://www.libssh.org/files/0.9/libssh-0.9.5.tar.xz.asc
# with key 8DFF53E18F2ABC8D8F3C92237EE0FC4DCC014E3D
sha256 150897a569852ac05aac831dc417a7ba8e610c86ca2e0154a99c6ade2486226b libssh-0.9.4.tar.xz
sha256 acffef2da98e761fc1fd9c4fddde0f3af60ab44c4f5af05cd1b2d60a3fa08718 libssh-0.9.5.tar.xz
sha256 1656186e951db1c010a8485481fa94587f7e53a26d24976bef97945ad0c4df5a COPYING
+1 -1
View File
@@ -5,7 +5,7 @@
################################################################################
LIBSSH_VERSION_MAJOR = 0.9
LIBSSH_VERSION = $(LIBSSH_VERSION_MAJOR).4
LIBSSH_VERSION = $(LIBSSH_VERSION_MAJOR).5
LIBSSH_SOURCE = libssh-$(LIBSSH_VERSION).tar.xz
LIBSSH_SITE = https://www.libssh.org/files/$(LIBSSH_VERSION_MAJOR)
LIBSSH_LICENSE = LGPL-2.1
@@ -12,9 +12,14 @@ LIBXML_PARSER_PERL_LICENSE = Artistic or GPL-1.0+
LIBXML_PARSER_PERL_LICENSE_FILES = README
LIBXML_PARSER_PERL_RUN_PERL = `which perl`
HOST_LIBXML_PARSER_PERL_CONFIGURE_OPTS = \
$(HOST_CONFIGURE_OPTS) \
LD="$(HOSTCC)"
define HOST_LIBXML_PARSER_PERL_CONFIGURE_CMDS
(cd $(@D) ; \
$(HOST_CONFIGURE_OPTS) $(LIBXML_PARSER_PERL_RUN_PERL) Makefile.PL \
$(HOST_LIBXML_PARSER_PERL_CONFIGURE_OPTS) \
$(LIBXML_PARSER_PERL_RUN_PERL) Makefile.PL \
PREFIX=$(HOST_DIR) \
EXPATLIBPATH=$(HOST_DIR)/lib \
EXPATINCPATH=$(HOST_DIR)/include \
@@ -25,7 +30,7 @@ define HOST_LIBXML_PARSER_PERL_CONFIGURE_CMDS
endef
define HOST_LIBXML_PARSER_PERL_BUILD_CMDS
$(HOST_MAKE_ENV) $(MAKE) -C $(@D)
$(HOST_MAKE_ENV) $(MAKE) $(HOST_LIBXML_PARSER_PERL_CONFIGURE_OPTS) -C $(@D)
endef
define HOST_LIBXML_PARSER_PERL_INSTALL_CMDS
@@ -0,0 +1,40 @@
From 50f06b3efb638efb0abd95dc62dca05ae67882c2 Mon Sep 17 00:00:00 2001
From: Nick Wellnhofer <wellnhofer@aevum.de>
Date: Fri, 7 Aug 2020 21:54:27 +0200
Subject: [PATCH] Fix out-of-bounds read with 'xmllint --htmlout'
Make sure that truncated UTF-8 sequences don't cause an out-of-bounds
array access.
Thanks to @SuhwanSong and the Agency for Defense Development (ADD) for
the report.
Fixes #178.
[Retrieved from:
https://gitlab.gnome.org/GNOME/libxml2/-/commit/50f06b3efb638efb0abd95dc62dca05ae67882c2]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
xmllint.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/xmllint.c b/xmllint.c
index f6a8e4636..c647486f3 100644
--- a/xmllint.c
+++ b/xmllint.c
@@ -528,6 +528,12 @@ static void
xmlHTMLEncodeSend(void) {
char *result;
+ /*
+ * xmlEncodeEntitiesReentrant assumes valid UTF-8, but the buffer might
+ * end with a truncated UTF-8 sequence. This is a hack to at least avoid
+ * an out-of-bounds read.
+ */
+ memset(&buffer[sizeof(buffer)-4], 0, 4);
result = (char *) xmlEncodeEntitiesReentrant(NULL, BAD_CAST buffer);
if (result) {
xmlGenericError(xmlGenericErrorContext, "%s", result);
--
GitLab
+2
View File
@@ -13,6 +13,8 @@ LIBXML2_LICENSE_FILES = COPYING
LIBXML2_IGNORE_CVES += CVE-2020-7595
# 0002-Fix-memory-leak-in-xmlSchemaValidateStream.patch
LIBXML2_IGNORE_CVES += CVE-2019-20388
# 0003-Fix-out-of-bounds-read-with-xmllint--htmlout.patch
LIBXML2_IGNORE_CVES += CVE-2020-24977
LIBXML2_CONFIG_SCRIPTS = xml2-config
# relocation truncated to fit: R_68K_GOT16O
+6 -6
View File
@@ -53,7 +53,6 @@ config BR2_KERNEL_HEADERS_4_19
config BR2_KERNEL_HEADERS_5_4
bool "Linux 5.4.x kernel headers"
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4
select BR2_KERNEL_HEADERS_LATEST
config BR2_KERNEL_HEADERS_5_5
bool "Linux 5.5.x kernel headers"
@@ -62,6 +61,7 @@ config BR2_KERNEL_HEADERS_5_5
config BR2_KERNEL_HEADERS_5_6
bool "Linux 5.6.x kernel headers"
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_6
select BR2_KERNEL_HEADERS_LATEST
config BR2_KERNEL_HEADERS_VERSION
bool "Manually specified Linux version"
@@ -334,11 +334,11 @@ endchoice
config BR2_DEFAULT_KERNEL_HEADERS
string
default "4.4.234" if BR2_KERNEL_HEADERS_4_4
default "4.9.234" if BR2_KERNEL_HEADERS_4_9
default "4.14.195" if BR2_KERNEL_HEADERS_4_14
default "4.19.142" if BR2_KERNEL_HEADERS_4_19
default "5.4.61" if BR2_KERNEL_HEADERS_5_4
default "4.4.238" if BR2_KERNEL_HEADERS_4_4
default "4.9.238" if BR2_KERNEL_HEADERS_4_9
default "4.14.200" if BR2_KERNEL_HEADERS_4_14
default "4.19.150" if BR2_KERNEL_HEADERS_4_19
default "5.4.70" if BR2_KERNEL_HEADERS_5_4
default "5.5.19" if BR2_KERNEL_HEADERS_5_5
default "5.6.19" if BR2_KERNEL_HEADERS_5_6
default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION
+1
View File
@@ -14,6 +14,7 @@ HOST_LOCALEDEF_DL_SUBDIR = glibc
HOST_LOCALEDEF_DEPENDENCIES = \
$(BR2_MAKE_HOST_DEPENDENCY) \
$(BR2_PYTHON3_HOST_DEPENDENCY) \
host-bison \
host-gawk
+6
View File
@@ -0,0 +1,6 @@
# Hashes from: http://www.lua.org/ftp/
md5 2e115fe26e435e33b0d5c022e4490567 lua-5.1.5.tar.gz
sha1 b3882111ad02ecc6b972f8c1241647905cb2e3fc lua-5.1.5.tar.gz
# Locally computed
sha256 ee5e3e82af1e1b543c4f216e399d7c8cfee797711913f349e385101c4ae60a79 COPYRIGHT
@@ -1,31 +0,0 @@
Fix revision number
In 0002-shared-libs-for-lua.patch, revision number is used to set
library name:
TO_SOLIB = liblua.so.$(R)
However, library is built using PKG_VERSION which is passed only during
build step:
$(CC) -o $@.$(PKG_VERSION) -shared -Wl,-soname="$@.$(PKG_VERSION)" $?
As a result, dynamic library is not installed in staging or target paths
since bump to lua 5.3.5
So, instead of replacing R by PKG_VERSION and passing this variable in
all steps, simply update R to 5
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Index: b/Makefile
===================================================================
--- a/Makefile
+++ b/Makefile
@@ -47,6 +47,6 @@
# Lua version and release.
V= 5.3
-R= $V.4
+R= $V.5
# Targets start here.
all: $(PLAT)
+6
View File
@@ -0,0 +1,6 @@
# Hashes from: http://www.lua.org/ftp/
md5 83f23dbd5230140a3770d5f54076948d lua-5.3.6.tar.gz
sha1 f27d20d6c81292149bc4308525a9d6733c224fa5 lua-5.3.6.tar.gz
# Locally computed
sha256 2ddff2161e0c4487d744943565538743c0721485873092f6809d072a983b06ef doc/readme.html
-8
View File
@@ -1,8 +0,0 @@
# Hashes from: http://www.lua.org/ftp/
md5 4f4b4f323fd3514a68e0ab3da8ce3455 lua-5.3.5.tar.gz
sha1 112eb10ff04d1b4c9898e121d6bdf54a81482447 lua-5.3.5.tar.gz
md5 2e115fe26e435e33b0d5c022e4490567 lua-5.1.5.tar.gz
sha1 b3882111ad02ecc6b972f8c1241647905cb2e3fc lua-5.1.5.tar.gz
# Locally computed
sha256 ee5e3e82af1e1b543c4f216e399d7c8cfee797711913f349e385101c4ae60a79 COPYRIGHT
+1 -1
View File
@@ -5,7 +5,7 @@
################################################################################
ifeq ($(BR2_PACKAGE_LUA_5_3),y)
LUA_VERSION = 5.3.5
LUA_VERSION = 5.3.6
else
LUA_VERSION = 5.1.5
endif
+2 -1
View File
@@ -1,3 +1,4 @@
# From https://github.com/ARMmbed/mbedtls/releases/tag/v2.16.8:
sha256 fe9e3b15c3375943bdfebbbb20dd6b4f1147b3b5d926248bd835d73247407430 mbedtls-2.16.8.tar.gz
# Locally calculated
sha256 4786b7d1676f5e4d248f3a7f2d28446876d64962634f060ff21b92c690cfbe86 mbedtls-2.16.7.tar.gz
sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 apache-2.0.txt
+2 -2
View File
@@ -4,8 +4,8 @@
#
################################################################################
MBEDTLS_VERSION = 2.16.7
MBEDTLS_SITE = $(call github,ARMmbed,mbedtls,mbedtls-$(MBEDTLS_VERSION))
MBEDTLS_VERSION = 2.16.8
MBEDTLS_SITE = $(call github,ARMmbed,mbedtls,v$(MBEDTLS_VERSION))
MBEDTLS_CONF_OPTS = \
-DENABLE_PROGRAMS=$(if $(BR2_PACKAGE_MBEDTLS_PROGRAMS),ON,OFF) \
-DENABLE_TESTING=OFF
@@ -1,142 +0,0 @@
From 1146bf07624b5820b942b84b68e66f0d3dd25914 Mon Sep 17 00:00:00 2001
From: Ola Jeppsson <ola.jeppsson@gmail.com>
Date: Mon, 7 Oct 2019 18:07:30 -0400
Subject: [PATCH] configure: Fix cross-compilation errors
AC_RUN_IFELSE does not work when cross-compiling so we need to provide
fallback methods for those cases.
I tried to use constructs that work with Autoconf 2.52.
Alas, I wasn't able to generate a working build system with that version.
Autoconf 2.58 / Automake 1.7.9 is the earliest combo that I could get
to work (with and without this patch).
Perhaps it's time for a slight bump for the required version numbers?
Cross-compiles sucessfully against:
riscv64-unknown-linux-gnu
Downloaded from upstream PR:
https://github.com/memcached/memcached/pull/552
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
configure.ac | 80 +++++++++++++++++++++++++++-------------------------
1 file changed, 41 insertions(+), 39 deletions(-)
diff --git a/configure.ac b/configure.ac
index fb78fc5..27dc939 100644
--- a/configure.ac
+++ b/configure.ac
@@ -264,23 +264,42 @@ return sizeof(void*) == 8 ? 0 : 1;
],[
CFLAGS="-m64 $org_cflags"
],[
- AC_MSG_ERROR([Don't know how to build a 64-bit object.])
+ AC_MSG_ERROR([Don't know how to build a 64-bit object.])
+ ],[
+ dnl cross compile
+ AC_MSG_WARN([Assuming no extra CFLAGS are required for cross-compiling 64bit version.])
])
fi
dnl If data pointer is 64bit or not.
-AC_RUN_IFELSE(
- [AC_LANG_PROGRAM([], [dnl
-return sizeof(void*) == 8 ? 0 : 1;
- ])
-],[
- have_64bit_ptr=yes
-],[
+AC_CHECK_HEADERS([stdint.h])
+AS_IF([test -z "$have_64bit_ptr"],
+ [AC_RUN_IFELSE(
+ [AC_LANG_PROGRAM([], [return sizeof(void*) == 8 ? 0 : 1;])],
+ [have_64bit_ptr=yes ],
+ [have_64bit_ptr=no],
+ [dnl cross compile (this test requires C99)
+ AS_IF([test "x$ac_cv_header_stdint_h" = xyes],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([
+ #include <stdint.h>
+ #if UINTPTR_MAX == 0xFFFFFFFFFFFFFFFFUL
+ /* 64 bit pointer */
+ #else
+ #error 32 bit pointer
+ #endif
+ ], [])],
+ [have_64bit_ptr=yes],
+ [have_64bit_ptr=no])],
+ [have_64bit_ptr=unknown])
+ ])
])
-
-if test $have_64bit_ptr = yes; then
+AS_IF([test "$have_64bit_ptr" = "unknown" ],[
+ AC_MSG_ERROR([Cannot detect pointer size. Must pass have_64bit_ptr={yes,no} to configure.])
+])
+AS_IF([test "$have_64bit_ptr" = yes],[
AC_DEFINE(HAVE_64BIT_PTR, 1, [data pointer is 64bit])
-fi
+])
# Issue 213: Search for clock_gettime to help people linking
# with a static version of libevent
@@ -570,30 +589,10 @@ fi
AC_C_SOCKLEN_T
dnl Check if we're a little-endian or a big-endian system, needed by hash code
-AC_DEFUN([AC_C_ENDIAN],
-[AC_CACHE_CHECK(for endianness, ac_cv_c_endian,
-[
- AC_RUN_IFELSE(
- [AC_LANG_PROGRAM([], [dnl
- long val = 1;
- char *c = (char *) &val;
- exit(*c == 1);
- ])
- ],[
- ac_cv_c_endian=big
- ],[
- ac_cv_c_endian=little
- ])
-])
-if test $ac_cv_c_endian = big; then
- AC_DEFINE(ENDIAN_BIG, 1, [machine is bigendian])
-fi
-if test $ac_cv_c_endian = little; then
- AC_DEFINE(ENDIAN_LITTLE, 1, [machine is littleendian])
-fi
-])
-
-AC_C_ENDIAN
+AC_C_BIGENDIAN(
+ [AC_DEFINE(ENDIAN_BIG, 1, [machine is bigendian])],
+ [AC_DEFINE(ENDIAN_LITTLE, 1, [machine is littleendian])],
+ [AC_MSG_ERROR([Cannot detect endianness. Must pass ac_cv_c_bigendian={yes,no} to configure.])])
AC_DEFUN([AC_C_HTONLL],
[
@@ -670,12 +669,15 @@ AC_DEFUN([AC_C_ALIGNMENT],
],[
ac_cv_c_alignment=need
],[
- ac_cv_c_alignment=need
+ dnl cross compile
+ ac_cv_c_alignment=maybe
])
])
-if test $ac_cv_c_alignment = need; then
- AC_DEFINE(NEED_ALIGN, 1, [Machine need alignment])
-fi
+AS_IF([test $ac_cv_c_alignment = need],
+ [AC_DEFINE(NEED_ALIGN, 1, [Machine need alignment])])
+AS_IF([test $ac_cv_c_alignment = maybe],
+ [AC_MSG_WARN([Assuming aligned access is required when cross-compiling])
+ AC_DEFINE(NEED_ALIGN, 1, [Machine need alignment])])
])
AC_C_ALIGNMENT
--
2.20.1
@@ -1,76 +0,0 @@
From ec7f3bc97c53578d5ca332b9e86c4d08d155c5a0 Mon Sep 17 00:00:00 2001
From: Ola Jeppsson <ola.jeppsson@gmail.com>
Date: Mon, 7 Oct 2019 19:57:46 -0400
Subject: [PATCH] configure: Simplify pointer size check
Tested with:
Autoconf 2.59 / Automake 1.7.9
Autoconf 2.69 / Automake 1.16.1
Downloaded from upstream PR:
https://github.com/memcached/memcached/pull/552
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
configure.ac | 31 ++-----------------------------
restart.h | 2 +-
2 files changed, 3 insertions(+), 30 deletions(-)
diff --git a/configure.ac b/configure.ac
index 27dc939..7e5bd5d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -271,35 +271,8 @@ return sizeof(void*) == 8 ? 0 : 1;
])
fi
-dnl If data pointer is 64bit or not.
-AC_CHECK_HEADERS([stdint.h])
-AS_IF([test -z "$have_64bit_ptr"],
- [AC_RUN_IFELSE(
- [AC_LANG_PROGRAM([], [return sizeof(void*) == 8 ? 0 : 1;])],
- [have_64bit_ptr=yes ],
- [have_64bit_ptr=no],
- [dnl cross compile (this test requires C99)
- AS_IF([test "x$ac_cv_header_stdint_h" = xyes],
- [AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([
- #include <stdint.h>
- #if UINTPTR_MAX == 0xFFFFFFFFFFFFFFFFUL
- /* 64 bit pointer */
- #else
- #error 32 bit pointer
- #endif
- ], [])],
- [have_64bit_ptr=yes],
- [have_64bit_ptr=no])],
- [have_64bit_ptr=unknown])
- ])
-])
-AS_IF([test "$have_64bit_ptr" = "unknown" ],[
- AC_MSG_ERROR([Cannot detect pointer size. Must pass have_64bit_ptr={yes,no} to configure.])
-])
-AS_IF([test "$have_64bit_ptr" = yes],[
- AC_DEFINE(HAVE_64BIT_PTR, 1, [data pointer is 64bit])
-])
+dnl Check if data pointer is 64bit or not
+AC_CHECK_SIZEOF([void *])
# Issue 213: Search for clock_gettime to help people linking
# with a static version of libevent
diff --git a/restart.h b/restart.h
index 76cd0a8..9de5096 100644
--- a/restart.h
+++ b/restart.h
@@ -4,7 +4,7 @@
#define RESTART_TAG_MAXLEN 255
// Track the pointer size for restart fiddling.
-#ifdef HAVE_64BIT_PTR
+#if SIZEOF_VOID_P == 8
typedef uint64_t mc_ptr_t;
#else
typedef uint32_t mc_ptr_t;
--
2.20.1
@@ -0,0 +1,56 @@
From 0447ae4cbbebb87d3f28bb92f7e219a47263b889 Mon Sep 17 00:00:00 2001
From: Sergei Trofimovich <slyfox@gentoo.org>
Date: Thu, 23 Jan 2020 22:16:36 +0000
Subject: [PATCH] hash: fix build failure against gcc-10
On gcc-10 (and gcc-9 -fno-common) build fails as:
```
gcc -g -O2 -pthread -pthread -Wall -Werror -pedantic -Wmissing-prototypes \
-Wmissing-declarations -Wredundant-decls -o memcached ... -levent
ld: memcached-hash.o:memcached/hash.h:5:
multiple definition of `hash'; memcached-memcached.o:memcached/hash.h:5: first defined here
```
gcc-10 will change the default from -fcommon to fno-common:
https://gcc.gnu.org/PR85678.
The error also happens if CFLAGS=-fno-common passed explicitly.
Reported-by: Brian Evans
Bug: https://bugs.gentoo.org/706196
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
[Retrieved from:
https://github.com/memcached/memcached/commit/0447ae4cbbebb87d3f28bb92f7e219a47263b889]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
hash.c | 2 ++
hash.h | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/hash.c b/hash.c
index a0c30369f..b5ff28ae4 100644
--- a/hash.c
+++ b/hash.c
@@ -4,6 +4,8 @@
#include "jenkins_hash.h"
#include "murmur3_hash.h"
+hash_func hash;
+
int hash_init(enum hashfunc_type type) {
switch(type) {
case JENKINS_HASH:
diff --git a/hash.h b/hash.h
index 059d1e2a6..3b2a98478 100644
--- a/hash.h
+++ b/hash.h
@@ -2,7 +2,7 @@
#define HASH_H
typedef uint32_t (*hash_func)(const void *key, size_t length);
-hash_func hash;
+extern hash_func hash;
enum hashfunc_type {
JENKINS_HASH=0, MURMUR3_HASH
+4 -4
View File
@@ -1,6 +1,6 @@
# From http://www.memcached.org/files/memcached-1.5.19.tar.gz.sha1
sha1 14e6a02e743838696fcb620edf6a2fd7e60cabec memcached-1.5.19.tar.gz
# From http://www.memcached.org/files/memcached-1.5.22.tar.gz.sha1
sha1 3fe5d3929130e860efcfde18d4d396a29db006b7 memcached-1.5.22.tar.gz
# Locally computed
sha256 3ddcdaa2d14d215f3111a7448b79c889c57618a26e97ad989581f1880a5a4be0 memcached-1.5.19.tar.gz
sha256 bc887c4ad8051fe690ace9528fe37a2e0bb362e6d963331d82e845ca9b585a0c COPYING
sha256 c2b47e9d20575a2367087c229636ffc3fb699a6c3a7f3a22f44402f25f5f1f93 memcached-1.5.22.tar.gz
sha256 bc887c4ad8051fe690ace9528fe37a2e0bb362e6d963331d82e845ca9b585a0c COPYING
+1 -4
View File
@@ -4,16 +4,13 @@
#
################################################################################
MEMCACHED_VERSION = 1.5.19
MEMCACHED_VERSION = 1.5.22
MEMCACHED_SITE = http://www.memcached.org/files
MEMCACHED_DEPENDENCIES = libevent
MEMCACHED_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99'
MEMCACHED_CONF_OPTS = --disable-coverage
MEMCACHED_LICENSE = BSD-3-Clause
MEMCACHED_LICENSE_FILES = COPYING
# 0001-configure-Fix-cross-compilation-errors.patch
# 0002-configure-Simplify-pointer-size-check.patch
MEMCACHED_AUTORECONF = YES
ifeq ($(BR2_ENDIAN),"BIG")
MEMCACHED_CONF_ENV += ac_cv_c_endian=big
+7 -1
View File
@@ -370,7 +370,13 @@ config BR2_PACKAGE_MESA3D_DRI_DRIVER_NOUVEAU
Support for Nvidia-based GPUs.
config BR2_PACKAGE_MESA3D_DRI_DRIVER_RADEON
bool "DRI radeon driver"
bool "DRI radeon r100 driver"
depends on BR2_i386 || BR2_x86_64
# libdrm's radeon option depends on LIBDRM_HAS_ATOMIC. Propagating
# that dependency here causes a circular dependency that Kconfig
# can't see is just spurious. However, that dependency is about
# the toolchain having sync4 primitives, which is always a given
# for i386 and x86_64.
select BR2_PACKAGE_MESA3D_DRI_DRIVER
select BR2_PACKAGE_LIBDRM_RADEON
help

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