|
|
| 97 |
void Ipv6StaticRouting::AddHostRouteTo (Ipv6Address dst, Ipv6Address nextHop, uint32_t interface, Ipv6Address prefixToUse, uint32_t metric) |
97 |
void Ipv6StaticRouting::AddHostRouteTo (Ipv6Address dst, Ipv6Address nextHop, uint32_t interface, Ipv6Address prefixToUse, uint32_t metric) |
| 98 |
{ |
98 |
{ |
| 99 |
NS_LOG_FUNCTION (this << dst << nextHop << interface << prefixToUse << metric); |
99 |
NS_LOG_FUNCTION (this << dst << nextHop << interface << prefixToUse << metric); |
|
|
100 |
NS_ASSERT_MSG(nextHop.IsLinkLocal(), "Ipv6StaticRouting::AddHostRouteTo - Next hop must be link-local"); |
| 101 |
|
| 100 |
AddNetworkRouteTo (dst, Ipv6Prefix::GetOnes (), nextHop, interface, prefixToUse, metric); |
102 |
AddNetworkRouteTo (dst, Ipv6Prefix::GetOnes (), nextHop, interface, prefixToUse, metric); |
| 101 |
} |
103 |
} |
| 102 |
|
104 |
|
|
|
| 555 |
if (mrtentry) |
557 |
if (mrtentry) |
| 556 |
{ |
558 |
{ |
| 557 |
NS_LOG_LOGIC ("Multicast route found"); |
559 |
NS_LOG_LOGIC ("Multicast route found"); |
| 558 |
mcb (mrtentry, p, header); // multicast forwarding callback |
560 |
mcb (idev, mrtentry, p, header); // multicast forwarding callback |
| 559 |
return true; |
561 |
return true; |
| 560 |
} |
562 |
} |
| 561 |
else |
563 |
else |
|
|
| 607 |
if (rtentry != 0) |
609 |
if (rtentry != 0) |
| 608 |
{ |
610 |
{ |
| 609 |
NS_LOG_LOGIC ("Found unicast destination- calling unicast callback"); |
611 |
NS_LOG_LOGIC ("Found unicast destination- calling unicast callback"); |
| 610 |
ucb (rtentry, p, header); // unicast forwarding callback |
612 |
ucb (idev, rtentry, p, header); // unicast forwarding callback |
| 611 |
return true; |
613 |
return true; |
| 612 |
} |
614 |
} |
| 613 |
else |
615 |
else |