diff options
-rw-r--r-- | proto/ospf/ospf.c | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/proto/ospf/ospf.c b/proto/ospf/ospf.c index 5ce861d..1fa33fc 100644 --- a/proto/ospf/ospf.c +++ b/proto/ospf/ospf.c @@ -825,11 +825,23 @@ static void ospf_dump(struct proto *p) { char areastr[20]; + struct ospf_iface *ifa; + struct ospf_neighbor *n; struct ospf_config *c = (void *) p->cf; - DBG(p->name); - DBG(": Dump.\n"); - debug(" -AreaID: %u\n", c->area ); + debug("%s: AreaID: %u\n", p->name, c->area ); + + WALK_LIST(ifa, ((struct proto_ospf *)p)->iface_list) + { + debug("%s: Interface: %s\n", p->name, ifa->iface->name); + debug("%s: state: %u\n", p->name, ifa->state); + debug("%s: DR: %u\n", p->name, ifa->drid); + debug("%s: BDR: %u\n", p->name, ifa->bdrid); + WALK_LIST(n, ifa->neigh_list) + { + debug("%s: neighbor %u in state %u\n", p->name, n->rid, n->state); + } + } } static struct proto * |