Prevent clients from making too large multibulk requests

This commit is contained in:
Pieter Noordhuis
2010-10-15 19:15:38 +02:00
parent ea5b70924d
commit b19c33d48a
2 changed files with 11 additions and 0 deletions

View File

@ -724,6 +724,10 @@ int processMultibulkBuffer(redisClient *c) {
if (c->multibulklen <= 0) {
c->querybuf = sdsrange(c->querybuf,pos,-1);
return REDIS_OK;
} else if (c->multibulklen > 1024*1024) {
addReplyError(c,"Protocol error: invalid multibulk length");
setProtocolError(c,pos);
return REDIS_ERR;
}
/* Setup argv array on client structure */