Rspamd 1.0.5 has been released

2015-10-14 00:00:00 +0000

The next stable release of rspamd has been published. Here is a list of notable changes for 1.0.5 release:

  • Add rspamd control interface:
    • support stat command to get runtime stats of rspamd workers
    • support reload command to reload runtime elements (e.g. sqlite3 databases)
  • Rework curve25519 library for modular design:
    • add Sandy2x implementation by Tung Chou
    • fix CPU detection for variables loading assembly
    • add testing for curve25519 ECDH
  • New fixed strings library

Less important changes:

  • Enable mmap in sqlite3
  • Use new strings in the HTTP code
  • Improve google perftools invocation
  • Improve performance profiling in http test
  • Reorganize includes to reduce namespace pollution
  • Allow specific sections printing in configdump command
  • Rework workers signals handlers to be chained if needed
  • Update socketpair utility function
  • Add control_path option for rspamd control protocol
  • Fix ownership when listening on UNIX sockets
  • Rework signals processing in main
  • Remove extra tools from rspamd (they live in rspamadm now)
  • Remove global rspamd_main
  • Add global timeout for the overall task processing (8 seconds by default)
  • Sanitize NULL values for fuzzy backend
  • Store NM between encrypt/decrypt
  • Add textpart:get_words_count method
  • Fix generic DNS request in lua
  • Tune hfilter weights
  • Add support of IPv6 in hfilter
  • Fix parsing of HTTP headers with IP addresses
  • Sync with the recent libucl
  • Various minor bugfixes

This version is partially backward compatible with 1.0.0. Here is the incompatible change:

Signing, configuration test and other side options have been removed from the main rspamd binary in honor of
`rspamadm` utility which provides drop-in replacement for all functions removed. The main functionality of `rspamd`
binary has not been changed.

Please update your scripts if they use rspamd -t or similar things to the according rspamadm invocation, for example rspamadm configtest.

Rspamd 1.0.4 has been released

2015-10-06 00:00:00 +0000

The next stable release of rspamd has been published.

The major changes in this release are:

  • Fuzzy protocol encryption (using dnscurve like protection via libcryptobox)
  • Webui is migrated to bootstrap 3 and jquery 2 with many bugfixes

Here is a list of other changes for 1.0.4 release:

  • Add configdump routine to rspamadm
  • Implement retransmits for fuzzy_check plugin
  • Fix events processing for learning anf checking fuzzy hashes
  • Avoid dependency on unneeded and uncompatible glib include
  • Add historyreset command to the controller
  • Fix loading of tokenizer config from dump (#389)
  • Add sorting hints for the history
  • Allow custom lua scripts for users/languages extraction (#388)
  • Do not add FORGED_RECIPIENTS when ‘To’ is missing (#387)
  • Do not add R_UNDISC_RCPT when ‘To’ is missing (#387)
  • Add encryption to fuzzy check plugin
  • Add encryption for fuzzy storage
  • Add new epoch for encrypted fuzzy request
  • Add encryption for storage
  • Remove gmime processing for LDA mode as it is deadly broken
  • Add routine to find end of headers position in mime messages
  • Fix LDA headers folding
  • Init libraries in rspamc client as well to avoid locale issues
  • Avoid collision with locally installed includes
  • Allocate and free memory with the same allocator in rspamadm (#385)
  • Preserve expired fuzzy hashes counter
  • Improvements in webui:
    • Add favicon.ico
    • Rework history table
    • Fix sorting for the history
    • Migrate to bootstrap 3 and jquery 2
    • Fix css bugs
    • Add glyphicons
    • Add reset history
    • Improve history buttons
    • Redraw graph to avoid display issues
    • Webui is now MIT licensed to match licensing policy of rspamd

This version is completely backward compatible with 1.0.0.

Rspamd 1.0.3 has been released

2015-09-29 00:00:00 +0000

The next stable release of rspamd has been published. Here is a list of notable changes for 1.0.3 release:

  • Fix piechart clean slice (#380)
  • Fix controller crashes when GString is reallocated (#381)
  • Correctly set locale before start
  • Set C locale for numeric values
  • Add rspamadm routine:
    • add pw command to manage passwords
    • add help command for displaying help
    • add configtest command to check configuration files
    • add keypair command for generating encryption keys
    • add fuzzy_merge routine to merge fuzzy sqlite databases
    • add a simple manual page for rspamadm
  • Allow metric registration for composite expressions
  • Add strict mode for configtest
  • Add logger counters
  • Save and show learned messages count (#383)
  • Add no_stat flag
  • Add task:set_flag and task:get_flags (#382)
  • Enable foreign keys in sqlite3
  • Remove orphaned shingles from fuzzy storage
  • Optimize synchronization steps for fuzzy storage
  • Allow delayed conditions registration
  • Add lua API for conditions registering

This version is completely backward compatible with 1.0.0.

Rspamd 1.0.2 has been released

2015-09-23 00:00:00 +0000

The next stable release of rspamd has been published. This release fixes a couple of critical bugs, improve webui look and implement finding of URLs inside query parts of other URLs.

  • Fix critical bug in webui that prevents password from being sent
  • Rework webui view:
    • Switch to d3.js for graphs
    • Improve piechart look
    • Rework colors for piechart
    • Fix layout for symbols
    • Fix refresh button
  • Add descriptions for whitelist maps
  • Fix build on arm (#379)
  • Fix issue with the last element in the radix trie
  • Add more tests for radix trie algorithm
  • Allow to extract URLs from query strings of other URLs (#361)
  • Initialize rrd fields before writing to file
  • Fix double free if no password has been specified

This version is completely backward compatible with 1.0.0.

Rspamd 1.0.1 has been released

2015-09-22 00:00:00 +0000

The next stable release of rspamd has been published. Here is a list of notable changes for 1.0.1 release:

  • Add writing to rrd from the controller
  • Fixed lots of bugs in rrd code
  • Adopt new DNS API in hfilter plugin (by @AlexeySa)
  • Allow only one controller process to manage rrd file
  • Set event base for fuzzy calls
  • Improve fuzzy IO errors logging
  • Add rra extraction function to rrd library
  • Add graph handler to the controller
  • Cache correct passwords to avoid too high CPU usage when working with webui
  • Controller sockets are owned by router do not export them to task
  • Optimize logging by skipping hash table search if it’s empty
  • Fix loading issue with broken statfiles
  • Print assertions from glib to rspamd logger
  • Load legacy lua/rspamd.local.lua
  • Update webui with some fixes to learning and scanning

This version is completely backward compatible with 1.0.0.