summaryrefslogtreecommitdiffstats
path: root/ospfd/ospf_route.c
diff options
context:
space:
mode:
authorDavid Lamparter <equinox@diac24.net>2010-02-04 02:24:09 +0100
committerDavid Lamparter <equinox@diac24.net>2010-02-04 02:24:09 +0100
commit77f990188b526ea9ad3521980aee1d6faca8bb57 (patch)
treec4cce46d78f9c5d7ba7060a66682222966a656f2 /ospfd/ospf_route.c
parent8f8f4dec2e41b217a0651a2f33112447ae04f73b (diff)
parent472870f49a5c1eb18bfd30f1b06c1bff08ecd233 (diff)
downloadquagga-77f990188b526ea9ad3521980aee1d6faca8bb57.tar.bz2
quagga-77f990188b526ea9ad3521980aee1d6faca8bb57.tar.xz
Merge branch 'patches/jt_unnumbered' into ospf-merge-3
Conflicts: ospfd/ospfd.c
Diffstat (limited to 'ospfd/ospf_route.c')
-rw-r--r--ospfd/ospf_route.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/ospfd/ospf_route.c b/ospfd/ospf_route.c
index 267237b8..2a81e97a 100644
--- a/ospfd/ospf_route.c
+++ b/ospfd/ospf_route.c
@@ -810,12 +810,18 @@ ospf_route_copy_nexthops_from_vertex (struct ospf_route *to,
{
nexthop = vp->nexthop;
- if (nexthop->oi != NULL)
+ if (nexthop->oi != NULL)
{
- if (! ospf_path_exist (to->paths, nexthop->router, nexthop->oi))
+ if (!ospf_path_exist (to->paths, nexthop->router, nexthop->oi))
{
path = ospf_path_new ();
- path->nexthop = nexthop->router;
+
+ /* PtoP I/F's are always directly connected */
+ if (if_is_pointopoint (nexthop->oi->ifp))
+ path->nexthop.s_addr = INADDR_ANY;
+ else
+ path->nexthop = nexthop->router;
+
path->ifindex = nexthop->oi->ifp->ifindex;
listnode_add (to->paths, path);
}