From 372727789d22f35c0f54458701e76ec6e1c556f7 Mon Sep 17 00:00:00 2001 From: Danny Al-Gaaf Date: Tue, 21 Feb 2017 14:31:53 +0100 Subject: [PATCH] AsyncMessenger.cc: fix FORWARD_NULL Use assert to ensure Message *m is not NULL. Fix for: CID 1399578 (#4 of 4): Dereference after null check (FORWARD_NULL) var_deref_model: Passing null pointer m to submit_message, which dereferences it. Signed-off-by: Danny Al-Gaaf --- src/msg/async/AsyncMessenger.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/msg/async/AsyncMessenger.cc b/src/msg/async/AsyncMessenger.cc index f7fc213fe30..b6345523747 100644 --- a/src/msg/async/AsyncMessenger.cc +++ b/src/msg/async/AsyncMessenger.cc @@ -533,9 +533,11 @@ ConnectionRef AsyncMessenger::get_loopback_connection() int AsyncMessenger::_send_message(Message *m, const entity_inst_t& dest) { FUNCTRACE(); - if (m && m->get_type() == CEPH_MSG_OSD_OP) + assert(m); + + if (m->get_type() == CEPH_MSG_OSD_OP) OID_EVENT_TRACE(((MOSDOp *)m)->get_oid().name.c_str(), "SEND_MSG_OSD_OP"); - else if (m && m->get_type() == CEPH_MSG_OSD_OPREPLY) + else if (m->get_type() == CEPH_MSG_OSD_OPREPLY) OID_EVENT_TRACE(((MOSDOpReply *)m)->get_oid().name.c_str(), "SEND_MSG_OSD_OP_REPLY"); ldout(cct, 1) << __func__ << "--> " << dest.name << " " -- 2.39.5