Hi,
In the aodv-helper class, I have introduced an object aodv6helper, which is a helper to install aodv ipv6 routing on nodes. When assigning the routing protocol to the nodes, during simulation, a pointer to the nodes has to be created and this has to be aggregated with the designed routing protocol i.e During simulation I have to make use of the "SetRoutingHelper", where i disable ipv4, inturn enabling only ipv6 and install this on the nodecontainer. But when i do this, the aodv-helper is not able to aggregate the pointer to routing protocol and the node pointer. To be more specific, please see this piece of code
Ptr<Ipv6RoutingProtocol>
Aodv6Helper::Create (Ptr<Node> node) const
{
Ptr<aodv::RoutingProtocol6> agent = m_agentFactory.Create<aodv::RoutingProtocol6> ();
node->AggregateObject (agent);
return agent;
}
Where RoutingProtocol6 is the Ipv6 aodv routing protocol.
When i run the simulation i get a segmentation fault. I used gdb to debug it and it points to " node->AggregateObject (agent);" which inturn points to NS_ASSERT (!o->m_disposed); of the function AggregateObject.
In my understanding, its not able to aggregate the two objects of node and agent because the object agent is not disposed (Please correct me if i am wrong). I am not able to find a solution to this issue, any suggestions could be of great help.
Thanks in advance
Regards
Shashidhar B.L