]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
os/kstore: fix u64 decode checks
authorSage Weil <sage@redhat.com>
Mon, 18 Jan 2016 14:55:17 +0000 (09:55 -0500)
committerSage Weil <sage@redhat.com>
Mon, 18 Jan 2016 14:55:17 +0000 (09:55 -0500)
Signed-off-by: Sage Weil <sage@redhat.com>
src/os/kstore/KStore.cc

index b4b59cc1b058b50d8c464669d9e456d737926d13..c9fbf4a5204c530f4aa0ff21e96440959b88081b 100644 (file)
@@ -302,19 +302,13 @@ static int get_key_object(const string& key, ghobject_t *oid)
   const char *p = key.c_str();
 
   p = _key_decode_shard(p, &oid->shard_id);
-  if (!*p)
-    return -2;
 
   uint64_t pool;
   p = _key_decode_u64(p, &pool);
-  if (!*p)
-    return -3;
   oid->hobj.pool = pool - 0x8000000000000000ull;
 
   unsigned hash;
   p = _key_decode_u32(p, &hash);
-  if (!*p)
-    return -4;
   oid->hobj.set_bitwise_key_u32(hash);
   if (*p != '.')
     return -5;
@@ -351,8 +345,6 @@ static int get_key_object(const string& key, ghobject_t *oid)
   }
 
   p = _key_decode_u64(p, &oid->hobj.snap.val);
-  if (!*p)
-    return -11;
   p = _key_decode_u64(p, &oid->generation);
   if (*p) {
     // if we get something other than a null terminator here,