diff options
author | Joakim Tjernlund <joakim.tjernlund@transmode.se> | 2009-08-07 10:48:12 +0000 |
---|---|---|
committer | David Lamparter <equinox@diac24.net> | 2010-02-04 01:55:32 +0100 |
commit | fd884852db05e35da9eac6ff67fbaa0736d821c6 (patch) | |
tree | 7290397cc4d8a948a8224c2af729a6b4dd3a332e /ospfd/ospf_zebra.c | |
parent | dca6c883ea6219460efbe3dadde4b8b9cb12c845 (diff) | |
download | quagga-fd884852db05e35da9eac6ff67fbaa0736d821c6.tar.bz2 quagga-fd884852db05e35da9eac6ff67fbaa0736d821c6.tar.xz |
zebra, lib: Add ZEBRA_INTERFACE_UNNUMBERED interface flag.
Use interface <ifname>
"unnumbered" command to set unnumbered mode.
"no unnumbered" will clear it.
Changed to use *_FLAG macros by David Lamparter.
Cc: David Lamparter <equinox@diac24.net>
Diffstat (limited to 'ospfd/ospf_zebra.c')
-rw-r--r-- | ospfd/ospf_zebra.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/ospfd/ospf_zebra.c b/ospfd/ospf_zebra.c index 6f0a71ff..ed35cc80 100644 --- a/ospfd/ospf_zebra.c +++ b/ospfd/ospf_zebra.c @@ -195,6 +195,17 @@ ospf_interface_state_up (int command, struct zclient *zclient, ospf_if_recalculate_output_cost (ifp); } + if (CHECK_FLAG(if_tmp.status ^ ifp->status, ZEBRA_INTERFACE_UNNUMBERED)) + { + if (IS_DEBUG_OSPF (zebra, ZEBRA_INTERFACE)) + zlog_debug ("Zebra: Interface[%s] Unnumbered state change %d -> %d.", + ifp->name, + if_tmp.status & ZEBRA_INTERFACE_UNNUMBERED, + ifp->status & ZEBRA_INTERFACE_UNNUMBERED); + + ospf_if_reset (ifp); + } + if (if_tmp.mtu != ifp->mtu) { if (IS_DEBUG_OSPF (zebra, ZEBRA_INTERFACE)) |