Commit Graph

38 Commits

Author SHA1 Message Date
wangmy
c48feb5f18 redis: upgrade 6.2.5 -> 6.2.6
Upgrade urgency: SECURITY, contains fixes to security issues.

Security Fixes:

(CVE-2021-41099) Integer to heap buffer overflow handling certain string
commands and network payloads, when proto-max-bulk-len is manually configured
to a non-default, very large value [reported by yiyuaner].
(CVE-2021-32762) Integer to heap buffer overflow issue in redis-cli and
redis-sentinel parsing large multi-bulk replies on some older and less common
platforms [reported by Microsoft Vulnerability Research].
(CVE-2021-32687) Integer to heap buffer overflow with intsets, when
set-max-intset-entries is manually configured to a non-default, very large
value [reported by Pawel Wieczorkiewicz, AWS].
(CVE-2021-32675) Denial Of Service when processing RESP request payloads with
a large number of elements on many connections.
(CVE-2021-32672) Random heap reading issue with Lua Debugger [reported by
Meir Shpilraien].
(CVE-2021-32628) Integer to heap buffer overflow handling ziplist-encoded
data types, when configuring a large, non-default value for
hash-max-ziplist-entries, hash-max-ziplist-value, zset-max-ziplist-entries
or zset-max-ziplist-value [reported by sundb].
(CVE-2021-32627) Integer to heap buffer overflow issue with streams, when
configuring a non-default, large value for proto-max-bulk-len and
client-query-buffer-limit [reported by sundb].
(CVE-2021-32626) Specially crafted Lua scripts may result with Heap buffer
overflow [reported by Meir Shpilraien].
Bug fixes that involve behavior changes:

GEO* STORE with empty source key deletes the destination key and return 0 (#9271)
Previously it would have returned an empty array like the non-STORE variant.
PUBSUB NUMPAT replies with number of patterns rather than number of subscriptions (#9209)
This actually changed in 6.2.0 but was overlooked and omitted from the release notes.
Bug fixes that are only applicable to previous releases of Redis 6.2:

Fix CLIENT PAUSE, used an old timeout from previous PAUSE (#9477)
Fix CLIENT PAUSE in a replica would mess the replication offset (#9448)
Add some missing error statistics in INFO errorstats (#9328)
Other bug fixes:

Fix incorrect reply of COMMAND command key positions for MIGRATE command (#9455)
Fix appendfsync to always guarantee fsync before reply, on MacOS and FreeBSD (kqueue) (#9416)
Fix the wrong mis-detection of sync_file_range system call, affecting performance (#9371)
CLI tools:

When redis-cli received ASK response, it didn't handle it (#8930)
Improvements:

Add latency monitor sample when key is deleted via lazy expire (#9317)
Sanitize corrupt payload improvements (#9321, #9399)
Delete empty keys when loading RDB file or handling a RESTORE command (#9297, #9349)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-10-14 07:16:58 -07:00
Joe Slater
aca0b06856 redis: advance to version 6.2.5
Pull in fix for CVE-2021-32761.

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-09-09 13:48:46 -07:00
Martin Jansa
c61dc077bb Convert to new override syntax
This is the result of automated script (0.9.1) conversion:

oe-core/scripts/contrib/convert-overrides.py .

converting the metadata to use ":" as the override character instead of "_".

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2021-08-03 10:21:25 -07:00
Tony Tascioglu
40ed8d14ab redis: upgrade to 6.2.4
Upstream changelog:

Upgrade urgency: SECURITY, Contains fixes to security issues that affect
authenticated client connections. MODERATE otherwise.

Fix integer overflow in STRALGO LCS (CVE-2021-32625)
An integer overflow bug in Redis version 6.0 or newer can be exploited using the
STRALGO LCS command to corrupt the heap and potentially result with remote code
execution. This is a result of an incomplete fix by CVE-2021-29477.

Bug fixes that are only applicable to previous releases of Redis 6.2:

    Fix crash after a diskless replication fork child is terminated (#8991)
    Fix redis-benchmark crash on unsupported configs (#8916)

Other bug fixes:

    Fix crash in UNLINK on a stream key with deleted consumer groups (#8932)
    SINTERSTORE: Add missing keyspace del event when none of the sources exist (#8949)
    Sentinel: Fix CONFIG SET of empty string sentinel-user/sentinel-pass configs (#8958)
    Enforce client output buffer soft limit when no traffic (#8833)

Improvements:

    Hide AUTH passwords in MIGRATE command from slowlog (#8859)

Signed-off-by: Tony Tascioglu <tony.tascioglu@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-06-30 15:18:37 -07:00
Andreas Müller
50fddcc42b redis: upgrade 6.2.2 -> 6.2.3
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-05-22 05:54:00 -07:00
zangrc
4b04112fdd redis: upgrade 6.2.1 -> 6.2.2
Signed-off-by: Zang Ruochen <zangrc.fnst@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-04-23 08:56:25 -07:00
Yi Fan Yu
0c00676542 redis: upgrade 6.0.9 -> 6.2.1
Refresh 3 patches.

Removed Patch:
ilp32.patch fixed by upstream 0719388cfb1a79160204314beb1de1f9c29a3684

Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-04-13 08:09:17 -07:00
Khem Raj
9b4826fb52 redis: Update to 6.0.9
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-12-14 10:44:40 -08:00
Khem Raj
bc83d3f088 redis: Fix build on 32bit targets and clang
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-11-02 09:00:52 -08:00
Khem Raj
b5f20c99be redis: Fix build with clang on riscv32
clang defines __ILP32__ for rv32 but gcc does not as a result
backtracing gets enabled when using clang but not when using gcc so
clang build exposes a porting error. Therefore add code to return
correct mcontext on rv32

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-10-27 08:39:09 -07:00
Zang Ruochen
b6277f454b redis: upgrade 6.0.7 -> 6.0.8
Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-09-17 08:56:33 -07:00
Zang Ruochen
9a1c3d75b2 redis: upgrade 6.0.6 -> 6.0.7
Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-09-10 21:20:23 -07:00
Zang Ruochen
7f2472a994 redis: upgrade 6.0.5 -> 6.0.6
-License-Update: Copyright year updated to 2020.

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-08-07 00:07:07 -07:00
Zang Ruochen
a8a516e630 redis: upgrade 6.0.4 -> 6.0.5
Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-06-30 07:58:38 -07:00
Andreas Müller
6045c0dc8a redis: upgrade 5.0.9 -> 6.0.4
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-06-19 10:17:50 -07:00
Wang Mingyu
a29c0d794a redis: upgrade 5.0.8 -> 5.0.9
Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-04-25 08:32:41 -07:00
Zang Ruochen
81386fc82c redis: upgrade 5.0.7 -> 5.0.8
-Refresh the following patch:
	0001-src-Do-not-reset-FINAL_LIBS.patch

-0005-Mark-extern-definition-of-SDS_NOINIT-in-sds.h.patch
	Removed since this is included in 5.0.8

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2020-03-17 19:46:35 -07:00
Khem Raj
eacca37308 redis: Upgrade to 5.0.7
Remove an upstreamed patch
Add patches to build with new glibc/gcc
Drop atomic removal patch and link with libatomic when needed

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-12-23 15:03:15 -08:00
Christophe PRIOUZEAU
4d7689a133 redis: Clarify BSD license variant
The License of redis is BSD-3-Clause.

Signed-off-by: Christophe Priouzeau <christophe.priouzeau@st.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-10-25 10:29:51 -07:00
Khem Raj
2b49254d61 redis: Fix build with clang/x86
Need to link with libatomics for 64bit atomics support
Fixes
i686-yoe-linux/i686-yoe-linux-ld: networking.o: in function `createClient':
| /usr/src/debug/redis/4.0.14-r0/redis-4.0.14/src/networking.c:103: undefined reference to `__atomic_fetch_add_8'

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-09-10 21:54:22 -07:00
Martin Jansa
d3579d05db redis: backport a fix for stack trace generation on aarch64
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-08-12 09:11:01 -07:00
Khem Raj
4509bbd580 redis: Upgrade to 4.0.14
Add needed depends
Do not build jemalloc

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-04-14 23:26:42 -07:00
Khem Raj
5ec597d839 redis: Fix ocasional parallel build failure
Sometimes with high parallel build we see compile errors e.g.

clang-8: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [Makefile:52: lua] Error 1

Therefore try to build dependencies before main build

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-04-07 08:25:57 -07:00
Khem Raj
22ddd2cd31 redis: Update to 4.0.12
Exclude atomics on ppc as well

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-12-23 13:29:20 -08:00
Andrea Adami
48309c65be redis: fix build for qemuarm disabling atomics
Apply the same patch used for mips.

Fix
  |ld: networking.o: in function `createClient':
  | /usr/src/debug/redis/4.0.8-r0/redis-4.0.8/src/networking.c:93:
     undefined reference to `__atomic_fetch_add_8'

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-10-25 13:51:52 -07:00
Alistair Francis
4b9e0f546e redis: Update to 4.0.8
Update redis to the latest 4.0.8 release. This also involves updating
the redis.conf while maintaining some OE specific config options.

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-05-29 12:56:19 -07:00
Frank Meerkoetter
3d998f3745 redis: increase the max number of fds to actually match redis.conf
Now that the processes no longer runs as root, we need to increase
the limit for it.

This only affects systemd based systems.

Signed-off-by: Frank Meerkoetter <frank@meerkoetter.org>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-12-09 12:02:13 +01:00
Frank Meerkoetter
a1bdd5f40e redis: do not run as root
Running a network facing daemon written in C as root is not
a good idea. Introduce a redis system user/group for that.

A drawback is that now redis can no longer increase the
number of open fds to 10000 (MaxClients). If this is needed
the ulimit needs to be tweaked in the init script or systemd
unit file.

This only affects systemd based systems.

Signed-off-by: Frank Meerkoetter <frank@meerkoetter.org>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-12-09 12:02:13 +01:00
Frank Meerkoetter
9aace0c566 redis: log to syslog
Creating /var/log/redis.log requires root permissions to
create the file. Use syslog instead so redis does not
require root.

This affects both sysv and systemd based systems.

Signed-off-by: Frank Meerkoetter <frank@meerkoetter.org>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-12-09 12:02:13 +01:00
Frank Meerkoetter
3237c650e7 redis: do not expose the service to the network by default
Binding it to localhost is a safe default.
This affects both sysv and systemd based systems.

Signed-off-by: Frank Meerkoetter <frank@meerkoetter.org>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-12-09 12:02:13 +01:00
Frank Meerkoetter
142faee173 redis: add a systemd service file
The redis.conf is changed on the fly to not daemonize redis.
The reason for that is that with this appraoch we don't need
special permissions to write to /var/run/.

Signed-off-by: Frank Meerkoetter <frank@meerkoetter.org>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-12-09 12:02:12 +01:00
Stephen Arnold
af6af8621e redis: fix hiredis build so it's less failure-prone and links properly
This patch resets the default OPT flags to -O2 and adds the missing
ranlib command to index the static library.

Signed-off-by: Stephen Arnold <sarnold@vctlabs.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-06-15 12:13:14 +02:00
Andrea Galbusera
15b4eabbfb redis: stylize
* remove trailing whitespaces
* run through oe-stylize

Signed-off-by: Andrea Galbusera <gizero@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-09-23 15:37:18 +02:00
Andrea Galbusera
a74a34bd65 redis: add redis.conf to CONFFILES
Signed-off-by: Andrea Galbusera <gizero@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-09-23 15:37:18 +02:00
Andrea Galbusera
548c3eae30 redis: fix configuration file permissions
use 0644 instead of 0755 to install configuration file

Signed-off-by: Andrea Galbusera <gizero@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-09-23 15:37:18 +02:00
Armin Kuster
b11f35a94c redis: update to version 3.0.2
This includes CVE-2015-4335.
LICENSE checksum changed do to copyright update.

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-06-23 12:43:12 +02:00
Martin Jansa
a45830a39b recipes: Unify indentation
* This change is only aesthetic (unlike indentation in Python
  tasks).
* Some recipes were using tabs.
* Some were using 8 spaces.
* Some were using mix or different number of spaces.
* Make them consistently use 4 spaces everywhere.
* Yocto styleguide advises to use tabs (but the only reason to keep
  tabs is the need to update a lot of recipes). Lately this advice
  was also merged into the styleguide on the OE wiki.
* Using 4 spaces in both types of tasks is better because it's less
  error prone when someone is not sure if e.g.
  do_generate_toolchain_file() is Python or shell task and also allows
  to highlight every tab used in .bb, .inc, .bbappend, .bbclass as
  potentially bad (shouldn't be used for indenting of multiline
  variable assignments and cannot be used for Python tasks).
* Don't indent closing quote on multiline variables
  we're quite inconsistent wheater it's first character on line
  under opening quote or under first non-whitespace character in
  previous line.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Acked-by: Koen Kooi <koen@dominion.thruhere.net>
2013-04-15 16:23:17 +02:00
Kevin Baker
49851b1190 redis: add new recipe for redis-2.6.9
A recipe for Redis 2.6.9, an advanced key-value store.
Needed some patching of Makefiles and deps to get it to work with OE.

OE Specific configuration: This is built to override MALLOC and use
    libc's malloc instead of the provided jemalloc or tcmalloc that
    weren't building correctly.

    Also the default savepoint setting was updated in the default
    redis.conf to tune for a small embedded system.

Known Bug: redis-cli eats all the input on a serial port - watch out
    when using the serial console with redis-cli.
    see https://github.com/antirez/linenoise/issues/38

Tested with Yocto "Danny" / armv7a.

Signed-off-by: Kevin Baker <kevinb@ventureresearch.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2013-02-16 05:54:59 +01:00