update avl implementation from packetbb
authorFelix Fietkau <nbd@openwrt.org>
Sat, 22 Jan 2011 16:02:23 +0000 (17:02 +0100)
committerFelix Fietkau <nbd@openwrt.org>
Sat, 22 Jan 2011 16:02:23 +0000 (17:02 +0100)
avl.c
avl.h

diff --git a/avl.c b/avl.c
index bde40b78cf5aefa1c63b4bcd504520f14c7157d4..fa23b03e840c3587b69f08d7b90bd0ecf66ecb12 100644 (file)
--- a/avl.c
+++ b/avl.c
@@ -111,7 +111,7 @@ avl_init(struct avl_tree *tree, avl_tree_comp comp, bool allow_dups, void *ptr)
  * @param pointer to elemen, NULL if no fitting one was found
  */
 void *
-__avl_find_element(struct avl_tree *tree, const void *key, size_t offset, enum avl_find_mode mode) {
+__avl_find_element(const struct avl_tree *tree, const void *key, size_t offset, enum avl_find_mode mode) {
   void *node = NULL;
 
   switch (mode) {
@@ -136,7 +136,7 @@ __avl_find_element(struct avl_tree *tree, const void *key, size_t offset, enum a
  *    this key exists.
  */
 struct avl_node *
-avl_find(struct avl_tree *tree, const void *key)
+avl_find(const struct avl_tree *tree, const void *key)
 {
   struct avl_node *node;
   int diff;
@@ -158,7 +158,7 @@ avl_find(struct avl_tree *tree, const void *key)
  *    key less or equal specified key exists.
  */
 struct avl_node *
-avl_find_lessequal(struct avl_tree *tree, const void *key) {
+avl_find_lessequal(const struct avl_tree *tree, const void *key) {
   struct avl_node *node, *next;
   int diff;
 
@@ -200,7 +200,7 @@ avl_find_lessequal(struct avl_tree *tree, const void *key) {
  *    key greater or equal specified key exists.
  */
 struct avl_node *
-avl_find_greaterequal(struct avl_tree *tree, const void *key) {
+avl_find_greaterequal(const struct avl_tree *tree, const void *key) {
   struct avl_node *node, *next;
   int diff;
 
diff --git a/avl.h b/avl.h
index 1c57604d2a1a853e7012a3de694bcdac3811c57c..80a29b75ca5f22ed2cb820f16cde996846e79bc2 100644 (file)
--- a/avl.h
+++ b/avl.h
@@ -155,12 +155,12 @@ enum avl_find_mode {
 };
 
 void EXPORT(avl_init)(struct avl_tree *, avl_tree_comp, bool, void *);
-struct avl_node *EXPORT(avl_find)(struct avl_tree *, const void *);
-struct avl_node *EXPORT(avl_find_greaterequal)(struct avl_tree *tree, const void *key);
-struct avl_node *EXPORT(avl_find_lessequal)(struct avl_tree *tree, const void *key);
+struct avl_node *EXPORT(avl_find)(const struct avl_tree *, const void *);
+struct avl_node *EXPORT(avl_find_greaterequal)(const struct avl_tree *tree, const void *key);
+struct avl_node *EXPORT(avl_find_lessequal)(const struct avl_tree *tree, const void *key);
 int EXPORT(avl_insert)(struct avl_tree *, struct avl_node *);
 void EXPORT(avl_delete)(struct avl_tree *, struct avl_node *);
-void *EXPORT(__avl_find_element)(struct avl_tree *tree, const void *key,
+void *EXPORT(__avl_find_element)(const struct avl_tree *tree, const void *key,
     size_t offset, enum avl_find_mode mode);
 
 /**