]> git.saurik.com Git - redis.git/commitdiff
Merged Pietern patch for VM key args helper function. Fixed an obvious bug in the...
authorantirez <antirez@gmail.com>
Wed, 17 Mar 2010 16:14:07 +0000 (17:14 +0100)
committerantirez <antirez@gmail.com>
Wed, 17 Mar 2010 16:14:07 +0000 (17:14 +0100)
1  2 
redis-cli.c
redis.c

diff --cc redis-cli.c
index dbf6c9f96f77099796f3e3cd6019c78bdf03ac2c,03755efaca89a7af35d239c21bd539ad288496ae..5c1a2a1fb1273f56861a33fd959e27864c7206e1
@@@ -307,32 -304,6 +307,27 @@@ static int selectDb(int fd) 
      return 0;
  }
  
-     if (config.authpw != "")
-     {
 +static int cliLogin(int fd)
 +{
 +    int retval = 1;
 +    sds cmd;
 +    char type;
-         {
++    if (config.authpw[0] != '\0') {
 +        cmd = sdsempty();
 +        cmd = sdscatprintf(cmd,"AUTH %s\r\n",config.authpw);
 +        anetWrite(fd,cmd,sdslen(cmd));
 +        anetRead(fd,&type,1);
 +        if (type == '+') 
-         }
 +            retval = 0;
-         {
 +        int ret2 = cliReadSingleLineReply(fd,1);
 +        if (ret2)
-         }
 +            close(fd);
 +    } else {
 +        retval = 0;
 +    }
 +    return retval;
 +}
 +
  static int cliSendCommand(int argc, char **argv) {
      struct redisCommand *rc = lookupCommand(argv[0]);
      int fd, j, retval = 0;
diff --cc redis.c
index 8faa1edb4ac221e8306bdb78b52eb2b45295cfbf,5b9e73c3ddad6840e485b3ba40f8eb20b2409100..fe84898fe239671396e5b9c8e58b7a3b936ee62f
+++ b/redis.c
@@@ -696,102 -700,101 +701,102 @@@ static void hexistsCommand(redisClient 
  /* Global vars */
  static struct redisServer server; /* server global state */
  static struct redisCommand cmdTable[] = {
-     {"get",getCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"set",setCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,0,0,0},
-     {"setnx",setnxCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,0,0,0},
-     {"append",appendCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,1,1,1},
-     {"substr",substrCommand,4,REDIS_CMD_INLINE,1,1,1},
-     {"del",delCommand,-2,REDIS_CMD_INLINE,0,0,0},
-     {"exists",existsCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"incr",incrCommand,2,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,1,1,1},
-     {"decr",decrCommand,2,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,1,1,1},
-     {"mget",mgetCommand,-2,REDIS_CMD_INLINE,1,-1,1},
-     {"rpush",rpushCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,1,1,1},
-     {"lpush",lpushCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,1,1,1},
-     {"rpop",rpopCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"lpop",lpopCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"brpop",brpopCommand,-3,REDIS_CMD_INLINE,1,1,1},
-     {"blpop",blpopCommand,-3,REDIS_CMD_INLINE,1,1,1},
-     {"llen",llenCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"lindex",lindexCommand,3,REDIS_CMD_INLINE,1,1,1},
-     {"lset",lsetCommand,4,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,1,1,1},
-     {"lrange",lrangeCommand,4,REDIS_CMD_INLINE,1,1,1},
-     {"ltrim",ltrimCommand,4,REDIS_CMD_INLINE,1,1,1},
-     {"lrem",lremCommand,4,REDIS_CMD_BULK,1,1,1},
-     {"rpoplpush",rpoplpushcommand,3,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,1,2,1},
-     {"sadd",saddCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,1,1,1},
-     {"srem",sremCommand,3,REDIS_CMD_BULK,1,1,1},
-     {"smove",smoveCommand,4,REDIS_CMD_BULK,1,2,1},
-     {"sismember",sismemberCommand,3,REDIS_CMD_BULK,1,1,1},
-     {"scard",scardCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"spop",spopCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"srandmember",srandmemberCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"sinter",sinterCommand,-2,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,1,-1,1},
-     {"sinterstore",sinterstoreCommand,-3,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,2,-1,1},
-     {"sunion",sunionCommand,-2,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,1,-1,1},
-     {"sunionstore",sunionstoreCommand,-3,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,2,-1,1},
-     {"sdiff",sdiffCommand,-2,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,1,-1,1},
-     {"sdiffstore",sdiffstoreCommand,-3,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,2,-1,1},
-     {"smembers",sinterCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"zadd",zaddCommand,4,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,1,1,1},
-     {"zincrby",zincrbyCommand,4,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,1,1,1},
-     {"zrem",zremCommand,3,REDIS_CMD_BULK,1,1,1},
-     {"zremrangebyscore",zremrangebyscoreCommand,4,REDIS_CMD_INLINE,1,1,1},
-     {"zremrangebyrank",zremrangebyrankCommand,4,REDIS_CMD_INLINE,1,1,1},
-     {"zunion",zunionCommand,-4,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,0,0,0},
-     {"zinter",zinterCommand,-4,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,0,0,0},
-     {"zrange",zrangeCommand,-4,REDIS_CMD_INLINE,1,1,1},
-     {"zrangebyscore",zrangebyscoreCommand,-4,REDIS_CMD_INLINE,1,1,1},
-     {"zcount",zcountCommand,4,REDIS_CMD_INLINE,1,1,1},
-     {"zrevrange",zrevrangeCommand,-4,REDIS_CMD_INLINE,1,1,1},
-     {"zcard",zcardCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"zscore",zscoreCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,1,1,1},
-     {"zrank",zrankCommand,3,REDIS_CMD_BULK,1,1,1},
-     {"zrevrank",zrevrankCommand,3,REDIS_CMD_BULK,1,1,1},
-     {"hset",hsetCommand,4,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,1,1,1},
-     {"hget",hgetCommand,3,REDIS_CMD_BULK,1,1,1},
-     {"hdel",hdelCommand,3,REDIS_CMD_BULK,1,1,1},
-     {"hlen",hlenCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"hkeys",hkeysCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"hvals",hvalsCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"hgetall",hgetallCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"hexists",hexistsCommand,3,REDIS_CMD_BULK,1,1,1},
-     {"incrby",incrbyCommand,3,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,1,1,1},
-     {"decrby",decrbyCommand,3,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,1,1,1},
-     {"getset",getsetCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,1,1,1},
-     {"mset",msetCommand,-3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,1,-1,2},
-     {"msetnx",msetnxCommand,-3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,1,-1,2},
-     {"randomkey",randomkeyCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"select",selectCommand,2,REDIS_CMD_INLINE,0,0,0},
-     {"move",moveCommand,3,REDIS_CMD_INLINE,1,1,1},
-     {"rename",renameCommand,3,REDIS_CMD_INLINE,1,1,1},
-     {"renamenx",renamenxCommand,3,REDIS_CMD_INLINE,1,1,1},
-     {"expire",expireCommand,3,REDIS_CMD_INLINE,0,0,0},
-     {"expireat",expireatCommand,3,REDIS_CMD_INLINE,0,0,0},
-     {"keys",keysCommand,2,REDIS_CMD_INLINE,0,0,0},
-     {"dbsize",dbsizeCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"auth",authCommand,2,REDIS_CMD_INLINE,0,0,0},
-     {"ping",pingCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"echo",echoCommand,2,REDIS_CMD_BULK,0,0,0},
-     {"save",saveCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"bgsave",bgsaveCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"bgrewriteaof",bgrewriteaofCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"shutdown",shutdownCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"lastsave",lastsaveCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"type",typeCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"multi",multiCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"exec",execCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"discard",discardCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"sync",syncCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"flushdb",flushdbCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"flushall",flushallCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"sort",sortCommand,-2,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,1,1,1},
-     {"info",infoCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"monitor",monitorCommand,1,REDIS_CMD_INLINE,0,0,0},
-     {"ttl",ttlCommand,2,REDIS_CMD_INLINE,1,1,1},
-     {"slaveof",slaveofCommand,3,REDIS_CMD_INLINE,0,0,0},
-     {"debug",debugCommand,-2,REDIS_CMD_INLINE,0,0,0},
-     {NULL,NULL,0,0,0,0,0}
+     {"get",getCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"set",setCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,0,0,0},
+     {"setnx",setnxCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,0,0,0},
+     {"append",appendCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"substr",substrCommand,4,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"del",delCommand,-2,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"exists",existsCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"incr",incrCommand,2,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"decr",decrCommand,2,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"mget",mgetCommand,-2,REDIS_CMD_INLINE,NULL,1,-1,1},
+     {"rpush",rpushCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"lpush",lpushCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"rpop",rpopCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"lpop",lpopCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"brpop",brpopCommand,-3,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"blpop",blpopCommand,-3,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"llen",llenCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"lindex",lindexCommand,3,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"lset",lsetCommand,4,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"lrange",lrangeCommand,4,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"ltrim",ltrimCommand,4,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"lrem",lremCommand,4,REDIS_CMD_BULK,NULL,1,1,1},
+     {"rpoplpush",rpoplpushcommand,3,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,NULL,1,2,1},
+     {"sadd",saddCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"srem",sremCommand,3,REDIS_CMD_BULK,NULL,1,1,1},
+     {"smove",smoveCommand,4,REDIS_CMD_BULK,NULL,1,2,1},
+     {"sismember",sismemberCommand,3,REDIS_CMD_BULK,NULL,1,1,1},
+     {"scard",scardCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"spop",spopCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"srandmember",srandmemberCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"sinter",sinterCommand,-2,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,NULL,1,-1,1},
+     {"sinterstore",sinterstoreCommand,-3,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,NULL,2,-1,1},
+     {"sunion",sunionCommand,-2,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,NULL,1,-1,1},
+     {"sunionstore",sunionstoreCommand,-3,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,NULL,2,-1,1},
+     {"sdiff",sdiffCommand,-2,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,NULL,1,-1,1},
+     {"sdiffstore",sdiffstoreCommand,-3,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,NULL,2,-1,1},
+     {"smembers",sinterCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"zadd",zaddCommand,4,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"zincrby",zincrbyCommand,4,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"zrem",zremCommand,3,REDIS_CMD_BULK,NULL,1,1,1},
+     {"zremrangebyscore",zremrangebyscoreCommand,4,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"zremrangebyrank",zremrangebyrankCommand,4,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"zunion",zunionCommand,-4,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,zunionInterBlockClientOnSwappedKeys,0,0,0},
+     {"zinter",zinterCommand,-4,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,zunionInterBlockClientOnSwappedKeys,0,0,0},
+     {"zrange",zrangeCommand,-4,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"zrangebyscore",zrangebyscoreCommand,-4,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"zcount",zcountCommand,4,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"zrevrange",zrevrangeCommand,-4,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"zcard",zcardCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"zscore",zscoreCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"zrank",zrankCommand,3,REDIS_CMD_BULK,NULL,1,1,1},
+     {"zrevrank",zrevrankCommand,3,REDIS_CMD_BULK,NULL,1,1,1},
+     {"hset",hsetCommand,4,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"hget",hgetCommand,3,REDIS_CMD_BULK,NULL,1,1,1},
+     {"hdel",hdelCommand,3,REDIS_CMD_BULK,NULL,1,1,1},
+     {"hlen",hlenCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"hkeys",hkeysCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"hvals",hvalsCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"hgetall",hgetallCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
++    {"hexists",hexistsCommand,3,REDIS_CMD_BULK,NULL,1,1,1},
+     {"incrby",incrbyCommand,3,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"decrby",decrbyCommand,3,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"getset",getsetCommand,3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"mset",msetCommand,-3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,1,-1,2},
+     {"msetnx",msetnxCommand,-3,REDIS_CMD_BULK|REDIS_CMD_DENYOOM,NULL,1,-1,2},
+     {"randomkey",randomkeyCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"select",selectCommand,2,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"move",moveCommand,3,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"rename",renameCommand,3,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"renamenx",renamenxCommand,3,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"expire",expireCommand,3,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"expireat",expireatCommand,3,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"keys",keysCommand,2,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"dbsize",dbsizeCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"auth",authCommand,2,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"ping",pingCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"echo",echoCommand,2,REDIS_CMD_BULK,NULL,0,0,0},
+     {"save",saveCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"bgsave",bgsaveCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"bgrewriteaof",bgrewriteaofCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"shutdown",shutdownCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"lastsave",lastsaveCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"type",typeCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"multi",multiCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"exec",execCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"discard",discardCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"sync",syncCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"flushdb",flushdbCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"flushall",flushallCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"sort",sortCommand,-2,REDIS_CMD_INLINE|REDIS_CMD_DENYOOM,NULL,1,1,1},
+     {"info",infoCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"monitor",monitorCommand,1,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"ttl",ttlCommand,2,REDIS_CMD_INLINE,NULL,1,1,1},
+     {"slaveof",slaveofCommand,3,REDIS_CMD_INLINE,NULL,0,0,0},
+     {"debug",debugCommand,-2,REDIS_CMD_INLINE,NULL,0,0,0},
+     {NULL,NULL,0,0,NULL,0,0,0}
  };
  
  /*============================ Utility functions ============================ */