Replicas aren't allowed to run the replicaof command

This commit is contained in:
John Sully 2019-03-09 11:03:59 -05:00 committed by antirez
parent 825843db9e
commit 39ccce033a

View File

@ -2023,6 +2023,14 @@ void slaveofCommand(client *c) {
} else { } else {
long port; long port;
if (c->flags & CLIENT_SLAVE)
{
/* If a client is already a replica they cannot run this command,
* because it involves flushing all replicas (including this client) */
addReplyError(c, "Command is not valid when client is a replica.");
return;
}
if ((getLongFromObjectOrReply(c, c->argv[2], &port, NULL) != C_OK)) if ((getLongFromObjectOrReply(c, c->argv[2], &port, NULL) != C_OK))
return; return;