diff options
author | Markus Friedl <markus@cvs.openbsd.org> | 2013-03-25 14:23:48 +0000 |
---|---|---|
committer | Markus Friedl <markus@cvs.openbsd.org> | 2013-03-25 14:23:48 +0000 |
commit | 8e1b522d8b1dd6e74a80f8d45da5f44ecf09ee77 (patch) | |
tree | 79088ab75eb41815c9d5f4ab06f1096164470dfc /usr.sbin | |
parent | 94d9d001522227e7dec8280d35bca21e4f31f755 (diff) |
sync w/ ospfd:
for point-to-point interfaces we need to send lsupdates to the
interface address, since there is no DR and multicast messages to
the DR will be ignored. ok claudio@, then@
Diffstat (limited to 'usr.sbin')
-rw-r--r-- | usr.sbin/ospf6d/lsupdate.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/usr.sbin/ospf6d/lsupdate.c b/usr.sbin/ospf6d/lsupdate.c index dfc5d5213ed..df03723163a 100644 --- a/usr.sbin/ospf6d/lsupdate.c +++ b/usr.sbin/ospf6d/lsupdate.c @@ -1,4 +1,4 @@ -/* $OpenBSD: lsupdate.c,v 1.8 2010/06/08 16:04:25 bluhm Exp $ */ +/* $OpenBSD: lsupdate.c,v 1.9 2013/03/25 14:23:47 markus Exp $ */ /* * Copyright (c) 2005 Claudio Jeker <claudio@openbsd.org> @@ -465,7 +465,9 @@ ls_retrans_timer(int fd, short event, void *bula) ls_retrans_list_free(nbr, le); /* ls_retrans_list_free retriggers the timer */ return; - } else + } else if (nbr->iface->type == IF_TYPE_POINTOPOINT) + memcpy(&addr, &nbr->iface->dst, sizeof(addr)); + else inet_pton(AF_INET6, AllDRouters, &addr); } else memcpy(&addr, &nbr->addr, sizeof(addr)); |