Synchronise HEAD with CABAL branch.
[tinc] / lib / rbl.h
diff --git a/lib/rbl.h b/lib/rbl.h
deleted file mode 100644 (file)
index 906ae31..0000000
--- a/lib/rbl.h
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
-    rbl.h -- header file for rbl.c
-    Copyright (C) 2000 Ivo Timmermans <itimmermans@bigfoot.com>,
-                  2000 Guus Sliepen <guus@sliepen.warande.net>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-    $Id: rbl.h,v 1.2 2002/04/09 15:26:00 zarq Exp $
-*/
-
-#ifndef __RBL_H__
-#define __RBL_H__
-
-#define RBL_FOREACH(tree,rbl) for(rbl = tree->head; rbl; rbl = rbl->next)
-
-typedef struct rbl_t
-{
-  /* 'red-black tree' part */
-
-  struct rbltree_t *tree;
-
-  int color;
-
-  struct rbl_t *parent;
-  struct rbl_t *left;
-  struct rbl_t *right;
-  
-  /* 'linked list' part */
-  
-  struct rbl_t *prev;
-  struct rbl_t *next;
-  
-  /* payload */
-  
-  void *data;
-   
-} rbl_t;
-
-typedef int (*rbl_compare_t) (const void *, const void *);
-typedef void (*rbl_action_t) (const void *);
-typedef void (*rbl_action_rbl_t) (const struct rbl_t *);
-
-typedef struct rbltree_t
-{
-  /* callback functions */
-
-  rbl_compare_t compare;
-  rbl_action_t delete;
-
-  /* tree part */
-
-  struct rbl_t *top;
-
-  /* linked list */
-
-  struct rbl_t *head;
-  struct rbl_t *tail;
-
-} rbltree_t;
-
-enum color
-{
-  RBL_RED,
-  RBL_BLACK
-} color;
-
-extern rbltree_t *new_rbltree(rbl_compare_t, rbl_action_t);
-extern void free_rbltree(rbltree_t *);
-extern rbl_t *new_rbl(void);
-extern void free_rbl(rbl_t *);
-
-extern void *rbl_search(rbltree_t *, void *);
-extern void *rbl_search_closest(rbltree_t *, void *);
-extern void *rbl_search_closest_greater(rbltree_t *, void *);
-extern void *rbl_search_closest_smaller(rbltree_t *, void *);
-extern rbl_t *rbl_search_rbl(rbltree_t *, void *);
-extern rbl_t *rbl_search_closest_rbl(rbltree_t *, void *);
-extern rbl_t *rbl_search_closest_greater_rbl(rbltree_t *, void *);
-extern rbl_t *rbl_search_closest_smaller_rbl(rbltree_t *, void *);
-extern rbl_t *rbl_insert(rbltree_t *, void *);
-extern rbl_t *rbl_unlink(rbltree_t *, void *);
-extern void rbl_delete(rbltree_t *, void *);
-extern rbl_t *rbl_insert_rbl(rbltree_t *, rbl_t *);
-extern rbl_t *rbl_unlink_rbl(rbl_t *);
-extern void rbl_delete_rbl(rbl_t *);
-extern void rbl_unlink_rbltree(rbltree_t *);
-extern void rbl_delete_rbltree(rbltree_t *);
-
-extern void rbl_foreach(rbltree_t *, rbl_action_t);
-extern void rbl_foreach_rbl(rbltree_t *, rbl_action_rbl_t);
-
-#endif /* __RBL_H__ */