summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClaudio Jeker <claudio@cvs.openbsd.org>2006-05-30 22:12:53 +0000
committerClaudio Jeker <claudio@cvs.openbsd.org>2006-05-30 22:12:53 +0000
commit5647671dce5093e252e86d9b75d4386609e9c6b3 (patch)
tree5799a2d0875880143f7ac4fd6c5231f4fab90b57
parent5bc3fb6c03f4b58eeb1e8d3415ba237c038012ef (diff)
Uups, this file should be commited with the redistribute rtlabel stuff.
-rw-r--r--usr.sbin/ospfd/ospfe.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/usr.sbin/ospfd/ospfe.c b/usr.sbin/ospfd/ospfe.c
index 148b3837d67..06ab5ee5b0c 100644
--- a/usr.sbin/ospfd/ospfe.c
+++ b/usr.sbin/ospfd/ospfe.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ospfe.c,v 1.45 2006/04/25 08:03:15 claudio Exp $ */
+/* $OpenBSD: ospfe.c,v 1.46 2006/05/30 22:12:52 claudio Exp $ */
/*
* Copyright (c) 2005 Claudio Jeker <claudio@openbsd.org>
@@ -73,6 +73,7 @@ ospfe(struct ospfd_conf *xconf, int pipe_parent2ospfe[2], int pipe_ospfe2rde[2],
{
struct area *area = NULL;
struct iface *iface = NULL;
+ struct redistribute *r;
struct passwd *pw;
struct event ev_sigint, ev_sigterm;
pid_t pid;
@@ -164,6 +165,12 @@ ospfe(struct ospfd_conf *xconf, int pipe_parent2ospfe[2], int pipe_ospfe2rde[2],
recv_packet, oeconf);
event_add(&oeconf->ev, NULL);
+ /* remove unneeded config stuff */
+ while ((r = SIMPLEQ_FIRST(&oeconf->redist_list)) != NULL) {
+ SIMPLEQ_REMOVE_HEAD(&oeconf->redist_list, entry);
+ free(r);
+ }
+
/* listen on ospfd control socket */
TAILQ_INIT(&ctl_conns);
control_listen();
@@ -810,7 +817,7 @@ orig_rtr_lsa(struct area *area)
* Set the E bit as soon as an as-ext lsa may be redistributed, only
* setting it in case we redistribute something is not worth the fuss.
*/
- if (oeconf->redistribute_flags && (oeconf->options & OSPF_OPTION_E))
+ if (oeconf->redistribute && (oeconf->options & OSPF_OPTION_E))
lsa_rtr.flags |= OSPF_RTR_E;
border = (area_border_router(oeconf) != 0);