Bugzilla – Bug 646
InternetStackHelper not compatible with multile Experiments
Last modified: 2009-07-28 01:47:42 UTC
To reproduce: run wifi-clear-channel-cmu on ns-3-dev. This constructor: InternetStackHelper::InternetStackHelper () { SetTcp ("ns3::TcpL4Protocol"); static Ipv4StaticRoutingHelper staticRouting; static Ipv4GlobalRoutingHelper globalRouting; static Ipv4ListRoutingHelper listRouting; listRouting.Add (staticRouting, 0); listRouting.Add (globalRouting, -10); SetRoutingHelper (listRouting); } is not compatible with programs that instantiate multiple InternetStackHelper objects. Either some other way to manage the memory of these helper objects is needed, or some logic needs to be added to prevent the listRouting object from redundandly adding these other routing helpers. The code probably should also assert (to catch programming errors) if two items are added at the same integer priority; presently it just pushes back to a std::list.
*** This bug has been marked as a duplicate of bug 642 ***