]> git.ipfire.org Git - thirdparty/rspamd.git/commitdiff
[Fix] Fix build with ENABLE_HYPERSCAN=OFF
authorVsevolod Stakhov <vsevolod@rspamd.com>
Sun, 15 Mar 2026 11:48:13 +0000 (11:48 +0000)
committerVsevolod Stakhov <vsevolod@rspamd.com>
Sun, 15 Mar 2026 11:48:13 +0000 (11:48 +0000)
Unset WITH_HYPERSCAN cache variable when hyperscan is disabled,
and guard hs_magic usage in re_cache with WITH_HYPERSCAN ifdef.

cmake/Hyperscan.cmake
src/libserver/re_cache.c

index dc19f49c6ffacf39691a3a4863a3761ae5f55d3f..309eb95db0c197102ba282fc5b48123c6d101f3c 100644 (file)
@@ -5,4 +5,7 @@ if (ENABLE_HYPERSCAN MATCHES "ON")
             hs include/hs
             ROOT ${HYPERSCAN_ROOT_DIR} MODULES libhs)
     set (WITH_HYPERSCAN 1)
+else ()
+    unset (WITH_HYPERSCAN)
+    unset (WITH_HYPERSCAN CACHE)
 endif ()
index 921105bc1410e95852910c891cb8aab8dcc6d72f..cee06d2dc4084bbe9c3f96d6e13f0fe9c1af8a4f 100644 (file)
@@ -681,9 +681,11 @@ void rspamd_re_cache_init(struct rspamd_re_cache *cache, struct rspamd_config *c
                                                                                 (gpointer) &re_class->num_local_re,
                                                                                 sizeof(re_class->num_local_re));
                        /* Include serialization magic so version bumps invalidate cache */
+#ifdef WITH_HYPERSCAN
                        rspamd_cryptobox_hash_update(re_class->st,
                                                                                 rspamd_hs_magic,
                                                                                 RSPAMD_HS_MAGIC_LEN);
+#endif
                        rspamd_cryptobox_hash_final(re_class->st, hash_out);
                        rspamd_snprintf(re_class->hash, sizeof(re_class->hash), "%*xs",
                                                        (int) rspamd_cryptobox_HASHBYTES, hash_out);