]> git.puffer.fish Git - matthieu/frr.git/commitdiff
2005-11-14 Paul Jakma <paul.jakma@sun.com>
authorpaul <paul>
Mon, 14 Nov 2005 14:31:49 +0000 (14:31 +0000)
committerpaul <paul>
Mon, 14 Nov 2005 14:31:49 +0000 (14:31 +0000)
* zebra_rib.c: (rib_process) convert to new workqueue specs and
  shut up gcc, which complains about cast from void via
  function parameters, for some dumb reason. Do the cast
  inside the function instead.
  (rib_queue_qnode_del) ditto.
  (rib_queue_init) no need for the casts anymore.

bgpd/ChangeLog
bgpd/bgp_route.c
zebra/ChangeLog
zebra/zebra_rib.c

index eadd07f1dbecb509259433394b4ce9b095099580..68cb1176495b651099bda9a37f2766222b5bfb46 100644 (file)
@@ -1,3 +1,13 @@
+2005-11-14 Paul Jakma <paul.jakma@sun.com>
+
+       * bgp_route.c: (bgp_process_rsclient) convert to new workqueue
+          specs and shut up gcc, which complains about cast from void
+          via function parameters, for some dumb reason. Do the cast
+          inside the function instead.
+          (bgp_process_main,bgp_processq_del) ditto.
+          (bgp_clear_route_node) ditto.
+          (bgp_clear_node_queue_del) ditto.
+
 2005-11-03 Paul Jakma <paul.jakma@sun.com>
 
        * bgp_damp.c: (bgp_reuse_timer) struct bgp can be retrieved via
index 0658cabe35db52f1457f17902853c53531aba7c0..f2621c1f1c26671a46c5239fda88cdcafbad384e 100644 (file)
@@ -1242,8 +1242,9 @@ struct bgp_process_queue
 };
 
 static wq_item_status
-bgp_process_rsclient (struct bgp_process_queue *pq)
+bgp_process_rsclient (struct work_queue *wq, void *data)
 {
+  struct bgp_process_queue *pq = data;
   struct bgp *bgp = pq->bgp;
   struct bgp_node *rn = pq->rn;
   afi_t afi = pq->afi;
@@ -1309,8 +1310,9 @@ bgp_process_rsclient (struct bgp_process_queue *pq)
 }
 
 static wq_item_status
-bgp_process_main (struct bgp_process_queue *pq)
+bgp_process_main (struct work_queue *wq, void *data)
 {
+  struct bgp_process_queue *pq = data;
   struct bgp *bgp = pq->bgp;
   struct bgp_node *rn = pq->rn;
   afi_t afi = pq->afi;
@@ -1390,8 +1392,10 @@ bgp_process_main (struct bgp_process_queue *pq)
 }
 
 static void
-bgp_processq_del (struct bgp_process_queue *pq)
+bgp_processq_del (struct work_queue *wq, void *data)
 {
+  struct bgp_process_queue *pq = data;
+  
   bgp_unlock_node (pq->rn);
   XFREE (MTYPE_BGP_PROCESS_QUEUE, pq);
 }
@@ -2450,8 +2454,9 @@ struct bgp_clear_node_queue
 };
 
 static wq_item_status
-bgp_clear_route_node (struct bgp_clear_node_queue *cq)
+bgp_clear_route_node (struct work_queue *wq, void *data)
 {
+  struct bgp_clear_node_queue *cq = data;
   struct bgp_adj_in *ain;
   struct bgp_adj_out *aout;
   struct bgp_info *ri;
@@ -2493,8 +2498,9 @@ bgp_clear_route_node (struct bgp_clear_node_queue *cq)
 }
 
 static void
-bgp_clear_node_queue_del (struct bgp_clear_node_queue *cq)
+bgp_clear_node_queue_del (struct work_queue *wq, void *data)
 {
+  struct bgp_clear_node_queue *cq = data;
   bgp_unlock_node (cq->rn); 
   peer_unlock (cq->peer); /* bgp_clear_node_queue_del */
   XFREE (MTYPE_BGP_CLEAR_NODE_QUEUE, cq);
index f943d655c09659d5043556fe1062c937642727bf..16f83ae754156ef3e60fea64b498719eb8bd3bee 100644 (file)
@@ -1,3 +1,12 @@
+2005-11-14 Paul Jakma <paul.jakma@sun.com>
+
+       * zebra_rib.c: (rib_process) convert to new workqueue specs and
+         shut up gcc, which complains about cast from void via
+         function parameters, for some dumb reason. Do the cast
+         inside the function instead.
+         (rib_queue_qnode_del) ditto.
+         (rib_queue_init) no need for the casts anymore.
+
 2005-11-12 Alexander Gall <gall@switch.ch>
 
        * See [quagga-dev 1815]
index 060f46daa52540a1d24cc7a28fb8ae54b72f5d3c..fb983bdb1b4b4b18f7d3c24a1bc5c844daf73f68 100644 (file)
@@ -881,8 +881,9 @@ rib_uninstall (struct route_node *rn, struct rib *rib)
 
 /* Core function for processing routing information base. */
 static wq_item_status
-rib_process (struct zebra_queue_node_t *qnode)
+rib_process (struct work_queue *wq, void *data)
 {
+  struct zebra_queue_node_t *qnode = data;
   struct rib *rib;
   struct rib *next;
   struct rib *fib = NULL;
@@ -1052,8 +1053,9 @@ rib_queue_add (struct zebra_t *zebra, struct route_node *rn, struct rib *del)
 
 /* free zebra_queue_node_t */
 static void
-rib_queue_qnode_del (struct zebra_queue_node_t *qnode)
+rib_queue_qnode_del (struct work_queue *wq, void *data)
 {
+  struct zebra_queue_node_t *qnode = data;
   route_unlock_node (qnode->node);
   
   if (qnode->del)
@@ -1076,13 +1078,11 @@ rib_queue_init (struct zebra_t *zebra)
     }
 
   /* fill in the work queue spec */
-  zebra->ribq->spec.workfunc = (wq_item_status (*) (void *))&rib_process;
+  zebra->ribq->spec.workfunc = &rib_process;
   zebra->ribq->spec.errorfunc = NULL;
-  zebra->ribq->spec.del_item_data = (void (*) (void *)) &rib_queue_qnode_del;
+  zebra->ribq->spec.del_item_data = &rib_queue_qnode_del;
   /* XXX: TODO: These should be runtime configurable via vty */
   zebra->ribq->spec.max_retries = 3;
-  zebra->ribq->spec.hold = 500;
-  zebra->ribq->spec.delay = 10;
   
   return;
 }