]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/OSD.cc: fix possible NULL pointer deref in share_map()
authorDanny Al-Gaaf <danny.al-gaaf@bisect.de>
Sat, 10 May 2014 19:37:07 +0000 (21:37 +0200)
committerDanny Al-Gaaf <danny.al-gaaf@bisect.de>
Sat, 10 May 2014 19:37:07 +0000 (21:37 +0200)
Fix for:

4778 *sent_epoch_p = osdmap->get_epoch();
     12 Dereference of null pointer (loaded from variable 'sent_epoch_p')

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
src/osd/OSD.cc

index 51f2507abddfe14b6e4ab962891866614638b42a..ead6ab15756b19eb34bdf2c53d744bf1edfa9a73 100644 (file)
@@ -4775,7 +4775,9 @@ void OSDService::share_map(
       dout(10) << name << " has old map " << epoch
           << " < " << osdmap->get_epoch() << dendl;
       // we know the Session is valid or we wouldn't be sending
-      *sent_epoch_p = osdmap->get_epoch();
+      if (sent_epoch_p) {
+       *sent_epoch_p = osdmap->get_epoch();
+      }
       send_incremental_map(epoch, con, osdmap);
     } else if (con->get_messenger() == osd->cluster_messenger &&
         osdmap->is_up(name.num()) &&