diff mbox

opensm/osm_trap_rcv.c: fix possible core dump

Message ID 4C8651CF.2080807@mellanox.co.il (mailing list archive)
State Not Applicable, archived
Headers show

Commit Message

Yevgeny Kliteynik Sept. 7, 2010, 2:53 p.m. UTC
None
diff mbox

Patch

diff --git a/opensm/opensm/osm_trap_rcv.c b/opensm/opensm/osm_trap_rcv.c
index 500632c..9f39644 100644
--- a/opensm/opensm/osm_trap_rcv.c
+++ b/opensm/opensm/osm_trap_rcv.c
@@ -510,10 +510,16 @@  static void trap_rcv_process_request(IN osm_sm_t * sm,
 				"ERR 3812: No physical port found for "
 				"trap 144: \"node description update\"\n");
 		goto check_sweep;
-	} else if (cl_ntoh16(p_ntci->g_or_v.generic.trap_num) == 145)
-		/* this assumes that trap 145 content is not broken? */
-		p_physp->p_node->node_info.sys_guid =
-			p_ntci->data_details.ntc_145.new_sys_guid;
+	} else if (cl_ntoh16(p_ntci->g_or_v.generic.trap_num) == 145) {
+		if (p_physp)
+			/* this assumes that trap 145 content is not broken? */
+			p_physp->p_node->node_info.sys_guid =
+				p_ntci->data_details.ntc_145.new_sys_guid;
+		else
+			OSM_LOG(sm->p_log, OSM_LOG_ERROR,
+				"ERR 3813: No physical port found for "
+				"trap 145: \"SystemImageGUID update\"\n");
+	}

 check_sweep:
 	/* do a sweep if we received a trap */