diff options
author | Vsevolod Stakhov <vsevolod@rspamd.com> | 2025-03-24 13:42:34 +0000 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@rspamd.com> | 2025-03-24 13:42:34 +0000 |
commit | 91e8bbf79897f13072302216ce2ca516785d31f5 (patch) | |
tree | f65a02caef4a83acc490eebaa28ff722de19cbb4 | |
parent | 65e27b20f650b76244274c76787c20fb475a6996 (diff) | |
download | rspamd-91e8bbf79897f13072302216ce2ca516785d31f5.tar.gz rspamd-91e8bbf79897f13072302216ce2ca516785d31f5.zip |
[Minor] Static maps have pre-defined content, so use it to get id
-rw-r--r-- | src/libserver/maps/map.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/libserver/maps/map.c b/src/libserver/maps/map.c index a5e891c34..7a8bcfb7f 100644 --- a/src/libserver/maps/map.c +++ b/src/libserver/maps/map.c @@ -2843,6 +2843,13 @@ rspamd_map_calculate_hash(struct rspamd_map *map) rspamd_cryptobox_fast_hash_init(&hst, 0); rspamd_cryptobox_fast_hash_update(&hst, bk->uri, strlen(bk->uri)); rspamd_cryptobox_fast_hash_update(&hst, map->tag, sizeof(map->tag)); + + if (bk->protocol == MAP_PROTO_STATIC) { + /* Static maps content is pre-defined */ + rspamd_cryptobox_fast_hash_update(&hst, bk->data.sd->data, + bk->data.sd->len); + } + /* We use only 52 bits to be compatible with other numbers representation */ bk->id = rspamd_cryptobox_fast_hash_final(&hst) & ~(0xFFFULL << 52); } |