]> jfr.im git - irc/rqf/shadowircd.git/commitdiff
patricia: remove ugly abuse of K&R style function declaration
authorJilles Tjoelker <redacted>
Sun, 13 Apr 2008 16:20:18 +0000 (18:20 +0200)
committerJilles Tjoelker <redacted>
Sun, 13 Apr 2008 16:20:18 +0000 (18:20 +0200)
It left the argument types unspecified in a function
pointer, then called it using different numbers of
arguments.
libratbox r25229

libratbox/include/rb_patricia.h
libratbox/src/patricia.c

index c24e07978a89b31550453bba0a53fc4f2d8597e0..353b301bb38179f212952bbf0bb3f8d4ef7f392f 100644 (file)
@@ -26,7 +26,6 @@
 #endif
 
 /* typedef unsigned int u_int; */
-typedef void (*void_fn_t) ();
 #define rb_prefix_touchar(prefix) ((unsigned char *)&(prefix)->add.sin)
 #define MAXLINE 1024
 #define BIT_TEST(f, b)  ((f) & (b))
@@ -79,9 +78,9 @@ rb_patricia_node_t *rb_patricia_lookup(rb_patricia_tree_t * patricia, rb_prefix_
 
 void rb_patricia_remove(rb_patricia_tree_t * patricia, rb_patricia_node_t * node);
 rb_patricia_tree_t *rb_new_patricia(int maxbits);
-void rb_clear_patricia(rb_patricia_tree_t * patricia, void_fn_t func);
-void rb_destroy_patricia(rb_patricia_tree_t * patricia, void_fn_t func);
-void rb_patricia_process(rb_patricia_tree_t * patricia, void_fn_t func);
+void rb_clear_patricia(rb_patricia_tree_t * patricia, void (*func)(void *));
+void rb_destroy_patricia(rb_patricia_tree_t * patricia, void (*func)(void *));
+void rb_patricia_process(rb_patricia_tree_t * patricia, void (*func)(rb_prefix_t *, void *));
 void rb_init_patricia(void);
 
 
index bcfe678ee84611c4219b916900eb85c73ad04aae..9e92bb34a2fd68849804049af52b627e1af73476 100644 (file)
@@ -287,7 +287,7 @@ rb_new_patricia(int maxbits)
  */
 
 void
-rb_clear_patricia(rb_patricia_tree_t * patricia, void_fn_t func)
+rb_clear_patricia(rb_patricia_tree_t * patricia, void (*func)(void *))
 {
        assert(patricia);
        if(patricia->head)
@@ -343,7 +343,7 @@ rb_clear_patricia(rb_patricia_tree_t * patricia, void_fn_t func)
 
 
 void
-rb_destroy_patricia(rb_patricia_tree_t * patricia, void_fn_t func)
+rb_destroy_patricia(rb_patricia_tree_t * patricia, void (*func)(void *))
 {
        rb_clear_patricia(patricia, func);
        num_active_patricia--;
@@ -355,7 +355,7 @@ rb_destroy_patricia(rb_patricia_tree_t * patricia, void_fn_t func)
  */
 
 void
-rb_patricia_process(rb_patricia_tree_t * patricia, void_fn_t func)
+rb_patricia_process(rb_patricia_tree_t * patricia, void (*func)(rb_prefix_t *, void *))
 {
        rb_patricia_node_t *node;
        assert(func);