diff options
Diffstat (limited to 'src/libutil/multipattern.h')
-rw-r--r-- | src/libutil/multipattern.h | 39 |
1 files changed, 24 insertions, 15 deletions
diff --git a/src/libutil/multipattern.h b/src/libutil/multipattern.h index 785c09e3d..959b13455 100644 --- a/src/libutil/multipattern.h +++ b/src/libutil/multipattern.h @@ -26,13 +26,17 @@ * hyperscan and ac-trie */ +#ifdef __cplusplus +extern "C" { +#endif + enum rspamd_multipattern_flags { RSPAMD_MULTIPATTERN_DEFAULT = 0, RSPAMD_MULTIPATTERN_ICASE = (1 << 0), RSPAMD_MULTIPATTERN_UTF8 = (1 << 1), RSPAMD_MULTIPATTERN_TLD = (1 << 2), /* Not supported by acism */ - RSPAMD_MULTIPATTERN_GLOB = (1 << 3), + RSPAMD_MULTIPATTERN_GLOB = (1 << 3), RSPAMD_MULTIPATTERN_RE = (1 << 4), }; @@ -50,12 +54,12 @@ struct rspamd_cryptobox_library_ctx; * @return if 0 then search for another pattern, otherwise return this value to caller */ typedef gint (*rspamd_multipattern_cb_t) (struct rspamd_multipattern *mp, - guint strnum, - gint match_start, - gint match_pos, - const gchar *text, - gsize len, - void *context); + guint strnum, + gint match_start, + gint match_pos, + const gchar *text, + gsize len, + void *context); /** * Init multipart library and set the appropriate cache dir @@ -78,7 +82,7 @@ struct rspamd_multipattern *rspamd_multipattern_create ( * @return */ struct rspamd_multipattern *rspamd_multipattern_create_sized (guint reserved, - enum rspamd_multipattern_flags flags); + enum rspamd_multipattern_flags flags); /** * Creates new multipattern structure @@ -98,7 +102,7 @@ struct rspamd_multipattern *rspamd_multipattern_create_full ( * @param pattern */ void rspamd_multipattern_add_pattern (struct rspamd_multipattern *mp, - const gchar *pattern, gint flags); + const gchar *pattern, gint flags); /** * Adds new pattern from arbitrary string @@ -108,7 +112,7 @@ void rspamd_multipattern_add_pattern (struct rspamd_multipattern *mp, * @param flags */ void rspamd_multipattern_add_pattern_len (struct rspamd_multipattern *mp, - const gchar *pattern, gsize patlen, gint flags); + const gchar *pattern, gsize patlen, gint flags); /** * Compiles multipattern structure @@ -116,7 +120,7 @@ void rspamd_multipattern_add_pattern_len (struct rspamd_multipattern *mp, * @return */ gboolean rspamd_multipattern_compile (struct rspamd_multipattern *mp, - GError **err); + GError **err); /** * Lookups for patterns in a text using the specified callback function @@ -128,16 +132,17 @@ gboolean rspamd_multipattern_compile (struct rspamd_multipattern *mp, * @return */ gint rspamd_multipattern_lookup (struct rspamd_multipattern *mp, - const gchar *in, gsize len, rspamd_multipattern_cb_t cb, - gpointer ud, guint *pnfound); + const gchar *in, gsize len, rspamd_multipattern_cb_t cb, + gpointer ud, guint *pnfound); + /** * Get pattern string from multipattern identified by index * @param mp * @param index * @return */ -const gchar* rspamd_multipattern_get_pattern (struct rspamd_multipattern *mp, - guint index); +const gchar *rspamd_multipattern_get_pattern (struct rspamd_multipattern *mp, + guint index); /** * Returns number of patterns in a multipattern matcher @@ -158,4 +163,8 @@ void rspamd_multipattern_destroy (struct rspamd_multipattern *mp); */ gboolean rspamd_multipattern_has_hyperscan (void); +#ifdef __cplusplus +} +#endif + #endif /* SRC_LIBUTIL_MULTIPATTERN_H_ */ |