diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2018-04-25 13:37:07 +0100 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2018-04-25 13:37:07 +0100 |
commit | fcd60ee107f7529e50bb6eab4e92cd5de41b6bd0 (patch) | |
tree | eef21331686a9f20c7a43ec670c8487a11d2d192 /src/libutil/map.h | |
parent | 250388149c8d634d58a7d9996e560ebddcbe49aa (diff) | |
download | rspamd-fcd60ee107f7529e50bb6eab4e92cd5de41b6bd0.tar.gz rspamd-fcd60ee107f7529e50bb6eab4e92cd5de41b6bd0.zip |
[Minor] Implement traverse functor in maps
Diffstat (limited to 'src/libutil/map.h')
-rw-r--r-- | src/libutil/map.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/libutil/map.h b/src/libutil/map.h index 171c0c55f..75c8788ca 100644 --- a/src/libutil/map.h +++ b/src/libutil/map.h @@ -23,6 +23,11 @@ typedef gchar * (*map_cb_t)(gchar *chunk, gint len, struct map_cb_data *data, gboolean final); typedef void (*map_fin_cb_t)(struct map_cb_data *data); +typedef gboolean (*rspamd_map_traverse_cb)(gconstpointer key, + gconstpointer value, gsize hits, gpointer ud); +typedef void (*rspamd_map_traverse_function)(rspamd_map_traverse_cb cb, + gpointer cbdata, gboolean reset_hits); + /** * Common map object */ @@ -77,4 +82,11 @@ void rspamd_map_watch (struct rspamd_config *cfg, struct event_base *ev_base, */ void rspamd_map_remove_all (struct rspamd_config *cfg); +/** + * Get traverse function for specific map + * @param map + * @return + */ +rspamd_map_traverse_function rspamd_map_get_traverse_function (struct rspamd_map *map); + #endif |