summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Jakma <paul@quagga.net>2010-01-11 15:48:14 +0000
committerDavid Lamparter <equinox@diac24.net>2010-02-05 00:37:56 +0100
commitc11c7be33e759223ad233b36b83b88ddf2774582 (patch)
treeb2053321f6922cda2bbfa68b5970620f9acac893
parentf02feed2159d1da07fe400df1f0ce6f3fc413f91 (diff)
downloadquagga-c11c7be33e759223ad233b36b83b88ddf2774582.tar.bz2
quagga-c11c7be33e759223ad233b36b83b88ddf2774582.tar.xz
bgpd: Simplify process queue init
* bgp_route.c: (bgp_process_queue_init) rsclient wasn't getting all the same things initialised as the main queue. Simplify to make it more robust.
-rw-r--r--bgpd/bgp_route.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c
index a92ca4e2..2afdf7ce 100644
--- a/bgpd/bgp_route.c
+++ b/bgpd/bgp_route.c
@@ -1614,14 +1614,13 @@ bgp_process_queue_init (void)
}
bm->process_main_queue->spec.workfunc = &bgp_process_main;
- bm->process_rsclient_queue->spec.workfunc = &bgp_process_rsclient;
bm->process_main_queue->spec.del_item_data = &bgp_processq_del;
- bm->process_rsclient_queue->spec.del_item_data
- = bm->process_main_queue->spec.del_item_data;
- bm->process_main_queue->spec.max_retries
- = bm->process_main_queue->spec.max_retries = 0;
- bm->process_rsclient_queue->spec.hold
- = bm->process_main_queue->spec.hold = 50;
+ bm->process_main_queue->spec.max_retries = 0;
+ bm->process_main_queue->spec.hold = 50;
+
+ memcpy (bm->process_rsclient_queue, bm->process_main_queue,
+ sizeof (struct work_queue *));
+ bm->process_rsclient_queue->spec.workfunc = &bgp_process_rsclient;
}
void