From dfd1652a5c5fab058bb52308fb975314240e81af Mon Sep 17 00:00:00 2001 From: Pavel Boyko Date: Tue, 14 Jul 2009 16:05:23 +0400 Subject: [PATCH] AodvProtocol in progress, doesn't work --- src/internet-stack/ipv4-raw-socket-impl.cc | 1 + src/routing/aodv/aodv-routing-protocol.cc | 12 ++++++++++-- src/routing/aodv/aodv-rtable.cc | 5 +++-- src/routing/aodv/aodv-rtable.h | 7 ++++--- 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/src/internet-stack/ipv4-raw-socket-impl.cc b/src/internet-stack/ipv4-raw-socket-impl.cc index fe7a307b8..45302d6e8 100644 --- a/src/internet-stack/ipv4-raw-socket-impl.cc +++ b/src/internet-stack/ipv4-raw-socket-impl.cc @@ -247,6 +247,7 @@ Ipv4RawSocketImpl::ForwardUp (Ptr p, Ipv4Header ipHeader, PtrAddHeader (udpHeader); packet->AddHeader (ipv4Header); + udpHeader.Print (std::cout); + std::cout << "\n"; + socket->Send (packet); } // htimer.SetDelay(HELLO_INTERVAL); diff --git a/src/routing/aodv/aodv-rtable.cc b/src/routing/aodv/aodv-rtable.cc index 5a82f302d..0151a9d6d 100644 --- a/src/routing/aodv/aodv-rtable.cc +++ b/src/routing/aodv/aodv-rtable.cc @@ -54,12 +54,13 @@ aodv_rt_entry::aodv_rt_entry() } aodv_rt_entry::aodv_rt_entry(Ipv4Address dst, bool vSeqNo, u_int32_t seqNo, - u_int16_t hops,Ipv4Address nextHop, Time lifetime) + Ipv4Address iface, u_int16_t hops, Ipv4Address nextHop, Time lifetime) { rt_dst = dst; validSeqNo = vSeqNo; if (validSeqNo) rt_seqno = seqNo; rt_hops = hops; + interface = iface; rt_nexthop = nextHop; rt_lifetime = lifetime; } @@ -177,7 +178,7 @@ AodvRtableTest::RunTests () aodv_rt_entry entry1; Ipv4Address dst1("3.3.3.3"); Ipv4Address dst2("1.2.3.4"); - aodv_rt_entry entry2 = aodv_rt_entry(dst2, true, 34, 1, Ipv4Address("5.5.5.5"), Seconds(5)); + aodv_rt_entry entry2 = aodv_rt_entry(dst2, true, 34, Ipv4Address("2.3.4.5"), 1, Ipv4Address("5.5.5.5"), Seconds(5)); NS_TEST_ASSERT( !(entry1 == dst1) ); NS_TEST_ASSERT(entry2 == dst2); diff --git a/src/routing/aodv/aodv-rtable.h b/src/routing/aodv/aodv-rtable.h index f07c3ce27..cb25e4b97 100644 --- a/src/routing/aodv/aodv-rtable.h +++ b/src/routing/aodv/aodv-rtable.h @@ -28,7 +28,7 @@ #include #include #include "ns3/ipv4.h" -#include "ns3/nstime.h" +#include "ns3/ipv4-address.h" #include "ns3/nstime.h" namespace ns3 { @@ -47,8 +47,9 @@ class aodv_rt_entry { public: aodv_rt_entry(); - aodv_rt_entry(Ipv4Address dst, bool vSeqNo, u_int32_t seqNo, - u_int16_t hops,Ipv4Address nextHop, Time lifetime); + // TODO add all members to c-tor + aodv_rt_entry(Ipv4Address dst, bool vSeqNo, u_int32_t seqNo, Ipv4Address iface, + u_int16_t hops, Ipv4Address nextHop, Time lifetime); ~aodv_rt_entry(); ///\name Precursors management