]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
Objecter: potential null pointer access when do pool_snap_list.
authorxiexingguo <258156334@qq.com>
Thu, 29 Oct 2015 09:32:50 +0000 (17:32 +0800)
committerNathan Cutler <ncutler@suse.com>
Mon, 7 Dec 2015 23:01:57 +0000 (00:01 +0100)
Objecter: potential null pointer access when do pool_snap_list. Shall check pool existence first.
Fixes: #13639
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
(cherry picked from commit 865541605b6c32f03e188ec33d079b44be42fa4a)

src/osdc/Objecter.cc

index 60efe3ae469d5eafcdb024b7b822c34bf3e72ed1..9a65f2e6007fde62df6d5e37a863a7f12a811ce4 100644 (file)
@@ -1312,6 +1312,8 @@ int Objecter::pool_snap_list(int64_t poolid, vector<uint64_t> *snaps)
   RWLock::RLocker rl(rwlock);
 
   const pg_pool_t *pi = osdmap->get_pg_pool(poolid);
+  if (!pi)
+    return -ENOENT;
   for (map<snapid_t,pool_snap_info_t>::const_iterator p = pi->snaps.begin();
        p != pi->snaps.end();
        ++p) {