summaryrefslogtreecommitdiffstats
path: root/usr.sbin/ospf6d/neighbor.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/ospf6d/neighbor.c')
-rw-r--r--usr.sbin/ospf6d/neighbor.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/usr.sbin/ospf6d/neighbor.c b/usr.sbin/ospf6d/neighbor.c
index 3ab2126052f..b4d0cfa7da9 100644
--- a/usr.sbin/ospf6d/neighbor.c
+++ b/usr.sbin/ospf6d/neighbor.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: neighbor.c,v 1.10 2009/02/19 22:02:59 stsp Exp $ */
+/* $OpenBSD: neighbor.c,v 1.11 2009/03/29 16:24:38 stsp Exp $ */
/*
* Copyright (c) 2005 Claudio Jeker <claudio@openbsd.org>
@@ -269,7 +269,8 @@ nbr_init(u_int32_t hashsize)
}
struct nbr *
-nbr_new(u_int32_t nbr_id, struct iface *iface, u_int32_t iface_id, int self)
+nbr_new(u_int32_t nbr_id, struct iface *iface, u_int32_t iface_id, int self,
+ struct in6_addr *addr)
{
struct nbr_head *head;
struct nbr *nbr;
@@ -315,6 +316,8 @@ nbr_new(u_int32_t nbr_id, struct iface *iface, u_int32_t iface_id, int self)
evtimer_set(&nbr->adj_timer, nbr_adj_timer, nbr);
bzero(&rn, sizeof(rn));
+ if (addr)
+ rn.addr = *addr;
rn.id.s_addr = nbr->id.s_addr;
rn.area_id.s_addr = nbr->iface->area_id.s_addr;
rn.ifindex = nbr->iface->ifindex;