HELLO without protover
Signed-off-by: xhe <xw897002528@gmail.com>
This commit is contained in:
parent
b3dc23c5a8
commit
2e8f8c9b0c
@ -2758,18 +2758,17 @@ NULL
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* HELLO <protocol-version> [AUTH <user> <password>] [SETNAME <name>] */
|
/* HELLO [protocol-version] [AUTH <user> <password>] [SETNAME <name>] */
|
||||||
void helloCommand(client *c) {
|
void helloCommand(client *c) {
|
||||||
long long ver;
|
long long ver = 0;
|
||||||
|
|
||||||
if (getLongLongFromObject(c->argv[1],&ver) != C_OK ||
|
if (c->argc >= 2 && getLongLongFromObject(c->argv[1],&ver) == C_OK &&
|
||||||
(ver != 0 && ver < 2) || ver > 3)
|
(ver < 2 || ver > 3)) {
|
||||||
{
|
|
||||||
addReplyError(c,"-NOPROTO unsupported protocol version");
|
addReplyError(c,"-NOPROTO unsupported protocol version");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int j = 2; j < c->argc; j++) {
|
for (int j = ver == 0 ? 1 : 2; j < c->argc; j++) {
|
||||||
int moreargs = (c->argc-1) - j;
|
int moreargs = (c->argc-1) - j;
|
||||||
const char *opt = c->argv[j]->ptr;
|
const char *opt = c->argv[j]->ptr;
|
||||||
if (!strcasecmp(opt,"AUTH") && moreargs >= 2) {
|
if (!strcasecmp(opt,"AUTH") && moreargs >= 2) {
|
||||||
|
@ -469,7 +469,7 @@ struct redisCommand sentinelcmds[] = {
|
|||||||
{"client",clientCommand,-2,"admin random @connection",0,NULL,0,0,0,0,0},
|
{"client",clientCommand,-2,"admin random @connection",0,NULL,0,0,0,0,0},
|
||||||
{"shutdown",shutdownCommand,-1,"admin",0,NULL,0,0,0,0,0},
|
{"shutdown",shutdownCommand,-1,"admin",0,NULL,0,0,0,0,0},
|
||||||
{"auth",authCommand,-2,"no-auth fast @connection",0,NULL,0,0,0,0,0},
|
{"auth",authCommand,-2,"no-auth fast @connection",0,NULL,0,0,0,0,0},
|
||||||
{"hello",helloCommand,-2,"no-auth fast @connection",0,NULL,0,0,0,0,0},
|
{"hello",helloCommand,-1,"no-auth fast @connection",0,NULL,0,0,0,0,0},
|
||||||
{"acl",aclCommand,-2,"admin",0,NULL,0,0,0,0,0,0},
|
{"acl",aclCommand,-2,"admin",0,NULL,0,0,0,0,0,0},
|
||||||
{"command",commandCommand,-1, "random @connection", 0,NULL,0,0,0,0,0,0}
|
{"command",commandCommand,-1, "random @connection", 0,NULL,0,0,0,0,0,0}
|
||||||
};
|
};
|
||||||
|
@ -869,7 +869,7 @@ struct redisCommand redisCommandTable[] = {
|
|||||||
"admin no-script random ok-loading ok-stale @connection",
|
"admin no-script random ok-loading ok-stale @connection",
|
||||||
0,NULL,0,0,0,0,0,0},
|
0,NULL,0,0,0,0,0,0},
|
||||||
|
|
||||||
{"hello",helloCommand,-2,
|
{"hello",helloCommand,-1,
|
||||||
"no-auth no-script fast no-monitor ok-loading ok-stale no-slowlog @connection",
|
"no-auth no-script fast no-monitor ok-loading ok-stale no-slowlog @connection",
|
||||||
0,NULL,0,0,0,0,0,0},
|
0,NULL,0,0,0,0,0,0},
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user