Compare commits

...

118 Commits

Author SHA1 Message Date
Peter Korsgaard b07116644d Update for 2018.02.5
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-29 17:56:17 +02:00
Adam Duskett 4e4472670a postgresql: security bump to 10.5
Fixes CVE-2018-10915 & CVE-2018-10925

Changelog: https://www.postgresql.org/docs/10/static/release-10-5.html

Signed-off-by: Adam Duskett <aduskett@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 81ccf146a7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-29 08:38:52 +02:00
Jörg Krause 2aafa0366f package/shairport-sync: add upstream patch to fix build issue with soxr
Add upstream patch to fix build issue detected by the Buildroot autobuilder:

```
arm-buildroot-linux-uclibcgnueabi/sysroot/usr//lib/libsoxr.a(soxr.c.o): In function `soxr_create':
soxr.c:(.text+0xd4c): undefined reference to `av_get_cpu_flags'
collect2: error: ld returned 1 exit status
```

A quick look at the soxr source code shows that `soxr_create()` might use
`av_get_cpu_flags()` depending on the architecture.

For the sake of simplicity link with `-lavutil` if it is found when using soxr.

Even better, as soxr provides a pkg-config file, this should be prefered.

Upstream issue: https://github.com/mikebrady/shairport-sync/issues/733
Upstream status: 5101ab2d13e2b89ea3c1276df5fb7413634eeccd

Fixes:
http://autobuild.buildroot.net/results/53d/53d21686780aa2485745b59e812b6280dd39f1c5
http://autobuild.buildroot.net/results/605/60576363adfca404c3a7883d5d46e8a4a9ee8171
http://autobuild.buildroot.net/results/806/806867ab1c6f42ad1b34d44844efc57272d48235
http://autobuild.buildroot.net/results/840/840810601fbb8a7957ea9dae175b959a7f9b7491
.. and more.

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit e047dee241)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-29 07:58:35 +02:00
Baruch Siach 08b9bc2f61 openssh: security bump to version 7.8
Fixes CVE-2018-15473: user enumeration vulnerability due to not delaying
bailout for an invalid authenticating user until after the packet
containing the request has been fully parsed.

Some OpenSSH developers don't consider this a security issue:

  https://lists.mindrot.org/pipermail/openssh-unix-dev/2018-August/037138.html

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 5ef5b39bd4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-28 16:13:40 +02:00
Baruch Siach 59d4d89f39 openssh: bump to version 7.7p1
Drop upstream patches, renumber the rest.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit a08cd50e98)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-28 16:13:33 +02:00
Julien BOIBESSOT ef12eee254 package/openssh: also install ssh-copy-id script
This script is useful to copy SSH keys between client and server [1] and
installed on most distributions (for example on debian: [2]).

[1] https://www.ssh.com/ssh/copy-id
[2] https://packages.debian.org/fr/jessie/armhf/openssh-client/filelist

Signed-off-by: Julien BOIBESSOT <julien.boibessot@armadeus.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
[Thomas: use full destination path.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

(cherry picked from commit 0552b7fc38)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-28 16:13:28 +02:00
Baruch Siach 309269ca91 libsoup: add upstream security fix
Fixes CVE-2018-12910: The get_cookies function in soup-cookie-jar.c in
libsoup 2.63.2 allows attackers to have unspecified impact via an empty
hostname.

Cc: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 8a4536b2dd)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-28 15:44:10 +02:00
Peter Korsgaard 261ca83121 mbedtls: fix x86 PIC build with GCC < 5
Fixes:
http://autobuild.buildroot.net/results/d6d/d6dc9a640aa1f6650a3e7b9397f2fe2ae3433f4d/
http://autobuild.buildroot.net/results/ab5/ab5a58ea7845f9f378454ee1aa7e872448618ba9/

ebx was recently added to the x86 inline asm MULADDC_STOP clobber list to
fix #1550, but this causes the build to fail with GCC < 5 when building in
PIC mode with errors like:

include/mbedtls/bn_mul.h:46:13: error: PIC register clobbered by ‘ebx’ in ‘asm’

This is because older GCC versions treated the x86 ebx register (which is
used for the GOT) as a fixed reserved register when building as PIC.

This is fixed by an improved register allocator in GCC 5+.  From the release
notes:

Register allocation improvements: Reuse of the PIC hard register, instead of
using a fixed register, was implemented on x86/x86-64 targets.  This
improves generated PIC code performance as more hard registers can be used.

https://www.gnu.org/software/gcc/gcc-5/changes.html

As a workaround, add a patch to detect this situation and disable the inline
assembly, similar to the MULADDC_CANNOT_USE_R7 logic.

Patch submitted upstream: https://github.com/ARMmbed/mbedtls/pull/1986

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 11241ac656)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-28 10:12:26 +02:00
Christopher McCrory 64e63b6ce6 php: fix build with mysqli
This fixes autobuild failures like
http://autobuild.buildroot.net/results/3288b742cee650ee47a41c5b4d6aaef1fe67bff1

php compile breaks with:

ext/mysqlnd/mysqlnd_auth.o: In function `php_mysqlnd_scramble_sha2':
mysqlnd_auth.c:(.text+0x1054): undefined reference to `PHP_SHA256Init'
mysqlnd_auth.c:(.text+0x1064): undefined reference to `PHP_SHA256Update'
mysqlnd_auth.c:(.text+0x1070): undefined reference to `PHP_SHA256Final'
mysqlnd_auth.c:(.text+0x1078): undefined reference to `PHP_SHA256Init'
mysqlnd_auth.c:(.text+0x1088): undefined reference to `PHP_SHA256Update'
mysqlnd_auth.c:(.text+0x1094): undefined reference to `PHP_SHA256Final'
mysqlnd_auth.c:(.text+0x109c): undefined reference to `PHP_SHA256Init'
mysqlnd_auth.c:(.text+0x10ac): undefined reference to `PHP_SHA256Update'
mysqlnd_auth.c:(.text+0x10bc): undefined reference to `PHP_SHA256Update'
mysqlnd_auth.c:(.text+0x10c8): undefined reference to `PHP_SHA256Final'

It looks like the php mysqli extension needs the hash extension to work.  This
seems to be a php Make dependany bug.  This patch works around it until the
upstream maintainers can fix it.

Signed-off-by: Christopher McCrory <chrismcc@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 65f9645263)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-28 10:12:21 +02:00
Peter Korsgaard 6e2dd4549b dropbear: add upstream security fix for CVE-2018-15599
dropbear is affected by an user enumeration vulnerability similar to the
recent issue in openssh (CVE-2018-15473).  Add an upstream patch fixing the
issue.

For more details, see the discussion on the mailing list:
http://lists.ucc.gu.uwa.edu.au/pipermail/dropbear/2018q3/002110.html

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 4a3b0ba38f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-27 11:32:38 +02:00
Stefan Sørensen 25c079de0e dropbear: Do not build static binary
Dropbear 2018.76 now uses the --enable-static option to indicate that a static
binary should be built. This will incorrectly pick up the generic buildroot
option intended for building static libraries, causing an unwanted static
binary build with BR2_SHARED_STATIC_LIBS.

Fix by appending an --disable-static configure flag, overriding the buildroot
default.

Signed-off-by: Stefan Sørensen <stefan.sorensen@spectralink.com>
Reviewed-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit c9922a4d2f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-27 11:31:28 +02:00
Stefan Sørensen c354b1edb5 dropbear: Fix host key loading with 521 bit ecdsa keys
Dropbear 2018.76 changed the default ecdsa host key size form 521 to 256
bits, but this breaks systems with an existing 521 bit key, blocking ssh
logins.

Apply the upstream fix from https://secure.ucc.asn.au/hg/dropbear/rev/0dc3103a5900 :

  Only advertise a single server ecdsa key when -R (generate as required) is
  specified. Fixes -R now that default ecdsa key size has changed.

[Peter: apply-patches.sh does not like suffix-less filename, so include
	patch in Buildroot]
Signed-off-by: Stefan Sørensen <stefan.sorensen@spectralink.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>

(cherry picked from commit 8a38d7cc9a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-27 11:31:16 +02:00
Francois Perrad 2450968021 dropbear: unbundle libtomath & libtomcrypt
DROPBEAR_SMALL_CODE could be only honored with bundled libtomcrypt

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit cf9b5522d1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-27 11:30:57 +02:00
Thomas Petazzoni dccaff8e82 dropbear: fix build with non-SSP capable toolchain
By default, Dropbear's configure script enables hardening
flags. Unfortunately, the check for SSP only uses AC_COMPILE_IFELSE(),
and therefore doesn't properly test for the availability of libssp,
visible only at link time.

In addition, Buildroot passes its own hardening flags, depending on
various global options. So, we simply disable hardening flags in
Dropbear.

This fixes a build failure with non-SSP capable toolchains happening
since the bump to 2018.76.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b0aafef619)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-27 11:30:29 +02:00
Francois Perrad e7fc3403bb dropbear: bump to version 2018.76
with this new version:
  - "configure --enable-static" should now be used instead of
    "make STATIC=1"
  - any customised options should be put in localoptions.h

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 2e035a9aec)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-27 11:30:22 +02:00
Yann E. MORIN 743fd97689 package/brltty: fix cross-compilation
brltty has a very inventive buildsystem, where it internall runs
./configure for the build machine In doing so, it generates a list
of make variables to define what the build machine supports, like
it does for the target.

However, the build variables are generated with a convoluted sed
script that scans the target list, and appends _FOR_BUILD to each
target variables. Then, both lists are included from the Makefile,
on the assumption that the build variables will not clash with the
target variables.

Where it gets interesting, is that that sed script considers the
variables names to match '[A-Za-z][A-Za-z0-9_]*'

And there we see why ATSPI2_PACKAGE does not match: it contains a
digit.

So, some build variables will inevitably override target ones.

Fix that by simply expanding the matching regexp to allow digits
in variable names.

Fixes:
    http://autobuild.buildroot.org/results/a37/a37782b3cfc1a96cc129db8fade20a36a7b2d470/
    http://autobuild.buildroot.org/results/97e/97edc6a47d2140968e84b409cdc960604e5896f2/

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Mario Lang <mlang@blind.guru>
Cc: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 8909897ab3)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-26 23:23:07 +02:00
Yann E. MORIN 70ea0f8421 docs/manual: expand on why using a branch name is not supported
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit a2e0003141)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-26 23:18:30 +02:00
Peter Korsgaard 4f09ed89b3 mbedtls: security bump to version 2.7.5
Fixes the following security issues:

- CVE-2018-0497: Remote plaintext recovery on use of CBC based ciphersuites
  through a timing side-channel

- CVE-2018-0498: Plaintext recovery on use of CBC based ciphersuites through
  a cache based side-channel

For more info, see the advisory:
https://tls.mbed.org/tech-updates/security-advisories/mbedtls-security-advisory-2018-02

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 7a7a159135)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-26 23:15:10 +02:00
Yann E. MORIN 79baca104d package/lua-flu: fix to use the system xattr header
We can't carry a mercurial patch, because the luarocks package is not
organised with the same layout as the upstream package source tree is.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Marcin Niestroj <m.niestroj@grinn-global.com>
Cc: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 27e0cad2da)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-26 22:20:52 +02:00
Vadim Kochan 7d06574716 wireless_tools: Fix site URL does not work
Replace broken http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux
by https://hewlettpackard.github.io/wireless-tools.

[Peter: also adjust URL in Config.in]
Signed-off-by: Vadim Kochan <vadim.kochan@petcube.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>

(cherry picked from commit 052d3cbb0e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 11:59:21 +02:00
Bernd Kuhls 9e5c172f0f package/nodejs: security bump version to 8.11.4
Release notes:
https://nodejs.org/en/blog/vulnerability/august-2018-security-releases/

Fixes CVE-2018-12115, also CVEs were fixed in included OpenSSL code
which do not use for the target build.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit bfc5dc9920)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 11:58:17 +02:00
Bernd Kuhls 7ec02006bf package/ipsec-tools: add security patch to fix CVE-2016-10396
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit a3422534c8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 11:56:58 +02:00
Bernd Kuhls a237f9dd63 linux-headers: bump 4.{4, 9, 14, 17}.x series
[Peter: drop 4.17.x change]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d2965cbb7e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 11:54:33 +02:00
Bernd Kuhls 61c4f41a78 package/bind: security bump to version 9.11.4-P1
Fixes CVE-2018-5740: https://ftp.isc.org/isc/bind9/9.11.4-P1/CHANGES

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 21d0077a2d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 11:04:17 +02:00
Bernd Kuhls d8fc62edbb package/php: security bump to version 7.2.9
Version 7.2.8 fixed CVE-2018-12882, CVE-2018-14883 & CVE-2018-14851:
http://www.php.net/ChangeLog-7.php#7.2.8

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit addd279d73)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:59:54 +02:00
Ricardo Martincoski 42ab95458b php: use $() to reference make variables instead of ${}
Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
(cherry picked from commit dba254cdf0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:59:42 +02:00
Peter Korsgaard 392148e28f ruby: security bump to version 2.4.4
Fixes the following security issues:

CVE-2017-17405: Command injection vulnerability in Net::FTP (2.4.3):
https://www.ruby-lang.org/en/news/2017/12/14/net-ftp-command-injection-cve-2017-17405/

CVE-2017-17742: HTTP response splitting in WEBrick (2.4.4):
https://www.ruby-lang.org/en/news/2018/03/28/http-response-splitting-in-webrick-cve-2017-17742/

CVE-2018-6914: Unintentional file and directory creation with directory
traversal in tempfile and tmpdir (2.4.4):
https://www.ruby-lang.org/en/news/2018/03/28/unintentional-file-and-directory-creation-with-directory-traversal-cve-2018-6914/

CVE-2018-8777: DoS by large request in WEBrick (2.4.4):
https://www.ruby-lang.org/en/news/2018/03/28/large-request-dos-in-webrick-cve-2018-8777/

CVE-2018-8778: Buffer under-read in String#unpack (2.4.4):
https://www.ruby-lang.org/en/news/2018/03/28/buffer-under-read-unpack-cve-2018-8778/

CVE-2018-8779: Unintentional socket creation by poisoned NUL byte in
UNIXServer and UNIXSocket (2.4.4):
https://www.ruby-lang.org/en/news/2018/03/28/poisoned-nul-byte-unixsocket-cve-2018-8779/

CVE-2018-8780: Unintentional directory traversal by poisoned NUL byte in Dir
(2.4.4):
https://www.ruby-lang.org/en/news/2018/03/28/poisoned-nul-byte-dir-cve-2018-8780/

Multiple vulnerabilities in RubyGems (2.4.4):
https://www.ruby-lang.org/en/news/2018/02/17/multiple-vulnerabilities-in-rubygems/

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 46cfed78b1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:57:33 +02:00
Matt Flax 00d400f976 eigen: Fix pkg-config file prefix error
eigen generates	a pkg-config file which	has a broken prefix
(@CMAKE_INSTALL_PREFIX@).  This broken prefix causes an incorrect path when
other packages call pkg-config --cflags eigen.

This patch fixes the prefix in the generated eigen pc file, so projects
which depend on this pc file can now correctly find the eigen include
directory at build time.

Also correct the Cflags output to use the runtime prefix instead of the
build time STAGING_DIR, like we do elsewhere.

[Peter: drop backslashes, tweak commit message]
Signed-off-by: Matt Flax <flatmax@flatmax.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>

(cherry picked from commit e477dc19b5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:47:17 +02:00
Peter Korsgaard c0ddd9dd07 python-django: security bump to version 1.11.15
Bump to the latest release of the 1.11.x LTS series as 1.10.x is no longer
supported upstream:

https://www.djangoproject.com/download/

Fixes the following security issues:

- CVE-2017-12794: Possible XSS in traceback section of technical 500 debug
  page (1.11.5)

- CVE-2018-6188: Information leakage in AuthenticationForm (1.11.10)

- CVE-2018-7536: Denial-of-service possibility in urlize and urlizetrunc
  template filters (1.11.11)

- CVE-2018-7537: Denial-of-service possibility in truncatechars_html and
  truncatewords_html template filters (1.11.11)

- CVE-2018-14574: Open redirect possibility in CommonMiddleware (1.11.15)

Also add a hash for the license file.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit ae977e9428)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:46:41 +02:00
Yann E. MORIN 8cecfc3401 package/m4: fix build on host with glibc-2.28
glibc-2.28 did quite some lifting in their headers, which breaks the
way some packages were detecting glibc, like gnulib.

However, packages do bundle gnulib (it was meant to be bundled),
and so does m4.

Since m4 hasn't seen the slightest commit since 2017-01-09, it is
bundling an old gnulib version, that predates glibc-2.28, and thus
breaks. It also means that upstream hasn't already fixed the issue.

Furthermore, as upstream is using a git submodule for gnulib, and
that the paths are not the same in the release tarball (in lib/)
and in the git tree (in gnulib/), we can't do a plain backport.

So, we selectively backport the two patches from gnulib upstream,
restricted to only the files that happen to be used in m4.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Reported-by: c32 on IRC
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit c48f8a6462)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:45:29 +02:00
Baruch Siach d49f42c3be dahdi-tools: unify dependencies comments
The threads dependency comment is currently shown even though the
toolchain supports threads, only because kernel build is disabled.

Merge the kernel and threads comments. This is similar to what we have
in other packages that need the kernel.

Cc: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit f70b13a7cb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:44:41 +02:00
Peter Korsgaard c6989413b9 libfuse: security bump to version 2.9.8
Fixes CVE-2018-10906 - In fuse before versions 2.9.8 and 3.x before 3.2.5,
fusermount is vulnerable to a restriction bypass when SELinux is active.
This allows non-root users to mount a FUSE file system with the
'allow_other' mount option regardless of whether 'user_allow_other' is set
in the fuse configuration.  An attacker may use this flaw to mount a FUSE
file system, accessible by other users, and trick them into accessing files
on that file system, possibly causing Denial of Service or other unspecified
effects.

And additionally:

- libfuse no longer segfaults when fuse_interrupted() is called outside the
  event loop.

- The fusermount binary has been hardened in several ways to reduce
  potential attack surface.  Most importantly, mountpoints and mount options
  must now match a hard-coded whitelist.  It is expected that this whitelist
  covers all regular use-cases.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 9c2bbc3fc9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:42:37 +02:00
Fabrice Fontaine d635824608 libfuse: add hash for license files
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 72660a1185)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:42:29 +02:00
Bernd Kuhls 97e18877a6 package/libopenssl: security bump to version 1.0.2p
Fixes CVE-2018-0732 & CVE-2018-0737:
https://www.openssl.org/news/vulnerabilities.html

Added upstream sha1 hash.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 8654a214ff)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:40:56 +02:00
Bernd Kuhls 6d6bcb6b25 linux-headers: bump 4.{4, 9, 14, 17}.x series
[Peter: drop 4.17.x change]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 345a8eeda1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:39:19 +02:00
Thomas Petazzoni 61909a06cd libselinux: use correct name and content for patch 0004
Commit 6288409642 ("libselinux: add
patch to fix build with gcc < 4.7") introduced a patch, but its file
name was incorrect, so it was never applied. In addition, the patch
was generated against the Git repository of SELinux, which includes
all projects, and therefore it doesn't apply to the libselinux source
code extracted from the tarball: the "libselinux/" component path
needs to be removed from the patch.

This commit fixes both problems, which should finally and really fix:

  http://autobuild.buildroot.net/results/c3272566bb808e43bb77ec59cfe596f7e0fe9a64/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit cb8d1743ca)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:36:49 +02:00
Thomas Petazzoni affa919039 libselinux: add patch to fix build with gcc < 4.7
This commit adds a patch from Hollis Blanchard on libselinux to fix
build on host machines that have gcc < 4.7.

Fixes:

  http://autobuild.buildroot.net/results/a82bb0c0b22ff24263ad7a7d165b21c0df7b3b1d/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6288409642)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:36:41 +02:00
Baruch Siach a4d7b285cf bzip2: change upstream site
The bzip.org website is down. Use the Buildroot backup download site.
Remove the website link as there is no clear alternative upstream at
this point.

  https://lwn.net/Articles/762264/

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f45976b2c7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:35:05 +02:00
Marcin Niestroj fe2e175b9d package/lvm2: Fix runtime crash when using uclibc
When using uclibc libdevmapper.so was calling dm_task_get_info_base()
function recursively, leading to segmentation fault. This was
happening because uclibc linker loader just takes first existing
'dm_task_get_info' (which is 'dm_task_get_info_base') symbol in elf
binary, instead of default version.

Add upstreamable lvm2 patch [1], which introduces
--enable-symvers[=STYLE] switch. Use that switch to disable symbol
versions, as we do not plan to support binaries compiled against
old libdevmapper library.

Fixes bug #10781.

[1] https://www.redhat.com/archives/dm-devel/2018-July/msg00187.html

Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 5313c50aa3)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:32:28 +02:00
Peter Korsgaard 92c8a5cd3c lvm2: add license hashes
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 70dc00e1c2)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:32:20 +02:00
Laurent Hartanerot ab22e87402 lighttpd: Add systemd tmpfile to fix lighttpd systemd boot
Problem starting lighttpd application with systemd.

/usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf
2018-06-22 11:21:34: (server.c.733) opening errorlog '/var/log/lighttpd-error.log' failed: Permission denied
2018-06-22 11:21:34: (server.c.1420) Opening errorlog failed. Going down.

Lighttpd can not write the 'lighttpd-access.log' and 'lighttpd-error.log' files
to the directory '/var/log/'.

When using systemd the directory '/var/log' does not allow the user www-data to
write.

To correct the problem, we add /usr/lib/tmpfiles.d/lighttpd.conf.
This file create the 'lighttpd-access.log' and 'lighttpd-error.log' files  with
the permission

Signed-off-by: Laurent Hartanerot <laurent.hartanerot@atos.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 7c2eb68cac)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:29:47 +02:00
Thomas Petazzoni 2a85a2cc8a configs/arm_juno: bump ATF to v1.3
ATF in version 1.2 fails to build with:

./build/juno/release/bl1/context_mgmt.o: In function `cm_prepare_el3_exit':
context_mgmt.c:(.text.cm_prepare_el3_exit+0x54): undefined reference to `cm_set_next_context'
context_mgmt.c:(.text.cm_prepare_el3_exit+0x54): relocation truncated to fit: R_AARCH64_JUMP26 against undefined symbol `cm_set_next_context'

This has been fixed in ATF v1.3. Even though there are even newer
versions of ATF available, we take a conservative approach, and bump
to the first version that has the build issue fixed.

Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/88314771

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 395bc11dde)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:27:29 +02:00
Thomas Petazzoni c3a8c834fe board/technologic/ts7680: fix bogus size in genimage.cfg
512B is not a correct size to express "512 bytes", and causes a
genimage failure:

  ERROR: Invalid size suffix 'B' in '512B'

To express "512 bytes", using just "512" is sufficient. With this
commit, genimage works fine, and we indeed have a 512 bytes unused
partition:

$ fdisk -l output/images/sdcard.img
Disk output/images/sdcard.img: 60 MiB, 62915584 bytes, 122882 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device                    Boot Start    End Sectors  Size Id Type
output/images/sdcard.img1          1      1       1  512B  0 Empty
output/images/sdcard.img2          2 524289  524288  256M 83 Linux

Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/88314963

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f1bdb63ff4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:26:48 +02:00
Thomas Petazzoni 948831e805 configs/raspberrypi2: increase ext4 filesystem size
The default size of the ext4 filesystem is no longer sufficient to
hold all the kernel modules built by the RPi Linux kernel
configuration. Let's increase to 120 MB, like we did for
raspberrypi3_defconfig.

Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/88314938

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 272bf797c9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:23:16 +02:00
Thomas Petazzoni 1200f10bda mesa3d-headers: fix logic to generate the dri.pc file
As noted by Arnout in [1], the logic in mesa3d-headers.mk generates a
bogus dri.pc file, which looks like this:

prefix=/usr
exec_prefix=/usr
libdir=/lib
includedir=/include
dridriverdir=/dri

Indeed, the ${...} are expanded as shell variables when the sed
command is executed, while the intention is that those ${...} should
go in the .pc file. By escaping those using $${...}, we get the
expected .pc file:

prefix=/usr
exec_prefix=/usr
libdir=${exec_prefix}/lib
includedir=${prefix}/include
dridriverdir=${libdir}/dri

This was detected by the not yet committed check-package improvement
from Ricardo that detects bogus ${...} usage to reference make
variables.

[1] http://lists.busybox.net/pipermail/buildroot/2018-July/225402.html

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 98e3c1eee5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:19:37 +02:00
David Owens fb8c4deb1a mtd: backport upstream bug fix
A regression in the mtd package prevents non-consecutive ubi volume
IDs from working properly. This change backported from upstream
reverts the commit [0]. The issue was originally described on the mtd
mailing list:

http://lists.infradead.org/pipermail/linux-mtd/2018-June/081562.html

[0] http://git.infradead.org/mtd-utils.git/commitdiff/dede98ffb706676309488d7cc660f569548d5930

Signed-off-by: David Owens <david.owens@rockwellcollins.com>
Reviewed-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit fd127c8e59)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:06:39 +02:00
Baruch Siach b74f66c978 mtd: bump to version 2.0.2
Add license file hash.

Cc: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ea72187746)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 10:06:33 +02:00
Baruch Siach 416eed9540 uboot-tools: force host CFLAGS
U-Boot now adds -std=gnu11 when building its build utilities, like
fixdep. This option is only supported since gcc version 4.7.

  https://gcc.gnu.org/gcc-4.7/changes.html

Force usage of Buildroot HOST_CFLAGS, like we do already for
host-uboot-tools, to avoid the -std=gnu11 option.

Fixes:
http://autobuild.buildroot.net/results/ea0/ea09b614a3c10d494939d9551c0c3bfca4626ece/
http://autobuild.buildroot.net/results/f8e/f8efd9af4d86c51fe4f5afe44db9abf9adc5718f/
http://autobuild.buildroot.net/results/c0a/c0ab35c3cb46f84863fe20c0ee92ecc2379578b6/

Cc: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 03a808a099)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 09:38:22 +02:00
Peter Korsgaard 162388a74d ncurses: disable terminfo database install for host-ncurses
Since commit b35ad5d0b4 (ncurses: make host-ncurses use host terminfo), we
are now pointing host-ncurses to the host terminfo (typically) located in
/usr/share/terminfo.

With this change we are reusing the existing host terminfo database, so
there is no point in trying to install our own on top.  The user running
buildroot typically will have no write access to /usr/share/terminfo, but
tic in that case falls back to writing the database to $HOME/.terminfo.
Neither of which are desirable.

In case $HOME/.terminfo also isn't writable, tic fails, breaking the install
step for host-ncurses:

** Building terminfo database, please wait...
Running sh ./shlib tic to install /usr/share/terminfo ...

        You may see messages regarding extended capabilities, e.g., AX.
        These are extended terminal capabilities which are compiled
        using
                tic -x
        If you have ncurses 4.2 applications, you should read the INSTALL
        document, and install the terminfo without the -x option.

"terminfo.tmp", line 21272, terminal 'v3220': /home/peko/.terminfo: permission denied (errno 30)

To fix all of this, simply disable the terminfo database install.

Suggested-by: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Acked-by: Hollis Blanchard <hollis_blanchard@mentor.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b42fb29048)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 09:34:39 +02:00
Peter Korsgaard 9cfa7578f7 chrony: backport upstream patch to fix blocking on getrandom() at startup with recent kernels
chrony calls getrandom() at startup if available, so it needs a workaround
for the blocking behaviour on recent (4.14.39+), similar to what was done
for util-linux in commit c4d86707cd (util-linux: add two upstream patches
to fix blocking on getrandom() with recent kernels).

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit d9937b62e0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 09:33:18 +02:00
Bernd Kuhls edd8cae05e package/waylandpp: fix build error with gcc 4.4/4.9
Fixes
http://autobuild.buildroot.net/results/51a/51afcd6d3c3c4839d8216b7b0dba35c8e38211f4/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit c4a3cdd06a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 09:21:20 +02:00
Bernd Kuhls 2f694c9e60 package/waylandpp: bump version to 0.2.3
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 10ddd8881c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 09:21:14 +02:00
Bernd Kuhls e98a088291 linux-headers: bump 4.{4, 9, 14, 17}.x series
[Peter: drop 4.17.x change]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 8e1b07230f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 09:18:48 +02:00
Bernd Kuhls 7ade3c11f2 package/wpa_supplicant: add upstream security fix
Fixes CVE-2018-14526:
http://w1.fi/security/2018-1/unauthenticated-eapol-key-decryption.txt

Added license hash.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 904d5d7179)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 09:02:50 +02:00
André Hentschel 45cfb7dbd3 wireshark: bump version to 2.2.16 (security)
Security fixes since 2.2.15:

- wnpa-sec-2018-06
  RPKI-Router infinite loop. Bug 14414. CVE-2018-7325.
- wnpa-sec-2018-34
  BGP dissector large loop. Bug 13741. CVE-2018-14342.
- wnpa-sec-2018-35
  ISMP dissector crash. Bug 14672. CVE-2018-14344.
- wnpa-sec-2018-36
  Multiple dissectors could crash. Bug 14675. CVE-2018-14340.
- wnpa-sec-2018-37
  ASN.1 BER dissector crash. Bug 14682. CVE-2018-14343.
- wnpa-sec-2018-38
  MMSE dissector infinite loop. Bug 14738. CVE-2018-14339.
- wnpa-sec-2018-39
  DICOM dissector crash. Bug 14742. CVE-2018-14341.
- wnpa-sec-2018-40
  Bazaar dissector infinite loop. Bug 14841.
- wnpa-sec-2018-41
  HTTP2 dissector crash. Bug 14869.

Full release notes:

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

Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 14d287098a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 08:49:12 +02:00
Bernd Kuhls c140a16758 package/samba4: Fix uClibc build on 64bit platforms by including stdint.h
Patch needed to be updated for samba-4.8.4

Fixes
http://autobuild.buildroot.net/results/140/1404a594583ff192d70086ef590f924472465c89/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6d37231476)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:40:11 +02:00
Bernd Kuhls e998257b68 package/samba4: security bump to version 4.8.4
Release notes: https://www.samba.org/samba/history/samba-4.8.4.html

Fixes

o  CVE-2018-1139  (Weak authentication protocol allowed.)
o  CVE-2018-1140  (Denial of Service Attack on DNS and LDAP server.)
o  CVE-2018-10858 (Insufficient input validation on client directory
                   listing in libsmbclient.)
o  CVE-2018-10918 (Denial of Service Attack on AD DC DRSUAPI server.)
o  CVE-2018-10919 (Confidential attribute disclosure from the AD LDAP
                   server.)

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 3d7ce0124a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:40:01 +02:00
Bernd Kuhls e1dafc11c2 package/samba4: disable build of manpages and documentation
Fixes
http://autobuild.buildroot.net/results/3f214cbb1fe2dc2c2cbfb630032e13eba81c1b5a/
and many others

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Thomas: reformat patch as Git formatted]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

(cherry picked from commit f38c8d7ed6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:39:52 +02:00
Thomas Petazzoni 85fb63649e package/samba4: drop patch numbering in patch 0003
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 15045fba99)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:39:45 +02:00
Thomas Petazzoni f4579f94e8 package/samba4: reformat patch 0002 as Git-formatted patch
This commit reformats
0002-patch-source3__libads__kerberos_keytab.c.patch as a Git-formatted
patch.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 90b26f8764)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:39:39 +02:00
Bernd Kuhls 0060ade136 package/samba4: bump version to 4.8.3
Removed patch applied upstream.

Release notes: https://www.samba.org/samba/history/samba-4.8.3.html

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit bcc3a15baf)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:39:31 +02:00
Bernd Kuhls 9cf1cf46a8 package/samba4: bump version to 4.8.2
Release notes: https://www.samba.org/samba/history/samba-4.8.2.html

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 78e020726c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:39:19 +02:00
Bernd Kuhls 1ca3a38e9b package/samba4: bump version to 4.8.1
Release notes: https://www.samba.org/samba/history/samba-4.8.1.html

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 62dca337fe)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:38:59 +02:00
Bernd Kuhls 8f4ca74c84 package/samba4: bump version to 4.8.0
Changelog: https://www.samba.org/samba/history/samba-4.8.0.html

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit f4e8dcc1d5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:38:50 +02:00
Peter Korsgaard 93bea331a9 boot-wrapper-aarch64: use SPDX identifier for 3 clause BSD
Use the correct SPDX identifier for the 3 clause BSD license, like we do
elsewhere.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit f2d748e13b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:19:06 +02:00
Angelo Compagnucci 10a3e2ea85 linux: bump CIP to version v4.4.138-cip25
This patch bumps the CIP Linux kernel to version v4.4.138-cip25

Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit f2e3e37124)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:17:44 +02:00
Bernd Kuhls 5fe70325f5 linux-headers: bump 4.{4, 9, 14, 17}.x series
[Peter: drop 4.17.x change]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit ce1af4db2a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:16:33 +02:00
Baruch Siach 7eabe71874 libarchive: add upstream security patches
Add patches for the following security issues:

CVE-2017-14501 - An out-of-bounds read flaw exists in parse_file_info in
archive_read_support_format_iso9660.c when extracting a specially
crafted iso9660 iso file.

CVE-2017-14502 - Off-by-one error for UTF-16 names in RAR archives,
leading to an out-of-bounds read in archive_read_format_rar_read_header.

CVE-2017-14503 - Out-of-bounds read within lha_read_data_none() in
archive_read_support_format_lha.c when extracting a specially crafted
lha archive.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 760fbe789c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:13:32 +02:00
Fabrice Fontaine 7213c2dc66 libarchive: add hash for license file
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit a3f5bf52b9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:13:26 +02:00
Thomas Petazzoni d5fd16d2d4 linuxptp: add patch to fix no-thread/linuxthreads uClibc builds
linuxptp missing.h header implements a replacement clock_nanosleep()
function, which was used when the thread implementation was not NPTL,
because uClibc failed to provide clock_nanosleep() in such
configurations.

However, uClibc-ng has fixed this problem upstream, and has backported
this change in Buildroot in patch
package/uclibc/0002-librt-declare-clock_nanosleep-independent-of-thread-.patch
(the code is upstream and will be part of uClibc-ng 1.0.31). Due to
this, there is now a conflicting definition of clock_nanosleep()
between the C library and the linuxptp missing.h code, which manifests
itself by the following build failure:

missing.h:117:19: error: static declaration of 'clock_nanosleep' follows non-static declaration
 static inline int clock_nanosleep(clockid_t clock_id, int flags,
                   ^~~~~~~~~~~~~~~
In file included from clockadj.h:24:0,
                 from clockadj.c:24:

This commit fixes that by adding a patch that removes the replacement
clock_nanosleep() implementation from the linuxptp code base.

Fixes:

  http://autobuild.buildroot.net/results/bf400095a853f5beb28c77a50fcffefe52c3d769/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ae2cae70b8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:10:26 +02:00
Carlos Santos 3005bdece1 vim: install /bin/vi as a relative symlink
Prevent creating a dangling symlink when vim is not present on the host
machine. With BR2_ROOTFS_MERGED_USR, just link to "vim", since they are
on the same directory, otherwise link to "../usr/bin/vim".

Signed-off-by: Carlos Santos <casantos@datacom.com.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 52385d789a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:09:13 +02:00
Baruch Siach 20d363fb9e docs/manual: update host gcc minimum required version
The oldest gcc that is known to work with current Buildroot is that of
RHEL 6, version 4.4.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 27797caf76)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:05:37 +02:00
Bernd Kuhls 565bcaa546 package/lttng-tools: bump version to 2.10.5
Added sha256 and license hashes, switched _SITE to https.

This bump includes
https://github.com/lttng/lttng-tools/commit/b4cf0332cc1164684bbc708b6c46c1d69a15b847
which fixes a musl build error:
http://autobuild.buildroot.net/results/09d/09d6d5e2d1c50dbd6c026e12aa245fc90687eb19/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 81ea4a243b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-24 00:02:19 +02:00
Thomas Petazzoni 1e0db1a880 package: propagate pulseaudio dependencies correctly
The BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC dependency of
BR2_PACKAGE_PULSEAUDIO was not properly propagated to reverse
dependencies, causing the following kconfig warning:

warning: (BR2_PACKAGE_ESPEAK_AUDIO_BACKEND_PULSEAUDIO && BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_PULSE && BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_PULSE && BR2_PACKAGE_KODI_PULSEAUDIO && BR2_PACKAGE_MPD_PULSEAUDIO && BR2_PACKAGE_EFL_PULSEAUDIO) selects BR2_PACKAGE_PULSEAUDIO which has unmet direct dependencies (BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC && BR2_USE_WCHAR && BR2_TOOLCHAIN_HAS_THREADS && !BR2_STATIC_LIBS && BR2_USE_MMU)

This commit fixes that by propagating the dependency as it should have
been done.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 68161802eb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 23:58:36 +02:00
Joel Stanley 24e8c76e71 gcc: Fix building on ppc64le GCC 8 host
When building on a ppc64le host we see this error:

    build/genmatch --gimple ../../gcc/match.pd \
        > tmp-gimple-match.c
    ../../gcc/match.pd:120:1 error: expected (, got NAME
       negative value by 0 gives -0, not +0.  */

This was reported upstream[1] and fixed on the GCC 6 [2] and GCC 7 [3]
branches:

    Backport from mainline
    2018-01-10  Kelvin Nilsen  <kelvin@gcc.gnu.org>

    * lex.c (search_line_fast): Remove illegal coercion of an
    unaligned pointer value to vector pointer type and replace with
    use of __builtin_vec_vsx_ld () built-in function, which operates
    on unaligned pointer values.

The patches included in Buildroot contain just the code changes, and not
the changelog, to make it easer to manage backporting.

Tested on Ubuntu Cosmic ppc64le.

[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86162
[2] https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=261621
[3] https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=262243

Signed-off-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 88a161b388)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 23:51:57 +02:00
Hollis Blanchard cecdbb8e69 attr: build fix for GCC < 4.5
GCC 4.4 and before do not support a message associated to the
"deprecated" gcc attribute. Since such messages are not that useful in
the context of Buildroot, this commit adds a patch that removes them
in the attr source code.

Signed-off-by: Hollis Blanchard <hollis_blanchard@mentor.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f910320143)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 22:42:06 +02:00
Yann E. MORIN cbbfe11d41 package/attr: bump version
The current version of attr uses a canned custom buildsystem, that
is borked in quite a few ways (no support for static, overwrites
destination files without unlinking...)

There has been a release recently-ish, with a complete overhaul of
the buildsystem. We can now drop all our patches.

The option to disable NLS has changed, so update accordingly.

Fixes: #10986

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Yegor Yefremov <yegorslists@googlemail.com>
[Arnout: use the original SITE instead of a specific mirror]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>

(cherry picked from commit b02616cff4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 22:42:06 +02:00
Hollis Blanchard 44a440bfd3 acl: build fix with GCC 4.4.7
The acl source code uses pragmas inside functions, which is not
supported by gcc 4.4, still in use in older distributions. This commit
adds a patch that drops such pragma. Indeed, this acl is not built
with -Werror, the warning removals are not that important.

Signed-off-by: Hollis Blanchard <hollis_blanchard@mentor.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit a957cdfbb6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 22:42:06 +02:00
Yann E. MORIN db54bd889a package/acl: bump version
Of most interest is the build system overhaul, and the drop of the
dependency on attr-provided <attr/xattr.h> in favour of the
system-provided <sys/xattr.h>.

That last bit meaning that we will be able to bump attr.

We can drop our patches: static is now natively supported thanks to
the use of libtool, and the internal symbols patch was a backport,
and finally, our install patch is superseded by the use of autotools.

The option to disable NLS has changed, so update accordingly.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
(cherry picked from commit a37657f44e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 22:42:06 +02:00
Yann E. MORIN 4245816f7a package/xorriso: fix to use the system xattr header
We don't carry a git-formatted patch, because upstream is in fact a
collection of git trees, while the release tarball is an aggregate
of those repositories. Thus, the layout is different between the
tarball and the SCM...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Steve Kenton <skenton@ou.edu>
[Thomas:
 - add host-pkgconf as a dependency of host-xorriso, since it's needed
   for autoreconf to work
 - drop HOST_XORRISO_AUTORECONF = YES, since it's implied by
   XORRISO_AUTORECONF = YES.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

(cherry picked from commit 798d1ec309)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 22:40:30 +02:00
Baruch Siach 2106720f3b stress-ng: fix build with kernel headers v3.9
Add a patch correcting the kernel headers version test macro.

Fixes:
http://autobuild.buildroot.net/results/cbf/cbfb80117840bddd5712bcda3caeaaff61745b0b/
http://autobuild.buildroot.net/results/649/64941ac5b7dcd9c100bdc47cdfe73cce5f23c3d8/
http://autobuild.buildroot.net/results/741/741f5881d3cb745d1003ede3f762c20eb72de0b5/

Cc: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ca54f17a0e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 22:38:00 +02:00
Yann E. MORIN d831ad4844 package/stress-ng: bump version
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 18a3556220)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 22:38:00 +02:00
Ryan Coe 1aeeaea2f0 mariadb: needs dynamic library support
In a static-only configuration, mariadb fails to build because it
tries to build a shared library:

[ 18%] Linking CXX shared module ha_spider.so
output/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/6.4.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: output/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/6.4.0/../../../../arm-buildroot-linux-uclibcgnueabi/lib/libstdc++.a(eh_globals.o)(.text.__cxa_get_globals_fast+0x14): R_ARM_TLS_LE32 relocation not permitted in shared object

This is not detected by the autobuilders, because mariadb is part of a
Config.in choice, and such choices are not randomized by our current
testing infrastructure.

Signed-off-by: Ryan Coe <bluemrp9@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 58cb24d883)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 22:17:57 +02:00
Bernd Kuhls 6f5a0c5622 package/mariadb: security bump to version 10.1.35
Fixes CVE-2018-3064, CVE-2018-3063, CVE-2018-3058 & CVE-2018-3066:
https://mariadb.com/kb/en/library/mariadb-10135-release-notes/

Added all hashes provided by upstream.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit dbe8483b20)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 22:16:03 +02:00
Ryan Coe acd9e32dfe mariadb: move comments outside of define block
There are two comments inside the post install define block that show up in
the build. Fix this by moving the comments outside the block.

Signed-off-by: Ryan Coe <bluemrp9@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit d0a0d49c20)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 22:13:50 +02:00
Thomas Ehrhardt 54d2e39bca ghostscript: set correct font path on target
GHOSTSCRIPT_FONTS_TARGET_DIR is set to $(TARGET_DIR)/usr/share/fonts/gs
in ghostscript-fonts.mk. If we pass this full path to ghostscript, it
will look for fonts in $(TARGET_DIR), which doesn't exist on the
target.

Instead of /usr/share/fonts/gs, use /usr/share/fonts so ghostscript can
also access other fonts than the ones installed by ghostscript-fonts.

Signed-off-by: Thomas Ehrhardt <tehrhardt@innovaphone.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
(cherry picked from commit a76eab228f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 22:12:09 +02:00
Arnout Vandecappelle (Essensium/Mind) 24b78f0de9 Makefile: help: BR2_DEFCONFIG for defconfig must be on command line
The help text says that BR2_DEFCONFIG will be used as input, but a
BR2_DEFCONFIG specified in the existing .config file will *not* be
used. So say explicitly that it must be specified on the command line.
Note that both "BR2_DEFCONFIG=... make defconfig" and
"make defconfig BR2_DEFCONFIG=..." will work.

While we're at it, add a semicolon to separate the two statements.

Note that this overflows the help text beyond 80 characters, but that
is already the case in many other lines.

Reported-by: Anisse Astier <anisse@astier.eu>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 27aa7ae618)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 22:02:41 +02:00
Bernd Kuhls 1888d61307 linux-headers: bump 4.{4, 9, 14, 16, 17}.x series
[Peter: drop 4.16.x/4.17.x change]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 30fc1bee72)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:55:00 +02:00
Fabio Estevam e723063131 linux-headers: bump 4.{4, 9, 14, 17}.x series
[Peter: drop 4.17.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 871d0edf5b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:51:19 +02:00
Trent Piepho 9361360bfd lttng-tools: bump to version 2.10.4
Remove patches now present upstream and drop no longer needed
autoreconf.

Signed-off-by: Trent Piepho <tpiepho@impinj.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 7417daf0eb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:47:12 +02:00
John Faith 3e408c8436 lttng-tools: Install to staging
Install the LTTng control library headers and shared objects
to staging.

The C interface to LTTng described here:
https://lttng.org/docs/v2.10/#doc-liblttng-ctl-lttng
requires including <lttng/lttng.h> and linking against liblttng-ctl,
but those parts are not available unless this package does a staging
install.

Signed-off-by: John Faith <jfaith@impinj.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 3466298b0f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:46:39 +02:00
Trent Piepho 078dd40b2f lttng-modules: bump version to 2.10.6
This is needed for kernel 2.16.x compatiblity.

Signed-off-by: Trent Piepho <tpiepho@impinj.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit dda7a90624)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:45:36 +02:00
Bernd Kuhls 051eccdd89 package/znc: security bump to 1.7.1
Fixes CVE-2018-14055 & CVE-2018-14056.

Changelog: https://wiki.znc.in/ChangeLog/1.7.1

Removed 0001-Fix-build-without-SSL-support.patch, applied upstream:
https://github.com/znc/znc/commit/e567f4cb73a1637141f7e4fc3b0ef44e79568048

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 92fc6273d9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:40:38 +02:00
Baruch Siach 3e04c26c54 znc: fix build without openssl
Add a patch to include <memory> unconditionally.

Fixes:
http://autobuild.buildroot.net/results/4c3/4c3d9f6f5214052b7eda4c7bbfabe5b463080b12/
http://autobuild.buildroot.net/results/d06/d06176f00109ad0707032b0d76fe94f1d414106c/

Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 1b86479da5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:39:32 +02:00
Fabrice Fontaine 7c8a1ccab3 znc: add mandatory dependency on threads
Threads support is mandatory since version 1.7.0:
https://github.com/znc/znc/commit/582cd635f5a047761b1052a40088ab86e62fffc1

Fixes:
 - http://autobuild.buildroot.net/results/cc56c7dbee594056288296398772ef9e22846299

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit bfbba99e01)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:36:06 +02:00
Bernd Kuhls fcb1e07ccd package/znc: python support depends on icu
Upstream checks for icu when build with python support:
https://github.com/znc/znc/commit/4fe4a45dd62411ba9ede04750ca44f071e7d6cbb

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

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 0f095a5318)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:35:50 +02:00
Bernd Kuhls 205142b16c package/znc: bump version to 1.7.0
Increased minimum gcc version to 4.8 as mentioned in the Changelog:
https://wiki.znc.in/ChangeLog/1.7.0

Removed all patches:
- 0001 was applied upstream:
https://github.com/znc/znc/commit/483074cbf82a48a3ff01838fcbaec00553d1882c

- 0002 is not needed anymore after upstream switched Csocket to a git
  submodule:
https://github.com/znc/znc/commit/9166e6ed40f0c7a85eee0d024b12510c13863f55#diff-8a725997e024d92d67b33a90cffb8342

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f02d8c1b58)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:35:35 +02:00
Bernd Kuhls d9d1f7c52c package/znc: bump version to 1.6.6
Added license hash, switched _UPSTREAM to an upstream directory which
also contains older release tarballs.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 621363f5ac)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:35:26 +02:00
Fabio Estevam a6ce2f6733 linux-headers: bump 4.{4, 9, 14, 17}.x series
[Peter: drop 4.17.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 3ea6325af0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:30:30 +02:00
Fabrice Fontaine 8a2d7c15bc mbedtls: bump to version 2.7.4
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 023cc02d0a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:26:40 +02:00
Julien BOIBESSOT 70f63a8c52 package/ti-utils: update website URL
As kernel wireless wiki doesn't seem to have the doc about wl12xx
calibration, points to a backup of the old site.

Signed-off-by: Julien BOIBESSOT <julien.boibessot@armadeus.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f0a0ace421)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:21:11 +02:00
Julien BOIBESSOT 7a38de3d8e package/crda: update website URL
Now Linux wireless infos are on corresponding wiki.

Signed-off-by: Julien BOIBESSOT <julien.boibessot@armadeus.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit abc6db8b66)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:20:26 +02:00
Geoff Levand f470492c0f dmidecode: enable for aarch64
arm64 systems support SMBIOS, so update the dmidecode config
to allow building dmidecode for arm64.

Signed-off-by: Geoff Levand <geoff@infradead.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6e00a671bc)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:18:20 +02:00
Carlos Santos 9090ea58b6 gawk: install /usr/bin/awk as a relative symlink
Fixes:
  http://autobuild.buildroot.net/results/bf3937882023df7ed319dc76f1af10f79785112f/

Signed-off-by: Carlos Santos <casantos@datacom.com.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit d4b5a92c53)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:17:40 +02:00
Baruch Siach 11e775ec59 cryptsetup: fix build with pre C11 toolchains
Add a patch removing a redefined typedef. Redefinition of typedef, even
to the same type, used to be illegal before C11.

Fixes:
http://autobuild.buildroot.net/results/93b/93b300a62f2ddbad66eab08e25fc3225969f224b/
http://autobuild.buildroot.net/results/6c6/6c6092d633400498ee5b8090733a949a9632e473/
http://autobuild.buildroot.net/results/f46/f46ef6123b5fa92753ff534b4ef7bea3f53ac388/

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Tested-by: Hollis Blanchard <hollis_blanchard@mentor.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d9cfe343d2)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:06:24 +02:00
Baruch Siach 6ed7468245 cryptsetup: fix build with old host kernel headers
By default cryptsetup configure fails when the if_alg.h kernel header is
not available. Kernels older than 2.6.38, like the one in RHEL 6 hosts,
do not provide this header. Since we don't need the kernel crypto
feature for host tools, just disable this feature to allow successful
completion of the configure script.

While at it, fix a typo in the --with-crypto_backend option (hyphen ->
underscore).

Should fix:
http://autobuild.buildroot.net/results/ffd/ffda2579b215b53161025b7bc703091cb30ef95d/
http://autobuild.buildroot.net/results/c48/c48015f76b13fec38f650f66824e7b986eb28572/
http://autobuild.buildroot.net/results/be6/be621f71bf9da8719bf7fc943eccc9b4dc2cc43e/

Cc: Martin Hicks <mort@bork.org>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit bef1786475)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:06:16 +02:00
Marcin Niestroj 3d4857c173 package/cryptsetup: bump version to 2.0.3
Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit dffbda3853)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:06:02 +02:00
Baruch Siach 01b75ec247 cryptsetup: bump to version 2.0.2
Cc: Martin Hicks <mort@bork.org>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Acked-by: Martin Hicks <mort@bork.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 5b85b59709)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 21:05:35 +02:00
Bernd Kuhls 5cb7352111 package/erlang: bump version to 20.3
Removed patch 0001, not needed anymore after upstream commit
https://github.com/erlang/otp/commit/aa9054e0ea48a127f2aeafcdce1df4d1aec09574

Renumbered remaining patches, added license hash.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 25cc880794)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 20:01:45 +02:00
Bernd Kuhls c61f61b909 package/gnutls: bump version to 3.5.19
Release notes:
https://lists.gnupg.org/pipermail/gnutls-devel/2018-July/008583.html

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 08d64f47eb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 17:51:31 +02:00
Baruch Siach f40f75cc81 gnutls: bump to version 3.5.18
Cc: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 16956889f7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-23 17:51:26 +02:00
Bernd Kuhls 753337dcd9 package/ffmpeg: bump version to 3.4.4
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit fbeeb8ce06)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-15 22:48:04 +02:00
Bernd Kuhls 5d267c45e8 package/ffmpeg: bump version to 3.4.3
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 9987955106)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-15 22:47:53 +02:00
Bernd Kuhls 840d0ee198 package/ffmpeg: add optional support for libdrm
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 5c1ae91a24)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-15 22:47:41 +02:00
Sébastien Szymanski b8f6745893 qt5xmlpatterns: fix license files for 5.9.x variant
Similar to commit 3c6958423f (qt5: bump latest version to 5.10.1), the
5.9.x (and 5.8.x) versions of qt5xmlpatterns doesn't have the 'v' in the
license file names, as slightly different formatting/content, so adjust the
_LICENSE_FILES and hashes to match.

Fixes:
 http://autobuild.buildroot.net/results/8a9e40a8c56f2bf1cbf2d2dcab4a874a3fefa367

Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-10 10:36:12 +02:00
Ricardo Martincoski 510f2c91d9 support/testing: add test for file capabilities
Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 5f201de0dc)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-10 08:26:45 +02:00
Ricardo Martincoski 1369d30a99 makedevs: allow leading whitespace for capabilities
Currently makedevs silently ignores extended attributes with leading
whitespace, for example those added to a <PACKAGE>_PERMISSIONS following
the recommended style from check-package.

Makedevs already ignores leading whitespace for normal entries (file
permission changes and device files creation). Do the same for extended
attributes.

Fixes: #11191.

Reported-by: Jean-pierre Cartal <jpcartal@free.fr>
Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 2d8d5ced10)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-10 08:26:32 +02:00
Bernd Kuhls 574d32606a package/apache: security bump version to 2.4.34
Fixes:
  *) SECURITY: CVE-2018-8011 (cve.mitre.org)
     mod_md: DoS via Coredumps on specially crafted requests

  *) SECURITY: CVE-2018-1333 (cve.mitre.org)
     mod_http2: DoS for HTTP/2 connections by specially crafted requests

Changelog: http://www.apache.org/dist/httpd/CHANGES_2.4.34

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 8ef1aaa084)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-08-09 22:58:37 +02:00
155 changed files with 2785 additions and 1482 deletions
+1
View File
@@ -237,6 +237,7 @@ zynq_zybo_defconfig: *defconfig
tests.boot.test_atf.TestATFAllwinner: *runtime_test
tests.boot.test_atf.TestATFMarvell: *runtime_test
tests.boot.test_atf.TestATFVexpress: *runtime_test
tests.core.test_file_capabilities.TestFileCapabilities: *runtime_test
tests.core.test_post_scripts.TestPostScripts: *runtime_test
tests.core.test_rootfs_overlay.TestRootfsOverlay: *runtime_test
tests.core.test_timezone.TestGlibcAllTimezone: *runtime_test
+26
View File
@@ -1,3 +1,29 @@
2018.02.5, Released August 29th, 2018
Important / security related fixes.
Defconfigs: Raspberrypi2: Bump rootfs size, T7680: Fix
genimage.cfg issue, ARM Juno: Bump ATF to v1.3 to fix build
issue.
Updated/fixed packages: acl, apache, attr, bind,
boot-wrapper-aarch64, brltty, bzip2, chrony, crda, cryptsetup,
dahdi-tools, dmidecode, dropbear, eigen, erlang, ffmpeg, gawk,
gcc, ghostscript, gnutls, ipsec-tools, libarchive, libfuse,
libopenssl, libselinux, libsoup, lighttpd, linuxptp,
lttng-modules, lttng-tools, lua-flu, lvm2, m4, makedevs,
mariadb, mbedtls, mesa3d-headers, mtd, ncurses, nodejs,
openssh, php, postgresql, python-django, qt5xmlpatterns, ruby,
samba4, shairport-sync, stress-ng, ti-utils, uboot-tools, vim,
waylandpp, wireless_tools, wireshark, wpa_supplicant, xorriso,
znc
Issues resolved (http://bugs.uclibc.org):
#10781: cryptsetup luksOpen container_file container causes..
#10986: Installing package attr when already supplied by..
#11191: xattr and check-package issue
2018.02.4, Released July 21th, 2018
Important / security related fixes.
+4 -4
View File
@@ -87,9 +87,9 @@ all:
.PHONY: all
# Set and export the version string
export BR2_VERSION := 2018.02.4
export BR2_VERSION := 2018.02.5
# Actual time the release is cut (for reproducible builds)
BR2_VERSION_EPOCH = 1532126000
BR2_VERSION_EPOCH = 1535550000
# Save running make version since it's clobbered by the make package
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
@@ -1019,8 +1019,8 @@ help:
@echo ' silentoldconfig - Same as oldconfig, but quietly, additionally update deps'
@echo ' olddefconfig - Same as silentoldconfig but sets new symbols to their default value'
@echo ' randconfig - New config with random answer to all options'
@echo ' defconfig - New config with default answer to all options'
@echo ' BR2_DEFCONFIG, if set, is used as input'
@echo ' defconfig - New config with default answer to all options;'
@echo ' BR2_DEFCONFIG, if set on the command line, is used as input'
@echo ' savedefconfig - Save current config to BR2_DEFCONFIG (minimal config)'
@echo ' allyesconfig - New config where all options are accepted with yes'
@echo ' allnoconfig - New config where all options are answered with no'
+1 -1
View File
@@ -3,7 +3,7 @@ image sdcard.img {
}
partition unused {
size = 512B
size = 512
}
partition rootfs {
@@ -6,7 +6,7 @@
BOOT_WRAPPER_AARCH64_VERSION = 4266507a84f8c06452109d38e0350d4759740694
BOOT_WRAPPER_AARCH64_SITE = git://git.kernel.org/pub/scm/linux/kernel/git/mark/boot-wrapper-aarch64.git
BOOT_WRAPPER_AARCH64_LICENSE = BSD3c
BOOT_WRAPPER_AARCH64_LICENSE = BSD-3-Clause
BOOT_WRAPPER_AARCH64_LICENSE_FILES = LICENSE.txt
BOOT_WRAPPER_AARCH64_DEPENDENCIES = linux
BOOT_WRAPPER_AARCH64_INSTALL_IMAGES = YES
+1 -1
View File
@@ -12,7 +12,7 @@ BR2_LINUX_KERNEL_INTREE_DTS_NAME="arm/juno arm/juno-r1 arm/juno-r2"
BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://github.com/ARM-software/arm-trusted-firmware.git"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="v1.2"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="v1.3"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="juno"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33=y
+1
View File
@@ -31,6 +31,7 @@ BR2_PACKAGE_HOST_MTOOLS=y
# Filesystem / image
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
# BR2_TARGET_ROOTFS_TAR is not set
BR2_ROOTFS_POST_BUILD_SCRIPT="board/raspberrypi2/post-build.sh"
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/raspberrypi2/post-image.sh"
+15 -2
View File
@@ -198,11 +198,24 @@ information is (assuming the package name is +libfoo+) :
package. Note that if +HOST_LIBFOO_VERSION+ doesn't exist, it is
assumed to be the same as +LIBFOO_VERSION+. It can also be a
revision number or a tag for packages that are fetched directly
from their version control system. Do not use a branch name as
version; it does not work. Examples:
from their version control system. Examples:
** a version for a release tarball: +LIBFOO_VERSION = 0.1.2+
** a sha1 for a git tree: +LIBFOO_VERSION = cb9d6aa9429e838f0e54faa3d455bcbab5eef057+
** a tag for a git tree +LIBFOO_VERSION = v0.1.2+
+
.Note:
Using a branch name as +FOO_VERSION+ is not supported, because it does
not and can not work as people would expect it should:
+
1. due to local caching, Buildroot will not re-fetch the repository,
so people who expect to be able to follow the remote repository
would be quite surprised and disappointed;
2. because two builds can never be perfectly simultaneous, and because
the remote repository may get new commits on the branch anytime,
two users, using the same Buildroot tree and building the same
configuration, may get different source, thus rendering the build
non reproducible, and people would be quite surprised and
disappointed.
* +LIBFOO_SOURCE+ may contain the name of the tarball of the package,
which Buildroot will use to download the tarball from
+2 -2
View File
@@ -23,8 +23,8 @@ between distributions).
** +make+ (version 3.81 or any later)
** +binutils+
** +build-essential+ (only for Debian based systems)
** +gcc+ (version 2.95 or any later)
** `g++` (version 2.95 or any later)
** +gcc+ (version 4.4 or any later)
** `g++` (version 4.4 or any later)
** +bash+
** +patch+
** +gzip+
+2 -2
View File
@@ -33,7 +33,7 @@ config BR2_LINUX_KERNEL_LATEST_VERSION
bool "Latest version (4.15)"
config BR2_LINUX_KERNEL_LATEST_CIP_VERSION
bool "Latest CIP SLTS version (v4.4.130-cip23)"
bool "Latest CIP SLTS version (v4.4.138-cip25)"
help
CIP launched in the spring of 2016 to address the needs of
organizations in industries such as power generation and
@@ -121,7 +121,7 @@ endif
config BR2_LINUX_KERNEL_VERSION
string
default "4.15.16" if BR2_LINUX_KERNEL_LATEST_VERSION
default "v4.4.130-cip23" if BR2_LINUX_KERNEL_LATEST_CIP_VERSION
default "v4.4.138-cip25" if BR2_LINUX_KERNEL_LATEST_CIP_VERSION
default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \
if BR2_LINUX_KERNEL_CUSTOM_VERSION
default "custom" if BR2_LINUX_KERNEL_CUSTOM_TARBALL
@@ -0,0 +1,32 @@
From a42519dceef0493ece45538375ae1791313f16d3 Mon Sep 17 00:00:00 2001
From: Hollis Blanchard <hollis_blanchard@mentor.com>
Date: Mon, 30 Jul 2018 14:29:46 -0700
Subject: [PATCH] Remove pragmas inside functions
GCC 4.4.7, as found in RHEL6, reports:
libacl/acl_from_text.c:307: error: #pragma GCC diagnostic not allowed inside functions
Signed-off-by: Hollis Blanchard <hollis_blanchard@mentor.com>
---
libacl/acl_from_text.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/libacl/acl_from_text.c b/libacl/acl_from_text.c
index 09790c9..fb6bc07 100644
--- a/libacl/acl_from_text.c
+++ b/libacl/acl_from_text.c
@@ -304,11 +304,8 @@ parse_acl_entry(const char **text_p, acl_t *acl_p)
create_entry:
if (acl_create_entry(acl_p, &entry_d) != 0)
return -1;
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Waddress"
if (acl_copy_entry(entry_d, int2ext(&entry_obj)) != 0)
return -1;
-#pragma GCC diagnostic pop
return 0;
fail:
--
2.13.0
@@ -1,29 +0,0 @@
Support installation of .a file when doing static linking
When doing static linking (i.e ENABLE_SHARED != yes), the acl build
logic wasn't installing any library at all, not even the .a file which
is needed for static linking. This patch fixes that.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Index: b/include/buildmacros
===================================================================
--- a/include/buildmacros
+++ b/include/buildmacros
@@ -97,7 +97,15 @@
INSTALL_LTLIB_STATIC = \
cd $(TOPDIR)/$(LIBNAME)/.libs; \
- ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR);
+ ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR); \
+ ../$(INSTALL) -m 644 -T old_lib $(LIBNAME).la $(PKG_DEVLIB_DIR); \
+ ../$(INSTALL) -m 644 $(LIBNAME).la $(PKG_DEVLIB_DIR)/$(LIBNAME).la ; \
+ ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
+ ../$(INSTALL) -T so_base $(LIBNAME).la $(PKG_LIB_DIR); \
+ if test "x$(PKG_DEVLIB_DIR)" != "x$(PKG_LIB_DIR)" ; then \
+ ../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).a $(PKG_LIB_DIR)/$(LIBNAME).a; \
+ ../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).la $(PKG_LIB_DIR)/$(LIBNAME).la; \
+ fi
INSTALL_MAN = \
@for d in $(MAN_PAGES); do \
@@ -1,292 +0,0 @@
From debbe4f7b591b3f35d0ed65c17fa81b196b2eb2d Mon Sep 17 00:00:00 2001
From: Mike Frysinger <vapier@gentoo.org>
Date: Tue, 12 Aug 2014 08:37:25 -0400
Subject: [PATCH] add __acl_ prefixes to internal symbols
When static linking libacl, people sometimes run into symbol collisions
because their own code defines symbols like "quote". So for acl internal
symbols, use an __acl_ prefix.
[Rahul Bedarkar: backported from upstream
http://git.savannah.gnu.org/cgit/acl.git/commit/?id=a2c4d71c2e84419a49db503ed59de4d3d1dca7dd ]
Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
---
exports | 12 ++----------
getfacl/getfacl.c | 4 ++--
include/misc.h | 8 ++++----
libacl/__acl_to_any_text.c | 4 ++--
libacl/acl_from_text.c | 4 ++--
libmisc/high_water_alloc.c | 2 +-
libmisc/next_line.c | 6 +++---
libmisc/quote.c | 4 ++--
libmisc/unquote.c | 2 +-
setfacl/parse.c | 10 +++++-----
setfacl/setfacl.c | 4 ++--
11 files changed, 26 insertions(+), 34 deletions(-)
diff --git a/exports b/exports
index 7d8e69e..bf15d84 100644
--- a/exports
+++ b/exports
@@ -59,22 +59,14 @@ ACL_1.0 {
acl_to_any_text;
local:
- # Library internal stuff
+ # Library internal stuff
__new_var_obj_p;
__new_obj_p_here;
__free_obj_p;
__check_obj_p;
__ext2int_and_check;
- __acl_reorder_entry_obj_p;
- __acl_reorder_obj_p;
- __acl_init_obj;
- __acl_create_entry_obj;
- __acl_free_acl_obj;
- __acl_to_any_text;
+ __acl_*;
__apply_mask_to_mode;
-
- quote;
- unquote;
};
ACL_1.1 {
diff --git a/getfacl/getfacl.c b/getfacl/getfacl.c
index f8eaf25..af9e225 100644
--- a/getfacl/getfacl.c
+++ b/getfacl/getfacl.c
@@ -90,7 +90,7 @@ int opt_numeric; /* don't convert id's to symbolic names */
static const char *xquote(const char *str, const char *quote_chars)
{
- const char *q = quote(str, quote_chars);
+ const char *q = __acl_quote(str, quote_chars);
if (q == NULL) {
fprintf(stderr, "%s: %s\n", progname, strerror(errno));
exit(1);
@@ -718,7 +718,7 @@ int main(int argc, char *argv[])
do {
if (optind == argc ||
strcmp(argv[optind], "-") == 0) {
- while ((line = next_line(stdin)) != NULL) {
+ while ((line = __acl_next_line(stdin)) != NULL) {
if (*line == '\0')
continue;
diff --git a/include/misc.h b/include/misc.h
index 0c5fdcc..c25accf 100644
--- a/include/misc.h
+++ b/include/misc.h
@@ -15,9 +15,9 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-extern int high_water_alloc(void **buf, size_t *bufsize, size_t newsize);
+extern int __acl_high_water_alloc(void **buf, size_t *bufsize, size_t newsize);
-extern const char *quote(const char *str, const char *quote_chars);
-extern char *unquote(char *str);
+extern const char *__acl_quote(const char *str, const char *quote_chars);
+extern char *__acl_unquote(char *str);
-extern char *next_line(FILE *file);
+extern char *__acl_next_line(FILE *file);
diff --git a/libacl/__acl_to_any_text.c b/libacl/__acl_to_any_text.c
index a4f9c34..19f1ccc 100644
--- a/libacl/__acl_to_any_text.c
+++ b/libacl/__acl_to_any_text.c
@@ -159,7 +159,7 @@ acl_entry_to_any_str(const acl_entry_t entry_d, char *text_p, ssize_t size,
if (options & TEXT_NUMERIC_IDS)
str = NULL;
else
- str = quote(user_name(
+ str = __acl_quote(user_name(
entry_obj_p->eid.qid), ":, \t\n\r");
if (str != NULL) {
strncpy(text_p, str, size);
@@ -182,7 +182,7 @@ acl_entry_to_any_str(const acl_entry_t entry_d, char *text_p, ssize_t size,
if (options & TEXT_NUMERIC_IDS)
str = NULL;
else
- str = quote(group_name(
+ str = __acl_quote(group_name(
entry_obj_p->eid.qid), ":, \t\n\r");
if (str != NULL) {
strncpy(text_p, str, size);
diff --git a/libacl/acl_from_text.c b/libacl/acl_from_text.c
index 1e05322..f6165be 100644
--- a/libacl/acl_from_text.c
+++ b/libacl/acl_from_text.c
@@ -206,7 +206,7 @@ parse_acl_entry(const char **text_p, acl_t *acl_p)
str = get_token(text_p);
if (str) {
entry_obj.etag = ACL_USER;
- error = get_uid(unquote(str),
+ error = get_uid(__acl_unquote(str),
&entry_obj.eid.qid);
free(str);
if (error) {
@@ -225,7 +225,7 @@ parse_acl_entry(const char **text_p, acl_t *acl_p)
str = get_token(text_p);
if (str) {
entry_obj.etag = ACL_GROUP;
- error = get_gid(unquote(str),
+ error = get_gid(__acl_unquote(str),
&entry_obj.eid.qid);
free(str);
if (error) {
diff --git a/libmisc/high_water_alloc.c b/libmisc/high_water_alloc.c
index c127dc1..951f4bb 100644
--- a/libmisc/high_water_alloc.c
+++ b/libmisc/high_water_alloc.c
@@ -21,7 +21,7 @@
#include <stdlib.h>
#include "misc.h"
-int high_water_alloc(void **buf, size_t *bufsize, size_t newsize)
+int __acl_high_water_alloc(void **buf, size_t *bufsize, size_t newsize)
{
#define CHUNK_SIZE 256
/*
diff --git a/libmisc/next_line.c b/libmisc/next_line.c
index 0566d7a..126a364 100644
--- a/libmisc/next_line.c
+++ b/libmisc/next_line.c
@@ -23,7 +23,7 @@
#define LINE_SIZE getpagesize()
-char *next_line(FILE *file)
+char *__acl_next_line(FILE *file)
{
static char *line;
static size_t line_size;
@@ -31,7 +31,7 @@ char *next_line(FILE *file)
int eol = 0;
if (!line) {
- if (high_water_alloc((void **)&line, &line_size, LINE_SIZE))
+ if (__acl_high_water_alloc((void **)&line, &line_size, LINE_SIZE))
return NULL;
}
c = line;
@@ -47,7 +47,7 @@ char *next_line(FILE *file)
if (feof(file))
break;
if (!eol) {
- if (high_water_alloc((void **)&line, &line_size,
+ if (__acl_high_water_alloc((void **)&line, &line_size,
2 * line_size))
return NULL;
c = strrchr(line, '\0');
diff --git a/libmisc/quote.c b/libmisc/quote.c
index bf8f9eb..a28800c 100644
--- a/libmisc/quote.c
+++ b/libmisc/quote.c
@@ -23,7 +23,7 @@
#include <string.h>
#include "misc.h"
-const char *quote(const char *str, const char *quote_chars)
+const char *__acl_quote(const char *str, const char *quote_chars)
{
static char *quoted_str;
static size_t quoted_str_len;
@@ -40,7 +40,7 @@ const char *quote(const char *str, const char *quote_chars)
if (nonpr == 0)
return str;
- if (high_water_alloc((void **)&quoted_str, &quoted_str_len,
+ if (__acl_high_water_alloc((void **)&quoted_str, &quoted_str_len,
(s - (unsigned char *)str) + nonpr * 3 + 1))
return NULL;
for (s = (unsigned char *)str, q = quoted_str; *s != '\0'; s++) {
diff --git a/libmisc/unquote.c b/libmisc/unquote.c
index bffebf9..4f4ce7c 100644
--- a/libmisc/unquote.c
+++ b/libmisc/unquote.c
@@ -22,7 +22,7 @@
#include <ctype.h>
#include "misc.h"
-char *unquote(char *str)
+char *__acl_unquote(char *str)
{
unsigned char *s, *t;
diff --git a/setfacl/parse.c b/setfacl/parse.c
index e7e6add..7433459 100644
--- a/setfacl/parse.c
+++ b/setfacl/parse.c
@@ -226,7 +226,7 @@ user_entry:
str = get_token(text_p);
if (str) {
cmd->c_tag = ACL_USER;
- error = get_uid(unquote(str), &cmd->c_id);
+ error = get_uid(__acl_unquote(str), &cmd->c_id);
free(str);
if (error) {
*text_p = backup;
@@ -245,7 +245,7 @@ user_entry:
str = get_token(text_p);
if (str) {
cmd->c_tag = ACL_GROUP;
- error = get_gid(unquote(str), &cmd->c_id);
+ error = get_gid(__acl_unquote(str), &cmd->c_id);
free(str);
if (error) {
*text_p = backup;
@@ -466,7 +466,7 @@ read_acl_comments(
if (strncmp(cp, "file:", 5) == 0) {
cp += 5;
SKIP_WS(cp);
- cp = unquote(cp);
+ cp = __acl_unquote(cp);
if (path_p) {
if (*path_p)
@@ -483,7 +483,7 @@ read_acl_comments(
if (uid_p) {
if (*uid_p != ACL_UNDEFINED_ID)
goto fail;
- if (get_uid(unquote(cp), uid_p) != 0)
+ if (get_uid(__acl_unquote(cp), uid_p) != 0)
continue;
}
} else if (strncmp(cp, "group:", 6) == 0) {
@@ -493,7 +493,7 @@ read_acl_comments(
if (gid_p) {
if (*gid_p != ACL_UNDEFINED_ID)
goto fail;
- if (get_gid(unquote(cp), gid_p) != 0)
+ if (get_gid(__acl_unquote(cp), gid_p) != 0)
continue;
}
} else if (strncmp(cp, "flags:", 6) == 0) {
diff --git a/setfacl/setfacl.c b/setfacl/setfacl.c
index 81062a6..fb2d172 100644
--- a/setfacl/setfacl.c
+++ b/setfacl/setfacl.c
@@ -92,7 +92,7 @@ int promote_warning;
static const char *xquote(const char *str, const char *quote_chars)
{
- const char *q = quote(str, quote_chars);
+ const char *q = __acl_quote(str, quote_chars);
if (q == NULL) {
fprintf(stderr, "%s: %s\n", progname, strerror(errno));
exit(1);
@@ -311,7 +311,7 @@ int next_file(const char *arg, seq_t seq)
args.seq = seq;
if (strcmp(arg, "-") == 0) {
- while ((line = next_line(stdin)))
+ while ((line = __acl_next_line(stdin)))
errors = walk_tree(line, walk_flags, 0, do_set, &args);
if (!feof(stdin)) {
fprintf(stderr, _("%s: Standard input: %s\n"),
--
2.6.2
@@ -1,67 +0,0 @@
From d3bd7b29b79147b4155e78a8ea06ded98b91f92a Mon Sep 17 00:00:00 2001
From: "Yann E. MORIN" <yann.morin.1998@free.fr>
Date: Tue, 8 May 2018 15:23:57 +0200
Subject: [PATCH] all: use install(1) to install executables
When the destination file already exists, the current install script
will overwrite it with the new executable.
However, when the existing executable is a symlink or hardlink to
something else, like busybox, this effectively overwrites that something
with the new executable, and thus replaces busybox and all its applets
with the code for either of the three commands.
We fix that by simply calling install(1). install(1) is sufficiently
widespread that we don't bother checking for it, as tis is just a
workaround while waiting for the version bump that will eventually fix
it for good.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
chacl/Makefile | 4 ++--
getfacl/Makefile | 4 ++--
setfacl/Makefile | 4 ++--
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/chacl/Makefile b/chacl/Makefile
index 33858d6..c857329 100644
--- a/chacl/Makefile
+++ b/chacl/Makefile
@@ -30,6 +30,6 @@ default: $(LTCOMMAND)
include $(BUILDRULES)
install: default
- $(INSTALL) -m 755 -d $(PKG_BIN_DIR)
- $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR)
+ install -D -m 755 $(LTCOMMAND) $(PKG_BIN_DIR)/$(LTCOMMAND)
+
install-dev install-lib:
diff --git a/getfacl/Makefile b/getfacl/Makefile
index 7fbafda..8ac63e0 100644
--- a/getfacl/Makefile
+++ b/getfacl/Makefile
@@ -31,6 +31,6 @@ default: $(LTCOMMAND)
include $(BUILDRULES)
install: default
- $(INSTALL) -m 755 -d $(PKG_BIN_DIR)
- $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR)
+ install -D -m 755 $(LTCOMMAND) $(PKG_BIN_DIR)/$(LTCOMMAND)
+
install-dev install-lib:
diff --git a/setfacl/Makefile b/setfacl/Makefile
index c44e7c0..eea2ede 100644
--- a/setfacl/Makefile
+++ b/setfacl/Makefile
@@ -31,6 +31,6 @@ default: $(LTCOMMAND)
include $(BUILDRULES)
install: default
- $(INSTALL) -m 755 -d $(PKG_BIN_DIR)
- $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR)
+ install -D -m 755 $(LTCOMMAND) $(PKG_BIN_DIR)/$(LTCOMMAND)
+
install-dev install-lib:
--
2.14.1
+1 -1
View File
@@ -1,2 +1,2 @@
# Locally calculated after checking pgp signature
sha256 179074bb0580c06c4b4137be4c5a92a701583277967acdb5546043c7874e0d23 acl-2.2.52.src.tar.gz
sha256 06be9865c6f418d851ff4494e12406568353b891ffe1f596b34693c387af26c7 acl-2.2.53.tar.gz
+7 -43
View File
@@ -4,54 +4,18 @@
#
################################################################################
ACL_VERSION = 2.2.52
ACL_SOURCE = acl-$(ACL_VERSION).src.tar.gz
ACL_VERSION = 2.2.53
ACL_SITE = http://download.savannah.gnu.org/releases/acl
ACL_INSTALL_STAGING = YES
ACL_DEPENDENCIES = attr
ACL_CONF_OPTS = --enable-gettext=no
ACL_LICENSE = GPL-2.0+ (programs), LGPL-2.1+ (libraries)
ACL_LICENSE_FILES = doc/COPYING doc/COPYING.LGPL
# While the configuration system uses autoconf, the Makefiles are
# hand-written and do not use automake. Therefore, we have to hack
# around their deficiencies by:
# - explicitly passing CFLAGS (LDFLAGS are passed on from configure,
# CFLAGS are not).
# - explicitly passing the installation prefix, not using DESTDIR.
ACL_MAKE_ENV = CFLAGS="$(TARGET_CFLAGS)"
ACL_INSTALL_STAGING_OPTS = \
prefix=$(STAGING_DIR)/usr \
exec_prefix=$(STAGING_DIR)/usr \
PKG_DEVLIB_DIR=$(STAGING_DIR)/usr/lib \
install-dev install-lib
ACL_INSTALL_TARGET_OPTS = \
prefix=$(TARGET_DIR)/usr \
exec_prefix=$(TARGET_DIR)/usr \
install install-lib
# The libdir variable in libacl.la is empty, so let's fix it. This is
# probably due to acl not using automake, and not doing fully the
# right thing with libtool.
define ACL_FIX_LIBTOOL_LA_LIBDIR
$(SED) "s,libdir=.*,libdir='$(STAGING_DIR)'," \
$(STAGING_DIR)/usr/lib/libacl.la
endef
ACL_POST_INSTALL_STAGING_HOOKS += ACL_FIX_LIBTOOL_LA_LIBDIR
ACL_DEPENDENCIES = attr
HOST_ACL_DEPENDENCIES = host-attr
HOST_ACL_CONF_OPTS = --enable-gettext=no
HOST_ACL_MAKE_ENV = CFLAGS="$(HOST_CFLAGS)"
HOST_ACL_INSTALL_OPTS = \
prefix=$(HOST_DIR) \
exec_prefix=$(HOST_DIR) \
PKG_DEVLIB_DIR=$(HOST_DIR)/lib \
install-dev install-lib
# For the host, libacl.la is correct, no fixup needed.
ACL_INSTALL_STAGING = YES
ACL_CONF_OPTS = --disable-nls
HOST_ACL_CONF_OPTS = --disable-nls
$(eval $(autotools-package))
$(eval $(host-autotools-package))
+3 -2
View File
@@ -1,3 +1,4 @@
# From http://archive.apache.org/dist/httpd/httpd-2.4.33.tar.bz2.sha256
sha256 de02511859b00d17845b9abdd1f975d5ccb5d0b280c567da5bf2ad4b70846f05 httpd-2.4.33.tar.bz2
# From http://archive.apache.org/dist/httpd/httpd-2.4.34.tar.bz2.sha256
sha256 fa53c95631febb08a9de41fd2864cfff815cf62d9306723ab0d4b8d7aa1638f0 httpd-2.4.34.tar.bz2
# Locally computed
sha256 c49c0819a726b70142621715dae3159c47b0349c2bc9db079070f28dadac0229 LICENSE
+1 -1
View File
@@ -4,7 +4,7 @@
#
################################################################################
APACHE_VERSION = 2.4.33
APACHE_VERSION = 2.4.34
APACHE_SOURCE = httpd-$(APACHE_VERSION).tar.bz2
APACHE_SITE = http://archive.apache.org/dist/httpd
APACHE_LICENSE = Apache-2.0
@@ -0,0 +1,87 @@
From 3ac428794ea0f95c854166c9c0cffb0267c5e98b Mon Sep 17 00:00:00 2001
From: Hollis Blanchard <hollis_blanchard@mentor.com>
Date: Mon, 30 Jul 2018 14:17:21 -0700
Subject: [PATCH] Remove messages in "deprecated" gcc attributes
GCC versions up through 4.4.7 (which is used in RHEL 6) do not accept
any argument for the deprecated attribute. GCC 4.5 and later say the
"msg" argument is optional. We don't need the messages during
Buildroot builds anyways.
Signed-off-by: Hollis Blanchard <hollis_blanchard@mentor.com>
---
include/attributes.h | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/include/attributes.h b/include/attributes.h
index 14beb8f..23c39c8 100644
--- a/include/attributes.h
+++ b/include/attributes.h
@@ -127,10 +127,10 @@ typedef struct attr_multiop {
*/
EXPORT int attr_get (const char *__path, const char *__attrname,
char *__attrvalue, int *__valuelength, int __flags)
- __attribute__ ((deprecated ("Use getxattr or lgetxattr instead")));
+ __attribute__ ((deprecated));
EXPORT int attr_getf (int __fd, const char *__attrname, char *__attrvalue,
int *__valuelength, int __flags)
- __attribute__ ((deprecated ("Use fgetxattr instead")));
+ __attribute__ ((deprecated));
/*
* Set the value of an attribute, creating the attribute if necessary.
@@ -139,11 +139,11 @@ EXPORT int attr_getf (int __fd, const char *__attrname, char *__attrvalue,
EXPORT int attr_set (const char *__path, const char *__attrname,
const char *__attrvalue, const int __valuelength,
int __flags)
- __attribute__ ((deprecated ("Use setxattr or lsetxattr instead")));
+ __attribute__ ((deprecated));
EXPORT int attr_setf (int __fd, const char *__attrname,
const char *__attrvalue, const int __valuelength,
int __flags)
- __attribute__ ((deprecated ("Use fsetxattr instead")));
+ __attribute__ ((deprecated));
/*
* Remove an attribute.
@@ -151,9 +151,9 @@ EXPORT int attr_setf (int __fd, const char *__attrname,
*/
EXPORT int attr_remove (const char *__path, const char *__attrname,
int __flags)
- __attribute__ ((deprecated ("Use removexattr or lremovexattr instead")));
+ __attribute__ ((deprecated));
EXPORT int attr_removef (int __fd, const char *__attrname, int __flags)
- __attribute__ ((deprecated ("Use fremovexattr instead")));
+ __attribute__ ((deprecated));
/*
* List the names and sizes of the values of all the attributes of an object.
@@ -164,10 +164,10 @@ EXPORT int attr_removef (int __fd, const char *__attrname, int __flags)
*/
EXPORT int attr_list(const char *__path, char *__buffer, const int __buffersize,
int __flags, attrlist_cursor_t *__cursor)
- __attribute__ ((deprecated ("Use listxattr or llistxattr instead")));
+ __attribute__ ((deprecated));
EXPORT int attr_listf(int __fd, char *__buffer, const int __buffersize,
int __flags, attrlist_cursor_t *__cursor)
- __attribute__ ((deprecated ("Use flistxattr instead")));
+ __attribute__ ((deprecated));
/*
* Operate on multiple attributes of the same object simultaneously.
@@ -188,10 +188,10 @@ EXPORT int attr_listf(int __fd, char *__buffer, const int __buffersize,
*/
EXPORT int attr_multi (const char *__path, attr_multiop_t *__oplist,
int __count, int __flags)
- __attribute__ ((deprecated ("Use getxattr, setxattr, listxattr, removexattr instead")));
+ __attribute__ ((deprecated));
EXPORT int attr_multif (int __fd, attr_multiop_t *__oplist,
int __count, int __flags)
- __attribute__ ((deprecated ("Use getxattr, setxattr, listxattr, removexattr instead")));
+ __attribute__ ((deprecated));
#ifdef __cplusplus
}
--
2.13.0
@@ -1,29 +0,0 @@
Support installation of .a file when doing static linking
When doing static linking (i.e ENABLE_SHARED != yes), the attr build
logic wasn't installing any library at all, not even the .a file which
is needed for static linking. This patch fixes that.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Index: b/include/buildmacros
===================================================================
--- a/include/buildmacros
+++ b/include/buildmacros
@@ -97,7 +97,15 @@
INSTALL_LTLIB_STATIC = \
cd $(TOPDIR)/$(LIBNAME)/.libs; \
- ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR);
+ ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR); \
+ ../$(INSTALL) -m 644 -T old_lib $(LIBNAME).la $(PKG_DEVLIB_DIR); \
+ ../$(INSTALL) -m 644 $(LIBNAME).la $(PKG_DEVLIB_DIR)/$(LIBNAME).la ; \
+ ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
+ ../$(INSTALL) -T so_base $(LIBNAME).la $(PKG_LIB_DIR); \
+ if test "x$(PKG_DEVLIB_DIR)" != "x$(PKG_LIB_DIR)" ; then \
+ ../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).a $(PKG_LIB_DIR)/$(LIBNAME).a; \
+ ../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).la $(PKG_LIB_DIR)/$(LIBNAME).la; \
+ fi
INSTALL_MAN = \
@for d in $(MAN_PAGES); do \
@@ -1,37 +0,0 @@
From 667137acaffb8d0cc62b47821a67a52ba0637d5c Mon Sep 17 00:00:00 2001
From: Mike Frysinger <vapier@gentoo.org>
Date: Fri, 10 Jan 2014 13:56:37 +0000
Subject: avoid glibc-specific DECLS defines
This matches what we do in all the other headers.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
diff --git a/include/xattr.h b/include/xattr.h
index 70a84be..070d7c5 100644
--- a/include/xattr.h
+++ b/include/xattr.h
@@ -30,8 +30,9 @@
#define XATTR_CREATE 0x1 /* set value, fail if attr already exists */
#define XATTR_REPLACE 0x2 /* set value, fail if attr does not exist */
-
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
extern int setxattr (const char *__path, const char *__name,
const void *__value, size_t __size, int __flags) __THROW;
@@ -58,6 +59,8 @@ extern int removexattr (const char *__path, const char *__name) __THROW;
extern int lremovexattr (const char *__path, const char *__name) __THROW;
extern int fremovexattr (int __filedes, const char *__name) __THROW;
-__END_DECLS
+#ifdef __cplusplus
+}
+#endif
#endif /* __XATTR_H__ */
--
cgit v0.9.0.2
-37
View File
@@ -1,37 +0,0 @@
From 92247401984dd9a80d9d0c8c030692323f980678 Mon Sep 17 00:00:00 2001
From: Emmanuel Dreyfus <manu@netbsd.org>
Date: Mon, 30 Jun 2014 13:06:05 +0000
Subject: Portability fixes
- <features.h> is Linux specific
- Define __THROW for non glibc based systems
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
(limited to 'include/xattr.h')
diff --git a/include/xattr.h b/include/xattr.h
index 070d7c5..fd1f268 100644
--- a/include/xattr.h
+++ b/include/xattr.h
@@ -20,7 +20,18 @@
#ifndef __XATTR_H__
#define __XATTR_H__
+#if defined(linux)
#include <features.h>
+#endif
+
+/* Portability non glibc c++ build systems */
+#ifndef __THROW
+# if defined __cplusplus
+# define __THROW throw ()
+# else
+# define __THROW
+# endif
+#endif
#include <errno.h>
#ifndef ENOATTR
--
cgit v0.9.0.2
@@ -1,67 +0,0 @@
From 4187e60ab52cac3ed36036a354977310dab68dcb Mon Sep 17 00:00:00 2001
From: "Yann E. MORIN" <yann.morin.1998@free.fr>
Date: Tue, 8 May 2018 15:16:10 +0200
Subject: [PATCH] all: use install(1) to install executables
When the destination file already exists, the current install script
will overwrite it with the new executable.
However, when the existing executable is a symlink or hardlink to
something else, like busybox, this effectively overwrites that something
with the new executable, and thus replaces busybox and all its applets
with the code for either of the three commands.
We fix that by simply calling install(1). install(1) is sufficiently
widespread that we don't bother checking for it, as this is just a
workaround while waiting for the version bump that will eventually fix
it for good.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
attr/Makefile | 4 ++--
getfattr/Makefile | 4 ++--
setfattr/Makefile | 4 ++--
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/attr/Makefile b/attr/Makefile
index 1c467e8..326dd7e 100644
--- a/attr/Makefile
+++ b/attr/Makefile
@@ -29,6 +29,6 @@ default: $(LTCOMMAND)
include $(BUILDRULES)
install: default
- $(INSTALL) -m 755 -d $(PKG_BIN_DIR)
- $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR)
+ install -D -m 755 $(LTCOMMAND) $(PKG_BIN_DIR)/$(LTCOMMAND)
+
install-dev install-lib:
diff --git a/getfattr/Makefile b/getfattr/Makefile
index 91d3df2..f913172 100644
--- a/getfattr/Makefile
+++ b/getfattr/Makefile
@@ -30,6 +30,6 @@ default: $(LTCOMMAND)
include $(BUILDRULES)
install: default
- $(INSTALL) -m 755 -d $(PKG_BIN_DIR)
- $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR)
+ install -D -m 755 $(LTCOMMAND) $(PKG_BIN_DIR)/$(LTCOMMAND)
+
install-dev install-lib:
diff --git a/setfattr/Makefile b/setfattr/Makefile
index d55461b..26dc5d8 100644
--- a/setfattr/Makefile
+++ b/setfattr/Makefile
@@ -30,6 +30,6 @@ default: $(LTCOMMAND)
include $(BUILDRULES)
install: default
- $(INSTALL) -m 755 -d $(PKG_BIN_DIR)
- $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_BIN_DIR)
+ install -D -m 755 $(LTCOMMAND) $(PKG_BIN_DIR)/$(LTCOMMAND)
+
install-dev install-lib:
--
2.14.1
+1 -1
View File
@@ -1,2 +1,2 @@
# Locally calculated after checking pgp signature
sha256 25772f653ac5b2e3ceeb89df50e4688891e21f723c460636548971652af0a859 attr-2.4.47.src.tar.gz
sha256 5ead72b358ec709ed00bbf7a9eaef1654baad937c001c044fe8b74c57f5324e7 attr-2.4.48.tar.gz
+4 -32
View File
@@ -4,43 +4,15 @@
#
################################################################################
ATTR_VERSION = 2.4.47
ATTR_SOURCE = attr-$(ATTR_VERSION).src.tar.gz
ATTR_VERSION = 2.4.48
ATTR_SITE = http://download.savannah.gnu.org/releases/attr
ATTR_INSTALL_STAGING = YES
ATTR_CONF_OPTS = --enable-gettext=no
HOST_ATTR_CONF_OPTS = --enable-gettext=no
ATTR_LICENSE = GPL-2.0+ (programs), LGPL-2.1+ (libraries)
ATTR_LICENSE_FILES = doc/COPYING doc/COPYING.LGPL
# While the configuration system uses autoconf, the Makefiles are
# hand-written and do not use automake. Therefore, we have to hack
# around their deficiencies by passing installation paths.
ATTR_INSTALL_STAGING_OPTS = \
prefix=$(STAGING_DIR)/usr \
exec_prefix=$(STAGING_DIR)/usr \
PKG_DEVLIB_DIR=$(STAGING_DIR)/usr/lib \
install-dev install-lib
ATTR_INSTALL_STAGING = YES
ATTR_INSTALL_TARGET_OPTS = \
prefix=$(TARGET_DIR)/usr \
exec_prefix=$(TARGET_DIR)/usr \
install install-lib
HOST_ATTR_INSTALL_OPTS = \
prefix=$(HOST_DIR) \
exec_prefix=$(HOST_DIR) \
install-dev install-lib
# The libdir variable in libattr.la is empty, so let's fix it. This is
# probably due to attr not using automake, and not doing fully the
# right thing with libtool.
define ATTR_FIX_LIBTOOL_LA_LIBDIR
$(SED) "s,libdir=.*,libdir='$(STAGING_DIR)'," \
$(STAGING_DIR)/usr/lib/libattr.la
endef
ATTR_POST_INSTALL_STAGING_HOOKS += ATTR_FIX_LIBTOOL_LA_LIBDIR
ATTR_CONF_OPTS = --disable-nls
HOST_ATTR_CONF_OPTS = --disable-nls
$(eval $(autotools-package))
$(eval $(host-autotools-package))
+2 -2
View File
@@ -1,4 +1,4 @@
# Verified from https://ftp.isc.org/isc/bind9/9.11.4/bind-9.11.4.tar.gz.asc
# Verified from https://ftp.isc.org/isc/bind9/9.11.4-P1/bind-9.11.4-P1.tar.gz.asc
# with key BE0E9748B718253A28BB89FFF1B11BF05CF02E57
sha256 595070b031f869f8939656b5a5d11b121211967f15f6afeafa895df745279617 bind-9.11.4.tar.gz
sha256 b0e0dc3c8bf26989b1cad53f90d44a48e39404afc68f65c45bae79b446f0fe23 bind-9.11.4-P1.tar.gz
sha256 336f3c40e37a1a13690efb4c63e20908faa4c40498cc02f3579fb67d3a1933a5 COPYRIGHT
+1 -1
View File
@@ -4,7 +4,7 @@
#
################################################################################
BIND_VERSION = 9.11.4
BIND_VERSION = 9.11.4-P1
BIND_SITE = http://ftp.isc.org/isc/bind9/$(BIND_VERSION)
# bind does not support parallel builds.
BIND_MAKE = $(MAKE1)
@@ -0,0 +1,41 @@
From 088666535a045dae71bd2fcc6b3a1553023106ce Mon Sep 17 00:00:00 2001
From: "Yann E. MORIN" <yann.morin.1998@free.fr>
Date: Wed, 22 Aug 2018 10:10:19 +0200
Subject: [PATCH] buildsys: fix cross-compilation
Some identifiers for includes and libs paths may contain digit, e.g.
X11_PACKAGE or ATSPI2_PACKAGE or GLIB2_PACKAGE...
Also detect those identifiers when doing cros-compilation, so that the
_FOR_BUILD variants are really created and do not clash with the target
variants.
Fixes:
http://autobuild.buildroot.org/results/a37/a37782b3cfc1a96cc129db8fade20a36a7b2d470/build-end.log
http://autobuild.buildroot.org/results/97e/97edc6a47d2140968e84b409cdc960604e5896f2/build-end.log
[...]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
Upstram status: submitted
https://github.com/brltty/brltty/pull/142
---
mk4build | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mk4build b/mk4build
index db90c86a9..551283825 100755
--- a/mk4build
+++ b/mk4build
@@ -112,7 +112,7 @@ fi
sedScript="${outputName}.${sedExtension}"
sed -n -e '
-s/^ *\([A-Za-z][A-Za-z_]*\) *=.*$/\1/
+s/^ *\([A-Za-z][A-Za-z0-9_]*\) *=.*$/\1/
t found
d
:found
--
2.14.1
-2
View File
@@ -5,5 +5,3 @@ config BR2_PACKAGE_BZIP2
It typically compresses files to within 10% to 15% of the best
available techniques, while being around twice as fast at
compression and six times faster at decompression.
http://www.bzip.org
+1 -1
View File
@@ -5,7 +5,7 @@
################################################################################
BZIP2_VERSION = 1.0.6
BZIP2_SITE = http://www.bzip.org/$(BZIP2_VERSION)
BZIP2_SITE = http://sources.buildroot.net
BZIP2_INSTALL_STAGING = YES
BZIP2_LICENSE = bzip2 license
BZIP2_LICENSE_FILES = LICENSE
@@ -0,0 +1,42 @@
From 7c5bd948bb7e21fa0ee22f29e97748b2d0360319 Mon Sep 17 00:00:00 2001
From: Miroslav Lichvar <mlichvar@redhat.com>
Date: Thu, 17 May 2018 14:16:58 +0200
Subject: [PATCH] util: fall back to reading /dev/urandom when getrandom()
blocks
With recent changes in the Linux kernel, the getrandom() system call may
block for a long time after boot on machines that don't have enough
entropy. It blocks the chronyd's initialization before it can detach
from the terminal and may cause a chronyd service to fail to start due
to a timeout.
At least for now, enable the GRND_NONBLOCK flag to make the system call
non-blocking and let the code fall back to reading /dev/urandom (which
never blocks) if the system call failed with EAGAIN or any other error.
This makes the start of chronyd non-deterministic with respect to files
that it needs to open and possibly also makes it slightly easier to
guess the transmit/receive timestamp in client requests until the
urandom source is fully initialized.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
---
util.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/util.c b/util.c
index 4b3e455..76417d5 100644
--- a/util.c
+++ b/util.c
@@ -1224,7 +1224,7 @@ get_random_bytes_getrandom(char *buf, unsigned int len)
if (disabled)
break;
- if (getrandom(rand_buf, sizeof (rand_buf), 0) != sizeof (rand_buf)) {
+ if (getrandom(rand_buf, sizeof (rand_buf), GRND_NONBLOCK) != sizeof (rand_buf)) {
disabled = 1;
break;
}
--
2.11.0
+1 -1
View File
@@ -15,7 +15,7 @@ config BR2_PACKAGE_CRDA
query and apply the regulatory domain settings wireless
devices may operate within for a given location.
http://linuxwireless.org/en/developers/Regulatory/CRDA
https://wireless.wiki.kernel.org/en/developers/regulatory/crda
comment "crda needs a toolchain w/ threads, dynamic library"
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
@@ -0,0 +1,46 @@
From 567e7f8664c621f8aeaa95d9f4ab4b590574f572 Mon Sep 17 00:00:00 2001
From: Baruch Siach <baruch@tkos.co.il>
Date: Wed, 15 Aug 2018 14:13:46 +0300
Subject: [PATCH] Remove json_object typedef
The json-c header already defines the same typedef. While C11 allows
typedef redefinition to the same type, older versions of gcc disallow
that.
In file included from lib/luks2/luks2_internal.h:32,
from lib/luks2/luks2_disk_metadata.c:24:
lib/luks2/luks2.h:86: error: redefinition of typedef 'json_object'
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
---
lib/luks2/luks2.h | 1 -
lib/setup.c | 1 +
2 files changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/luks2/luks2.h b/lib/luks2/luks2.h
index ee57b41ba974..25e36190da45 100644
--- a/lib/luks2/luks2.h
+++ b/lib/luks2/luks2.h
@@ -83,7 +83,6 @@ struct luks2_hdr_disk {
/*
* LUKS2 header in-memory.
*/
-typedef struct json_object json_object;
struct luks2_hdr {
size_t hdr_size;
uint64_t seqid;
diff --git a/lib/setup.c b/lib/setup.c
index fddbe7ef7897..856f6e80f465 100644
--- a/lib/setup.c
+++ b/lib/setup.c
@@ -28,6 +28,7 @@
#include <sys/utsname.h>
#include <fcntl.h>
#include <errno.h>
+#include <json-c/json.h>
#include "libcryptsetup.h"
#include "luks.h"
--
2.18.0
+1 -1
View File
@@ -1,4 +1,4 @@
# From https://www.kernel.org/pub/linux/utils/cryptsetup/v2.0/sha256sums.asc
sha256 adc623b9e3e3ab5c14145b8baf21b741e513ee5bf90d2b4d85a745c2f05da199 cryptsetup-2.0.0.tar.xz
sha256 4d6cca04c1f5ff4a68d045d190efb2623087eda0274ded92f92a4b6911e501d4 cryptsetup-2.0.3.tar.xz
sha256 45670cce8b6a0ddd66c8016cd8ccef6cd71f35717cbacc7f1e895b3855207b33 COPYING
sha256 8c33cc37871654ec7ed87e6fbb896c8cf33ef5ef05b1611a5aed857596ffafa5 COPYING.LGPL
+3 -2
View File
@@ -5,7 +5,7 @@
################################################################################
CRYPTSETUP_VERSION_MAJOR = 2.0
CRYPTSETUP_VERSION = $(CRYPTSETUP_VERSION_MAJOR).0
CRYPTSETUP_VERSION = $(CRYPTSETUP_VERSION_MAJOR).3
CRYPTSETUP_SOURCE = cryptsetup-$(CRYPTSETUP_VERSION).tar.xz
CRYPTSETUP_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/cryptsetup/v$(CRYPTSETUP_VERSION_MAJOR)
CRYPTSETUP_DEPENDENCIES = lvm2 popt util-linux host-pkgconf json-c \
@@ -36,7 +36,8 @@ HOST_CRYPTSETUP_DEPENDENCIES = \
host-json-c \
host-openssl
HOST_CRYPTSETUP_CONF_OPTS = --with-crypto-backend=openssl
HOST_CRYPTSETUP_CONF_OPTS = --with-crypto_backend=openssl \
--disable-kernel_crypto
$(eval $(autotools-package))
$(eval $(host-autotools-package))
+1 -5
View File
@@ -15,9 +15,5 @@ config BR2_PACKAGE_DAHDI_TOOLS
http://www.asterisk.org/downloads/dahdi
# Two comments, otherwise it may not fit in menuconfig for narrow terminals
comment "dahdi-tools needs a toolchain w/ threads"
comment "dahdi-tools needs a toolchain w/ threads and a Linux kernel to be built"
depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_LINUX_KERNEL
comment "dahdi-tools needs a Linux kernel to be built"
depends on !BR2_LINUX_KERNEL
+1 -1
View File
@@ -1,6 +1,6 @@
config BR2_PACKAGE_DMIDECODE
bool "dmidecode"
depends on BR2_i386 || BR2_x86_64
depends on BR2_aarch64 || BR2_i386 || BR2_x86_64
help
Dmidecode reports information about your system's hardware
as described in your system BIOS according to the SMBIOS/DMI
@@ -0,0 +1,113 @@
# HG changeset patch
# User Matt Johnston <matt@ucc.asn.au>
# Date 1520519133 -28800
# Node ID 0dc3103a5900971d1d06d9101e062ddbd1112436
# Parent 0f149d63068d90705db7fb52c8dea15ff32eedd7
Only advertise a single server ecdsa key when -R (generate as required) is
specified. Fixes -R now that default ecdsa key size has changed.
Upstream-URL: https://secure.ucc.asn.au/hg/dropbear/rev/0dc3103a5900
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
diff -r 0f149d63068d -r 0dc3103a5900 svr-runopts.c
--- a/svr-runopts.c Thu Mar 08 22:22:11 2018 +0800
+++ b/svr-runopts.c Thu Mar 08 22:25:33 2018 +0800
@@ -526,8 +526,10 @@
void load_all_hostkeys() {
int i;
- int disable_unset_keys = 1;
int any_keys = 0;
+#ifdef DROPBEAR_ECDSA
+ int loaded_any_ecdsa = 0;
+#endif
svr_opts.hostkey = new_sign_key();
@@ -552,14 +554,8 @@
#endif
}
-#if DROPBEAR_DELAY_HOSTKEY
- if (svr_opts.delay_hostkey) {
- disable_unset_keys = 0;
- }
-#endif
-
#if DROPBEAR_RSA
- if (disable_unset_keys && !svr_opts.hostkey->rsakey) {
+ if (!svr_opts.delay_hostkey && !svr_opts.hostkey->rsakey) {
disablekey(DROPBEAR_SIGNKEY_RSA);
} else {
any_keys = 1;
@@ -567,39 +563,54 @@
#endif
#if DROPBEAR_DSS
- if (disable_unset_keys && !svr_opts.hostkey->dsskey) {
+ if (!svr_opts.delay_hostkey && !svr_opts.hostkey->dsskey) {
disablekey(DROPBEAR_SIGNKEY_DSS);
} else {
any_keys = 1;
}
#endif
+#if DROPBEAR_ECDSA
+ /* We want to advertise a single ecdsa algorithm size.
+ - If there is a ecdsa hostkey at startup we choose that that size.
+ - If we generate at runtime we choose the default ecdsa size.
+ - Otherwise no ecdsa keys will be advertised */
-#if DROPBEAR_ECDSA
+ /* check if any keys were loaded at startup */
+ loaded_any_ecdsa =
+ 0
#if DROPBEAR_ECC_256
- if ((disable_unset_keys || ECDSA_DEFAULT_SIZE != 256)
- && !svr_opts.hostkey->ecckey256) {
+ || svr_opts.hostkey->ecckey256
+#endif
+#if DROPBEAR_ECC_384
+ || svr_opts.hostkey->ecckey384
+#endif
+#if DROPBEAR_ECC_521
+ || svr_opts.hostkey->ecckey521
+#endif
+ ;
+ any_keys |= loaded_any_ecdsa;
+
+ /* Or an ecdsa key could be generated at runtime */
+ any_keys |= svr_opts.delay_hostkey;
+
+ /* At most one ecdsa key size will be left enabled */
+#if DROPBEAR_ECC_256
+ if (!svr_opts.hostkey->ecckey256
+ && (!svr_opts.delay_hostkey || loaded_any_ecdsa || ECDSA_DEFAULT_SIZE != 256 )) {
disablekey(DROPBEAR_SIGNKEY_ECDSA_NISTP256);
- } else {
- any_keys = 1;
}
#endif
-
#if DROPBEAR_ECC_384
- if ((disable_unset_keys || ECDSA_DEFAULT_SIZE != 384)
- && !svr_opts.hostkey->ecckey384) {
+ if (!svr_opts.hostkey->ecckey384
+ && (!svr_opts.delay_hostkey || loaded_any_ecdsa || ECDSA_DEFAULT_SIZE != 384 )) {
disablekey(DROPBEAR_SIGNKEY_ECDSA_NISTP384);
- } else {
- any_keys = 1;
}
#endif
-
#if DROPBEAR_ECC_521
- if ((disable_unset_keys || ECDSA_DEFAULT_SIZE != 521)
- && !svr_opts.hostkey->ecckey521) {
+ if (!svr_opts.hostkey->ecckey521
+ && (!svr_opts.delay_hostkey || loaded_any_ecdsa || ECDSA_DEFAULT_SIZE != 521 )) {
disablekey(DROPBEAR_SIGNKEY_ECDSA_NISTP521);
- } else {
- any_keys = 1;
}
#endif
#endif /* DROPBEAR_ECDSA */
@@ -0,0 +1,236 @@
From 52adbb34c32d3e2e1bcdb941e20a6f81138b8248 Mon Sep 17 00:00:00 2001
From: Matt Johnston <matt@ucc.asn.au>
Date: Thu, 23 Aug 2018 23:43:12 +0800
Subject: [PATCH] Wait to fail invalid usernames
[hg: https://secure.ucc.asn.au/hg/dropbear/rev/5d2d1021ca00]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
---
auth.h | 6 +++---
svr-auth.c | 19 +++++--------------
svr-authpam.c | 26 ++++++++++++++++++++++----
svr-authpasswd.c | 27 ++++++++++++++-------------
svr-authpubkey.c | 11 ++++++++++-
5 files changed, 54 insertions(+), 35 deletions(-)
diff --git a/auth.h b/auth.h
index da498f5..98f5468 100644
--- a/auth.h
+++ b/auth.h
@@ -37,9 +37,9 @@ void recv_msg_userauth_request(void);
void send_msg_userauth_failure(int partial, int incrfail);
void send_msg_userauth_success(void);
void send_msg_userauth_banner(const buffer *msg);
-void svr_auth_password(void);
-void svr_auth_pubkey(void);
-void svr_auth_pam(void);
+void svr_auth_password(int valid_user);
+void svr_auth_pubkey(int valid_user);
+void svr_auth_pam(int valid_user);
#if DROPBEAR_SVR_PUBKEY_OPTIONS_BUILT
int svr_pubkey_allows_agentfwd(void);
diff --git a/svr-auth.c b/svr-auth.c
index c19c090..edde86b 100644
--- a/svr-auth.c
+++ b/svr-auth.c
@@ -149,10 +149,8 @@ void recv_msg_userauth_request() {
if (methodlen == AUTH_METHOD_PASSWORD_LEN &&
strncmp(methodname, AUTH_METHOD_PASSWORD,
AUTH_METHOD_PASSWORD_LEN) == 0) {
- if (valid_user) {
- svr_auth_password();
- goto out;
- }
+ svr_auth_password(valid_user);
+ goto out;
}
}
#endif
@@ -164,10 +162,8 @@ void recv_msg_userauth_request() {
if (methodlen == AUTH_METHOD_PASSWORD_LEN &&
strncmp(methodname, AUTH_METHOD_PASSWORD,
AUTH_METHOD_PASSWORD_LEN) == 0) {
- if (valid_user) {
- svr_auth_pam();
- goto out;
- }
+ svr_auth_pam(valid_user);
+ goto out;
}
}
#endif
@@ -177,12 +173,7 @@ void recv_msg_userauth_request() {
if (methodlen == AUTH_METHOD_PUBKEY_LEN &&
strncmp(methodname, AUTH_METHOD_PUBKEY,
AUTH_METHOD_PUBKEY_LEN) == 0) {
- if (valid_user) {
- svr_auth_pubkey();
- } else {
- /* pubkey has no failure delay */
- send_msg_userauth_failure(0, 0);
- }
+ svr_auth_pubkey(valid_user);
goto out;
}
#endif
diff --git a/svr-authpam.c b/svr-authpam.c
index 05e4f3e..d201bc9 100644
--- a/svr-authpam.c
+++ b/svr-authpam.c
@@ -178,13 +178,14 @@ pamConvFunc(int num_msg,
* Keyboard interactive would be a lot nicer, but since PAM is synchronous, it
* gets very messy trying to send the interactive challenges, and read the
* interactive responses, over the network. */
-void svr_auth_pam() {
+void svr_auth_pam(int valid_user) {
struct UserDataS userData = {NULL, NULL};
struct pam_conv pamConv = {
pamConvFunc,
&userData /* submitted to pamvConvFunc as appdata_ptr */
};
+ const char* printable_user = NULL;
pam_handle_t* pamHandlep = NULL;
@@ -204,12 +205,23 @@ void svr_auth_pam() {
password = buf_getstring(ses.payload, &passwordlen);
+ /* We run the PAM conversation regardless of whether the username is valid
+ in case the conversation function has an inherent delay.
+ Use ses.authstate.username rather than ses.authstate.pw_name.
+ After PAM succeeds we then check the valid_user flag too */
+
/* used to pass data to the PAM conversation function - don't bother with
* strdup() etc since these are touched only by our own conversation
* function (above) which takes care of it */
- userData.user = ses.authstate.pw_name;
+ userData.user = ses.authstate.username;
userData.passwd = password;
+ if (ses.authstate.pw_name) {
+ printable_user = ses.authstate.pw_name;
+ } else {
+ printable_user = "<invalid username>";
+ }
+
/* Init pam */
if ((rc = pam_start("sshd", NULL, &pamConv, &pamHandlep)) != PAM_SUCCESS) {
dropbear_log(LOG_WARNING, "pam_start() failed, rc=%d, %s",
@@ -242,7 +254,7 @@ void svr_auth_pam() {
rc, pam_strerror(pamHandlep, rc));
dropbear_log(LOG_WARNING,
"Bad PAM password attempt for '%s' from %s",
- ses.authstate.pw_name,
+ printable_user,
svr_ses.addrstring);
send_msg_userauth_failure(0, 1);
goto cleanup;
@@ -253,12 +265,18 @@ void svr_auth_pam() {
rc, pam_strerror(pamHandlep, rc));
dropbear_log(LOG_WARNING,
"Bad PAM password attempt for '%s' from %s",
- ses.authstate.pw_name,
+ printable_user,
svr_ses.addrstring);
send_msg_userauth_failure(0, 1);
goto cleanup;
}
+ if (!valid_user) {
+ /* PAM auth succeeded but the username isn't allowed in for another reason
+ (checkusername() failed) */
+ send_msg_userauth_failure(0, 1);
+ }
+
/* successful authentication */
dropbear_log(LOG_NOTICE, "PAM password auth succeeded for '%s' from %s",
ses.authstate.pw_name,
diff --git a/svr-authpasswd.c b/svr-authpasswd.c
index bdee2aa..69c7d8a 100644
--- a/svr-authpasswd.c
+++ b/svr-authpasswd.c
@@ -48,22 +48,14 @@ static int constant_time_strcmp(const char* a, const char* b) {
/* Process a password auth request, sending success or failure messages as
* appropriate */
-void svr_auth_password() {
+void svr_auth_password(int valid_user) {
char * passwdcrypt = NULL; /* the crypt from /etc/passwd or /etc/shadow */
char * testcrypt = NULL; /* crypt generated from the user's password sent */
- char * password;
+ char * password = NULL;
unsigned int passwordlen;
-
unsigned int changepw;
- passwdcrypt = ses.authstate.pw_passwd;
-
-#ifdef DEBUG_HACKCRYPT
- /* debugging crypt for non-root testing with shadows */
- passwdcrypt = DEBUG_HACKCRYPT;
-#endif
-
/* check if client wants to change password */
changepw = buf_getbool(ses.payload);
if (changepw) {
@@ -73,12 +65,21 @@ void svr_auth_password() {
}
password = buf_getstring(ses.payload, &passwordlen);
-
- /* the first bytes of passwdcrypt are the salt */
- testcrypt = crypt(password, passwdcrypt);
+ if (valid_user) {
+ /* the first bytes of passwdcrypt are the salt */
+ passwdcrypt = ses.authstate.pw_passwd;
+ testcrypt = crypt(password, passwdcrypt);
+ }
m_burn(password, passwordlen);
m_free(password);
+ /* After we have got the payload contents we can exit if the username
+ is invalid. Invalid users have already been logged. */
+ if (!valid_user) {
+ send_msg_userauth_failure(0, 1);
+ return;
+ }
+
if (testcrypt == NULL) {
/* crypt() with an invalid salt like "!!" */
dropbear_log(LOG_WARNING, "User account '%s' is locked",
diff --git a/svr-authpubkey.c b/svr-authpubkey.c
index aa6087c..ff481c8 100644
--- a/svr-authpubkey.c
+++ b/svr-authpubkey.c
@@ -79,7 +79,7 @@ static int checkfileperm(char * filename);
/* process a pubkey auth request, sending success or failure message as
* appropriate */
-void svr_auth_pubkey() {
+void svr_auth_pubkey(int valid_user) {
unsigned char testkey; /* whether we're just checking if a key is usable */
char* algo = NULL; /* pubkey algo */
@@ -102,6 +102,15 @@ void svr_auth_pubkey() {
keybloblen = buf_getint(ses.payload);
keyblob = buf_getptr(ses.payload, keybloblen);
+ if (!valid_user) {
+ /* Return failure once we have read the contents of the packet
+ required to validate a public key.
+ Avoids blind user enumeration though it isn't possible to prevent
+ testing for user existence if the public key is known */
+ send_msg_userauth_failure(0, 0);
+ goto out;
+ }
+
/* check if the key is valid */
if (checkpubkey(algo, algolen, keyblob, keybloblen) == DROPBEAR_FAILURE) {
send_msg_userauth_failure(0, 0);
--
2.11.0
+1
View File
@@ -1,6 +1,7 @@
config BR2_PACKAGE_DROPBEAR
bool "dropbear"
select BR2_PACKAGE_ZLIB if !BR2_PACKAGE_DROPBEAR_SMALL
select BR2_PACKAGE_LIBTOMCRYPT if !BR2_PACKAGE_DROPBEAR_SMALL
help
A small SSH 2 server designed for small memory environments.
+1 -1
View File
@@ -1,2 +1,2 @@
# From https://matt.ucc.asn.au/dropbear/releases/SHA256SUM.asc
sha256 6cbc1dcb1c9709d226dff669e5604172a18cf5dbf9a201474d5618ae4465098c dropbear-2017.75.tar.bz2
sha256 f2fb9167eca8cf93456a5fc1d4faf709902a3ab70dd44e352f3acbc3ffdaea65 dropbear-2018.76.tar.bz2
+26 -20
View File
@@ -4,7 +4,7 @@
#
################################################################################
DROPBEAR_VERSION = 2017.75
DROPBEAR_VERSION = 2018.76
DROPBEAR_SITE = https://matt.ucc.asn.au/dropbear/releases
DROPBEAR_SOURCE = dropbear-$(DROPBEAR_VERSION).tar.bz2
DROPBEAR_LICENSE = MIT, BSD-2-Clause-like, BSD-2-Clause
@@ -12,6 +12,11 @@ DROPBEAR_LICENSE_FILES = LICENSE
DROPBEAR_TARGET_BINS = dropbearkey dropbearconvert scp
DROPBEAR_PROGRAMS = dropbear $(DROPBEAR_TARGET_BINS)
# Disable hardening flags added by dropbear configure.ac, and let
# Buildroot add them when the relevant options are enabled. This
# prevents dropbear from using SSP support when not available.
DROPBEAR_CONF_OPTS = --disable-harden
ifeq ($(BR2_PACKAGE_DROPBEAR_CLIENT),y)
# Build dbclient, and create a convenience symlink named ssh
DROPBEAR_PROGRAMS += dbclient
@@ -22,33 +27,34 @@ DROPBEAR_MAKE = \
$(MAKE) MULTI=1 SCPPROGRESS=1 \
PROGRAMS="$(DROPBEAR_PROGRAMS)"
ifeq ($(BR2_STATIC_LIBS),y)
DROPBEAR_MAKE += STATIC=1
# With BR2_SHARED_STATIC_LIBS=y the generic infrastructure adds a
# --enable-static flags causing dropbear to be built as a static
# binary. Adding a --disable-static reverts this
ifeq ($(BR2_SHARED_STATIC_LIBS),y)
DROPBEAR_CONF_OPTS += --disable-static
endif
define DROPBEAR_FIX_XAUTH
$(SED) 's,^#define XAUTH_COMMAND.*/xauth,#define XAUTH_COMMAND "/usr/bin/xauth,g' $(@D)/options.h
# Ensure that dropbear doesn't use crypt() when it's not available
define DROPBEAR_SVR_PASSWORD_AUTH
echo '#if !HAVE_CRYPT' >> $(@D)/localoptions.h
echo '#define DROPBEAR_SVR_PASSWORD_AUTH 0' >> $(@D)/localoptions.h
echo '#endif' >> $(@D)/localoptions.h
endef
DROPBEAR_POST_EXTRACT_HOOKS += DROPBEAR_FIX_XAUTH
DROPBEAR_POST_EXTRACT_HOOKS += DROPBEAR_SVR_PASSWORD_AUTH
define DROPBEAR_ENABLE_REVERSE_DNS
$(SED) 's:.*\(#define DO_HOST_LOOKUP\).*:\1:' $(@D)/options.h
endef
define DROPBEAR_BUILD_SMALL
$(SED) 's:.*\(#define NO_FAST_EXPTMOD\).*:\1:' $(@D)/options.h
echo '#define DO_HOST_LOOKUP 1' >> $(@D)/localoptions.h
endef
define DROPBEAR_BUILD_FEATURED
$(SED) 's:^#define DROPBEAR_SMALL_CODE::' $(@D)/options.h
$(SED) 's:.*\(#define DROPBEAR_BLOWFISH\).*:\1:' $(@D)/options.h
$(SED) 's:.*\(#define DROPBEAR_TWOFISH128\).*:\1:' $(@D)/options.h
$(SED) 's:.*\(#define DROPBEAR_TWOFISH256\).*:\1:' $(@D)/options.h
echo '#define DROPBEAR_SMALL_CODE 0' >> $(@D)/localoptions.h
echo '#define DROPBEAR_BLOWFISH 1' >> $(@D)/localoptions.h
echo '#define DROPBEAR_TWOFISH128 1' >> $(@D)/localoptions.h
echo '#define DROPBEAR_TWOFISH256 1' >> $(@D)/localoptions.h
endef
define DROPBEAR_DISABLE_STANDALONE
$(SED) 's:\(#define NON_INETD_MODE\):/*\1 */:' $(@D)/options.h
echo '#define NON_INETD_MODE 0' >> $(@D)/localoptions.h
endef
define DROPBEAR_INSTALL_INIT_SYSTEMD
@@ -73,11 +79,11 @@ DROPBEAR_POST_EXTRACT_HOOKS += DROPBEAR_ENABLE_REVERSE_DNS
endif
ifeq ($(BR2_PACKAGE_DROPBEAR_SMALL),y)
DROPBEAR_POST_EXTRACT_HOOKS += DROPBEAR_BUILD_SMALL
DROPBEAR_CONF_OPTS += --disable-zlib
DROPBEAR_CONF_OPTS += --disable-zlib --enable-bundled-libtom
else
DROPBEAR_POST_EXTRACT_HOOKS += DROPBEAR_BUILD_FEATURED
DROPBEAR_DEPENDENCIES += zlib
DROPBEAR_DEPENDENCIES += zlib libtomcrypt
DROPBEAR_CONF_OPTS += --disable-bundled-libtom
endif
ifneq ($(BR2_PACKAGE_DROPBEAR_WTMP),y)
+5
View File
@@ -97,6 +97,11 @@ config BR2_PACKAGE_EFL_LIBSNDFILE
config BR2_PACKAGE_EFL_PULSEAUDIO
bool "Enable pulseaudio support (recommended)"
default y
depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC
depends on BR2_USE_WCHAR
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on !BR2_STATIC_LIBS
depends on BR2_USE_MMU
select BR2_PACKAGE_PULSEAUDIO
help
The only audio output method supported by Ecore right now is
+2 -1
View File
@@ -23,7 +23,8 @@ endif
# Generate the .pc file at build time
define EIGEN_BUILD_CMDS
sed -r -e 's,^Version: .*,Version: $(EIGEN_VERSION),' \
-e 's,^Cflags: .*,Cflags: -I$(EIGEN_DEST_DIR),' \
-e 's,^Cflags: .*,Cflags: -I$$\{prefix\}/include/eigen3,' \
-e 's,^prefix.*,prefix=/usr,' \
$(@D)/eigen3.pc.in >$(@D)/eigen3.pc
endef
-13
View File
@@ -1,13 +0,0 @@
apply-patches.sh deletes this file from the source directory.
--- erlang-R15B01.old/lib/tools/emacs/Makefile 2012-04-04
+++ erlang-R15B01/lib/tools/emacs/Makefile 2012-04-04 15:55:16.978957307 +0100
@@ -51,7 +51,7 @@
ELC_FILES = $(EMACS_FILES:%=%.elc)
-TEST_FILES = test.erl.indented test.erl.orig
+TEST_FILES = test.erl.indented
# ----------------------------------------------------
# Targets
+3 -2
View File
@@ -1,3 +1,4 @@
# md5 from http://www.erlang.org/download/MD5, sha256 locally computed
md5 2faed2c3519353e6bc2501ed4d8e6ae7 otp_src_20.0.tar.gz
sha256 fe80e1e14a2772901be717694bb30ac4e9a07eee0cc7a28988724cbd21476811 otp_src_20.0.tar.gz
md5 a683c8c0aacfe0305c4bf47b3abfde6a otp_src_20.3.tar.gz
sha256 4e19e6c403d5255531c0b870f19511c8b8e3b080618e4f9efcb44d905935b2a1 otp_src_20.3.tar.gz
sha256 809fa1ed21450f59827d1e9aec720bbc4b687434fa22283c6cb5dd82a47ab9c0 LICENSE.txt
+2 -2
View File
@@ -5,7 +5,7 @@
################################################################################
# See note below when updating Erlang
ERLANG_VERSION = 20.0
ERLANG_VERSION = 20.3
ERLANG_SITE = http://www.erlang.org/download
ERLANG_SOURCE = otp_src_$(ERLANG_VERSION).tar.gz
ERLANG_DEPENDENCIES = host-erlang
@@ -19,7 +19,7 @@ ERLANG_AUTORECONF = YES
# Whenever updating Erlang, this value should be updated as well, to the
# value of EI_VSN in the file lib/erl_interface/vsn.mk
ERLANG_EI_VSN = 3.10
ERLANG_EI_VSN = 3.10.1
# The configure checks for these functions fail incorrectly
ERLANG_CONF_ENV = ac_cv_func_isnan=yes ac_cv_func_isinf=yes
+1
View File
@@ -35,6 +35,7 @@ config BR2_PACKAGE_ESPEAK_AUDIO_BACKEND_ALSA
config BR2_PACKAGE_ESPEAK_AUDIO_BACKEND_PULSEAUDIO
bool "pulseaudio"
depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC
select BR2_PACKAGE_PULSEAUDIO
endchoice
+1 -1
View File
@@ -1,5 +1,5 @@
# Locally calculated
sha256 2b92e9578ef8b3e49eeab229e69305f5f4cbc1fdaa22e927fc7fca18acccd740 ffmpeg-3.4.2.tar.xz
sha256 386f7601e865df6bddde05bb6927119b5a853f0b92e2e9834f59c125a17d3fc6 ffmpeg-3.4.4.tar.xz
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING.GPLv2
sha256 b634ab5640e258563c536e658cad87080553df6f34f62269a21d554844e58bfe COPYING.LGPLv2.1
sha256 73d99bc83313fff665b426d6672b4e0479102bc402fe22314ac9ce94a38aa5ff LICENSE.md
+8 -1
View File
@@ -4,7 +4,7 @@
#
################################################################################
FFMPEG_VERSION = 3.4.2
FFMPEG_VERSION = 3.4.4
FFMPEG_SOURCE = ffmpeg-$(FFMPEG_VERSION).tar.xz
FFMPEG_SITE = http://ffmpeg.org/releases
FFMPEG_INSTALL_STAGING = YES
@@ -225,6 +225,13 @@ ifeq ($(BR2_PACKAGE_FFMPEG_GPL)$(BR2_PACKAGE_LIBEBUR128),yy)
FFMPEG_DEPENDENCIES += libebur128
endif
ifeq ($(BR2_PACKAGE_LIBDRM),y)
FFMPEG_CONF_OPTS += --enable-libdrm
FFMPEG_DEPENDENCIES += libdrm
else
FFMPEG_CONF_OPTS += --disable-libdrm
endif
ifeq ($(BR2_PACKAGE_LIBOPENH264),y)
FFMPEG_CONF_OPTS += --enable-libopenh264
FFMPEG_DEPENDENCIES += libopenh264
+1 -1
View File
@@ -39,7 +39,7 @@ endif
HOST_GAWK_CONF_OPTS = --without-readline --without-mpfr
define GAWK_CREATE_SYMLINK
ln -sf /usr/bin/gawk $(TARGET_DIR)/usr/bin/awk
ln -sf gawk $(TARGET_DIR)/usr/bin/awk
endef
GAWK_POST_INSTALL_TARGET_HOOKS += GAWK_CREATE_SYMLINK
@@ -0,0 +1,38 @@
From 765527ad3725c5f3e82ab2b8e5031120b409983d Mon Sep 17 00:00:00 2001
From: marxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Fri, 15 Jun 2018 08:51:28 +0000
Subject: [PATCH] Partial backport r256656
2018-06-15 Martin Liska <mliska@suse.cz>
Backport from mainline
2018-01-10 Kelvin Nilsen <kelvin@gcc.gnu.org>
* lex.c (search_line_fast): Remove illegal coercion of an
unaligned pointer value to vector pointer type and replace with
use of __builtin_vec_vsx_ld () built-in function, which operates
on unaligned pointer values.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-6-branch@261621 138bc75d-0d04-0410-961f-82ee72b054a4
Signed-off-by: Joel Stanley <joel@jms.id.au>
---
libcpp/lex.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libcpp/lex.c b/libcpp/lex.c
index e5a0397f3099..b789686f1c49 100644
--- a/libcpp/lex.c
+++ b/libcpp/lex.c
@@ -568,7 +568,7 @@ search_line_fast (const uchar *s, const uchar *end ATTRIBUTE_UNUSED)
{
vc m_nl, m_cr, m_bs, m_qm;
- data = *((const vc *)s);
+ data = __builtin_vec_vsx_ld (0, s);
s += 16;
m_nl = (vc) __builtin_vec_cmpeq(data, repl_nl);
--
2.17.1
@@ -0,0 +1,40 @@
From aa65a43516da1d48011ef621ed5988289711d99b Mon Sep 17 00:00:00 2001
From: marxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Fri, 29 Jun 2018 09:31:30 +0000
Subject: [PATCH] Partial backport r256656
2018-06-29 Martin Liska <mliska@suse.cz>
Backport from mainline
2018-01-10 Kelvin Nilsen <kelvin@gcc.gnu.org>
* lex.c (search_line_fast): Remove illegal coercion of an
unaligned pointer value to vector pointer type and replace with
use of __builtin_vec_vsx_ld () built-in function, which operates
on unaligned pointer values.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-6-branch@261621 138bc75d-0d04-0410-961f-82ee72b054a4
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@262243 138bc75d-0d04-0410-961f-82ee72b054a4
Signed-off-by: Joel Stanley <joel@jms.id.au>
---
libcpp/lex.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libcpp/lex.c b/libcpp/lex.c
index 097c78002cbb..e0fb9e822c44 100644
--- a/libcpp/lex.c
+++ b/libcpp/lex.c
@@ -568,7 +568,7 @@ search_line_fast (const uchar *s, const uchar *end ATTRIBUTE_UNUSED)
{
vc m_nl, m_cr, m_bs, m_qm;
- data = *((const vc *)s);
+ data = __builtin_vec_vsx_ld (0, s);
s += 16;
m_nl = (vc) __builtin_vec_cmpeq(data, repl_nl);
--
2.17.1
+1 -1
View File
@@ -39,7 +39,7 @@ GHOSTSCRIPT_CONF_OPTS = \
--disable-compile-inits \
--disable-cups \
--enable-fontconfig \
--with-fontpath=$(GHOSTSCRIPT_FONTS_TARGET_DIR) \
--with-fontpath=/usr/share/fonts \
--enable-freetype \
--disable-gtk \
--without-jbig2dec \
+2 -2
View File
@@ -1,6 +1,6 @@
# Locally calculated after checking pgp signature
# https://www.gnupg.org/ftp/gcrypt/gnutls/v3.5/gnutls-3.5.17.tar.xz.sig
sha256 86b142afef587c118d63f72ccf307f3321dbc40357aae528202b65d913d20919 gnutls-3.5.17.tar.xz
# https://www.gnupg.org/ftp/gcrypt/gnutls/v3.5/gnutls-3.5.19.tar.xz.sig
sha256 1936eb64f03aaefd6eb16cef0567457777618573826b94d03376bb6a4afadc44 gnutls-3.5.19.tar.xz
# Locally calculated
sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 doc/COPYING
sha256 6095e9ffa777dd22839f7801aa845b31c9ed07f3d6bf8a26dc5d2dec8ccc0ef3 doc/COPYING.LESSER
+1 -1
View File
@@ -5,7 +5,7 @@
################################################################################
GNUTLS_VERSION_MAJOR = 3.5
GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).17
GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).19
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), GPL-3.0+ (gnutls-openssl library)
+5 -2
View File
@@ -205,11 +205,14 @@ config BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_PULSE
depends on BR2_TOOLCHAIN_HAS_THREADS # pulseaudio
depends on BR2_USE_MMU # pulseaudio
depends on !BR2_STATIC_LIBS # pulseaudio
depends on BR2_USE_WCHAR # pulseaudio
depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC # pulseaudio
select BR2_PACKAGE_PULSEAUDIO
comment "pulseaudio support needs a toolchain w/ threads, dynamic library"
comment "pulseaudio support needs a toolchain w/ threads, wchar, dynamic library"
depends on BR2_USE_MMU
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || !BR2_USE_WCHAR
config BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_SOUPHTTPSRC
bool "souphttpsrc (http client)"
@@ -321,13 +321,16 @@ config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_PULSE
depends on BR2_TOOLCHAIN_HAS_THREADS # pulseaudio
depends on BR2_USE_MMU # pulseaudio
depends on !BR2_STATIC_LIBS # pulseaudio
depends on BR2_USE_WCHAR # pulseaudio
depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC # pulseaudio
select BR2_PACKAGE_PULSEAUDIO
help
PulseAudio plugin library
comment "pulseaudio support needs a toolchain w/ threads, dynamic library"
comment "pulseaudio support needs a toolchain w/ threads, wchar, dynamic library"
depends on BR2_USE_MMU
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || !BR2_USE_WCHAR
config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SOUPHTTPSRC
bool "souphttpsrc (http client)"
@@ -0,0 +1,208 @@
Fix CVE-2016-10396
Description: Fix remotely exploitable DoS. http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-10396
Source: vendor; https://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=51682
Bug-debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=867986
Downloaded from
https://github.com/openwrt/packages/blob/master/net/ipsec-tools/patches/010-CVE-2016-10396.patch
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Index: ipsec-tools-0.8.2/src/racoon/isakmp_frag.c
===================================================================
--- ipsec-tools-0.8.2.orig/src/racoon/isakmp_frag.c
+++ ipsec-tools-0.8.2/src/racoon/isakmp_frag.c
@@ -1,4 +1,4 @@
-/* $NetBSD: isakmp_frag.c,v 1.5 2009/04/22 11:24:20 tteras Exp $ */
+/* $NetBSD: isakmp_frag.c,v 1.5.36.1 2017/04/21 16:50:42 bouyer Exp $ */
/* Id: isakmp_frag.c,v 1.4 2004/11/13 17:31:36 manubsd Exp */
@@ -173,6 +173,43 @@ vendorid_frag_cap(gen)
return ntohl(hp[MD5_DIGEST_LENGTH / sizeof(*hp)]);
}
+static int
+isakmp_frag_insert(struct ph1handle *iph1, struct isakmp_frag_item *item)
+{
+ struct isakmp_frag_item *pitem = NULL;
+ struct isakmp_frag_item *citem = iph1->frag_chain;
+
+ /* no frag yet, just insert at beginning of list */
+ if (iph1->frag_chain == NULL) {
+ iph1->frag_chain = item;
+ return 0;
+ }
+
+ do {
+ /* duplicate fragment number, abort (CVE-2016-10396) */
+ if (citem->frag_num == item->frag_num)
+ return -1;
+
+ /* need to insert before current item */
+ if (citem->frag_num > item->frag_num) {
+ if (pitem != NULL)
+ pitem->frag_next = item;
+ else
+ /* insert at the beginning of the list */
+ iph1->frag_chain = item;
+ item->frag_next = citem;
+ return 0;
+ }
+
+ pitem = citem;
+ citem = citem->frag_next;
+ } while (citem != NULL);
+
+ /* we reached the end of the list, insert */
+ pitem->frag_next = item;
+ return 0;
+}
+
int
isakmp_frag_extract(iph1, msg)
struct ph1handle *iph1;
@@ -224,39 +261,43 @@ isakmp_frag_extract(iph1, msg)
item->frag_next = NULL;
item->frag_packet = buf;
- /* Look for the last frag while inserting the new item in the chain */
- if (item->frag_last)
- last_frag = item->frag_num;
+ /* Check for the last frag before inserting the new item in the chain */
+ if (item->frag_last) {
+ /* if we have the last fragment, indices must match */
+ if (iph1->frag_last_index != 0 &&
+ item->frag_last != iph1->frag_last_index) {
+ plog(LLV_ERROR, LOCATION, NULL,
+ "Repeated last fragment index mismatch\n");
+ racoon_free(item);
+ vfree(buf);
+ return -1;
+ }
- if (iph1->frag_chain == NULL) {
- iph1->frag_chain = item;
- } else {
- struct isakmp_frag_item *current;
+ last_frag = iph1->frag_last_index = item->frag_num;
+ }
- current = iph1->frag_chain;
- while (current->frag_next) {
- if (current->frag_last)
- last_frag = item->frag_num;
- current = current->frag_next;
- }
- current->frag_next = item;
+ /* insert fragment into chain */
+ if (isakmp_frag_insert(iph1, item) == -1) {
+ plog(LLV_ERROR, LOCATION, NULL,
+ "Repeated fragment index mismatch\n");
+ racoon_free(item);
+ vfree(buf);
+ return -1;
}
- /* If we saw the last frag, check if the chain is complete */
+ /* If we saw the last frag, check if the chain is complete
+ * we have a sorted list now, so just walk through */
if (last_frag != 0) {
+ item = iph1->frag_chain;
for (i = 1; i <= last_frag; i++) {
- item = iph1->frag_chain;
- do {
- if (item->frag_num == i)
- break;
- item = item->frag_next;
- } while (item != NULL);
-
+ if (item->frag_num != i)
+ break;
+ item = item->frag_next;
if (item == NULL) /* Not found */
break;
}
- if (item != NULL) /* It is complete */
+ if (i > last_frag) /* It is complete */
return 1;
}
@@ -291,15 +332,9 @@ isakmp_frag_reassembly(iph1)
}
data = buf->v;
+ item = iph1->frag_chain;
for (i = 1; i <= frag_count; i++) {
- item = iph1->frag_chain;
- do {
- if (item->frag_num == i)
- break;
- item = item->frag_next;
- } while (item != NULL);
-
- if (item == NULL) {
+ if (item->frag_num != i) {
plog(LLV_ERROR, LOCATION, NULL,
"Missing fragment #%d\n", i);
vfree(buf);
@@ -308,6 +343,7 @@ isakmp_frag_reassembly(iph1)
}
memcpy(data, item->frag_packet->v, item->frag_packet->l);
data += item->frag_packet->l;
+ item = item->frag_next;
}
out:
Index: ipsec-tools-0.8.2/src/racoon/isakmp_inf.c
===================================================================
--- ipsec-tools-0.8.2.orig/src/racoon/isakmp_inf.c
+++ ipsec-tools-0.8.2/src/racoon/isakmp_inf.c
@@ -720,6 +720,7 @@ isakmp_info_send_nx(isakmp, remote, loca
#endif
#ifdef ENABLE_FRAG
iph1->frag = 0;
+ iph1->frag_last_index = 0;
iph1->frag_chain = NULL;
#endif
Index: ipsec-tools-0.8.2/src/racoon/isakmp.c
===================================================================
--- ipsec-tools-0.8.2.orig/src/racoon/isakmp.c
+++ ipsec-tools-0.8.2/src/racoon/isakmp.c
@@ -1071,6 +1071,7 @@ isakmp_ph1begin_i(rmconf, remote, local)
iph1->frag = 1;
else
iph1->frag = 0;
+ iph1->frag_last_index = 0;
iph1->frag_chain = NULL;
#endif
iph1->approval = NULL;
@@ -1175,6 +1176,7 @@ isakmp_ph1begin_r(msg, remote, local, et
#endif
#ifdef ENABLE_FRAG
iph1->frag = 0;
+ iph1->frag_last_index = 0;
iph1->frag_chain = NULL;
#endif
iph1->approval = NULL;
Index: ipsec-tools-0.8.2/src/racoon/handler.h
===================================================================
--- ipsec-tools-0.8.2.orig/src/racoon/handler.h
+++ ipsec-tools-0.8.2/src/racoon/handler.h
@@ -1,4 +1,4 @@
-/* $NetBSD: handler.h,v 1.25 2010/11/17 10:40:41 tteras Exp $ */
+/* $NetBSD: handler.h,v 1.26 2017/01/24 19:23:56 christos Exp $ */
/* Id: handler.h,v 1.19 2006/02/25 08:25:12 manubsd Exp */
@@ -141,6 +141,7 @@ struct ph1handle {
#endif
#ifdef ENABLE_FRAG
int frag; /* IKE phase 1 fragmentation */
+ int frag_last_index;
struct isakmp_frag_item *frag_chain; /* Received fragments */
#endif
+1
View File
@@ -192,6 +192,7 @@ config BR2_PACKAGE_KODI_NONFREE
config BR2_PACKAGE_KODI_PULSEAUDIO
bool "pulseaudio"
depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC
# Pulseaudio support in kodi needs glib support in Pulseaudio,
# see FindPulseAudio.cmake. Kodi meets all dependencies of
# libglib2, so there is no need to propagate them here.
@@ -0,0 +1,78 @@
From f9569c086ff29259c73790db9cbf39fe8fb9d862 Mon Sep 17 00:00:00 2001
From: John Starks <jostarks@microsoft.com>
Date: Wed, 25 Jul 2018 12:16:34 -0700
Subject: [PATCH] iso9660: validate directory record length
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
---
Upstream status: commit f9569c086ff
.../archive_read_support_format_iso9660.c | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/libarchive/archive_read_support_format_iso9660.c b/libarchive/archive_read_support_format_iso9660.c
index f01d37bf682e..089bb7236cd1 100644
--- a/libarchive/archive_read_support_format_iso9660.c
+++ b/libarchive/archive_read_support_format_iso9660.c
@@ -409,7 +409,8 @@ static int next_entry_seek(struct archive_read *, struct iso9660 *,
struct file_info **);
static struct file_info *
parse_file_info(struct archive_read *a,
- struct file_info *parent, const unsigned char *isodirrec);
+ struct file_info *parent, const unsigned char *isodirrec,
+ size_t reclen);
static int parse_rockridge(struct archive_read *a,
struct file_info *file, const unsigned char *start,
const unsigned char *end);
@@ -1022,7 +1023,7 @@ read_children(struct archive_read *a, struct file_info *parent)
if (*(p + DR_name_len_offset) == 1
&& *(p + DR_name_offset) == '\001')
continue;
- child = parse_file_info(a, parent, p);
+ child = parse_file_info(a, parent, p, b - p);
if (child == NULL) {
__archive_read_consume(a, skip_size);
return (ARCHIVE_FATAL);
@@ -1112,7 +1113,7 @@ choose_volume(struct archive_read *a, struct iso9660 *iso9660)
*/
seenJoliet = iso9660->seenJoliet;/* Save flag. */
iso9660->seenJoliet = 0;
- file = parse_file_info(a, NULL, block);
+ file = parse_file_info(a, NULL, block, vd->size);
if (file == NULL)
return (ARCHIVE_FATAL);
iso9660->seenJoliet = seenJoliet;
@@ -1144,7 +1145,7 @@ choose_volume(struct archive_read *a, struct iso9660 *iso9660)
return (ARCHIVE_FATAL);
}
iso9660->seenJoliet = 0;
- file = parse_file_info(a, NULL, block);
+ file = parse_file_info(a, NULL, block, vd->size);
if (file == NULL)
return (ARCHIVE_FATAL);
iso9660->seenJoliet = seenJoliet;
@@ -1749,7 +1750,7 @@ archive_read_format_iso9660_cleanup(struct archive_read *a)
*/
static struct file_info *
parse_file_info(struct archive_read *a, struct file_info *parent,
- const unsigned char *isodirrec)
+ const unsigned char *isodirrec, size_t reclen)
{
struct iso9660 *iso9660;
struct file_info *file, *filep;
@@ -1763,7 +1764,11 @@ parse_file_info(struct archive_read *a, struct file_info *parent,
iso9660 = (struct iso9660 *)(a->format->data);
- dr_len = (size_t)isodirrec[DR_length_offset];
+ if (reclen == 0 || reclen < (dr_len = (size_t)isodirrec[DR_length_offset])) {
+ archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC,
+ "Invalid directory record length");
+ return (NULL);
+ }
name_len = (size_t)isodirrec[DR_name_len_offset];
location = archive_le32dec(isodirrec + DR_extent_offset);
fsize = toi(isodirrec + DR_size_offset, DR_size_size);
--
2.18.0
@@ -0,0 +1,34 @@
From 5562545b5562f6d12a4ef991fae158bf4ccf92b6 Mon Sep 17 00:00:00 2001
From: Joerg Sonnenberger <joerg@bec.de>
Date: Sat, 9 Sep 2017 17:47:32 +0200
Subject: [PATCH] Avoid a read off-by-one error for UTF16 names in RAR
archives.
Reported-By: OSS-Fuzz issue 573
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
---
Upstream status: commit 5562545b5562
libarchive/archive_read_support_format_rar.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/libarchive/archive_read_support_format_rar.c b/libarchive/archive_read_support_format_rar.c
index cbb14c32dc3b..751de6979ba5 100644
--- a/libarchive/archive_read_support_format_rar.c
+++ b/libarchive/archive_read_support_format_rar.c
@@ -1496,7 +1496,11 @@ read_header(struct archive_read *a, struct archive_entry *entry,
return (ARCHIVE_FATAL);
}
filename[filename_size++] = '\0';
- filename[filename_size++] = '\0';
+ /*
+ * Do not increment filename_size here as the computations below
+ * add the space for the terminating NUL explicitly.
+ */
+ filename[filename_size] = '\0';
/* Decoded unicode form is UTF-16BE, so we have to update a string
* conversion object for it. */
--
2.18.0
@@ -0,0 +1,32 @@
From 2c8c83b9731ff822fad6cc8c670ea5519c366a14 Mon Sep 17 00:00:00 2001
From: Joerg Sonnenberger <joerg@bec.de>
Date: Thu, 19 Jul 2018 21:14:53 +0200
Subject: [PATCH] Reject LHA archive entries with negative size.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
---
Upstream status: commit 2c8c83b9731
libarchive/archive_read_support_format_lha.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/libarchive/archive_read_support_format_lha.c b/libarchive/archive_read_support_format_lha.c
index b8ef4ae10ece..95c99bb1f31e 100644
--- a/libarchive/archive_read_support_format_lha.c
+++ b/libarchive/archive_read_support_format_lha.c
@@ -701,6 +701,12 @@ archive_read_format_lha_read_header(struct archive_read *a,
* Prepare variables used to read a file content.
*/
lha->entry_bytes_remaining = lha->compsize;
+ if (lha->entry_bytes_remaining < 0) {
+ archive_set_error(&a->archive,
+ ARCHIVE_ERRNO_FILE_FORMAT,
+ "Invalid LHa entry size");
+ return (ARCHIVE_FATAL);
+ }
lha->entry_offset = 0;
lha->entry_crc_calculated = 0;
--
2.18.0
+1
View File
@@ -1,2 +1,3 @@
# Locally computed:
sha256 ed2dbd6954792b2c054ccf8ec4b330a54b85904a80cef477a1c74643ddafa0ce libarchive-3.3.2.tar.gz
sha256 ae6f35cc1979beb316e4d6431fc34c6fc59f0dd126b425c8552bb41c86e4825d COPYING
+5 -1
View File
@@ -1,2 +1,6 @@
# Locally calculated after checking pgp signature
sha256 832432d1ad4f833c20e13b57cf40ce5277a9d33e483205fc63c78111b3358874 fuse-2.9.7.tar.gz
sha256 5e84f81d8dd527ea74f39b6bc001c874c02bad6871d7a9b0c14efb57430eafe3 fuse-2.9.8.tar.gz
# Hash for license files:
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB
+1 -1
View File
@@ -4,7 +4,7 @@
#
################################################################################
LIBFUSE_VERSION = 2.9.7
LIBFUSE_VERSION = 2.9.8
LIBFUSE_SOURCE = fuse-$(LIBFUSE_VERSION).tar.gz
LIBFUSE_SITE = https://github.com/libfuse/libfuse/releases/download/fuse-$(LIBFUSE_VERSION)
LIBFUSE_LICENSE = GPL-2.0, LGPL-2.1
+4 -2
View File
@@ -1,5 +1,7 @@
# From https://www.openssl.org/source/openssl-1.0.2o.tar.gz.sha256
sha256 ec3f5c9714ba0fd45cb4e087301eb1336c317e0d20b575a125050470e8089e4d openssl-1.0.2o.tar.gz
# From https://www.openssl.org/source/openssl-1.0.2p.tar.gz.sha256
sha256 50a98e07b1a89eb8f6a99477f262df71c6fa7bef77df4dc83025a2845c827d00 openssl-1.0.2p.tar.gz
# From https://www.openssl.org/source/openssl-1.0.2p.tar.gz.sha1
sha1 f34b5322e92415755c7d58bf5d0d5cf37666382c openssl-1.0.2p.tar.gz
# Locally computed
sha256 eddd8a5123748052c598214487ac178e4bfa4e31ba2ec520c70d59c8c5bfa2e9 openssl-1.0.2a-parallel-install-dirs.patch?id=c8abcbe8de5d3b6cdd68c162f398c011ff6e2d9d
sha256 147c3eeaad614c044749ea527cb433eae5e2d5cad34a78c6ba61cd967bfbe01f openssl-1.0.2a-parallel-obj-headers.patch?id=c8abcbe8de5d3b6cdd68c162f398c011ff6e2d9d
+1 -1
View File
@@ -4,7 +4,7 @@
#
################################################################################
LIBOPENSSL_VERSION = 1.0.2o
LIBOPENSSL_VERSION = 1.0.2p
LIBOPENSSL_SITE = http://www.openssl.org/source
LIBOPENSSL_SOURCE = openssl-$(LIBOPENSSL_VERSION).tar.gz
LIBOPENSSL_LICENSE = OpenSSL or SSLeay
@@ -0,0 +1,70 @@
From abe76789f8e7ce61b357f693eaed5b28feab5ce2 Mon Sep 17 00:00:00 2001
From: Hollis Blanchard <hollis_blanchard@mentor.com>
Date: Mon, 13 Aug 2018 12:11:33 -0700
Subject: [PATCH] Fix build break around __atomic_*() with GCC<4.7
The __atomic_* GCC primitives were introduced in GCC 4.7, but Red Hat
Enterprise Linux 6.x (for example) provides GCC 4.4. Tweak the current code to
use the (most conservative) __sync_synchronize() primitive provided by those
older GCC versions.
(Really, no __atomic or __sync operations are needed here at all, since POSIX
4.12 "Memory Synchronization" says pthread_mutex_lock() and
pthread_mutex_unlock() "synchronize memory with respect to other threads"...)
Signed-off-by: Hollis Blanchard <hollis_blanchard@mentor.com>
---
src/label_file.h | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/src/label_file.h b/src/label_file.h
index 2fa85474..47859baf 100644
--- a/src/label_file.h
+++ b/src/label_file.h
@@ -351,8 +351,14 @@ static inline int compile_regex(struct saved_data *data, struct spec *spec,
* init_routine does not take a parameter, it's not possible
* to use, so we generate the same effect with atomics and a
* mutex */
+#ifdef __ATOMIC_RELAXED
regex_compiled =
__atomic_load_n(&spec->regex_compiled, __ATOMIC_ACQUIRE);
+#else
+ /* GCC <4.7 */
+ __sync_synchronize();
+ regex_compiled = spec->regex_compiled;
+#endif
if (regex_compiled) {
return 0; /* already done */
}
@@ -360,8 +366,14 @@ static inline int compile_regex(struct saved_data *data, struct spec *spec,
__pthread_mutex_lock(&spec->regex_lock);
/* Check if another thread compiled the regex while we waited
* on the mutex */
+#ifdef __ATOMIC_RELAXED
regex_compiled =
__atomic_load_n(&spec->regex_compiled, __ATOMIC_ACQUIRE);
+#else
+ /* GCC <4.7 */
+ __sync_synchronize();
+ regex_compiled = spec->regex_compiled;
+#endif
if (regex_compiled) {
__pthread_mutex_unlock(&spec->regex_lock);
return 0;
@@ -404,7 +416,13 @@ static inline int compile_regex(struct saved_data *data, struct spec *spec,
}
/* Done. */
+#ifdef __ATOMIC_RELAXED
__atomic_store_n(&spec->regex_compiled, true, __ATOMIC_RELEASE);
+#else
+ /* GCC <4.7 */
+ spec->regex_compiled = true;
+ __sync_synchronize();
+#endif
__pthread_mutex_unlock(&spec->regex_lock);
return 0;
}
--
2.13.0
@@ -0,0 +1,35 @@
From 3f5635028bbad44287511fcd3c99f2a2fddf01cd Mon Sep 17 00:00:00 2001
From: Michael Catanzaro <mcatanzaro@igalia.com>
Date: Sun, 24 Jun 2018 19:46:19 -0500
Subject: [PATCH] cookie-jar: bail if hostname is an empty string
There are several other ways to fix the problem with this function, but
skipping over all of the code is probably the simplest.
Fixes #3
(cherry picked from commit db2b0d5809d5f8226d47312b40992cadbcde439f)
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
---
Upstream status: commit db2b0d5809d
libsoup/soup-cookie-jar.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libsoup/soup-cookie-jar.c b/libsoup/soup-cookie-jar.c
index d12bc85a8e60..365da6abf9f4 100644
--- a/libsoup/soup-cookie-jar.c
+++ b/libsoup/soup-cookie-jar.c
@@ -306,7 +306,7 @@ get_cookies (SoupCookieJar *jar, SoupURI *uri, gboolean for_http, gboolean copy_
priv = SOUP_COOKIE_JAR_GET_PRIVATE (jar);
- if (!uri->host)
+ if (!uri->host || !uri->host[0])
return NULL;
/* The logic here is a little weird, but the plan is that if
--
2.18.0
+3
View File
@@ -96,6 +96,9 @@ define LIGHTTPD_INSTALL_INIT_SYSTEMD
ln -fs ../../../../usr/lib/systemd/system/lighttpd.service \
$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/lighttpd.service
$(INSTALL) -D -m 644 package/lighttpd/lighttpd_tmpfiles.conf \
$(TARGET_DIR)/usr/lib/tmpfiles.d/lighttpd.conf
endef
$(eval $(autotools-package))
+2
View File
@@ -0,0 +1,2 @@
f /var/log/lighttpd-access.log 0640 www-data www-data -
f /var/log/lighttpd-error.log 0640 www-data www-data -
+3 -3
View File
@@ -242,12 +242,12 @@ config BR2_DEFAULT_KERNEL_HEADERS
string
default "3.2.102" if BR2_KERNEL_HEADERS_3_2
default "4.1.52" if BR2_KERNEL_HEADERS_4_1
default "4.4.142" if BR2_KERNEL_HEADERS_4_4
default "4.9.113" if BR2_KERNEL_HEADERS_4_9
default "4.4.150" if BR2_KERNEL_HEADERS_4_4
default "4.9.122" if BR2_KERNEL_HEADERS_4_9
default "4.10.17" if BR2_KERNEL_HEADERS_4_10
default "4.11.12" if BR2_KERNEL_HEADERS_4_11
default "4.12.14" if BR2_KERNEL_HEADERS_4_12
default "4.13.16" if BR2_KERNEL_HEADERS_4_13
default "4.14.56" if BR2_KERNEL_HEADERS_4_14
default "4.14.65" if BR2_KERNEL_HEADERS_4_14
default "4.15.18" if BR2_KERNEL_HEADERS_4_15
default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION
@@ -0,0 +1,49 @@
From 947bf03ec3d9eaa0bfc0269eed86b9364e94bc1a Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Date: Sun, 5 Aug 2018 15:25:53 +0200
Subject: [PATCH] missing.h: drop clock_nanosleep() replacement
Since uClibc-ng commits 68628fe7d463541bf3c33da6b214e63c0cc9feed
("librt: declare clock_nanosleep not only for NPTL") and
ddbb03e77ac1a48740688814b82f45c97ee81f37 ("librt: clock_nanosleep
could be even used without threads"), clock_nanosleep() is always
provided by uClibc, regardless of the thread implementation (none,
linuxthreads, nptl). These commits will be part of the upcoming 1.0.31
release of uClibc-ng.
Thanks to this, we can drop the replacement clock_nanosleep()
implementation added by linuxptp. Without this, linuxptp fails to
build with:
missing.h:117:19: error: static declaration of 'clock_nanosleep' follows non-static declaration
static inline int clock_nanosleep(clockid_t clock_id, int flags,
^~~~~~~~~~~~~~~
In file included from clockadj.h:24:0,
from clockadj.c:24:
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
missing.h | 7 -------
1 file changed, 7 deletions(-)
diff --git a/missing.h b/missing.h
index 2f7adb9..60f89a3 100644
--- a/missing.h
+++ b/missing.h
@@ -129,13 +129,6 @@ enum {
#define TFD_TIMER_ABSTIME (1 << 0)
-static inline int clock_nanosleep(clockid_t clock_id, int flags,
- const struct timespec *request,
- struct timespec *remain)
-{
- return syscall(__NR_clock_nanosleep, clock_id, flags, request, remain);
-}
-
static inline int timerfd_create(int clockid, int flags)
{
return syscall(__NR_timerfd_create, clockid, flags);
--
2.14.4
+3 -3
View File
@@ -1,3 +1,3 @@
# From http://lttng.org/files/lttng-modules/lttng-modules-2.10.4.tar.bz2.{md5,sha1}
md5 832452b321a4df6836549e72d05b2ce9 lttng-modules-2.10.4.tar.bz2
sha1 1712f5d5c0ef9b028949693c5cf24c5a00b7f4ef lttng-modules-2.10.4.tar.bz2
# From http://lttng.org/files/lttng-modules/lttng-modules-2.10.6.tar.bz2.{md5,sha1}
md5 8110099f4615fc89a74ffe9189b56cfc lttng-modules-2.10.6.tar.bz2
sha1 1126b29e055ebdb3fad9201edaf0ef27f88c9369 lttng-modules-2.10.6.tar.bz2
+1 -1
View File
@@ -4,7 +4,7 @@
#
################################################################################
LTTNG_MODULES_VERSION = 2.10.4
LTTNG_MODULES_VERSION = 2.10.6
LTTNG_MODULES_SITE = http://lttng.org/files/lttng-modules
LTTNG_MODULES_SOURCE = lttng-modules-$(LTTNG_MODULES_VERSION).tar.bz2
LTTNG_MODULES_LICENSE = LGPL-2.1/GPL-2.0 (kernel modules), MIT (lib/bitfield.h, lib/prio_heap/*)
@@ -1,249 +0,0 @@
From bc1d8ca01415710d40224de312c7ecf6f4223301 Mon Sep 17 00:00:00 2001
From: Philippe Proulx <eeppeliteloop@gmail.com>
Date: Mon, 6 Nov 2017 18:46:41 -0500
Subject: [PATCH] Fix: detect dlmopen() and disable corresponding tests if not
available
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
musl and uClibc-ng are known not to support dlmopen(). LTTng-UST has
this dlmopen() detection.
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
[Philippe: backport from upstream commit bc1d8ca0
edited to remove .gitignore part]
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
---
.gitignore | 1 +
configure.ac | 25 ++++++++++++++++++++++
tests/regression/ust/ust-dl/prog.c | 17 +++++++++++++--
tests/regression/ust/ust-dl/test_ust-dl | 32 ----------------------------
tests/regression/ust/ust-dl/test_ust-dl.in | 34 ++++++++++++++++++++++++++++++
tests/regression/ust/ust-dl/test_ust-dl.py | 9 +++++++-
tests/utils/test_utils.py | 3 +++
7 files changed, 86 insertions(+), 35 deletions(-)
delete mode 100755 tests/regression/ust/ust-dl/test_ust-dl
create mode 100644 tests/regression/ust/ust-dl/test_ust-dl.in
diff --git a/configure.ac b/configure.ac
index 016c56ec..b6ea39c5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -196,6 +196,30 @@ AC_CHECK_FUNCS([ \
# add -lrt to LIBS
AC_CHECK_LIB([rt], [clock_gettime, timer_create, timer_settime, timer_delete])
+# Checks for dl.
+AC_CHECK_LIB([dl], [dlopen], [
+ have_libdl=yes
+ libdl_name=dl
+], [
+ # libdl not found, check for dlopen in libc.
+ AC_CHECK_LIB([c], [dlopen], [
+ have_libc_dl=yes
+ libdl_name=c
+ ], [
+ AC_MSG_ERROR([Cannot find dlopen in libdl nor libc. Use [LDFLAGS]=-Ldir to specify their location.])
+ ])
+])
+
+# Check if libdl has dlmopen support.
+AH_TEMPLATE([HAVE_DLMOPEN], ["Define to 1 if dlmopen is available."])
+AC_CHECK_LIB([$libdl_name], [dlmopen], [
+ AC_DEFINE([HAVE_DLMOPEN], [1])
+ HAVE_DLMOPEN=1
+], [
+ HAVE_DLMOPEN=0
+])
+AC_SUBST(HAVE_DLMOPEN)
+
# Babeltrace viewer check
AC_ARG_WITH([babeltrace-bin],
AS_HELP_STRING([--with-babeltrace-bin],
@@ -1100,6 +1124,7 @@ AC_CONFIG_FILES([
AC_CONFIG_FILES([tests/regression/ust/python-logging/test_python_logging],[chmod +x tests/regression/ust/python-logging/test_python_logging])
# Inject LTTNG_TOOLS_BUILD_WITH_LIBPFM variable in test script.
AC_CONFIG_FILES([tests/perf/test_perf_raw],[chmod +x tests/perf/test_perf_raw])
+AC_CONFIG_FILES([tests/regression/ust/ust-dl/test_ust-dl],[chmod +x tests/regression/ust/ust-dl/test_ust-dl])
AC_OUTPUT
diff --git a/tests/regression/ust/ust-dl/prog.c b/tests/regression/ust/ust-dl/prog.c
index e8e4b264..669792d9 100644
--- a/tests/regression/ust/ust-dl/prog.c
+++ b/tests/regression/ust/ust-dl/prog.c
@@ -13,7 +13,12 @@
*/
int main(int argc, char **argv)
{
- void *h0, *h1, *h2, *h3, *h4;
+ void *h0, *h2, *h3, *h4;
+
+#ifdef HAVE_DLMOPEN
+ void *h1;
+#endif
+
char *error;
int (*foo)(void);
@@ -21,10 +26,14 @@ int main(int argc, char **argv)
if (!h0) {
goto get_error;
}
+
+#ifdef HAVE_DLMOPEN
h1 = dlmopen(LM_ID_BASE, "libfoo.so", RTLD_LAZY);
if (!h1) {
goto get_error;
}
+#endif
+
h2 = dlopen("libzzz.so", RTLD_LAZY);
if (!h2) {
goto get_error;
@@ -38,7 +47,7 @@ int main(int argc, char **argv)
goto get_error;
}
- foo = dlsym(h1, "foo");
+ foo = dlsym(h3, "foo");
error = dlerror();
if (error != NULL) {
goto error;
@@ -49,9 +58,13 @@ int main(int argc, char **argv)
if (dlclose(h0)) {
goto get_error;
}
+
+#ifdef HAVE_DLMOPEN
if (dlclose(h1)) {
goto get_error;
}
+#endif
+
if (dlclose(h2)) {
goto get_error;
}
diff --git a/tests/regression/ust/ust-dl/test_ust-dl b/tests/regression/ust/ust-dl/test_ust-dl
deleted file mode 100755
index 1f2934db..00000000
--- a/tests/regression/ust/ust-dl/test_ust-dl
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/bash
-#
-# Copyright (C) - 2013 Jérémie Galarneau <jeremie.galarneau@efficios.com>
-#
-# This program is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License, version 2 only, as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
-# more details.
-#
-# You should have received a copy of the GNU General Public License along with
-# this program; if not, write to the Free Software Foundation, Inc., 51
-# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-CURDIR=$(dirname $0)
-TESTDIR=${CURDIR}/../../..
-
-source $TESTDIR/utils/utils.sh
-
-if [ ! -x "$CURDIR/.libs/libfoo.so" ]; then
- diag "No shared object generated. Skipping all tests."
- exit 0
-fi
-
-start_lttng_sessiond_notap
-
-python3 ${CURDIR}/test_ust-dl.py
-
-stop_lttng_sessiond_notap
diff --git a/tests/regression/ust/ust-dl/test_ust-dl.in b/tests/regression/ust/ust-dl/test_ust-dl.in
new file mode 100644
index 00000000..61d00d21
--- /dev/null
+++ b/tests/regression/ust/ust-dl/test_ust-dl.in
@@ -0,0 +1,34 @@
+#!/bin/bash
+#
+# Copyright (C) - 2013 Jérémie Galarneau <jeremie.galarneau@efficios.com>
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License, version 2 only, as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+# more details.
+#
+# You should have received a copy of the GNU General Public License along with
+# this program; if not, write to the Free Software Foundation, Inc., 51
+# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+CURDIR=$(dirname $0)
+TESTDIR=${CURDIR}/../../..
+
+source $TESTDIR/utils/utils.sh
+
+if [ ! -x "$CURDIR/.libs/libfoo.so" ]; then
+ diag "No shared object generated. Skipping all tests."
+ exit 0
+fi
+
+export LTTNG_TOOLS_HAVE_DLMOPEN=@HAVE_DLMOPEN@
+
+start_lttng_sessiond_notap
+
+python3 ${CURDIR}/test_ust-dl.py
+
+stop_lttng_sessiond_notap
diff --git a/tests/regression/ust/ust-dl/test_ust-dl.py b/tests/regression/ust/ust-dl/test_ust-dl.py
index 81972a7d..72459840 100644
--- a/tests/regression/ust/ust-dl/test_ust-dl.py
+++ b/tests/regression/ust/ust-dl/test_ust-dl.py
@@ -31,6 +31,9 @@ sys.path.append(test_utils_path)
from test_utils import *
+have_dlmopen = (os.environ.get('LTTNG_TOOLS_HAVE_DLMOPEN') == '1')
+
+
NR_TESTS = 14
current_test = 1
print("1..{0}".format(NR_TESTS))
@@ -113,7 +116,11 @@ current_test += 1
print_test_result(dlopen_event_found > 0, current_test, "lttng_ust_dl:dlopen event found in resulting trace")
current_test += 1
-print_test_result(dlmopen_event_found > 0, current_test, "lttng_ust_dl:dlmopen event found in resulting trace")
+if have_dlmopen:
+ print_test_result(dlmopen_event_found > 0, current_test, "lttng_ust_dl:dlmopen event found in resulting trace")
+else:
+ skip_test(current_test, 'dlmopen() is not available')
+
current_test += 1
print_test_result(build_id_event_found > 0, current_test, "lttng_ust_dl:build_id event found in resulting trace")
diff --git a/tests/utils/test_utils.py b/tests/utils/test_utils.py
index 4b38630c..02e632a2 100644
--- a/tests/utils/test_utils.py
+++ b/tests/utils/test_utils.py
@@ -62,6 +62,9 @@ def print_test_result(result, number, description):
result_string += " {0} - {1}".format(number, description)
print(result_string)
+def skip_test(number, description):
+ print('ok {} # skip {}'.format(number, description))
+
def enable_ust_tracepoint_event(session_info, event_name):
event = Event()
event.name = event_name
--
2.15.0
@@ -1,31 +0,0 @@
From 40dde31f7eeb71af169b97b82d8fd1739895dfc3 Mon Sep 17 00:00:00 2001
From: Philippe Proulx <eeppeliteloop@gmail.com>
Date: Wed, 8 Nov 2017 15:19:24 -0500
Subject: [PATCH] Fix: src/common/pipe.h: include <sys/types.h> for ssize_t and
mode_t
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
[Philippe: backport from upstream commit 40dde31f]
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
---
src/common/pipe.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/common/pipe.h b/src/common/pipe.h
index 2d4fc967..30f7c3f3 100644
--- a/src/common/pipe.h
+++ b/src/common/pipe.h
@@ -20,6 +20,7 @@
#include <pthread.h>
#include <common/macros.h>
+#include <sys/types.h>
enum lttng_pipe_state {
LTTNG_PIPE_STATE_OPENED = 1,
--
2.15.0
@@ -1,32 +0,0 @@
From 56efeab366da412ee4196107c08174f32ed83c9a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=A9r=C3=A9mie=20Galarneau?=
<jeremie.galarneau@efficios.com>
Date: Mon, 13 Nov 2017 10:31:29 -0500
Subject: [PATCH] Fix warning: src/bin/lttng/utils.c: cast incompatible pointer
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Reported-by: Philippe Proulx <eeppeliteloop@gmail.com>
[Philippe: backport from upstream commit 56efeab3]
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
---
src/bin/lttng/utils.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/bin/lttng/utils.c b/src/bin/lttng/utils.c
index 885f498b..52a2440e 100644
--- a/src/bin/lttng/utils.c
+++ b/src/bin/lttng/utils.c
@@ -387,7 +387,7 @@ int check_relayd(void)
* A successful connect means the relayd exists thus returning 0 else a
* negative value means it does NOT exists.
*/
- ret = connect(fd, &sin, sizeof(sin));
+ ret = connect(fd, (struct sockaddr *) &sin, sizeof(sin));
if (ret < 0) {
/* Not found. */
ret = 0;
--
2.15.0
+8 -3
View File
@@ -1,3 +1,8 @@
# From http://lttng.org/files/lttng-tools/lttng-tools-2.10.1.tar.bz2.{md5,sha1}
md5 fd80fa64dffd8017fb30836eb30532cc lttng-tools-2.10.1.tar.bz2
sha1 b29554903160dc1c89b41c85493fd968de0e624f lttng-tools-2.10.1.tar.bz2
# From https://lttng.org/files/lttng-tools/lttng-tools-2.10.5.tar.bz2.{md5,sha1}
md5 50e07676d5eb5d6cf4ece804863a6f74 lttng-tools-2.10.5.tar.bz2
sha1 68790d44529a3b29896c35bb2350e8a0e1226264 lttng-tools-2.10.5.tar.bz2
# Locally computed
sha256 a4868078ef961e83dc236c4f24fd848161bfa755344b064dece62c4c81a07411 lttng-tools-2.10.5.tar.bz2
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 gpl-2.0.txt
sha256 051be1f11b508ef7bb839994f6b58be19a827c56bd9bddfe36d77d3d4be55abe lgpl-2.1.txt
sha256 f07515677547da5f3ee2396bdf491affc1accd5e4765a5378b6e1e98392fd5e7 LICENSE
+3 -4
View File
@@ -4,14 +4,13 @@
#
################################################################################
LTTNG_TOOLS_VERSION = 2.10.1
LTTNG_TOOLS_SITE = http://lttng.org/files/lttng-tools
LTTNG_TOOLS_VERSION = 2.10.5
LTTNG_TOOLS_SITE = https://lttng.org/files/lttng-tools
LTTNG_TOOLS_SOURCE = lttng-tools-$(LTTNG_TOOLS_VERSION).tar.bz2
LTTNG_TOOLS_INSTALL_STAGING = YES
LTTNG_TOOLS_LICENSE = GPL-2.0+, LGPL-2.1+ (include/lttng/*, src/lib/lttng-ctl/*)
LTTNG_TOOLS_LICENSE_FILES = gpl-2.0.txt lgpl-2.1.txt LICENSE
LTTNG_TOOLS_CONF_OPTS += --disable-man-pages
# 0001-Fix-detect-dlmopen-and-disable-corresponding-tests-i.patch
LTTNG_TOOLS_AUTORECONF = YES
LTTNG_TOOLS_DEPENDENCIES = liburcu libxml2 popt util-linux
ifeq ($(BR2_PACKAGE_LTTNG_LIBUST),y)
@@ -0,0 +1,169 @@
Use system <sys/xattr.h>
The one from attr is no longer installed with latest version.
ENOATTR was in fact defined as ENODATA, so switch to using that instead.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
Upstream status: merged:
https://bitbucket.org/doub/flu/pull-requests/1
https://bitbucket.org/doub/flu/commits/2d75cc2be79026b94188b11c6f53b219c24a5f70
diff -durN lua-flu-20150331-1.orig/doub-flu-a7daae986339/doc/doc.lua lua-flu-20150331-1/doub-flu-a7daae986339/doc/doc.lua
--- lua-flu-20150331-1.orig/doub-flu-a7daae986339/doc/doc.lua 2015-03-31 18:54:19.000000000 +0200
+++ lua-flu-20150331-1/doub-flu-a7daae986339/doc/doc.lua 2018-05-06 09:22:28.499324049 +0200
@@ -327,7 +327,7 @@
name = "fs.getxattr";
parameters = {"path", "name"};
results = {"value"};
- doc = [[Get an extended attribute. If the attribute doesn't exist `ENOATTR` should be thrown.]];
+ doc = [[Get an extended attribute. If the attribute doesn't exist `ENODATA` should be thrown.]];
},
{
name = "fs.listxattr";
@@ -338,7 +338,7 @@
{
name = "fs.removexattr";
parameters = {"path", "name"};
- doc = [[Remove an extended attribute. If the attribute doesn't exist `ENOATTR` should be thrown.]];
+ doc = [[Remove an extended attribute. If the attribute doesn't exist `ENODATA` should be thrown.]];
},
{
name = "fs.opendir";
diff -durN lua-flu-20150331-1.orig/doub-flu-a7daae986339/doc/luafs.lua lua-flu-20150331-1/doub-flu-a7daae986339/doc/luafs.lua
--- lua-flu-20150331-1.orig/doub-flu-a7daae986339/doc/luafs.lua 2015-03-31 18:54:19.000000000 +0200
+++ lua-flu-20150331-1/doub-flu-a7daae986339/doc/luafs.lua 2018-05-06 09:22:28.495324054 +0200
@@ -222,8 +222,8 @@
-- :NOTE: since the filesystem is a pure tree (not a DAG), use the path to find attribs
function luafs.getxattr(path, name)
- local attrs = assert(xattrs[path], errno.ENOATTR)
- return assert(attrs[name], errno.ENOATTR)
+ local attrs = assert(xattrs[path], errno.ENODATA)
+ return assert(attrs[name], errno.ENODATA)
end
function luafs.setxattr(path, name, value, flags)
@@ -236,7 +236,7 @@
end
function luafs.removexattr(path, name)
- local attrs = assert(xattrs[path], errno.ENOATTR)
+ local attrs = assert(xattrs[path], errno.ENODATA)
attrs[name] = nil
if next(attrs)==nil then
xattrs[path] = nil
diff -durN lua-flu-20150331-1.orig/doub-flu-a7daae986339/doc/manual.html lua-flu-20150331-1/doub-flu-a7daae986339/doc/manual.html
--- lua-flu-20150331-1.orig/doub-flu-a7daae986339/doc/manual.html 2015-03-31 18:54:19.000000000 +0200
+++ lua-flu-20150331-1/doub-flu-a7daae986339/doc/manual.html 2018-05-06 09:22:28.499324049 +0200
@@ -347,7 +347,7 @@
<div class="function">
<h3><a name="fs.getxattr"><code>value = fs.getxattr (path, name)</code></a></h3>
-<p>Get an extended attribute. If the attribute doesn't exist <code>ENOATTR</code> should be thrown.</p>
+<p>Get an extended attribute. If the attribute doesn't exist <code>ENODATA</code> should be thrown.</p>
</div>
<div class="function">
@@ -359,7 +359,7 @@
<div class="function">
<h3><a name="fs.removexattr"><code>fs.removexattr (path, name)</code></a></h3>
-<p>Remove an extended attribute. If the attribute doesn't exist <code>ENOATTR</code> should be thrown.</p>
+<p>Remove an extended attribute. If the attribute doesn't exist <code>ENODATA</code> should be thrown.</p>
</div>
<div class="function">
diff -durN lua-flu-20150331-1.orig/doub-flu-a7daae986339/errno.c lua-flu-20150331-1/doub-flu-a7daae986339/errno.c
--- lua-flu-20150331-1.orig/doub-flu-a7daae986339/errno.c 2015-03-31 18:54:19.000000000 +0200
+++ lua-flu-20150331-1/doub-flu-a7daae986339/errno.c 2018-05-06 09:23:06.323282527 +0200
@@ -3,7 +3,7 @@
#include <lua.h>
#include <lauxlib.h>
#include <stdlib.h>
-#include <attr/xattr.h>
+#include <sys/xattr.h>
#include "compat.h"
/****************************************************************************/
@@ -103,7 +103,7 @@
REGISTER_ERROR(EDOM)
REGISTER_ERROR(ERANGE)
REGISTER_ERROR(ENOSYS)
- REGISTER_ERROR(ENOATTR)
+ REGISTER_ERROR(ENODATA)
#undef REGISTER_ERROR
}
diff -durN lua-flu-20150331-1.orig/doub-flu-a7daae986339/flu-20150331-1.rockspec lua-flu-20150331-1/doub-flu-a7daae986339/flu-20150331-1.rockspec
--- lua-flu-20150331-1.orig/doub-flu-a7daae986339/flu-20150331-1.rockspec 2018-05-06 09:22:04.123351349 +0200
+++ lua-flu-20150331-1/doub-flu-a7daae986339/flu-20150331-1.rockspec 2018-05-06 09:23:06.323282527 +0200
@@ -14,7 +14,7 @@
library = 'fuse',
},
ATTR = {
- header = 'attr/xattr.h',
+ header = 'sys/xattr.h',
},
}
dependencies = {
diff -durN lua-flu-20150331-1.orig/doub-flu-a7daae986339/flu.c lua-flu-20150331-1/doub-flu-a7daae986339/flu.c
--- lua-flu-20150331-1.orig/doub-flu-a7daae986339/flu.c 2015-03-31 18:54:19.000000000 +0200
+++ lua-flu-20150331-1/doub-flu-a7daae986339/flu.c 2018-05-06 09:23:06.323282527 +0200
@@ -15,7 +15,7 @@
#include <errno.h>
#include <string.h>
#include <fuse.h>
-#include <attr/xattr.h>
+#include <sys/xattr.h>
#include <lua.h>
#include <lauxlib.h>
diff -durN lua-flu-20150331-1.orig/doub-flu-a7daae986339/flu.rockspec.in lua-flu-20150331-1/doub-flu-a7daae986339/flu.rockspec.in
--- lua-flu-20150331-1.orig/doub-flu-a7daae986339/flu.rockspec.in 2015-03-31 18:54:19.000000000 +0200
+++ lua-flu-20150331-1/doub-flu-a7daae986339/flu.rockspec.in 2018-05-06 09:23:06.323282527 +0200
@@ -14,7 +14,7 @@
library = 'fuse',
},
ATTR = {
- header = 'attr/xattr.h',
+ header = 'sys/xattr.h',
},
}
dependencies = {
diff -durN lua-flu-20150331-1.orig/doub-flu-a7daae986339/README.md lua-flu-20150331-1/doub-flu-a7daae986339/README.md
--- lua-flu-20150331-1.orig/doub-flu-a7daae986339/README.md 2015-03-31 18:54:19.000000000 +0200
+++ lua-flu-20150331-1/doub-flu-a7daae986339/README.md 2018-05-06 09:22:28.495324054 +0200
@@ -345,7 +345,7 @@
### `value = fs.getxattr (path, name)`
-Get an extended attribute. If the attribute doesn't exist `ENOATTR` should be thrown.
+Get an extended attribute. If the attribute doesn't exist `ENODATA` should be thrown.
---
@@ -357,7 +357,7 @@
### `fs.removexattr (path, name)`
-Remove an extended attribute. If the attribute doesn't exist `ENOATTR` should be thrown.
+Remove an extended attribute. If the attribute doesn't exist `ENODATA` should be thrown.
---
diff -durN lua-flu-20150331-1.orig/flu-20150331-1.rockspec lua-flu-20150331-1/flu-20150331-1.rockspec
--- lua-flu-20150331-1.orig/flu-20150331-1.rockspec 2015-04-02 23:44:11.000000000 +0200
+++ lua-flu-20150331-1/flu-20150331-1.rockspec 2018-05-06 09:23:06.323282527 +0200
@@ -14,7 +14,7 @@
library = 'fuse',
},
ATTR = {
- header = 'attr/xattr.h',
+ header = 'sys/xattr.h',
},
}
dependencies = {
@@ -0,0 +1,277 @@
From f563334a76e31442f7b8693d2d350e6981c51c46 Mon Sep 17 00:00:00 2001
From: Marcin Niestroj <m.niestroj@grinn-global.com>
Date: Fri, 20 Jul 2018 14:26:44 +0200
Subject: [PATCH] configure: Introduce --enable-symvers option
Only few libc (e.g. glibc) libraries support full symbol version
resolution in runtime. There are lot of standard libraries that do not
support that, such as dietlibc, musl and uclibc. Hence there is no
reason to generate symbol versions when compiling against them.
Additionally libdevmapper.so was broken when compiled against
uclibc. Runtime linker loader caused calling dm_task_get_info_base()
function recursively, leading to segmentation fault.
Introduce --enable-symvers[=STYLE] option, which allows to choose
between gnu and disabled symbol versioning. By default gnu symbol
versioning is used to provide backward compatibility.
__GNUC__ check is replaced now with GNU_SYMVER, which is generated by
configure script. Additionally ld version script is included only in
case of gnu option, which slightly reduces output size.
Providing --disable-symvers to configure script when building against
uclibc library fixes segmentation fault error described above, due to
lack of several versions of the same symbol in libdevmapper.so
library.
Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
---
configure | 32 ++++++++++++++++++++++++++++++--
configure.in | 28 +++++++++++++++++++++++++---
include/configure.h.in | 3 +++
lib/misc/lib.h | 10 +++++-----
libdm/datastruct/bitset.c | 5 +----
libdm/ioctl/libdm-iface.c | 2 +-
libdm/libdm-deptree.c | 2 +-
libdm/libdm-stats.c | 2 +-
8 files changed, 67 insertions(+), 17 deletions(-)
diff --git a/configure b/configure
index e1ae0e884..c5d11c1b6 100755
--- a/configure
+++ b/configure
@@ -985,6 +985,7 @@ enable_fsadm
enable_blkdeactivate
enable_dmeventd
enable_selinux
+enable_symvers
enable_nls
with_localedir
with_confdir
@@ -1729,6 +1730,9 @@ Optional Features:
--disable-blkdeactivate disable blkdeactivate
--enable-dmeventd enable the device-mapper event daemon
--disable-selinux disable selinux support
+ --enable-symvers[=STYLE]
+ enables symbol versioning of the shared library
+ [default=gnu]
--enable-nls enable Native Language Support
Optional Packages:
@@ -3169,7 +3173,6 @@ if test -z "$CFLAGS"; then :
fi
case "$host_os" in
linux*)
- CLDFLAGS="$CLDFLAGS -Wl,--version-script,.export.sym"
ELDFLAGS="-Wl,--export-dynamic"
# FIXME Generate list and use --dynamic-list=.dlopen.sym
CLDWHOLEARCHIVE="-Wl,-whole-archive"
@@ -3190,7 +3193,6 @@ case "$host_os" in
;;
darwin*)
CFLAGS="$CFLAGS -no-cpp-precomp -fno-common"
- CLDFLAGS="$CLDFLAGS"
ELDFLAGS=
CLDWHOLEARCHIVE="-all_load"
CLDNOWHOLEARCHIVE=
@@ -14609,6 +14611,32 @@ done
LIBS=$lvm_saved_libs
fi
+################################################################################
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable symbol versioning" >&5
+$as_echo_n "checking whether to enable symbol versioning... " >&6; }
+# Check whether --enable-symvers was given.
+if test "${enable_symvers+set}" = set; then :
+ enableval=$enable_symvers;
+ case "$enableval" in
+ gnu|no) ;;
+ *) as_fn_error $? "Unknown argument to enable/disable symvers" "$LINENO" 5 ;;
+ esac
+else
+ enable_symvers=gnu
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_symvers" >&5
+$as_echo "$enable_symvers" >&6; }
+
+if test x$GCC = xyes && test x$enable_symvers = xgnu ; then
+
+$as_echo "#define GNU_SYMVER 1" >>confdefs.h
+
+ case "$host_os" in
+ linux*) CLDFLAGS="$CLDFLAGS -Wl,--version-script,.export.sym" ;;
+ esac
+fi
+
################################################################################
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable internationalisation" >&5
$as_echo_n "checking whether to enable internationalisation... " >&6; }
diff --git a/configure.in b/configure.in
index 2e5e015c8..09c390850 100644
--- a/configure.in
+++ b/configure.in
@@ -30,12 +30,10 @@ AC_CANONICAL_TARGET([])
AS_IF([test -z "$CFLAGS"], [COPTIMISE_FLAG="-O2"])
case "$host_os" in
linux*)
- CLDFLAGS="$CLDFLAGS -Wl,--version-script,.export.sym"
ELDFLAGS="-Wl,--export-dynamic"
# FIXME Generate list and use --dynamic-list=.dlopen.sym
CLDWHOLEARCHIVE="-Wl,-whole-archive"
CLDNOWHOLEARCHIVE="-Wl,-no-whole-archive"
- LDDEPS="$LDDEPS .export.sym"
LIB_SUFFIX=so
DEVMAPPER=yes
BUILD_LVMETAD=no
@@ -51,7 +49,6 @@ case "$host_os" in
;;
darwin*)
CFLAGS="$CFLAGS -no-cpp-precomp -fno-common"
- CLDFLAGS="$CLDFLAGS"
ELDFLAGS=
CLDWHOLEARCHIVE="-all_load"
CLDNOWHOLEARCHIVE=
@@ -1742,6 +1739,31 @@ package as well (which may be called readline-devel or something similar).])
LIBS=$lvm_saved_libs
fi
+################################################################################
+dnl -- Symbol versioning
+AC_MSG_CHECKING(whether to enable symbol versioning)
+AC_ARG_ENABLE(symvers,
+ AC_HELP_STRING([--enable-symvers[[[=STYLE]]]],
+ [enables symbol versioning of the shared library [default=gnu]]),
+ [
+ case "$enableval" in
+ gnu|no) ;;
+ *) AC_MSG_ERROR(Unknown argument to enable/disable symvers) ;;
+ esac],
+ enable_symvers=gnu)
+AC_MSG_RESULT($enable_symvers)
+
+if test x$GCC = xyes && test x$enable_symvers = xgnu ; then
+ AC_DEFINE(GNU_SYMVER, 1,
+ [Define to use GNU versioning in the shared library.])
+ case "$host_os" in
+ linux*)
+ CLDFLAGS="$CLDFLAGS -Wl,--version-script,.export.sym"
+ LDDEPS="$LDDEPS .export.sym"
+ ;;
+ esac
+fi
+
################################################################################
dnl -- Internationalisation stuff
AC_MSG_CHECKING(whether to enable internationalisation)
diff --git a/include/configure.h.in b/include/configure.h.in
index 51726506c..3fc181b1e 100644
--- a/include/configure.h.in
+++ b/include/configure.h.in
@@ -151,6 +151,9 @@
/* Path to fsadm binary. */
#undef FSADM_PATH
+/* Define to use GNU versioning in the shared library. */
+#undef GNU_SYMVER
+
/* Define to 1 if you have the `alarm' function. */
#undef HAVE_ALARM
diff --git a/lib/misc/lib.h b/lib/misc/lib.h
index 8ed06f81d..9b3ce8a03 100644
--- a/lib/misc/lib.h
+++ b/lib/misc/lib.h
@@ -42,16 +42,16 @@
* macro DM_EXPORT_SYMBOL to export the function and bind it to the
* specified version string.
*
- * Since versioning is only available when compiling with GCC the entire
- * compatibility version should be enclosed in '#if defined(__GNUC__)',
- * for example:
+ * Since versioning is only available when compiling with GCC
+ * and GLIBC the entire compatibility version should be enclosed
+ * in '#if defined(GNU_SYMVER)', for example:
*
* int dm_foo(int bar)
* {
* return bar;
* }
*
- * #if defined(__GNUC__)
+ * #if defined(GNU_SYMVER)
* // Backward compatible dm_foo() version 1.02.104
* int dm_foo_v1_02_104(void);
* int dm_foo_v1_02_104(void)
@@ -68,7 +68,7 @@
* versions of library symbols prior to the introduction of symbol
* versioning: it must never be used for new symbols.
*/
-#if defined(__GNUC__)
+#if defined(GNU_SYMVER)
#define DM_EXPORT_SYMBOL(func, ver) \
__asm__(".symver " #func "_v" #ver ", " #func "@DM_" #ver )
#define DM_EXPORT_SYMBOL_BASE(func) \
diff --git a/libdm/datastruct/bitset.c b/libdm/datastruct/bitset.c
index b0826e1eb..2ec3f8f84 100644
--- a/libdm/datastruct/bitset.c
+++ b/libdm/datastruct/bitset.c
@@ -242,7 +242,7 @@ bad:
return NULL;
}
-#if defined(__GNUC__)
+#if defined(GNU_SYMVER)
/*
* Maintain backward compatibility with older versions that did not
* accept a 'min_num_bits' argument to dm_bitset_parse_list().
@@ -253,7 +253,4 @@ dm_bitset_t dm_bitset_parse_list_v1_02_129(const char *str, struct dm_pool *mem)
return dm_bitset_parse_list(str, mem, 0);
}
DM_EXPORT_SYMBOL(dm_bitset_parse_list, 1_02_129);
-
-#else /* if defined(__GNUC__) */
-
#endif
diff --git a/libdm/ioctl/libdm-iface.c b/libdm/ioctl/libdm-iface.c
index c47e08467..b98afb15d 100644
--- a/libdm/ioctl/libdm-iface.c
+++ b/libdm/ioctl/libdm-iface.c
@@ -2137,7 +2137,7 @@ void dm_lib_exit(void)
_version_checked = 0;
}
-#if defined(__GNUC__)
+#if defined(GNU_SYMVER)
/*
* Maintain binary backward compatibility.
* Version script mechanism works with 'gcc' compatible compilers only.
diff --git a/libdm/libdm-deptree.c b/libdm/libdm-deptree.c
index cf4fd62e7..474871da5 100644
--- a/libdm/libdm-deptree.c
+++ b/libdm/libdm-deptree.c
@@ -4110,7 +4110,7 @@ void dm_tree_node_set_callback(struct dm_tree_node *dnode,
dnode->callback_data = data;
}
-#if defined(__GNUC__)
+#if defined(GNU_SYMVER)
/*
* Backward compatible implementations.
*
diff --git a/libdm/libdm-stats.c b/libdm/libdm-stats.c
index bc498675f..d424928c7 100644
--- a/libdm/libdm-stats.c
+++ b/libdm/libdm-stats.c
@@ -5064,7 +5064,7 @@ int dm_stats_start_filemapd(int fd, uint64_t group_id, const char *path,
* current dm_stats_create_region() version.
*/
-#if defined(__GNUC__)
+#if defined(GNU_SYMVER)
int dm_stats_create_region_v1_02_106(struct dm_stats *dms, uint64_t *region_id,
uint64_t start, uint64_t len, int64_t step,
int precise, const char *program_id,
--
2.18.0
+3
View File
@@ -1,2 +1,5 @@
# From ftp://sources.redhat.com/pub/lvm2/releases/sha512.sum
sha512 c2ea8beafe006abf9282f51ec98600fd0ebff816d53c10ecbb19bbf336ada4825135cf9c92ccd364afb18f8b1d7e163eff5bdec8dfdd70dfb9ba45db2f6bdd5e LVM2.2.02.173.tgz
# Locally computed sha256 checksums
sha256 e76fbcd2fb97cf202da330301327754d2db5c58b5b4bebd3a8a749393e7603d1 COPYING
sha256 5df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a COPYING.LIB
+2 -1
View File
@@ -19,7 +19,8 @@ LVM2_CONF_OPTS += \
--enable-pkgconfig \
--enable-cmdlib \
--enable-dmeventd \
--disable-nls
--disable-nls \
--disable-symvers
LVM2_DEPENDENCIES += host-pkgconf
@@ -0,0 +1,166 @@
From 4af4a4a71827c0bc5e0ec67af23edef4f15cee8e Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Mon, 5 Mar 2018 10:56:29 -0800
Subject: [PATCH] fflush: adjust to glibc 2.28 libio.h removal
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Problem reported by Daniel P. Berrangé in:
https://lists.gnu.org/r/bug-gnulib/2018-03/msg00000.html
* lib/fbufmode.c (fbufmode):
* lib/fflush.c (clear_ungetc_buffer_preserving_position)
(disable_seek_optimization, rpl_fflush):
* lib/fpending.c (__fpending):
* lib/fpurge.c (fpurge):
* lib/freadable.c (freadable):
* lib/freadahead.c (freadahead):
* lib/freading.c (freading):
* lib/freadptr.c (freadptr):
* lib/freadseek.c (freadptrinc):
* lib/fseeko.c (fseeko):
* lib/fseterr.c (fseterr):
* lib/fwritable.c (fwritable):
* lib/fwriting.c (fwriting):
Check _IO_EOF_SEEN instead of _IO_ftrylockfile.
* lib/stdio-impl.h (_IO_IN_BACKUP) [_IO_EOF_SEEN]:
Define if not already defined.
[yann.morin.1998@free.fr: partially backport from upstream gnulib]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
lib/fflush.c | 6 +++---
lib/fpending.c | 2 +-
lib/fpurge.c | 2 +-
lib/freadahead.c | 2 +-
lib/freading.c | 2 +-
lib/fseeko.c | 4 ++--
lib/stdio-impl.h | 6 ++++++
7 files changed, 15 insertions(+), 9 deletions(-)
diff --git a/lib/fflush.c b/build-aux/gnulib/lib/fflush.c
index 983ade0ff..a6edfa105 100644
--- a/lib/fflush.c
+++ b/lib/fflush.c
@@ -33,7 +33,7 @@
#undef fflush
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
/* Clear the stream's ungetc buffer, preserving the value of ftello (fp). */
static void
@@ -72,7 +72,7 @@ clear_ungetc_buffer (FILE *fp)
#endif
-#if ! (defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */)
+#if ! (defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */)
# if (defined __sferror || defined __DragonFly__ || defined __ANDROID__) && defined __SNPT
/* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
@@ -148,7 +148,7 @@ rpl_fflush (FILE *stream)
if (stream == NULL || ! freading (stream))
return fflush (stream);
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
clear_ungetc_buffer_preserving_position (stream);
diff --git a/lib/fpending.c b/build-aux/gnulib/lib/fpending.c
index c84e3a5b4..789f50e4e 100644
--- a/lib/fpending.c
+++ b/lib/fpending.c
@@ -32,7 +32,7 @@ __fpending (FILE *fp)
/* Most systems provide FILE as a struct and the necessary bitmask in
<stdio.h>, because they need it for implementing getc() and putc() as
fast macros. */
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
return fp->_IO_write_ptr - fp->_IO_write_base;
#elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
/* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
diff --git a/lib/fpurge.c b/build-aux/gnulib/lib/fpurge.c
index b1d417c7a..3aedcc373 100644
--- a/lib/fpurge.c
+++ b/lib/fpurge.c
@@ -62,7 +62,7 @@ fpurge (FILE *fp)
/* Most systems provide FILE as a struct and the necessary bitmask in
<stdio.h>, because they need it for implementing getc() and putc() as
fast macros. */
-# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
fp->_IO_read_end = fp->_IO_read_ptr;
fp->_IO_write_ptr = fp->_IO_write_base;
/* Avoid memory leak when there is an active ungetc buffer. */
diff --git a/lib/freadahead.c b/build-aux/gnulib/lib/freadahead.c
index c2ecb5b28..23ec76ee5 100644
--- a/lib/freadahead.c
+++ b/lib/freadahead.c
@@ -30,7 +30,7 @@ extern size_t __sreadahead (FILE *);
size_t
freadahead (FILE *fp)
{
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
if (fp->_IO_write_ptr > fp->_IO_write_base)
return 0;
return (fp->_IO_read_end - fp->_IO_read_ptr)
diff --git a/lib/freading.c b/build-aux/gnulib/lib/freading.c
index 73c28acdd..c24d0c88a 100644
--- a/lib/freading.c
+++ b/lib/freading.c
@@ -31,7 +31,7 @@ freading (FILE *fp)
/* Most systems provide FILE as a struct and the necessary bitmask in
<stdio.h>, because they need it for implementing getc() and putc() as
fast macros. */
-# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
return ((fp->_flags & _IO_NO_WRITES) != 0
|| ((fp->_flags & (_IO_NO_READS | _IO_CURRENTLY_PUTTING)) == 0
&& fp->_IO_read_base != NULL));
diff --git a/lib/fseeko.c b/build-aux/gnulib/lib/fseeko.c
index 0101ab55f..193f4e8ce 100644
--- a/lib/fseeko.c
+++ b/lib/fseeko.c
@@ -47,7 +47,7 @@ fseeko (FILE *fp, off_t offset, int whence)
#endif
/* These tests are based on fpurge.c. */
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
if (fp->_IO_read_end == fp->_IO_read_ptr
&& fp->_IO_write_ptr == fp->_IO_write_base
&& fp->_IO_save_base == NULL)
@@ -123,7 +123,7 @@ fseeko (FILE *fp, off_t offset, int whence)
return -1;
}
-#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
fp->_flags &= ~_IO_EOF_SEEN;
fp->_offset = pos;
#elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
diff --git a/lib/stdio-impl.h b/build-aux/gnulib/lib/stdio-impl.h
index 78d896e9f..05c5752a2 100644
--- a/lib/stdio-impl.h
+++ b/lib/stdio-impl.h
@@ -18,6 +18,12 @@
the same implementation of stdio extension API, except that some fields
have different naming conventions, or their access requires some casts. */
+/* Glibc 2.28 made _IO_IN_BACKUP private. For now, work around this
+ problem by defining it ourselves. FIXME: Do not rely on glibc
+ internals. */
+#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN
+# define _IO_IN_BACKUP 0x100
+#endif
/* BSD stdio derived implementations. */
--
2.14.1
@@ -0,0 +1,151 @@
From 74d9d6a293d7462dea8f83e7fc5ac792e956a0ad Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Thu, 8 Mar 2018 16:42:45 -0800
Subject: [PATCH 2/2] fflush: be more paranoid about libio.h change
Suggested by Eli Zaretskii in:
https://lists.gnu.org/r/emacs-devel/2018-03/msg00270.html
* lib/fbufmode.c (fbufmode):
* lib/fflush.c (clear_ungetc_buffer_preserving_position)
(disable_seek_optimization, rpl_fflush):
* lib/fpending.c (__fpending):
* lib/fpurge.c (fpurge):
* lib/freadable.c (freadable):
* lib/freadahead.c (freadahead):
* lib/freading.c (freading):
* lib/freadptr.c (freadptr):
* lib/freadseek.c (freadptrinc):
* lib/fseeko.c (fseeko):
* lib/fseterr.c (fseterr):
* lib/fwritable.c (fwritable):
* lib/fwriting.c (fwriting):
Look at _IO_ftrylockfile as well as at _IO_EOF_SEEN.
---
lib/fflush.c | 9 ++++++---
lib/fpending.c | 3 ++-
lib/fpurge.c | 3 ++-
lib/freadahead.c | 3 ++-
lib/freading.c | 3 ++-
lib/fseeko.c | 6 ++++--
6 files changed, 18 insertions(+), 9 deletions(-)
[yann.morin.1998@free.fr: partially backport from upstream gnulib]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
diff --git a/lib/fflush.c b/build-aux/gnulib/lib/fflush.c
index a6edfa105..a140b7ad9 100644
--- a/lib/fflush.c
+++ b/lib/fflush.c
@@ -33,7 +33,8 @@
#undef fflush
-#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1
+/* GNU libc, BeOS, Haiku, Linux libc5 */
/* Clear the stream's ungetc buffer, preserving the value of ftello (fp). */
static void
@@ -72,7 +73,8 @@ clear_ungetc_buffer (FILE *fp)
#endif
-#if ! (defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */)
+#if ! (defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1)
+/* GNU libc, BeOS, Haiku, Linux libc5 */
# if (defined __sferror || defined __DragonFly__ || defined __ANDROID__) && defined __SNPT
/* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
@@ -148,7 +150,8 @@ rpl_fflush (FILE *stream)
if (stream == NULL || ! freading (stream))
return fflush (stream);
-#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1
+ /* GNU libc, BeOS, Haiku, Linux libc5 */
clear_ungetc_buffer_preserving_position (stream);
diff --git a/lib/fpending.c b/build-aux/gnulib/lib/fpending.c
index 789f50e4e..7bc235ded 100644
--- a/lib/fpending.c
+++ b/lib/fpending.c
@@ -32,7 +32,8 @@ __fpending (FILE *fp)
/* Most systems provide FILE as a struct and the necessary bitmask in
<stdio.h>, because they need it for implementing getc() and putc() as
fast macros. */
-#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1
+ /* GNU libc, BeOS, Haiku, Linux libc5 */
return fp->_IO_write_ptr - fp->_IO_write_base;
#elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
/* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
diff --git a/lib/fpurge.c b/build-aux/gnulib/lib/fpurge.c
index 3aedcc373..554790b56 100644
--- a/lib/fpurge.c
+++ b/lib/fpurge.c
@@ -62,7 +62,8 @@ fpurge (FILE *fp)
/* Most systems provide FILE as a struct and the necessary bitmask in
<stdio.h>, because they need it for implementing getc() and putc() as
fast macros. */
-# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+# if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1
+ /* GNU libc, BeOS, Haiku, Linux libc5 */
fp->_IO_read_end = fp->_IO_read_ptr;
fp->_IO_write_ptr = fp->_IO_write_base;
/* Avoid memory leak when there is an active ungetc buffer. */
diff --git a/lib/freadahead.c b/build-aux/gnulib/lib/freadahead.c
index 23ec76ee5..ed3dd0ebd 100644
--- a/lib/freadahead.c
+++ b/lib/freadahead.c
@@ -30,7 +30,8 @@ extern size_t __sreadahead (FILE *);
size_t
freadahead (FILE *fp)
{
-#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1
+ /* GNU libc, BeOS, Haiku, Linux libc5 */
if (fp->_IO_write_ptr > fp->_IO_write_base)
return 0;
return (fp->_IO_read_end - fp->_IO_read_ptr)
diff --git a/lib/freading.c b/build-aux/gnulib/lib/freading.c
index c24d0c88a..790f92ca3 100644
--- a/lib/freading.c
+++ b/lib/freading.c
@@ -31,7 +31,8 @@ freading (FILE *fp)
/* Most systems provide FILE as a struct and the necessary bitmask in
<stdio.h>, because they need it for implementing getc() and putc() as
fast macros. */
-# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+# if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1
+ /* GNU libc, BeOS, Haiku, Linux libc5 */
return ((fp->_flags & _IO_NO_WRITES) != 0
|| ((fp->_flags & (_IO_NO_READS | _IO_CURRENTLY_PUTTING)) == 0
&& fp->_IO_read_base != NULL));
diff --git a/lib/fseeko.c b/build-aux/gnulib/lib/fseeko.c
index 193f4e8ce..e5c5172e7 100644
--- a/lib/fseeko.c
+++ b/lib/fseeko.c
@@ -47,7 +47,8 @@ fseeko (FILE *fp, off_t offset, int whence)
#endif
/* These tests are based on fpurge.c. */
-#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1
+ /* GNU libc, BeOS, Haiku, Linux libc5 */
if (fp->_IO_read_end == fp->_IO_read_ptr
&& fp->_IO_write_ptr == fp->_IO_write_base
&& fp->_IO_save_base == NULL)
@@ -123,7 +124,8 @@ fseeko (FILE *fp, off_t offset, int whence)
return -1;
}
-#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
+#if defined _IO_EOF_SEEN || defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1
+ /* GNU libc, BeOS, Haiku, Linux libc5 */
fp->_flags &= ~_IO_EOF_SEEN;
fp->_offset = pos;
#elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
--
2.14.1
+1 -1
View File
@@ -510,7 +510,7 @@ int main(int argc, char **argv)
linenum++;
if (1 == sscanf(line, "|xattr %254s", xattr)) {
if (1 == sscanf(line, " |xattr %254s", xattr)) {
#ifdef EXTENDED_ATTRIBUTES
if (!full_name)
bb_error_msg_and_die("line %d should be after a file\n", linenum);
+5 -2
View File
@@ -1,5 +1,8 @@
# From https://downloads.mariadb.org/mariadb/10.1.33/
sha256 94312c519f2c0c25e1964c64e22aff0036fb22dfb2685638f43a6b2211395d2d mariadb-10.1.33.tar.gz
# From https://downloads.mariadb.org/mariadb/10.1.35/
md5 935f401314ff08a4177beb70fed6055c mariadb-10.1.35.tar.gz
sha1 d322f0da17f4de475832dd534657eba5a936f77b mariadb-10.1.35.tar.gz
sha256 9e91d985ed4f662126e3e5791fe91ec8a2f44ec811113c2b6fbc72fa14553c4d mariadb-10.1.35.tar.gz
sha512 88e6049f3bbc3aa047e108f91a2c4f335758e80f25bfa2974b5f8c2e13f5758824d7835dece021b515c531e5641b9998e4de92256ad4b47b7f694da99bd471aa mariadb-10.1.35.tar.gz
# Hash for license files
sha256 69ce89a0cadbe35a858398c258be93c388715e84fc0ca04e5a1fd1aa9770dd3a README
+3 -3
View File
@@ -4,7 +4,7 @@
#
################################################################################
MARIADB_VERSION = 10.1.33
MARIADB_VERSION = 10.1.35
MARIADB_SITE = https://downloads.mariadb.org/interstitial/mariadb-$(MARIADB_VERSION)/source
MARIADB_LICENSE = GPL-2.0 (server), GPL-2.0 with FLOSS exception (GPL client library), LGPL-2.0 (LGPL client library)
# Tarball no longer contains LGPL license text
@@ -104,13 +104,13 @@ define MARIADB_INSTALL_INIT_SYSTEMD
endef
endif
# We don't need mysql_config on the target as it's only useful in staging
# We also don't need the test suite on the target
define MARIADB_POST_INSTALL
mkdir -p $(TARGET_DIR)/var/lib/mysql
$(INSTALL) -D -m 644 $(TARGET_DIR)/usr/share/mysql/my-small.cnf \
$(TARGET_DIR)/etc/mysql/my.cnf
# We don't need this on the target as it's only useful in staging
$(RM) $(TARGET_DIR)/usr/bin/mysql_config
# Remove test suite
$(RM) -r $(TARGET_DIR)/usr/share/mysql/test
endef
@@ -0,0 +1,74 @@
From a0ae2ba37ca479c6edddec8634b25686be965e0d Mon Sep 17 00:00:00 2001
From: Peter Korsgaard <peter@korsgaard.com>
Date: Mon, 27 Aug 2018 22:50:57 +0200
Subject: [PATCH] bn_mul.h: fix x86 PIC inline ASM compilation with GCC < 5
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Fixes #1910
With ebx added to the MULADDC_STOP clobber list to fix #1550, the inline
assembly fails to build with GCC < 5 in PIC mode with the following error:
include/mbedtls/bn_mul.h:46:13: error: PIC register clobbered by ebx in asm
This is because older GCC versions treated the x86 ebx register (which is
used for the GOT) as a fixed reserved register when building as PIC.
This is fixed by an improved register allocator in GCC 5+. From the release
notes:
Register allocation improvements: Reuse of the PIC hard register, instead of
using a fixed register, was implemented on x86/x86-64 targets. This
improves generated PIC code performance as more hard registers can be used.
https://www.gnu.org/software/gcc/gcc-5/changes.html
As a workaround, detect this situation and disable the inline assembly,
similar to the MULADDC_CANNOT_USE_R7 logic.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Upstream: https://github.com/ARMmbed/mbedtls/pull/1986
---
include/mbedtls/bn_mul.h | 18 +++++++++++++++++-
1 file changed, 17 insertions(+), 1 deletion(-)
diff --git a/include/mbedtls/bn_mul.h b/include/mbedtls/bn_mul.h
index b587317d9..74a2d29be 100644
--- a/include/mbedtls/bn_mul.h
+++ b/include/mbedtls/bn_mul.h
@@ -50,13 +50,29 @@
#if defined(__GNUC__) && \
( !defined(__ARMCC_VERSION) || __ARMCC_VERSION >= 6000000 )
+/*
+ * GCC < 5.0 treated the x86 ebx (which is used for the GOT) as a
+ * fixed reserved register when building as PIC, leading to errors
+ * like: bn_mul.h:46:13: error: PIC register clobbered by ebx in asm
+ *
+ * This is fixed by an improved register allocator in GCC 5+. From the
+ * release notes:
+ * Register allocation improvements: Reuse of the PIC hard register,
+ * instead of using a fixed register, was implemented on x86/x86-64
+ * targets. This improves generated PIC code performance as more hard
+ * registers can be used.
+ */
+#if defined(__GNUC__) && __GNUC__ < 5 && defined(__PIC__)
+#define MULADDC_CANNOT_USE_EBX
+#endif
+
/*
* Disable use of the i386 assembly code below if option -O0, to disable all
* compiler optimisations, is passed, detected with __OPTIMIZE__
* This is done as the number of registers used in the assembly code doesn't
* work with the -O0 option.
*/
-#if defined(__i386__) && defined(__OPTIMIZE__)
+#if defined(__i386__) && defined(__OPTIMIZE__) && !defined(MULADDC_CANNOT_USE_EBX)
#define MULADDC_INIT \
asm( \
--
2.11.0
+3 -3
View File
@@ -1,5 +1,5 @@
# From https://tls.mbed.org/tech-updates/releases/mbedtls-2.9.0-2.7.3-and-2.1.12-released
sha1 8352f6713a9ee695f6f19e893c0e85941af71967 mbedtls-2.7.3-apache.tgz
sha256 05282af7d95fedb2430c248ffe3081646800b8dae9071f8da11a07100963d765 mbedtls-2.7.3-apache.tgz
# From https://tls.mbed.org/tech-updates/releases/mbedtls-2.12.0-2.7.5-and-2.1.14-released
sha1 180ca49e2bb6df3826113781b793529a81427ce3 mbedtls-2.7.5-apache.tgz
sha256 a1302ad9094aabb9880d2755927b466a6bac8e02b68e04dee77321f3859e9b40 mbedtls-2.7.5-apache.tgz
# Locally calculated
sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 apache-2.0.txt
+1 -1
View File
@@ -5,7 +5,7 @@
################################################################################
MBEDTLS_SITE = https://tls.mbed.org/code/releases
MBEDTLS_VERSION = 2.7.3
MBEDTLS_VERSION = 2.7.5
MBEDTLS_SOURCE = mbedtls-$(MBEDTLS_VERSION)-apache.tgz
MBEDTLS_CONF_OPTS = \
-DENABLE_PROGRAMS=$(if $(BR2_PACKAGE_MBEDTLS_PROGRAMS),ON,OFF) \
+3 -3
View File
@@ -34,9 +34,9 @@ ifeq ($(BR2_PACKAGE_XORG7),y)
# contains -i.
define MESA3D_HEADERS_BUILD_DRI_PC
sed -e 's:@\(exec_\)\?prefix@:/usr:' \
-e 's:@libdir@:${exec_prefix}/lib:' \
-e 's:@includedir@:${prefix}/include:' \
-e 's:@DRI_DRIVER_INSTALL_DIR@:${libdir}/dri:' \
-e 's:@libdir@:$${exec_prefix}/lib:' \
-e 's:@includedir@:$${prefix}/include:' \
-e 's:@DRI_DRIVER_INSTALL_DIR@:$${libdir}/dri:' \
-e 's:@VERSION@:$(MESA3D_HEADERS_VERSION):' \
-e 's:@DRI_PC_REQ_PRIV@::' \
$(@D)/src/mesa/drivers/dri/dri.pc.in \
+9 -3
View File
@@ -254,13 +254,19 @@ config BR2_PACKAGE_MPD_OSS
config BR2_PACKAGE_MPD_PULSEAUDIO
bool "pulseaudio"
depends on !BR2_STATIC_LIBS # pulseaudio
depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC
depends on BR2_USE_WCHAR
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on !BR2_STATIC_LIBS
depends on BR2_USE_MMU
select BR2_PACKAGE_PULSEAUDIO
help
Enable pulseaudio output support.
comment "pulseaudio support needs a toolchain w/ dynamic library"
depends on BR2_STATIC_LIBS
comment "pulseaudio support needs a toolchain w/ threads, wchar, dynamic library"
depends on BR2_USE_MMU
depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || !BR2_USE_WCHAR
config BR2_PACKAGE_MPD_SHOUTCAST
bool "shoutcast"
@@ -0,0 +1,92 @@
From 0f833ac73ad631248826386e2918d8571ecf0347 Mon Sep 17 00:00:00 2001
From: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Date: Sat, 9 Jun 2018 16:45:22 +0200
Subject: [PATCH] Revert "Return correct error number in ubi_get_vol_info1"
This reverts commit dede98ffb706676309488d7cc660f569548d5930.
The original commit tried to fix a descrepancy between the implementation
and the documentation by making the implementation comply.
When making the change, it was overlooked, that ubinfo and ubirename were
written against the implementation instead of the behaviour specified by
the documentation. So were further internal functions like
ubi_get_vol_info1_nm which further breaks ubirmvol.
A report with an outline of a resulting problem can be read on
the mailing list:
http://lists.infradead.org/pipermail/linux-mtd/2018-June/081562.html
From the report:
steps to reproduce: have mtd-utils 2.0.1 or 2.0.2
0. make a bunch of ubi volumes in sequential order
ubimkvol /dev/ubi0 -s 64KiB -N test1
ubimkvol /dev/ubi0 -s 64KiB -N test2
ubimkvol /dev/ubi0 -s 64KiB -N test3
ubimkvol /dev/ubi0 -s 64KiB -N test4
..
1. delete the test1 volume, making a hole in the volume table
ubirmvol /dev/ubi0 -N test1
2. try an affected tool (i.e. "ubirmvol /dev/ubi0 -N test4" )
|root at mr24:/# ubirmvol /dev/ubi0 -N test4
|ubirmvol: error!: cannot find UBI volume "test4"
| error 19 (No such device)
or "ubinfo -a"
| root at mr24:/# ubinfo -a
| UBI version: 1
| Count of UBI devices: 1
| UBI control device major/minor: 10:59
| Present UBI devices: ubi0
|
| ubi0
| Volumes count: 11
| Logical eraseblock size: 15872 bytes, 15.5 KiB
| Total amount of logical eraseblocks: 1952 (30982144 bytes, 29.5 MiB)
| Amount of available logical eraseblocks: 75 (1190400 bytes, 1.1 MiB)
| Maximum count of volumes 92
| Count of bad physical eraseblocks: 0
| Count of reserved physical eraseblocks: 40
| Current maximum erase counter value: 984
| Minimum input/output unit size: 512 bytes
| Character device major/minor: 251:0
| ubinfo: error!: libubi failed to probe volume 5 on ubi0
| error 19 (No such device)
| Present volumes: 0, 1, 2, 3, 4root at mr24:/#
Reported-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Signed-off-by: David Owens <david.owens@rockwellcollins.com>
---
lib/libubi.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/lib/libubi.c b/lib/libubi.c
index b50e68a..978b433 100644
--- a/lib/libubi.c
+++ b/lib/libubi.c
@@ -1240,11 +1240,8 @@ int ubi_get_vol_info1(libubi_t desc, int dev_num, int vol_id,
info->dev_num = dev_num;
info->vol_id = vol_id;
- if (vol_get_major(lib, dev_num, vol_id, &info->major, &info->minor)) {
- if (errno == ENOENT)
- errno = ENODEV;
+ if (vol_get_major(lib, dev_num, vol_id, &info->major, &info->minor))
return -1;
- }
ret = vol_read_data(lib->vol_type, dev_num, vol_id, buf, 50);
if (ret < 0)
--
2.14.4
+3 -2
View File
@@ -1,3 +1,4 @@
# Locally calculated after checking pgp signature
# ftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-2.0.1.tar.bz2.asc
sha256 312baa0446e4e728ceb413c53533e41e547d1c13ffa0752b2f879fd289fc2f63 mtd-utils-2.0.1.tar.bz2
# ftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-2.0.2.tar.bz2.asc
sha256 fb3de61be8e932abb424e8ea3c30298f553d5f970ad158a737bb303bbf9660b8 mtd-utils-2.0.2.tar.bz2
sha256 dcc100d4161cc0b7177545ab6e47216f84857cda3843847c792a25289852dcaa COPYING

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