]> git.saurik.com Git - redis.git/commitdiff
Prettify source code of create/verify DUMP payload.
authorantirez <antirez@gmail.com>
Mon, 2 Apr 2012 08:52:39 +0000 (10:52 +0200)
committerantirez <antirez@gmail.com>
Mon, 2 Apr 2012 08:52:39 +0000 (10:52 +0200)
src/cluster.c

index d0de9596a415dc6705cc6539aa5f853b4d0cce32..a0dd6519e3ef8958a1e22de3bbdddb9bc7b748c7 100644 (file)
@@ -1479,10 +1479,13 @@ void createDumpPayload(rio *payload, robj *o) {
      * ----------------+---------------------+--------------+
      * The SHA1 is just 8 bytes of truncated SHA1 of everything excluding itself.
      * The 2 bytes RDB version is a little endian unsigned integer.  */
+
+    /* RDB version */
     buf[0] = REDIS_RDB_VERSION & 0xff;
     buf[1] = (REDIS_RDB_VERSION >> 8) & 0xff;
     payload->io.buffer.ptr = sdscatlen(payload->io.buffer.ptr,buf,2);
 
+    /* Truncated SHA1 */
     SHA1Init(&ctx);
     SHA1Update(&ctx,(unsigned char*)payload->io.buffer.ptr,
                     sdslen(payload->io.buffer.ptr));
@@ -1499,10 +1502,15 @@ int verifyDumpPayload(unsigned char *p, size_t len) {
     SHA1_CTX ctx;
     uint16_t rdbver;
 
+    /* At least 2 bytes of RDB version and 8 of truncated SHA should be present. */
     if (len < 10) return REDIS_ERR;
     footer = p+(len-10);
+
+    /* Verify RDB version */
     rdbver = (footer[1] << 8) | footer[0];
     if (rdbver != REDIS_RDB_VERSION) return REDIS_ERR;
+
+    /* Verify truncated SHA1 */
     SHA1Init(&ctx);
     SHA1Update(&ctx,p,len-8);
     SHA1Final(hash,&ctx);