From 47562ea031e98ad19d47fee48307ecae40e71d15 Mon Sep 17 00:00:00 2001 From: Tom Henderson Date: Wed, 24 Jun 2009 21:53:55 -0700 Subject: [PATCH] do not assert if remote side of a PointToPoint link doesn't participate in global routing --- src/routing/global-routing/global-router-interface.cc | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/routing/global-routing/global-router-interface.cc b/src/routing/global-routing/global-router-interface.cc index 9c1832ade..60ed2dfd4 100644 --- a/src/routing/global-routing/global-router-interface.cc +++ b/src/routing/global-routing/global-router-interface.cc @@ -628,7 +628,7 @@ GlobalRouter::DiscoverLSAs (void) // the segment. We add the appropriate link record to the LSA. // // If the device is a point to point link, we treat it separately. In - // that case, there may be one or two link records added. + // that case, there may be zero, one, or two link records added. // if (ndLocal->IsBroadcast () && !ndLocal->IsPointToPoint () ) { @@ -1009,9 +1009,11 @@ GlobalRouter::ProcessPointToPointLink (Ptr ndLocal, GlobalRoutingLSA // interface aggregated. // Ptr rtrRemote = nodeRemote->GetObject (); - NS_ABORT_MSG_UNLESS(rtrRemote, - "GlobalRouter::ProcessPointToPointLinks(): GetObject for remote failed"); - + if (rtrRemote == 0) + { + // This case is possible if the remote does not participate in global routing + return; + } // // We're going to need the remote router ID, so we might as well get it now. //