summaryrefslogtreecommitdiffstats
path: root/sysdep/unix
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2010-02-27 16:00:07 +0100
committerOndrej Zajicek <santiago@crfreenet.org>2010-02-27 16:00:07 +0100
commit53434e44a95fe9334f4bdf5e0da987929addffb1 (patch)
tree75317dd53e6059b7c6fe0941312adc2e317c46eb /sysdep/unix
parent3075824dbd4bb654e98614dfd9992ceec0428beb (diff)
downloadbird-53434e44a95fe9334f4bdf5e0da987929addffb1.tar
bird-53434e44a95fe9334f4bdf5e0da987929addffb1.zip
Better flushing of interfaces.
When device protocol goes down, interfaces should be flushed asynchronously (in the same way like routes from protocols are flushed), when protocol goes to DOWN/HUNGRY. This fixes the problem with static routes staying in kernel routing table after BIRD shutdown.
Diffstat (limited to 'sysdep/unix')
-rw-r--r--sysdep/unix/krt.c9
1 files changed, 0 insertions, 9 deletions
diff --git a/sysdep/unix/krt.c b/sysdep/unix/krt.c
index 47b9621..c8887b7 100644
--- a/sysdep/unix/krt.c
+++ b/sysdep/unix/krt.c
@@ -139,15 +139,6 @@ kif_shutdown(struct proto *P)
krt_if_shutdown(p);
kif_proto = NULL;
- if_start_update(); /* Remove all interfaces */
- if_end_update();
- /*
- * FIXME: Is it really a good idea? It causes routes to be flushed,
- * but at the same time it avoids sending of these deletions to the kernel,
- * because krt thinks the kernel itself has already removed the route
- * when downing the interface. Sad.
- */
-
return PS_DOWN;
}