Max depth of multi-bulk reply moved from 2 to 7.
Hiredis can handle multi bulk replies with a fixed (hardcoded) level of nesting. This should be changed in the future in order to avoid hardcoded limits. As a quick fix this commit moves the max nesting from 2 to 7, so that there are no problems when processing replies from the SLOWLOG command, from Redis Sentinel, or generated by Redis Lua Scripts (that are allowed to generate replies with any level of nesting).
This commit is contained in:
parent
7f095053c6
commit
51ab89d899
@ -446,10 +446,10 @@ static int processMultiBulkItem(redisReader *r) {
|
||||
long elements;
|
||||
int root = 0;
|
||||
|
||||
/* Set error for nested multi bulks with depth > 2 */
|
||||
if (r->ridx == 3) {
|
||||
/* Set error for nested multi bulks with depth > 7 */
|
||||
if (r->ridx == 8) {
|
||||
__redisReaderSetError(r,REDIS_ERR_PROTOCOL,
|
||||
"No support for nested multi bulk replies with depth > 2");
|
||||
"No support for nested multi bulk replies with depth > 7");
|
||||
return REDIS_ERR;
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user