From: Vsevolod Stakhov Date: Wed, 9 Dec 2015 15:30:32 +0000 (+0000) Subject: Use flags in class hashes X-Git-Tag: 1.1.0~357 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dacc1cecdae3c90d0176e285cc018280227abcc3;p=thirdparty%2Frspamd.git Use flags in class hashes --- diff --git a/src/libserver/re_cache.c b/src/libserver/re_cache.c index c310c7fb88..e1a636c742 100644 --- a/src/libserver/re_cache.c +++ b/src/libserver/re_cache.c @@ -287,7 +287,7 @@ rspamd_re_cache_sort_func (gconstpointer a, gconstpointer b) void rspamd_re_cache_init (struct rspamd_re_cache *cache) { - guint i; + guint i, fl; GHashTableIter it; gpointer k, v; struct rspamd_re_class *re_class; @@ -323,6 +323,16 @@ rspamd_re_cache_init (struct rspamd_re_cache *cache) rspamd_cryptobox_HASHBYTES); rspamd_cryptobox_hash_update (&st_global, rspamd_regexp_get_id (re), rspamd_cryptobox_HASHBYTES); + fl = rspamd_regexp_get_pcre_flags (re); + rspamd_cryptobox_hash_update (re_class->st, (const guchar *)&fl, + sizeof (fl)); + rspamd_cryptobox_hash_update (&st_global, (const guchar *) &fl, + sizeof (fl)); + fl = rspamd_regexp_get_flags (re); + rspamd_cryptobox_hash_update (re_class->st, (const guchar *) &fl, + sizeof (fl)); + rspamd_cryptobox_hash_update (&st_global, (const guchar *) &fl, + sizeof (fl)); } /* Now finalize all classes */