summaryrefslogtreecommitdiff
path: root/lib/hash.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/hash.h')
-rw-r--r--lib/hash.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/hash.h b/lib/hash.h
index 920c6685fb..9707dbd1bf 100644
--- a/lib/hash.h
+++ b/lib/hash.h
@@ -25,6 +25,9 @@ Boston, MA 02111-1307, USA. */
#define HASH_INITIAL_SIZE 256 /* initial number of backets. */
#define HASH_THRESHOLD 10 /* expand when backet. */
+#define HASHWALK_CONTINUE 0
+#define HASHWALK_ABORT -1
+
struct hash_backet
{
/* Linked list. */
@@ -71,6 +74,9 @@ extern void *hash_release (struct hash *, void *);
extern void hash_iterate (struct hash *,
void (*) (struct hash_backet *, void *), void *);
+extern void hash_walk (struct hash *,
+ int (*) (struct hash_backet *, void *), void *);
+
extern void hash_clean (struct hash *, void (*) (void *));
extern void hash_free (struct hash *);