From 958cbf047b81c507d3d73deddaf1ee48a36e6415 Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Sun, 6 Dec 2015 13:55:43 +0000 Subject: [PATCH] Add method to set re class for any rspamd regexp --- src/libutil/regexp.c | 22 ++++++++++++++++++++++ src/libutil/regexp.h | 11 +++++++++++ 2 files changed, 33 insertions(+) diff --git a/src/libutil/regexp.c b/src/libutil/regexp.c index 00c60a3376..530574100e 100644 --- a/src/libutil/regexp.c +++ b/src/libutil/regexp.c @@ -51,6 +51,7 @@ struct rspamd_regexp_s { regexp_id_t id; ref_entry_t ref; gpointer ud; + gpointer re_class; guint64 cache_id; gint flags; gint ncaptures; @@ -747,3 +748,24 @@ rspamd_regexp_get_id (rspamd_regexp_t *re) return re->id; } + +gpointer +rspamd_regexp_get_class (rspamd_regexp_t *re) +{ + g_assert (re != NULL); + + return re->re_class; +} + +gpointer +rspamd_regexp_set_class (rspamd_regexp_t *re, gpointer re_class) +{ + gpointer old_class; + + g_assert (re != NULL); + + old_class = re->re_class; + re->re_class = re_class; + + return old_class; +} diff --git a/src/libutil/regexp.h b/src/libutil/regexp.h index cf012668a2..a67bef9906 100644 --- a/src/libutil/regexp.h +++ b/src/libutil/regexp.h @@ -132,6 +132,17 @@ guint64 rspamd_regexp_get_cache_id (rspamd_regexp_t *re); */ guint64 rspamd_regexp_set_cache_id (rspamd_regexp_t *re, guint64 id); +/** + * Get regexp class for the re object + */ +gpointer rspamd_regexp_get_class (rspamd_regexp_t *re); + +/** + * Set regexp class for the re object + * @return old re class value + */ +gpointer rspamd_regexp_set_class (rspamd_regexp_t *re, gpointer re_class); + /** * Create new regexp cache * @return -- 2.47.3