Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Step:15-SP4
redis.28794
redis-CVE-2023-22458.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File redis-CVE-2023-22458.patch of Package redis.28794
Index: redis-6.2.6/src/t_hash.c =================================================================== --- redis-6.2.6.orig/src/t_hash.c +++ redis-6.2.6/src/t_hash.c @@ -1192,8 +1192,13 @@ void hrandfieldCommand(client *c) { if (c->argc > 4 || (c->argc == 4 && strcasecmp(c->argv[3]->ptr,"withvalues"))) { addReplyErrorObject(c,shared.syntaxerr); return; - } else if (c->argc == 4) + } else if (c->argc == 4) { withvalues = 1; + if (l < LONG_MIN/2 || l > LONG_MAX/2) { + addReplyError(c,"value is out of range"); + return; + } + } hrandfieldWithCountCommand(c, l, withvalues); return; } Index: redis-6.2.6/src/t_zset.c =================================================================== --- redis-6.2.6.orig/src/t_zset.c +++ redis-6.2.6/src/t_zset.c @@ -4216,8 +4216,13 @@ void zrandmemberCommand(client *c) { if (c->argc > 4 || (c->argc == 4 && strcasecmp(c->argv[3]->ptr,"withscores"))) { addReplyErrorObject(c,shared.syntaxerr); return; - } else if (c->argc == 4) + } else if (c->argc == 4) { withscores = 1; + if (l < LONG_MIN/2 || l > LONG_MAX/2) { + addReplyError(c,"value is out of range"); + return; + } + } zrandmemberWithCountCommand(c, l, withscores); return; } Index: redis-6.2.6/tests/unit/type/hash.tcl =================================================================== --- redis-6.2.6.orig/tests/unit/type/hash.tcl +++ redis-6.2.6/tests/unit/type/hash.tcl @@ -68,6 +68,11 @@ start_server {tags {"hash"}} { r hrandfield myhash 0 } {} + test "HRANDFIELD count overflow" { + r hmset myhash a 1 + assert_error {*value is out of range*} {r hrandfield myhash -9223372036854770000 withvalues} + } {} + test "HRANDFIELD with <count> against non existing key" { r hrandfield nonexisting_key 100 } {} Index: redis-6.2.6/tests/unit/type/zset.tcl =================================================================== --- redis-6.2.6.orig/tests/unit/type/zset.tcl +++ redis-6.2.6/tests/unit/type/zset.tcl @@ -1714,6 +1714,11 @@ start_server {tags {"zset"}} { r zrandmember nonexisting_key 100 } {} + test "ZRANDMEMBER count overflow" { + r zadd myzset 0 a + assert_error {*value is out of range*} {r zrandmember myzset -9223372036854770000 withscores} + } {} + # Make sure we can distinguish between an empty array and a null response r readraw 1
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor