diff mbox

osm_ucast_cache.c : Fix dereference null return value

Message ID 51B76B5C.3070108@dev.mellanox.co.il (mailing list archive)
State Accepted
Delegated to: Hal Rosenstock
Headers show

Commit Message

Hal Rosenstock June 11, 2013, 6:24 p.m. UTC
From c5ef3da14a22721a09edc5a0d70ca1715b310c6f Mon Sep 17 00:00:00 2001
From: Dan Ben Yosef <danby@dev.mellanox.co.il>
Date: Tue, 4 Dec 2012 16:44:06 +0200
Subject: [PATCH] osm_ucast_cache.c : Fix dereference null return value

Dereferencing a null pointer "p_remote_port".

Signed-off-by: Dan Ben Yosef <danby@dev.mellanox.co.il>
---
 opensm/osm_ucast_cache.c |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)
diff mbox

Patch

diff --git a/opensm/osm_ucast_cache.c b/opensm/osm_ucast_cache.c
index 952622f..78e40f3 100644
--- a/opensm/osm_ucast_cache.c
+++ b/opensm/osm_ucast_cache.c
@@ -559,6 +559,17 @@  static void ucast_cache_validate(osm_ucast_mgr_t * p_mgr)
 					    osm_get_port_by_guid(p_mgr->p_subn,
 								 osm_physp_get_port_guid
 								 (p_remote_physp));
+					if (!p_remote_port) {
+						OSM_LOG(p_mgr->p_log,
+							OSM_LOG_ERROR,
+							"ERR AD04: No port was found for "
+							"port GUID 0x%" PRIx64 "\n",
+							cl_ntoh64(osm_physp_get_port_guid
+								      (p_remote_physp)));
+						osm_ucast_cache_invalidate
+						    (p_mgr);
+						goto Exit;
+					}
 					if (p_remote_port->is_new) {
 						OSM_LOG(p_mgr->p_log,
 							OSM_LOG_DEBUG,