diff options
Diffstat (limited to 'proto/ospf')
-rw-r--r-- | proto/ospf/ospf.c | 29 | ||||
-rw-r--r-- | proto/ospf/ospf.h | 8 |
2 files changed, 21 insertions, 16 deletions
diff --git a/proto/ospf/ospf.c b/proto/ospf/ospf.c index c20ff6cc..37f58f16 100644 --- a/proto/ospf/ospf.c +++ b/proto/ospf/ospf.c @@ -15,7 +15,8 @@ ospf_start(struct proto *p) struct ospf_config *c=(struct ospf_config *)(p->cf); struct ospf_area_config *ac; struct ospf_area *oa; - debug("%s: Start\n",p->name); + + OSPF_TRACE(D_EVENTS, "Start"); fib_init(&po->efib,p->pool,sizeof(struct extfib),16,init_efib); init_list(&(po->iface_list)); @@ -63,26 +64,25 @@ ospf_dump(struct proto *p) struct proto_ospf *po=(struct proto_ospf *)p; struct ospf_area *oa; - debug("%s: Area number: %d\n", p->name, po->areano); + OSPF_TRACE(D_EVENTS, "Area number: %d\n", po->areano); WALK_LIST(ifa, po->iface_list) { - debug("%s: Interface: %s\n", p->name, ifa->iface->name); - debug("%s: state: %u\n", p->name, ifa->state); - debug("%s: DR: %I\n", p->name, ifa->drid); - debug("%s: BDR: %I\n", p->name, ifa->bdrid); + OSPF_TRACE(D_EVENTS, "Interface: %s", ifa->iface->name); + OSPF_TRACE(D_EVENTS, "state: %u", ifa->state); + OSPF_TRACE(D_EVENTS, "DR: %I", ifa->drid); + OSPF_TRACE(D_EVENTS, "BDR: %I", ifa->bdrid); WALK_LIST(n, ifa->neigh_list) { - debug("%s: neighbor %I in state %u\n", p->name, n->rid, n->state); + OSPF_TRACE(D_EVENTS, " neighbor %I in state %u\n", n->rid, n->state); } } WALK_LIST(NODE oa,po->area_list) { - debug("\n%s: LSA graph dump for area \"%I\" start:\n", p->name,oa->areaid); + OSPF_TRACE(D_EVENTS, "LSA graph dump for area \"%I\" start:", oa->areaid); ospf_top_dump(oa->gr); - debug("%s: LSA graph dump for area \"%I\" finished\n\n", p->name, - oa->areaid); + OSPF_TRACE(D_EVENTS, "LSA graph dump for area \"%I\" finished", oa->areaid); } neigh_dump_all(); } @@ -96,7 +96,6 @@ ospf_init(struct proto_config *c) struct ospf_area_config *ac; struct ospf_iface_patt *patt; - debug("OSPF: Init requested.\n"); p->import_control = ospf_import_control; p->make_tmp_attrs = ospf_make_tmp_attrs; p->store_tmp_attrs = ospf_store_tmp_attrs; @@ -176,7 +175,7 @@ schedule_rt_lsa(struct ospf_area *oa) struct proto_ospf *po=oa->po; struct proto *p=&po->proto; - debug("%s: Scheduling RT lsa origination for area %I.\n", p->name, + OSPF_TRACE(D_EVENTS, "Scheduling RT lsa origination for area %I.", oa->areaid); oa->origrt=1; } @@ -187,7 +186,7 @@ schedule_rtcalc(struct ospf_area *oa) struct proto_ospf *po=oa->po; struct proto *p=&po->proto; - debug("%s: Scheduling RT calculation for area %I.\n", p->name, + OSPF_TRACE(D_EVENTS, "Scheduling RT calculation for area %I.", oa->areaid); oa->calcrt=1; } @@ -241,7 +240,7 @@ ospf_shutdown(struct proto *p) struct ospf_iface *ifa; struct ospf_neighbor *n; struct ospf_area *oa; - debug("%s: Shutdown requested\n", p->name); + OSPF_TRACE(D_EVENTS, "Shutdown requested\n"); /* And send to all my neighbors 1WAY */ WALK_LIST(ifa, po->iface_list) @@ -258,7 +257,7 @@ ospf_rt_notify(struct proto *p, net *n, rte *new, rte *old, ea_list *attrs) { struct proto_ospf *po=(struct proto_ospf *)p; - debug("%s: Got route %I/%d %s\n", p->name, n->n.prefix, + OSPF_TRACE(D_EVENTS, "Got route %I/%d %s\n", p->name, n->n.prefix, n->n.pxlen, new ? "up" : "down"); if(new) /* Got some new route */ diff --git a/proto/ospf/ospf.h b/proto/ospf/ospf.h index 3d5d1df8..128fb490 100644 --- a/proto/ospf/ospf.h +++ b/proto/ospf/ospf.h @@ -9,9 +9,15 @@ #ifndef _BIRD_OSPF_H_ #define _BIRD_OSPF_H_ - #define SIPH 64 /* FIXME Size Of IP header */ #define MAXNETS 10 +#ifdef LOCAL_DEBUG +#define OSPF_FORCE_DEBUG 1 +#else +#define OSPF_FORCE_DEBUG 0 +#endif +#define OSPF_TRACE(flags, msg, args...) do { if ((p->debug & flags) || OSPF_FORCE_DEBUG) \ + log(L_TRACE "%s: " msg, p->name , ## args ); } while(0) #include "nest/bird.h" |