Halon MTA changelog
Branch: master
Clone or download
Latest commit b3876d1 Jan 24, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
README.md release 5.0 Jan 24, 2019


Halon is a fast, flexible and powerful MTA for demanding uses such as large-scale email services. New installations are deployed by downloading a disk image or virtual machine template. Existing systems can be easily updated, after having familiarised yourself with the release notes.

There is an RSS feed available.


Released on 2019-01-24

  • New RESTful API with OpenAPI specification
  • New SMTP server scripting features
    • Added per-message end-of-DATA script
    • Added snapshot() and restore() to the end-of-DATA MIME() class
    • New $transaction variable with sender and recipients that's gradually populated
    • New senderlocalpart and recipientlocalpart variables in original format
    • New options in connect script's Accept() function
      • reason to set banner response
      • senderptr to set sender hostname printed in "Received" header
    • New options in RCPT TO Accept() function
      • recipient for overriding the default $recipient context variable
      • transportid for overriding the default $transportid context variable
    • New option from_name in pre/post-delivery SetDSN()
  • Imp SMTP server improvements
    • TLS 1.3 support
    • Wildcard matching in SNI
    • Sender information can be overridden per queued recipient
    • Added configuration options
      • Implicit TLS per virtual server listener
      • Verbose logging per virtual server
    • Bare LF is converted to CRLF
    • Disable client-initiated TLS renegotiation
  • Imp Script language improvements
    • Added spread operator to array type
    • Added wildcard function and variable import into a namespace
    • Added compile-time text, JSON and CSV import into a variable
    • Added csv_decode() function that parses a string according to a schema
    • Added inet_reverse() function that creates a reverse DNS for PTR or DNSxL lookups
    • Added array_find() function
    • New LDAP() class
    • Reworked standard library functions
      • length() function that supports multiple data types
      • array_join(), array_includes() and array_range()
      • str_find(), str_rfind(), str_lower(), str_upper(), str_slice() and str_strip()
      • random_number(), domain_includes(), inet_includes()
    • Added getPath() and readline() methods to File() class
    • New allow_comments option in json_decode()
    • New type option in dns()
    • New proxy option in http() to override the system default
  • Imp Web administration improvements
    • Script editor improvement
      • Custom input controllers for CSV files using schemas
      • CSV import using custom delimiter
      • Syntax highlighting for JSON files
      • Scratchpad for quickly writing and running code
    • History and queue search support >= and <= operators
    • Moved catch-all domain settings to virtual server configuration
    • Moved SSH, HTTPS and FTP TLS keys to host server configuration
  • Imp System distribution improvements
    • Ability to configure HTTP proxy, used by all HTTP clients throughout the system
    • Ability to clear individual entries from built-in DNS cache
    • DHCP support for DNS resolvers
    • Configuration now accepts / in IDs, used for folders in the script editor
  • Imp Updated system packages
  • Bug Fix issue with lagg network interfaces on boot
  • Dep Important changes
    • The is_number() function to no longer return true on boolean variables
    • Removed $tlsprotocol, $tlscipher and $tlskeysize variables from RCPT script
    • Removed calling a function as a string from cache
    • Removed Deliver() from post-delivery script
    • The Quarantine() function's option parameter must be an array
    • Removed system_default_transport
    • Renamed processes dlpd and queued


Released on 2018-11-01

  • Imp Added a crypt() function
  • Imp Updated to Sophos


Released on 2018-10-03

  • Bug Fix issue where ldap_bind() return error (-1) rather than failure (0) on a failed bind
  • Bug Patch libspf2 to completely deprecate the SPF record type in favor of TXT
  • Dep Show deprecation warning for transports without explicit bounce destination, and domain cluster overrides


Released on 2018-09-20

  • New SMTP server scripting features
    • Added SetHELO(), $saslauthed and $saslusername to HELO script
    • Added "changes" option to GetMailFile() to include message modifications
    • Support for meta-data queries in GetMailQueueMetric()
    • Preserve 7bit ASCII when the modifying messages with MIME.setBody if possible
  • Imp Script language improvements
  • Imp API improvements
    • Added API call mailQueueDownload to download a message (original or with modifications)
    • hslCacheClear, hslRateClear and statClear returns affected rows
    • mailQueueRetryBulk supports "retryts" (timestamp) and "retrydelay" (offset)
    • configImport support "revision" option for atomic imports
  • Imp Updated system packages
    • FreeBSD 11.2-RELEASE-p3
    • FreeBSD 11 quarterly packages
  • Bug Debug points were removed when clearing debug results
  • Bug The video console interface could not run programs (like ping)
  • Dep Important changes
    • Replaced radius_authen(), new implementation using Socket()
    • Removed tacplus_authen() and tacplus_author() (TACACS+)
    • Removed system_disk_cache configuration key (ATA disk cache)


Released on 2018-08-07

  • Bug Updated kernel to FreeBSD 11.2-RELEASE-p1 (SA-18:08)


Released on 2018-07-09

  • New SMTP server scripting features
  • New SMTP server features
    • Support for multiple IPs and netmasks in live staging
    • Require HELO option
    • Support for PKCS#8 private keys
  • Imp Script language improvements
    • Reworked DKIMVerify() function
    • Added array slice assignments and unset slices
    • Only return one result per domain in DKIMSDID()
  • Imp SMTP server improvements
    • Change default TLS ciphers to HIGH:MEDIUM
    • Updated Cyren outbound configuration
  • Imp Web administration improvements
    • Option to automatically restart live staging on changes
    • Color picker for area and pie charts
    • Stacked percentage mode for area charts
    • HTTP redirect option, useful for HTTP-to-HTTPS
    • Enabled HSTS and denies frame embedding (X-Frame-Options)
    • Many other small improvements
  • Imp Updated system packages
    • FreeBSD 11.2-RELEASE-p0
    • FreeBSD 11 quarterly packages
    • Unbound 1.7.0 which fixes one DNSSEC-related issue
    • Sophos
  • Bug Fix rated behaviour with IPv6, reloading and display on non-synchronised items
  • Bug Fix issue with DATA script scan functions caching and extended results
  • Bug Fix bug with negative indexes and append
  • Bug Deleting statistic values on graph page for all hosts didn't work
  • Dep Important changes
    • Switched to regular peer name checks in SetTLS
    • DNS functions no longer support hostnames as resolver server option
    • Renamed rate() option local to sync
    • Removed DKIMADSP()
    • Removed historic variables from connect script


Released on 2018-05-03

  • Bug Fixed regression in SMTP server affecting implicit TLS on port 465
  • Bug Fixed issue with FreeBSD 11.1-RELEASE-p8 (SA-18:03) affecting some CPUs
  • Bug Fixed TLSSocket.getpeercert() MD5 fingerprint option


Released on 2018-04-28

  • New Support for Cyren outbound anti-spam
  • New Support for SNI in smtp_lookup_*(), SetTLS() and SMTP server
  • New Script language features
    • for loops
    • static self-referencing support using the scope resolution operator (::)
    • Increase/decrease operator
  • Imp SMTP server scripting improvement
    • Added extended_result to ScanRPD(), ScanKAV, ScanCLAM, ScanDLP and ScanSA
    • Default DKIM canonicalization changed to relaxed
    • Added GetMetaData() to DATA context
  • Imp Script language improvement
    • Support for non-synchronized (local) counters in rate()
    • Support for Unicode surrogate pairs in json_*() to support plane 1 SMP
    • Scripting language optimizations (memory, comparisons, branching and loops)
    • Changed to libdouble-conversion from David M. Gay's dtoa
  • Imp SMTP server improvements
    • Asynchronous connection processing
    • Added millisecond precision to log files and remote syslog
    • Allow hyphen characters in metadata fields
  • Imp Script editor improvements
    • Completion items for built-in variables
    • Parameters, return type and description for completion items
    • Hover provider for built-in functions and variables
    • Added link provider for files
    • Code folding, tabs and minimap
  • Imp Web administration improvements
    • Halon script syntax highlight in plain-text configuration format
    • Added checkbox to disable a SMTP listener on the SMTP listeners page
  • Imp Support for ena network driver
  • Imp Changed to DHCP in default configuration
  • Imp Updated system packages
    • FreeBSD 11.1-RELEASE-p4
    • FreeBSD 11 quarterly packages
    • Cyren ctasd and ctipd
  • Bug Fixed issue with http() background requests connection errors
  • Bug The connect script was executed despite connections per IP limit
  • Bug The connect script replies didn't work with implicit TLS
  • Bug SMTP banner was sent despite connections per IP limit
  • Bug Fixed issue with client certificates
  • Bug Clearing chart data could cause it to be removed on another node
  • Bug Fixed issue with firewall script and passive FTP
  • Dep Important changes
    • Deprecated the ScanRPDAV() function


Released on 2018-01-29

  • Bug Updated ClamAV to 0.99.3 (due to various CVE's)
  • Bug Regression in code editor where file comments could not be added


Released on 2018-01-22

  • Reg Regression with AUTH LOGIN could cause $saslpassword to be incorrectly populated


Released on 2018-01-22

  • New Script language features
  • New Added GetTLS to AUTH, MAIL FROM, RCPT TO and DATA with STARTTLS info, tlsrpt and peer_cert
  • New AUTH script features
    • Support custom SASL mechanims
      • Added $saslmechanism, $saslstate and $saslresponse variables
      • Added Reply() function
    • Added ability to set username to Accept()
  • New Pre-delivery script features
  • New Post-delivery script features
  • Imp SMTP server improvements
    • Added support for client certificate requests in server HELO (per IP)
    • Added support for custom SASL methods
    • Set server preference for TLS ciphers
    • Explicitly handle NULL MX (rfc7505)
    • Removed line length limiting (8K SMTP, 256K (headerline), 512K header total)
  • Imp Web administration improvements
    • Redesigned script mappings page
    • Improved script errors in editor (with line decorations)
    • Search in code editor directly from top search
    • Faster loading in code editor
    • Redesigned forms with more client side input validation
    • Improved keyboard navigation
    • And a lot of overall improvements
  • Imp API changes
    • Added support for more fields in SOAP mailQueueUpdateBulk and also duplicate
    • Added support for program argument in SOAP hslCacheClear
  • Imp Improved Sophos antivirus detection by using CXmail
  • Imp DLP engine now supports regular expression modifiers
  • Imp Improved performance of libdkim++
  • Imp Allow "." delimiter in all ID fields
  • Bug Received header "with ...SMTP..." always adds E on AUTH and STARTTLS
  • Bug Improved DSN parsing in GetDSN() with multiline headers
  • Bug Bug with behaviour on Quarantine() reject => false followed by Quarantine reject => true
  • Bug Fix bug with DKIM delivery block in Web UI
  • Dep Important changes
    • Aliased error_code to extended_result in smtp_lookup_rcpt()
    • Aliased all ssl_ options to tls_ in http()
    • Removed object [] syntax (in favour of class syntax)
    • Default action is now to block on script errors in firewall script
    • Made $connection and $transaction read-only in smtpd's context
    • $tlsprotocol, $tlscipher, $tlskeysize in RCPT TO context in favor of GetTLS()
    • If using the RULE syntax to ScanDLP() with regular expresssions, you may need to add modifiers to keep compatibility (eg. //i for filenames).


Released on 2017-12-04

  • Bug Fixed regression with $errormsg in Post-delivery
  • Bug Fixed regression with Deliver() in Post-delivery
  • Bug Fixed bug when importing some specific named keys
  • Bug Fixed bug when typing in script blocks using the simple flow editor


Released on 2017-10-30

  • Bug Fixes regression in file() function


Released on 2017-10-26

  • Imp Script language features
  • Imp Connect flow changes
  • Imp DATA flow changes
  • Imp Pre-delivery script script
  • Imp Post-delivery script changes
    • Always runs the delivery script (even for DELETE and BOUNCE)
    • Added an $action variabel DELETE, BOUNCE, RETRY
    • Added a SetDSN() to change DSN settings
    • Added options to Retry() function
  • Imp Script editor improvements
    • Added support for save using Ctrl/Cmd+s in CSV editor
    • Warning if there are unsaved changes when starting live staging
  • Imp Web administration improvements
    • Refreshed interface, for example search field and login session expiration in menu bar
    • Fixed support for renamed HTTP certificates when starting clustering
    • Show diff between hosts’ configuration when clustering
    • Ability to cancel pending disk grow/format
    • SHA-256 is used in new certificate generation
    • Message preview retains header letter case
  • Imp Updated system packages
    • FreeBSD 11.1-RELEASE-p2
    • New quarterly packages
  • Imp Ability to choose multiple addresses per SMTP listener
  • Imp Added a per-transport default bounce transport setting
  • Imp Added source metadata (_original_[message|queue|action]_id) to bounces
  • Imp Reworked SMTP errors
  • Imp LDAP profiles are migrated to use standard URIs, which allows for failover
  • Imp Firewall script now uses per-application filtering instead of ipfw divert sockets
  • Bug The "Line too long” error is now sent after END-OF-MESSAGE
  • Bug Fixed a missing SSL timeout in the SMTP client
  • Bug Fixed a syslog issue by properly using a blocking socket
  • Bug Fixed regression with system-storage- graphs and iostats command for some storage disks
  • Bug DSNs Arrival-Date wasn't properly set to the original message arrival date
  • Dep Important changes
    • Deprecated Deliver function in post-delivery script
    • Renamed GenerateDSN() to Bounce() in post-delivery script
    • Replaced DeliverWithDKIM() with DKIMSign() in simple flow compilations


Released on 2017-09-06

  • Bug TLS certificate regression caused by change in OpenLDAP 2.4.45 (ITS#8529)


Released on 2017-08-08

  • New Script language features
  • Imp Added status and NDR code options to Reject(), Defer(), Deliver(), etc.
  • Imp Web administration improvements
    • Redesigned toolbar on many pages
    • Spinning icon when running a script in code editor
  • Imp Updated system packages
    • FreeBSD 11.1-RELEASE-p0 with clang/LLVM 4.0.0
    • FreeBSD 11 quarterly packages
    • Sophos
  • Imp Detect Amazon Web Services' EC2
  • Imp Overall improvements and code modernization
  • Bug Failed to properly differentiate SASL failures in smtp_lookup_auth()
  • Dep The object cast operator


Released on 2017-06-22

  • New Script language features
    • Classes added with class keyword
    • Added is_object() function
    • Added static function Socket::AF() to Socket class
    • Added tls_verify_name option to SetTLS() and smtp_lookup_*
    • Added max_file_size option to http()
    • ScanDLP() function accepts rules as argument
  • New DLP engine now support file hashes of SHA2-256 and SHA2-512
  • Imp Script editor improvements
    • Sorting folders before files
    • Fixed header alignment of empty CSV files
  • Imp Web administration improvements
    • Show popover on ellipsis in email tracking
    • Fixed return to scroll position in on all pages
    • Simple flow editor styles are now flat
    • Simple flow editor comment is no longer a required field
    • Bulk update queued and quarantined messages
  • Imp Updated system packages
    • CYREN ctasd and ctipd
    • Sophos
    • HTML Purifier 4.9.3
  • Imp Aquire serial number and license without Internet via licenseImport API call
  • Imp smtpd now has a less aggressive default timeout
  • Bug $x["x"] did not throw error (non-existing variable)
  • Bug Corrected default HELO message in smtp_lookup_* function
  • Bug DLP engine reported a recursion error (instead of generic errors) on bad archives
  • Bug CYREN ctasd did not restart after license expiration


Released on 2017-05-10

  • New Live staging in pre/post-delivery (queue)
  • New Purge cached items from API (and web admin)
  • New Script language features
    • Modules with import keyword
    • Added get/setBody() to DATA script's MIME class
    • Added tls_default_ca and tls_verify_host options to SetTLS() and smtp_lookup_*
    • Added the none keyword
    • Added strptime() and ord() functions
    • Reworked code validation to support more advanced coding patterns
    • Loosen up syntax with () and ->
    • Nested named functions are now function scoped
    • Supports referencing files without file: prefix
    • Added explicit warning about Unicode whitespace
    • More dead-code eliminations
  • Imp Script editor improvements
    • Return to cursor position on commit
    • Supports folders via a dot . ID hierarchy convention and renaming IDs
    • Auto-complete context-specific function names
    • Many improvements to CSV editor (shows position, fixed headers, etc)
    • Search options for regular expressions and case sensitiveness
    • Running code in sandbox uses local checkout, and has a host selector
    • New save indicator, "save all" button and keyboard shortcut
  • Imp Web administration improvements
    • Generate X.509, DKIM and DANE on PKI page
    • Support changing ID of listner, flows and scripts, etc
    • Cluster delete on statistic legends
    • Re-added quick access to RPD and SA results in tracking
    • Quick access to revision page diffs by URL hash
    • Delete domain and domain aliases on SMTP server delete
    • Defer color now shown as purple
    • Fixed regressions with IE/Edge, DLP page, revision page timezone, stats, duplicate domains, etc
  • Imp Updated system packages
    • FreeBSD 11.0-RELEASE-p10
    • FreeBSD 11 quarterly packages
    • CYREN ctipd
    • Sophos
  • Imp Make searchlog use time hint for RSET message id
  • Bug Closure over function scope caused memory leak
  • Dep Removed dovecot_lookup_auth() and ident_lookup(), new implementations using Socket()
  • Dep Doesn't explicitly set $error in RCPT TO script any more


Released on 2017-03-16

  • Bug Web administration fixes
    • Updated htmlpurifier to 4.9.2
    • NTP field on Date and time page didn't work with multiple servers
    • Some disks weren't selectable on the Disks page
    • Script errors in Simple flow editor page caused template engine error
    • Clearing critical log always cleared the local log
    • Added poll delay on Dashboard page's CPU to show usage more accurately
    • History and queue page
      • Don't show queue information for quarantine
      • Re-added info field in listing
      • Re-added active queue/quarantine selector
    • Comment field on SMTP servers appeared in two places
    • Minor redesign of the Configuration revisions page to mark special revisions
    • Hide cluster synchronisation on Users page if there's only one host
    • Added redirects for old web admin URLs for bookmarks
  • Bug HSL function strftime was incorrectly returning in local time
  • Bug consoleui couldn't add new IP's if all were removed


Released on 2017-03-06

  • New Live staging; running a parallell SMTP config version for some connections, based on conditions
  • New Redesigned web admin with checkout/commit and diff with expressive configuration syntax
  • New SMTPUTF8 support
  • New SMTP server scripting features
    • Pre-defined connection $context variable, shared between all SMTP scripts
    • MAIL FROM script
    • SetSender/Recipient() in MAIL FROM and RCPT TO scripts
    • Added SetSenderIP/SetSenderHELO() to DATA scripts
    • Accept(), Reject() and Defer() in connect script
    • Disconnect flag to all Reject/Defer and Deliver functions
    • The SMTP scripts exposes all available variables (as they become available)
    • GetMailFile() in DATA, pre- and postdelivery scripts.
  • New Scripting features
  • Imp Configuration format
    • Allow config keys to contain a-z, eg. include "file:api"
    • New file key types to differentiate plain text from scripts
    • New SMTP listener settings for TLS, HAproxy and concurrency
    • Allow mounting of storage disk/partition by UFS label
  • Imp SOAP API
    • configKeysImport atomic commit with "expected head" id field
    • configKeysCheck to verify non-running configuration
    • mailQueueInTransit information about mailqueued's delivery attempts
  • Imp Updated system packages
    • FreeBSD 11.1-RELEASE-p0
    • FreeBSD 11 quarterly packages
    • CYREN ctasd and ctipd
  • Imp Anti-spam/virus database information command
  • Imp Being a major release, it features a large numbers of fixes and improvements
  • Dep Changed LSI RAID driver from mfi to mrsas, will affect users mounting mfiX by device name
  • Dep Script include from /cfg partition
  • Dep Firewall script's Block() ignore response
  • Dep DATA script's WrapMessage()
  • Dep Removed rate limits from acl_flow (moved to SMTP listener)
  • Dep Some config keys, such as system_user, service_ssh_*, ntp and syslog are no longer synched between hosts
  • Dep Renamed some config keys, such as acl_flow and mail_flow
  • Dep When upgrading an existing host, a swap disk needs to be added (2-8 GiB) or RAM increased to at least 3 GiB (preferable before the update) since swap files no longer works in FreeBSD 11.0


Released on 2017-01-10

  • Imp Added support for interfaces as gateway (route)
  • Bug Fix issue with smtpd and certain load balancers


Released on 2016-12-07

  • Bug Fix issue with dnsCacheFlush
  • Bug SASL always failed in smtpd after an unsupported method was issued
  • Bug Shutdown SSL connections more gracefully in smtpd
  • Bug Bug with HSL code check and barriers
  • Bug snmpd could produce error message on the console


Released on 2016-11-09

  • Imp Updated system packages
    • FreeBSD 10.3-RELEASE-p11
    • FreeBSD 10 quarterly packages
    • CYREN ctipd and ctasd
  • Bug HELO/EHLO hostname was not set for invalid domain names
  • Bug Recipient limit was decreased compared to previous releases
  • Bug License users export could fail


Released on 2016-09-27


Released on 2016-09-23

  • Sec Updated to FreeBSD 10.3-RELEASE-p8 that fixes OpenSSL CVE-2016-6304 and others
  • Imp Setting for and changes in smtpd's log verbosity


Released on 2016-09-08

  • Imp Enabled TCP_NODELAY on SMTP client socket
  • Imp More user friendly errors in mailQueueRetry, mailQueueDelete and mailQueueBounce API
  • Imp Updated to htmlpurifier 4.8.0
  • Bug Properly reload scripts with deleted include files when re-added
  • Bug Fixed regressions with XCLIENT, implicit TLS and IP flow statistics


Released on 2016-09-05

  • New ident_lookup() function to lookup users over the ident protocol
  • New $senderport in IP, RCPT TO and DATA context
  • Imp Postfix is not longer the default MTA


Released on 2016-08-29

  • Imp Improvements in the script editor
    • Added support for matching closing brackets
    • Variable highlighting in strings
  • Imp Updated system packages
    • CYREN ctipd
    • FreeBSD 10.3-RELEASE-p7
  • Imp Improve detection of password protected ZIP files
  • Bug Fixes in REST API and SOAP proxy
    • hslRate() regression with affected rate pie charts
    • mailQueue() regression with affected email tracking metadata display
  • Bug Fix delivery to numeric MX with DANE


Released on 2016-08-03

  • New Added an interface for editing CSV files to the script editor
  • New Added a revision-based diff utility to the script editor
  • Imp Switched to Monaco (MS VC code) and enabled autocompletion
  • Imp Added paging to the SOAP function configRevisionLog
  • Imp Added retry functionality to background http() requests
  • Imp Added extended_result option to the http() function
  • Imp HSL now supports keyed assignments when destructing arrays
  • Imp Updated system packages to the latest quarterly; such as
    • FreeBSD 10.3-RELEASE-p6
    • PHP 7.0.9
    • ClamAV 0.99.2
    • PostgreSQL 9.3.13
    • nginx 1.10.1
  • Bug Failed http() requests always returns None on errors
  • Bug Always send an authentication header on "401" errors (fixes issue with some SOAP clients)
  • Bug Web admin interface fixes
    • Increase timeout to prevent "504" timeout errors
    • File viewer couldn't show files larger than 2 GiB
    • Fixed a rare crash which chould occur with certain setups
  • Dep Config key mail_transport's parameter sasluser/pass renamed to saslusername/password
  • Dep Config key mail_server's parameter sasl_tls renamed to sasltls
  • Dep Removed the GuessAttachmentType() function


Released on 2016-05-26

  • Imp Switch to nginx and php-fpm (from Apache 2.4 and mod_php)
  • Bug Fixed issue with reloading some configurations
  • Bug Fixed regression in the new SOAP proxy which was introduced in 3.5-r1
    • getTime() had the wrong default UTC mode
    • It didn't handle 401 (Unauthorized) errors correctly
    • Cluster sync (clusterd) didn't work with pipes in configuration values
    • Cluster overrides couldn't be added


Released on 2016-05-20

  • New Added SOAP function mailQueueUpdateBulk to set various fields (quarantine, transport, etc.)
  • New Added MIME.getHeaderNames() to the DATA MIME object
  • Imp Added an option array to MIME.get/set/delHeader() to address a specific header by index
  • Imp Replaced gSOAP with a REST/JSON API and a PHP SOAP proxy for compatibility
  • Bug Fix problem when clearing empty rate entries


Released on 2016-04-18

  • New New HSL scripting editor
  • New Added MIME.send() to builtin MIME object
  • New Added MIME.getBody() to builtin MIME object
  • New Added MIME.toString() to builtin MIME object
  • New Added ?? (null coalescing operator) to HSL
  • New Added include_once to HSL
  • New Added object and this to HSL
  • New Added destructuring assignment to HSL
  • New Added support for HAProxy's proxy protocol
  • Imp Based on FreeBSD 10.3
  • Imp Disabled SSLv3 for inbound SMTP connections
  • Imp Added support for sourceip as a netaddr:X in smtp_lookup_rcpt() and smtp_lookup_auth()
  • Imp Updated components
  • Imp Deliver() and Quarantine() now supports an option array
  • Bug Fix problem with partial updated Sophos databases
  • Bug Fix problem with where the flow wasn't reloaded if a include file was changed
  • Bug Fix problem with mail() where transportid wasn't used
  • Bug Fix problem with IE11 and placeholders in flows
  • Dep Undocumented CopyMail() and DirectDeliver() in favour of Deliver() arguments
  • Dep Deprecated GuessAttachmentType()
  • Dep Removed template support from the mail() function
  • Dep Removed the trigger URL configuration key from the quarantine
  • Dep Removed the Blacklist() function
  • Dep Removed the ScanBWList() function
  • Dep Removed the ScanSPF() function
  • Dep Removed the deliver_type and deliver_args arguments from DeliverWithDKIM()
  • Dep Removed support for switch with variable assignment
  • Dep Removed support for function without argument list
  • Dep HSL returns None (instead of an empty string) when dereferencing a non-existing elements in arrays


Released on 2016-03-02

  • Sec Addresses the DROWN vulnerability (CVE-2016-0800)


Released on 2016-02-20

  • Bug Fix regression in CYREN's ctipd 4.0.32 (included in 3.4-r4) by rolling back to 4.0.31


Released on 2016-02-16

  • New DATA context MIME class for working with an email's body
  • New Standard library MIME class for creating MIME parts
  • New closures in addition to lambda functions
  • New dnscname() function to resolve CNAME records (RR)
  • New is_function() function to check if data is a function
  • New array_sort() function to sort arrays
  • New HSL cache statistics in SOAP and web admin
  • Imp The ScanDLP() function can return where matches were found with partid option
  • Imp Added RCPT TO context $tlsprotocol, $tlscipher and $tlskeysize variables
  • Imp Clear HSL rate()s based on a query (namespace and/or entry) over SOAP or web admin
  • Imp Updated components
    • CYREN IP reputation (ctipd) and RPD (ctasd) engines
    • FreeBSD 10 quarterly packages
    • FreeBSD 10.2-RELEASE-p9 fixing CVE-2015-3197 (SSLv2 disabled by default)
  • Dep Removed the system_default_quarantine configuration key
  • Dep Removed the GetMailTransport() function
  • Dep Removed the DeliverAsSpam() function
  • Dep Deprecated the WrapMessage() function
  • Dep Renamed the domain type any (catch-all) to the literal * in the configuration (converted)
  • Dep Many default settings were moved to the user configuration (making them removable)


Released on 2015-12-07

  • New Added anonymous functions and named function pointers
  • New Added array_filter(), array_map() and array_reduce() functions
  • Imp The in_file(), in_array() and pcre_replace() may take a function callback as argument
  • New Added csv_explode() function
  • New $serverip in AUTH, RCPT TO and DATA context
  • Imp Options tls_protocols and tls_ciphers added to SetTLS() and smtp_lookup_*
  • Imp Reconnect without TLS if STARTTLS fails for optional TLS connections
  • Imp SSLv3 disabled by default on outbound SMTP connections
  • Imp Renamed DKIM function to DKIMSign(), which may return signature as a string
  • New Added csv_explode() function
  • Imp Deny() in SOAP API may give a reason as faultstring
  • Imp Improve logging in mailqueued (with queueid)
  • Imp Setting syslog_use_fqdn which sends the FQDN in syslog messages
  • Imp Overall elegance, design and usability improved
  • Sec Updated FreeBSD to 10.2-RELEASE-p8 which fixes CVE-2015-3194 to 3196
  • Bug Improved DNS reloading in HSL; affected the spf() and ldap_*, tacplus_* and radius_* functions


Released on 2015-11-04

  • New DANE support
  • Imp Added settings page for CYREN
  • Imp Added extended_result option to the dns*() functions
  • Imp Added pretty_print option to json_encode()
  • Imp Added $receivedtime to pre- and post-delivery contexts
  • Imp SOAP mailQueue*Bulk() functions returns number of affected messages
  • Imp The default configuration now contains only one HTTPS web admin interface
  • Imp Many small changes improving performance, stability, elegance, design and usability
  • Bug Regression in ScanRPD() with ctasd for "valid-bulk"


Released on 2015-10-19

  • New Sophos anti-virus (savdid) engine
  • New Spam classification report buttons on email tracking page
  • Imp Added explode() limit argument
  • Imp Key size option when creating private keys on PKI page
  • Imp Many small changes improving performance, stability, elegance, design and usability
  • Bug Updated CYREN ctasd settings to better cope with connection errors
  • Bug Updated Net-SNMP to fix memory leak in snmpd


Released on 2015-09-23

  • New Based on FreeBSD 10.2
  • New SetTLS function to the pre-delivery context
  • New pie chart function q() to graph queue/quarantine searches
  • New Ability to disable services (such as. SNMP, FTP and SSH)
  • New RCPT flow block for DNSBL and IP reputation
  • Imp Zoomable graphs
  • Imp Save graph layouts per user
  • Imp Pie chart supports custom refresh intervals
  • Imp Updated components
    • CYREN IP reputation (ctipd) and RPD (ctasd) engines
    • Postfix 3, PostgreSQL 9.3.9 and ClamAV 0.98.7
  • Imp Scripting page may easily run scripts from the (virtual text) file store
  • Imp Optionally turn on totalhits in SOAP API
  • Imp Switch between HTML and plain view in message preview
  • Imp The AUTH rate limit flow block defer rather than reject when exceeded
  • Imp Replaced rpcmplexd with an async web admin implementation
  • Imp Overall performance, stability, elegance, design and usability improved
  • Dep Updated OpenSSL requires DH key size of more than 512
  • Dep Graphs now include "dots" in their names (previously replaced with a dash)
  • Dep SOAP API changes
    • mailQueue's totalHits renamed to totalhits (lowercase)
    • Replaced loginFullname() and loginRemoteHost() with login() return object
    • Removed loginCheckPermission()
  • Dep End user interface considerations
    • If you're using display-stats (graphs) you need to update the end user
    • Toggle preview on HTML/text message part is now supported


Released on 2015-06-04

  • New Added an "update" function to the cache that can pick expired (but valid) items
  • New Added a background flag to the http function for async, non-response calls
  • New Added a hash function, useful together with http()'s background mode
  • Imp Added a syslog port settings
  • Imp Support implicit SSL (wrapper mode) by specifying "465" as the first listener port
  • Imp Raised the free disk requirement to 1 GiB in order to receive new messages
  • Bug Fix regression when enabling the DLP process maildlpd and viewing license users
  • Bug Fixed augmented assignment (+=) behavior with function calls when dereferencing arrays
  • Bug First run didn't add the second domain to the relay table
  • Enduser If you use end-user logging, you may want to employ the new http background feature


Released on 2015-05-11

  • New Validate HSL scripts when saving a text file (in file store)
  • New Added a Defer() function to the AUTH flow
  • Imp Automatically detect and support all network interfaces supported by FreeBSD
  • Bug The backend could crash when using LDAP in the API (auth) script
  • Bug Regression in web admin causing some requests to fail due conservative settings
  • Bug Adding new cluster nodes could fail if remote systems were unsorted (by id)
  • Dep SOAP function configValidateArgument replaced with hslCheckScript


Released on 2015-04-27

  • Imp return statement in HSL without a value
  • Bug ESC key in console may not work as expected if pressed twice rapidly
  • Bug Temp disk may become full


Released on 2015-04-22

  • Imp Updated a lot of FreeBSD packages to quarterly
  • Imp Support for Intel(R) 10Gb (ix) network adapters
  • Bug SOAP request could be delayed with up to 1 second on idle systems
  • Bug Adding too large text files in the File store now returns an error
  • Dep switch statement in HSL with explicit variable storage


Released on 2015-04-16

  • New dovecot_lookup_auth() to authenticate using Dovecot's authentication protocol
  • New Done() makes it easier to do advanced routing
  • New pcre_quote() makes it possible to use regex on user input
  • New Preview on PKI page
  • New Review & save in plain-text editor
  • Imp http() function may skip SSL/TLS verification with ssl_verify_peer = false
  • Imp Performance improvements in HSL's file handling
  • Imp Updated third-party libraries
  • Imp Easier to use CSV editor in web admin
  • Imp Add support for keep-alive and gzip/deflate encoding in SOAP API
  • Imp Support for QLogic NetXtreme II (bcm) network adapters
  • Imp Fixed bug in "release duplicate" regarding delta files
  • Imp Fixed bug with creating a cluster over HTTPS
  • Dep ScanSPF() in favor of spf()
  • Dep ScanSARules() in favor of ScanSA(["rules"=>true])
  • Dep Quarantine profile's trigger URL


Released on 2015-03-02

  • New VHD image runs on Microsoft Azure
  • New DHCP addressing, default on Azure and GCE
  • Imp Support hardware-assisted software RAID for many vendors such as Intel
  • Imp Support for VirtIO (vtbd) and Xen (xbd) disks
  • Imp Support for Intel 10Gb (igb) network adapters
  • Imp Ctrl+A/E in web terminal
  • Bug Fixed regressions in web admin


Released on 2015-02-16

  • New Updated to FreeBSD 10.1
  • New Added transparent proxy features
  • New Added new features to the scripting language (HSL)
    • SetMetaData() and GetMetaData() to pass data between DATA and queue scripts
    • syslog() function
    • unset() statement
    • SetRecipient() in pre-delivery script
    • $senderhelo in pre-delivery script
    • $transfertime in post-delivery script
    • $saslusername in queue (pre- and post-delivery) script
    • Raw strings, like ''raw string''
    • Allow globalview() and dnsbl() to be executed from hsh
  • New Extended search filters (HQL) syntax
    • metadata.field= corresponding to SetMetaData()
    • size= (message body)
    • helo= (HELO/EHLO hostname)
  • Imp Web admin interface
    • Refreshed with many improvements (in layout and functionality)
    • The icons and images are vectorized (to support retina/HiDPI displays)
    • Button to reset (RRD) graphs
    • Custom score popup for Internet Explorer (which allows spam scores and refid to be copied)
  • Imp Added "msgsize" and "msghelo" to SOAP API
  • Imp SMTP balancing uses uniform distribution of traffic
  • Imp Support for QLogic 10Gb (bxe) network adapters
  • Imp Searching text logs is a lot faster
  • Imp mail_queue_threads may now be raised
  • Imp Updated 3rd-party components such as CYREN (8.0.110) and Kaspersky (
  • Dep Built-in batv_*() is removed, use the HSL implementation
  • Dep Renamed "gmt0" to "utc" in SOAP API
  • Dep $recipientdomains and $recipients in DATA context are now read-only
  • Dep http() return empty results on non 2** responses
  • Dep GetAddressList() returns empty list on parse errors instead of throwing an exception
  • Dep Web admin's flow block "Add header" appends a new header instead of using SetHeader()
  • Dep GetID() is now removed, was deprecated in 3.0
  • Dep $directprocessing is now removed, was deprecated in 3.2


Released on 2014-12-23

  • Bug Stability fixes in mailscand
  • Bug Fixes regression that caused some admin and clusterd requests to fail


Released on 2014-11-17

  • Imp SetSender() in pre-delivery (queue) script
  • Imp LSI MegaRAID tool (mfiutil) available
  • Imp hslCacheClear() SOAP API may clear a specific namespace/function
  • Imp Added SOAP API mailQueueRetryBulk() function
  • Imp Added 'duplicate' option to SOAP's queue function for cloning messages(s) from an archive
  • Imp Setting mail_log_size to zero will disable logging (even realtime)
  • Imp Disable SSLv2 and SSLv3 on administration UI (and SOAP)
  • Imp Add custom headers to HSL mail() created messages
  • Imp pcre_replace() HSL function
  • Imp Variable substitution with ${name}
  • Bug 'Next retry' could be presented with the wrong timezone (didn't affect delivery)
  • Bug Memory usage could show erroneous on 64 bit platforms
  • Dep SOAP API mailQueueRetryAll() removed (reimplemented with mailQueueRetryBulk)
  • Dep SOAP API devList() removed


Released on 2014-10-01

  • New Added LMTP support, useful for more efficient Dovecot delivery
  • Imp retry=x in search filter, useful to show delayed messages
  • Imp Added "\r\n\t" syntax in HSL strings
  • Imp Added HSL http() max-time timeout, also renamed connect_timeout
  • Imp Added the SMTP ping command
  • Imp Decouple antivird and clamd for more efficient RAM utilisation
  • Imp New installations are 64-bit, with VMware "guest OS" set to "freebsd-64"
  • Imp Review before save on virtual text files and DLP pages
  • Imp New certificates are generated with SHA256
  • Imp Faster clearing of rate limits (may interrupt garbage collection)
  • Imp Faster connect() timeout in smtp_lookup_rcpt()
  • Imp Lower connect() timeout to 30s (like Postfix)
  • Bug Problem when searching rates in web user interface
  • Dep Undefined values in HSL was branched as true (not false)


Released on 2014-09-11

  • Sec Updated to FreeBSD 10.0-RELEASE-p8 which addresses new OpenSSL bugs
  • New Multiple "shadow" port support for mail listener, for better pool utilisation
  • New Added SetHELO() function and $sourceip to pre-delivery script
  • Imp Global HSL variables are committed when calling a second function
  • Imp New chart for swap operations, as complement to swap usage chart
  • Imp Updated Kaspersky anti-virus engine to 8.3
  • Imp Some search queries are maintained when browsing cluster nodes
  • Imp Many 64-bit fixes in preparation for upcoming 64-bit release
  • Imp Display Kaspersky virus base version in log on startup
  • Bug Rate limit page support any valid UTF8 as namespace and entry
  • Imp Overall improvements throughout the system
  • Bug Fixes NTP client regression
  • Bug Fixes VMware guest info regression
  • Bug Link aggregation fixes; omitted from cluster, and brings up all ports
  • Bug Fixed cluster system update page's node link
  • Bug Fixed cluster configuration override page with multiple fields per key
  • Dep Forbids ambiguous HSL concatenation of numbers


Released on 2014-08-20

  • New Implemented a pre-delivery (queue) script for dynamic transport behaviour
  • New Added the log() function which can be used for things such as GeoIP lookup
  • New Added the timelocal() function to get time in local time
  • New Link aggregation support
  • Imp Support using system disk as storage on bare-metal installs, or if the virtual disk is grown
  • Imp The post-delivery (transport) script is unified for all transport, on the flow page
  • Imp The GetHeaders() function can be used to fetch all headers as a multidimensional array
  • Imp Allow multiple include of same file in HSL
  • Imp The post-delivery (transport) script executed for successful deliveries, useful for external logging
  • Imp Added $actionid variable to DATA, queue and transport flows, for tracking of recipients, etc between flows
  • Imp Loopback addresses configuration, useful for DSR load balancing
  • Imp Change VLAN and link aggr. settings from console
  • Imp Updated FreeBSD packages to latest quarterly
  • Imp Auto-configuration on Google Compute Engine
  • Imp Many minor improvements
  • Bug Changed SpamAssassin queue algorithm to decrease wait time
  • Bug Issue when searching logs larger than 2 GiB fixed
  • Bug Issue where Kaspersky wrote files to /tmp fixed
  • Dep Disabled Bayesian by default


Released on 2014-06-18

  • Bug Resolved uncommon stability issue


Released on 2014-06-10

  • Sec Fix OpenSSL CVE-2014-0195, 2014-0221, 2014-0224 and 2014-3470
  • New DiscardMailDataChanges() function, allowing different data changes for different CopyMail()s
  • New Support for variadic function syntax in HSL
  • New Added spread operator (argument unpacking) to HSL
  • Imp Added executable file (by file name, even in ZIP and other archives) blocking to antivirus block
  • Imp Performance improvements in ScanDLP for efficient file extension scanning
  • Imp Encode headers as quoted-printable instead of Base64 for readability
  • Imp View ScanRPDAV (VOD) results in web admin's message tracking
  • Imp Improved virtual text file editor, with HSL code support (great for includes)
  • Imp Removed deprecated browser-specific CSS3 options (Mozilla, Opera)
  • Imp Enable auto-scroll on keypress in web terminal
  • Imp Many minor improvements


Released on 2014-05-23

  • New Added SetDelayedDeliver() function to HSL for extra queueing time before delivery
  • New Added builtin and global control structures to HSL functions
  • New Added json_encode() function to HSL
  • Imp Added max depth option HSL's ScanDLP(), useful for file extension matching in archives, eg.
  • Imp Added named match groups to HSL's PCRE functions
  • Imp Adding filtering on retry and sender field to HSL's GetMailQueueMetric function
  • Imp Updated SpamAssassin to 3.4.0
  • Imp Web terminal (command page) support pasting with Ctrl+V
  • Imp Always prefer IPv6 when clustering with hostnames
  • Imp Support RFC 2231 header parsing
  • Imp Various web admin enhancements, such as links from quarantine page to tracking
  • Imp Overall performance and reliability improved
  • Bug Resolved issue where adding and removing headers with zero offset conflicted


Released on 2014-04-28

  • Dep Deprecated updateNetwork SOAP API function
  • Dep Deprecated HSL's null coalescing operator
  • New Added default function arguments in HSL
  • Imp HSL's header functions decode and refold by default
  • Imp Added msgqueueid to mailHistory API and historyid search filter
  • Imp Overall performance and stability improved
  • Bug HSL's per_message cache now works in functions
  • Bug Pressing back button in Firefox no longer reset forms


Released on 2014-04-08

  • Sec Patched OpenSSL "heartbleed" vulnerability (CVE-2014-0160)
  • Dep Deprecated BATV functions in favor of HSL implementation
  • New Introduced array slicing to HSL
  • Imp HSL's DeliverWithDKIM() function can load private key from variable, such as http() request
  • Imp New HSL variable $tlsstarted in AUTH and RCPT flow
  • Imp New HSL variables $messageid and $queueid in transport flow
  • Imp Message queue IDs (exposed as $queueid or via SOAP API) upgraded to 64-bit integer
  • Imp Improved http()'s POST data serialisation and added "response_headers" option
  • Imp Added a gethostname() function to HSL
  • Imp Many performance optimisations in HSL
  • Bug Fixed Firefox quirk with forms resetting when going back on page
  • Bug HSL's dnstxt() concatenate multiple strings with space
  • Bug Clustered line charts now merge new legends from secondary results
  • Bug Display error message if unable to clear cluster's HSL cache


Released on 2014-03-10

  • New Extended the HSL scripting language
    • GetMailQueueMetric() to implement usage quotas in queues
    • json_decode(), is_string() and is_number() for making API calls, etc
    • http() function now supports custom request method and headers
    • %= and **= operators
    • Switch statements validates that a switch is directly followed by a case or default label
  • Imp Updated SOAP API
    • configKeys() now takes "key" (filter) argument which is also exported in $soapargs[]
    • configKeySet() allows partial updates (not all parameters needs to be specified)
    • hslRate() and hslRateClear() exports "ns" and "entry" to $soapargs[]
    • hslRate() and statList() now implements pagination and backend-side search/filtering
    • mailQueue() and mailHistory() includes msgsasl for username and msgts0 for GMT timestamp
    • mailQueue() and mailHistory() supports filtering on sasl=
  • Imp SASL username can be viewed on tracking page
  • Imp DSN messages now include original header "Undeliverable: This was the original header"
  • Imp Support for Broadcom's bge NICs
  • Bug Web admin interface fixes
    • Netcat (nc) command with custom port was not correctly documented
    • Active HTTPS sessions may not be degraded to HTTP
    • The authentication script test sandbox could produce the wrong output
    • Some quarantine retention policies were kept for too long, affected users need to reselect their intended policy


Released on 2014-02-12

  • Bug Xen PVHVM network driver "xn" was not detected properly
  • Bug The command API could return empty results under extremely rare circumstances
  • Bug The web admin's hardware page didn't list "ada" devices


Released on 2014-02-10

  • New Hyper-V para-virtualization; gigabit network, VLANs, SCSI disks, etc
  • New Virtio (KVM) para-virtualization; improved network and disk performance
  • New VMware VMXNET3 support
  • New Xen PVHVM support
  • New Line graphs showing disk IOPS and latency
  • New Show message modifications when browsing queued or quarantined messages
  • New The DATA flow registers $recipients and $recipentdomains
  • New New HSL function abs()
  • New Added tcpdump to API and web administration
  • Imp Based on FreeBSD 10 and compiled with clang
  • Imp LDNS and Unbound as replacement for BIND (as resolver and DNS cache)
  • Imp Automatically grow storage disk when resized in hypervisor
  • Imp Overall throughput increased by careful profiling
  • Imp Large number of HSL scripting language optimisations, such as
  • Imp More concise and helpful logging throughout the system
  • Imp Increased swap partition size to 2 GB
  • Imp Updated all 3rd-party components
  • Imp Show warnings if no storage disk is found or configured
  • Imp Rebrand Commtouch as CYREN
  • Imp Enable some SpamAssassin DNSBLs by default
  • Imp Cache DKIM signature for all recipients
  • Imp Overall improvements
  • Bug DKIM DNS generator lacked _domainkey part
  • Bug Under certain circumstances, the command API could fail
  • Bug Reload flows when file store objects are changed
  • Bug Fixed issue with pre-boot command line shutdown
  • Dep Deprecated the second argument to HSL's round() function
  • Dep Deprecated the DATA flow's $result and $directprocessing predefined variables
  • Dep New (S)ATA storage disks are identified as "ada" instead of "ad"
  • Dep At least one DNS server is necessary; unbound is not configured to traverse from the DNS root


Released on 2014-01-16


Released on 2013-12-20

  • Imp Refactoring for performance improvements
  • Imp Warn about 32-bit hosts as preparation for 64-bit releases
  • Imp Estimates the number of mail tracking search results
  • Imp Changed various settings from byte to megabyte
  • Imp Overall web administration improvements
  • Bug Unable to add cluster nodes with literal IPv6
  • Bug Regression on graph page's rate counter


Released on 2013-11-21

  • New Clustered rated process for improved rate limiting
  • New GetAddressList() function in DATA flow
  • New is_subdomain() HSL function
  • Imp Support sub-domains i black/whitelists (.example.com)
  • Imp Search for transports on tracking page
  • Imp Web admin terminals now work in background tabs
  • Imp IPv6 cluster support
  • Imp Always give a authentication failure reason in mailpolicyd
  • Bug Catch exception in video console for systems without serial number
  • Bug Do not create sessions for unauthorized web admin clients


Released on 2013-10-29

  • Imp Improved mail queue/quarantine delivery performance
  • Imp Significantly improved mail tracking performance
  • Imp Support for more than two NTP servers
  • Imp Returns to current page, when fixing TLS fingerprints
  • Imp Warns about Cisco SMTP fixup which is known to cause issues
  • Imp Shows inode usage on storage/hardware page
  • Imp Other minor improvements
  • Bug Detect scrolling more accurately when viewing logs
  • Bug Windows users couldn't type @ in the terminal


Released on 2013-10-10

  • Imp Improved Bayesian performance using SDBM database
  • Imp Cluster overview page shows new software versions
  • Bug Regression causing issues for users with ATA write cache enabled


Released on 2013-10-09

  • New Based on FreeBSD 9.2
  • New Support for KVM VirtIO networking
  • New Create pie graph from rate() information with r()
  • New Buy licenses directly from within product
  • Imp Improved rate control page (with thresholds)
  • Imp DLP engine inspects more archive formats
  • Imp Download messages as ZIP instead of tar
  • Imp Restructured menu layout
  • Imp Script editor behaviour in Firefox and Internet Explorer
  • Imp Overall performance improvements


Released on 2013-09-23

  • Imp Better user experience for Hyper-V deployments
  • Imp Pages loads faster thanks to GZIP compression
  • Imp Overall performance improvements
  • Bug Rebooting was required to effectuate some license changes


Released on 2013-09-09

  • New DMARC flow block and ScanDMARC function
  • Imp Convert white/blacklist input to lower case
  • Imp Optimized history/mail API (database API)
  • Imp Optimized message logs extractions (from 4 minutes to ~0 seconds)
  • Imp Improved charset detection (ICU)
  • Imp Improved escape sequence in VMware terminal (detach keyboard)
  • Imp Search for scores and RPD ID in tracking
  • Imp Improved SPF caching
  • Imp Updated Ace editor and Kaspersky anti-virus engine
  • Bug IE9 had problems with search on tracking page
  • Bug Searchlog didn't always find message logs (if incomplete log)
  • Bug 7-zip couldn't open downloaded tar (message) archives
  • Bug Paging with a quarantine folder selected


Released on 2013-08-12

  • Imp SMTP client prefers "strongest" SASL method announced by server
  • Bug Memory leak in the console UI


Released on 2013-08-09

  • Bug Initial vApp configuration imported multiple times
  • Bug XML warning on non-VMware system's interface page


Released on 2013-08-07

  • New Network setup guide in OVF (VMware vCenter)
  • Imp Create cluster with optional TLS
  • Imp Test end-user API with from scripting page
  • Imp Added an extra certificate (pki:2) for SMTP
  • Imp http() support HTTPS
  • Bug Clustering with SSL certificate chains


Released on 2013-07-24

  • New Black/whitelist module for end-user interface
  • Imp Full-text search in subject lines
  • Imp Clear search query on tracking page
  • Imp Return to referring page when editing profiles, etc
  • Imp Export users per domain on license page
  • Imp Prefer outbound CRAM-MD5 authentication method if supported
  • Bug BATV interoperability improvements


Released on 2013-07-05

  • Imp Search filters are now case-insensitive for from/to/ip
  • Imp Blacklist module in RCPT TO flow
  • Imp Dragging/selecting an interval in a graph opens tracking
  • Imp Various improvements to the DLP engine
  • Imp Filter commandRun and fileRead arguments in authentication script
  • Imp Compare IP addresses with in_network() in white/blacklists blocks
  • Imp Discard mailqueue's pre-fetched work queue when deleting messages


Released on 2013-06-25

Released on 2013-02-21

  • Imp Microsoft Hyper-V legacy network driver support
  • Bug Some freshclam still couldn't download daily updates

Released on 2013-02-18

  • Bug ScanSA() could miscalculate the estimated queue wait time
  • Bug Workaround for freshclam failing to update since ClamAV didn't create a daily diff

Released on 2012-10-15

  • Imp Overall improvements
  • Bug Resolved bug in recipient flow's blacklist module's script generation
  • Bug Resolved statistics bug that could create spikes during database failures
  • Bug Resolved database issues generating warnings under rare circumstances
  • Bug Cluster overview's reporting could fail to load


Released on 2012-10-09

  • New Based on FreeBSD 9
  • New ScanSA() got fair queueing, time estimation, size limit, etc
  • New Boot-time management via bootsysmgr
  • New TTL argument to IP Policy's Allow() and Block()
  • Imp Improved performance
  • Imp Improved watchdog with better logging
  • Imp Save RAM by only starting maildlpd if ScanDLP() is used
  • Imp In case of storage disk problems, boot without storage
  • Imp Allow messages to be viewed instead of downloaded in quarantine
  • Imp GetDSN() and GetDSNHeader() to support text/rfc822-headers
  • Imp DNS shuffling based on MessageID (always the same per message)
  • Imp Reboot/shutdown is significantly faster
  • Bug Missing {FOOTER} replacement in WrapMessage
  • Dep The following SOAP API's has been removed:
    • System_Reboot_Hard
    • System_Shutdown_Hard
    • System_Online_Status
    • Management_SetStorageRecover
    • Management_StorageRecoverStatus
    • Management_SetStorageMigrate
    • Mail_Domain_Report
    • Config_Diff
    • System_GetKey("system_config_revision")
    • System_Command_Run_XXX (replaced with by System_Command_Run)
    • Management_GetArguments' filter parameter

Released on 2012-09-07

  • Bug Regression in backend's SOAP server

Released on 2012-09-04

  • New Deliver to an MX of a hostname using lookup-mx:hostname
  • Imp Configuration diff is coloured in red and green
  • Imp SPF module is moved to content flow in default configuration
  • Imp SOAP API's WSDL file moved to /remote/?wsdl
  • Imp SOAP API deprecated key system_config_revision, use GetHistoryEntries
  • Imp SOAP API deprecated Config_Diff
  • Imp SOAP API's gSOAP updated
  • Imp Disallow saving a configuration with no changes
  • Imp Web administration checkbox labels made clickable
  • Imp backend's watchdog report error codes
  • Bug SPF couldn't verify IPv6 senders
  • Bug The configuration partition wasn't checked properly
  • Bug Monotonic time was not used for all timers
  • Bug Visual bugs in web administration resolved

Released on 2012-07-18

  • Bug Fixes various spam assassin errors
  • Bug Fixes clustering page when clustering is not configured


Released on 2012-07-04

  • New Introduces pattern analysis rules from Halon
  • New Introduces valid bulk (RPD score 40) for non-spam
  • Imp Rate limits now summarized in cluster
  • Imp Display of rate limits and licensed users loads faster
  • Imp Table elements' full content shown on mouse over
  • Imp Improved cluster navigation behavior
  • Imp Updated 3rd-party libraries
  • Imp Faster spam-assassin updates
  • Imp Faster rendering of log files
  • Bug IP policy charts was not available on overview page
  • Bug Spam assassin error (introduces in previous release)
  • Bug Fixed MIME-decoding in quarantine


Released on 2012-06-08

  • New French translations
  • Imp Pattern analysis' (SA's) score values are reported in Tracking/History
  • Imp HSL's ScanSARules() can return score values
  • Imp HSL's Quarantine() has new reject and final action options
  • Bug Issue with HSL's Quarantine() $recipient resolved

Released on 2012-05-08

  • New Added tcpdump to CLI's Network > Diagnostic Tools (console/SSH)
  • Imp Commtouch reference IDs in web administration
  • Imp HSL's ScanRPD() can return reference ID
  • Imp Added server= and transport= to the Tracking's search filters
  • Imp HSL pcre_match improved, empty capture groups, etc.
  • Bug Web administration spelling


Released on 2012-03-22

  • New Mail tracking supports boolean search filters
  • New Mail tracking integrates history and queue
  • New HSL pcre_match functions
  • New HSL Mail Content GetHeaders function
  • Imp Cluster mail tracking displays scores, and more
  • Imp Jump between message tracking and logging seamlessly
  • Imp Jump between pages/tabs before loading completes
  • Bug Issue with DSNs/NDRs displaying in Microsoft OWA resolved
  • Bug Issue with UDP when ARP tables changes resolved
  • Bug Web administration diagnostics issue resolved


Released on 2012-02-23

  • Imp Multi-line reject/defer messages
  • Imp Updated 3d-party modules (ctipd, ctengine, postfix, clamav, openldap)
  • Imp Added user defined callback to cache[], using "ttl_function" argument
  • Imp Include SMTP transaction state in SMTP errors
  • Imp Support for CA in LDAPs
  • Bug Web admin could visually overflow if too many remote systems
  • Bug Resolved rare bug with anti-virus engine
  • Bug Fix TLS warning on startup
  • Bug Verify last fingerprint in SSL chain (consistently)
  • Bug Scripting console could not connect to SMTP servers over TLS
  • Bug Resolved issue with HSL construct barrier {}
  • Bug SMTP lookup recipient could cache entires for too long


Released on 2011-12-21

  • Imp Quarantining informs sender; rejects (550) instead of accepts (220)
  • Imp The SMTP recipient lookup forwards errors from the mail server
  • Imp Removed the incoming mail queue
  • Imp Show Script looks much better with colors and formatting
  • Imp The getting started has an option to trust server (use as smart host)
  • Imp Clustering operations are faster thanks to new rpcmplexd
  • Imp Option to export list of users per domain
  • Imp The reporting's pie charts reflects selected period (day/month)
  • Imp The console supports page up/down
  • Imp The log viewer (searchlog) is faster
  • Imp Korean language updated
  • Imp Support for Internet Explorer 10
  • Bug Issue with quarantine's history and domain administrators resolved
  • Bug Anonymous LDAP authentication issue resolved
  • Bug Issue with HSL's in_network() resolved


Released on 2011-10-04

  • New View and reset rate control (Diagnostics > Rate Control)
  • Imp Improved support for KVM virtualization platforms
  • Imp Disabled auto-scroll in logs on mouse scroll
  • Imp Improved graphs (bandwidth graphs and layout)
  • Imp HSL's GuessAttachmentType() is faster
  • Bug Resolved issues when upgrading 2.3-series on first boot

Released on 2011-09-22

  • Imp Quarantine automatically sanitizes input
  • Imp Pattern analysis' update is run every 6th hour
  • Bug Pattern analysis' update error reporting issue resolved

Released on 2011-09-14

  • Bug Serial console issue on SPG-150 resolved

Released on 2011-09-02

  • Bug LDAP synchronization issue resolved
  • Bug Pattern analysis' bayesian filter issue resolved

Released on 2011-08-17

  • Bug Updated list of time zones (some didn't exist)
  • Bug Guessing of character set issue resolved
  • Bug Pattern analysis (ScanSA) custom rules issue resolved


Released on 2011-08-02

  • New Based on FreeBSD 8.2
  • New Content Inspection (DLP), ScanDLP() function
  • New File store with CSV editor, deprecates FTP, in_file() function updated
  • New Support for VMware vmxnet adapters
  • New View history in Quarantine interface
  • New Show header modifications in Quarantine interface
  • Imp Quarantine interface is now fully clustered (user creation)
  • Imp Updated Commtouch RPD and GlobalView engines
  • Imp Updated Kaspersky anti-virus engine
  • Imp Option to reset SpamAssassin bayesian database
  • Imp The mail() function has a plain-text option
  • Imp Fullscreen editors has "import from file" functionality
  • Imp VMware/serial console auto-logout after 10 minutes
  • Imp Mail Gateway > Domain section tables show more information
  • Imp Many small improvements in functionality and stability
  • Bug Storage fallback to memory issue resolved
  • Bug Issues with static routes resolved

Released on 2011-05-11

  • Imp Web Administration improvements (translations, statistics)
  • Imp HSL functions floor() and ceil() added
  • Bug Fixed incorrect return type from round()
  • Bug Kaspersky anti-virus regression issue solved

Released on 2011-05-05

  • Imp Updated 3rd-party components (Commtouch, Kaspersky, etc.)
  • Imp Overall reliability and performance improved

Released on 2011-04-06

  • Bug Mitigating HSL data type issue


Released on 2011-03-31

  • New IPv6 support in IP Policy Flows (added $family variable)
  • New Automatic configuration truncation option (System > Configuration)
  • Imp dnsbl() function now queries for IPv6 according to RFC5782
  • Imp Improved the Web Administration with some new functionality
  • Imp Internet Explorer 9 support in Web Administration
  • Imp Improved phishing protection
  • Imp Improved SMTP IPv6 handling (prioritized)
  • Imp DSN messages now includes only message/rfc822-headers
  • Imp DKIMWithDeliver() now returns 500-error on un-signable messages
  • Imp Updated 3rd-party components (libc, postfix, htmlpurifier etc.)
  • Imp Overall performance improved
  • Bug Folders created on FTP did not appear until after a reboot
  • Bug IP Policy Flow's $serverport variable was not a number (string)
  • Bug dnsptr() now supports compressed IPv6 addresses
  • Bug Kaspersky's logfile not available on first run
  • Bug Web Administration over IPv6 was partly broken
  • Bug smtp_lookup_*() should not use transport fallbacks
  • Bug Quarantine() function did not honour SetMailTransport()

Released on 2011-02-10

  • New Prioritized queues (per mail transports)
  • New IO statistics tool in Web Admin (iostat)
  • Imp Updated 3rd-party components (clamav)
  • Imp Overall reliability and performance improved
  • Bug BATV format bug
  • Bug Deliver to A/AAAA records did not load balance properly

Released on 2011-01-24

  • New VMware Zimbra integration in quarantine
  • New Custom authentication with System Authentication Script
  • New RADIUS (rad_authen) function for System Authentication
  • New TACACS+ (tacplus_authen and tacplus_author) functions
  • New Context-aware help (links to the doc. wiki) in Web Admin.
  • Imp Updated 3rd-party components (ctipd, syslog, clamav, php)
  • Imp Include kernel debugging in logs
  • Imp Quarantine > Users, double-click users to 'sign as' as them
  • Imp Activity > Logging has time interval option for faster searching
  • Imp Some HSL functions are cached per default (per-message)
  • Imp Admins can change quarantine users' passwords
  • Imp Force web browsers to update cache on H/OS upgrades
  • Imp HSL arrays may be initiated with [ ] instead of array()
  • Imp LDAP debugging command hides passwords
  • Imp Sort user's joined accounts in quarantine
  • Imp Support for [IPv6 address]:port in network tools
  • Imp New strnatcmp JavaScript library for better natural ordering
  • Bug GlobalView, etc. stability improved with glibc patch
  • Bug Fixed host name length (was limited to 32)
  • Bug Fixed SMTP DNS lookup implementation misbehaviour
  • Bug Heartbeat probe for Spam Assassin to resolve locks
  • Bug Fixed missing SSL chain for certificates
  • Bug Fixed multiple pages bug in Activity section of Web Admin.
  • Dep Configuration key config_user renamed to to system_user
  • Dep Signed in account used to browse cluster in web admin
  • Dep Admin accounts must use @local for quarantine sign-in


Released on 2010-11-25

  • Imp Performance optimizations on message delivery
  • Imp Double-click on messages to display text log
  • Imp Version history information button on update section
  • Imp Option to enable ATA write-cache
  • Imp Non-blocking Kaspersky anti-virus database update
  • Imp Getting Started allows example.org and another domain
  • Imp Display newly added quarantine branding
  • Imp GlobalView is logged as ctipd instead of [ctipd]
  • Imp Unified authentication scheme
  • Imp Updated 3rd-party components
  • Imp Database errors are logged
  • Bug Memory usage was erroneously calculated
  • Bug Value rounding in reporting charts
  • Bug Forbid domains ending with a dot
  • Bug Flow selection race condition for first message resolved
  • Bug Memory leak in mailscand resolved
  • Bug Spelling corrected in web administration
  • Bug Overall reliability and performance improved


Released on 2010-10-25

  • New Storage disk migration section
  • New Unique self-signed certificate during install
  • New New DirectDeliver() function to deliver inline
  • New RPC log for SOAP API calls
  • New Puny-codes for domains and in calculator
  • Imp Much improved logging with session tracking
  • Imp Graphical fixes for iPhone/iPad
  • Imp Cluster administration performance improved
  • Imp Updated 3rd-party components
  • Imp User count for license in mailscand
  • Imp Option to skip Getting Started
  • Imp Russian language in quarantine
  • Imp Overall graphical improvements
  • Imp Improvements in flow presentation
  • Imp Forbid non-ascii e-mail addresses
  • Imp HSL function get_defined_functions()
  • Imp TLS settings in smtp_lookup_rcpt/auth
  • Imp Updated statistics to BIGINT
  • Bug ClamAV could be started twice
  • Bug LDAP search cached non-existent users for 24 hours
  • Bug SNMP could fail to get ippolicyd statistics
  • Bug Inventory keys denied for read-only users
  • Bug ippolicyd could report statistics inaccurately
  • Bug DNS failures (NXDOMAIN and NODATA) results in immediate bounce
  • Bug Overall performance and stability improved
  • Dep It's recommended to empty your browser cache before signing on to your updated system
  • Dep The log format is heavily changed; be aware if you rely on machine parsed logging

Released on 2010-09-02

  • Imp DNSSEC trusts newly signed root
  • Imp CPU indicator in clustering overview
  • Imp Simplified configuration management view
  • Imp Remote systems alphanumerically sorted
  • Imp Final actions terminate user defined functions
  • Imp 3rd-party modules updated
  • Imp Russian translations updated
  • Bug HSL isset() function now works on arrays
  • Bug IPv6 support in Syslog
  • Bug Detect primary domain from Active Directory
  • Bug Reporting tab timed out in large clusters
  • Bug Overall performance and stability improved

Released on 2010-07-29

  • New Novell GroupWise support in quarantine
  • Imp 3rd-party components updated
  • Bug Do not synchronize "fallback" configurations in cluster


Released on 2010-07-07

  • New Backscatter protection with BATV
  • New Comments (C++ style, //) in address lists in web administration
  • New Minger protocol recipient lookup function minger_lookup() in HSL
  • New SetRecipient() function in HSL's Content Flow
  • New HSL control structure "barrier" to do advanced synchronous scripting
  • New HSL isset() function, to check if a variable is defined or not
  • New Set listen addresses for SSH, FTP and SNMP services
  • New Prompted configuration download in web administration
  • New Show configuration changes between revisions
  • Imp Changed default IP to (not to conflict with customer networks)
  • Bug Do not allow recipient with trailing "." in the domain name

Released on 2010-06-17

  • Bug A script validation error in Web Administration fixed
  • Bug Syslog could fail at boot on rare occasions


Released on 2010-06-14

  • Imp Show PKI information (X.509, private and public key)
  • Imp Require passwords to be typed twice
  • Imp Better TLS information in SMTP logs
  • Imp DNSSEC and DNS cache made private in cluster
  • Imp RPDAV icon changed to be distinguished from RPD
  • Imp Show full AV, AS, LDAP and boot logs
  • Imp Sort cluster nodes by name on Cluster > Overview
  • Imp Support TLS/SSL for LDAP servers (Quarantine and HSL)
  • Imp SMTP listener/transport support "internal-hostname" as hostname
  • Imp More restrictive read-only users (no ping, etc)
  • Imp Commands (ping, etc) in console are continuously updated
  • Imp More private keys (Send to Server, etc)
  • Imp 3rd-party components updated (ClamAV, etc)
  • Bug RPDAV could not set "delete" action
  • Bug View message button in outgoing queue fixed
  • Bug No script errors for action on empty message queues
  • Bug Graph X-axis could be a few seconds off in cluster
  • Bug Failed to save flows when custom functions were used
  • Bug Session timeout when saving services (SMTP, HTTP, etc)

Released on 2010-05-19

  • Bug syslog needs to be restarted in order for hostname to be applied
  • Bug If STARTTLS was announced but failed, optional TLS aborted
  • Bug LDAP queries failed in HSL


Released on 2010-05-17

  • New DNSSEC support and an internal DNS cache
  • New DKIM signing and validation in Content flow
  • New Reworked statistics with JavaScript graphs and a new layout
  • New Show Script button on flows, displaying generated HSL code
  • New Ability to write reject/defer messages in flow blocks
  • New HSL variables $service (IP) and $messageid (Content) added
  • New HSL functions file() and file_get_contents() added
  • New Defer(), SetMailTransport() and AddHeader() in Content flow
  • New Trusted (whitelist) block in Recipient flow
  • New Web Administration organization with flows in one section
  • New Unit identification used as internal hostname
  • New Button for jumping to flows and profiles
  • New Warning messages before discarding unsaved changes
  • New Bookmarks to sections and tabs in Web Administration
  • Imp Renamed processes to mailscand and mailqueued
  • Imp Major performance improvement in mailscand
  • Imp Overall performance from chunked statistic updates
  • Imp Free-text search in Activity > Logging
  • Imp Quarantine mail listing show scores and logging
  • Imp Clustering menu and timeouts improved
  • Imp E-mail file maintenance (lostfiles) added
  • Imp Outbreak (RPDAV) anti-virus accuracy improved
  • Imp Web Administration performance and caching improved
  • Imp Updated 3rd-party components
  • Imp Hop count in mailscand implemented
  • Imp Overall performance and stability improved
  • Bug SpamAssassin update bug resolved
  • Bug SNMP label swapping bug resolved
  • Bug Disabling of certain domains bug resolved
  • Bug Zero-bitmask error in in_network() function resolved
  • Bug IPv6 scope in network functions is now discarded
  • Bug GMT timezone confusion on System > Time clarified
  • Del Domain statistics reports removed
  • Del Deprecated recipient databases migrated into flows
  • Del Incoming listener (smtpd) doesn't listen to localhost
  • Del Removed Deliver() as error fallback action
  • Del Invalid PKI certificates no longer validates in config
  • Del Deprecated $spamscore and LDAPLookup() removed
  • Del Diagnostics > Troubleshooter tab removed


Released on 2010-03-01

  • New Clustering of multiple SPG/VSP units
  • New Graphical Console (replacing the CLI)
  • New mail() function in HSL
  • New GuessAttachmentType() in HSL
  • Imp 3rd-party components updated
  • Imp Quarantine reset password, does not send a new password, instead allows it to be changed
  • Imp Overall improvements in functionality and reliability
  • Imp HSL cache [] is not LRU per default (least recently used)
  • Bug Domains were not disabled properly (nor alias domains)
  • Bug IP Policy response were not always received
  • Bug GetAttachmentName() were not decoded properly
  • Bug Self-genrated messages had the wrong Content-Disposition
  • Bug Unable to bind in queueprocessor (when custom source-ip was used)
  • Bug Domain reports could take very long time to complete
  • Bug Statistics could be collected for recipient instead of sender
  • Bug Disk, CPU and Memory usage where 24 hours off in bar-indicator

Released on 2010-01-14

  • Bug Issue with domains without MX records resolved
  • Bug Internet Explorer 8 can now view message logs
  • Bug Exporting users can now handle invalid UTF-8 chars

Released on 2010-01-07

  • Imp Automatically format and use available disk (Xen and Hardware)
  • Bug Xen could not leave firmware OS
  • Bug Wrap-around long log lines in Web Administration
  • Bug Rate-control would cause random reboots
  • Bug GlobalView did not always start at boot
  • Bug Newly downloaded SpamAssassin rules were not applied until reboot

Released on 2009-12-22

  • New Console in Web Administration (Diagnostics > Local Console)
  • New Show licensed users in Web Administration and SOAP
  • New Access Quarantine from Web Administration
  • Imp 3rd-party components updated
  • Imp in_network() now supports IPv4 and IPv6
  • Imp dns() is now IPv6 ready, use dns4() or dns6() to choose
  • Imp Improved compatibility with "tag subject" and non UTF-8
  • Imp Colors in log search
  • Imp Fixed MX-shuffle (rare round-robin delivery problem)
  • Imp Delivery will only try the first three A/AAAA records
  • Imp Selecting text in Web Administration logs
  • Imp Many other improvements
  • Bug Next retry wasn't presented in the local timezone
  • Bug Rare bug while reverting between configurations
  • Bug Could not save whitelist in Internet Explorer 8
  • Bug Reload services when SSL certificate is updated
  • Bug Retention policy in Web Administration was restricted to 32-letter
  • Bug Adding one's own domains as domain alias confused quarantine
  • Bug Spelling corrections
  • Bug Overall stability fixes

Released on 2009-11-06

  • Bug Better handling of questionable SMTP responses.
  • Imp Russian and German in VSP's Getting Started.
  • Imp Spam Assassin size limited raised to 500KiB.
  • Imp Charset detection for Korean and other Asian languages.
  • Bug Scripting error for Anti-Virus block in Content Flow.
  • Bug Web Administration bug in Gettings Started for IE6/7.
  • Imp Flow blocks in IP Policy log their results.
  • Bug Japanese may now be default language in Quarantine.
  • Imp Statistic's performance is improvements.
  • Imp HSL does not resolve $var to the value of $var.
  • Imp HSL function eval() implemented.
  • Imp Overall improvements in functionality and reliability.


Released on 2009-10-21

  • Warning Storage disk must be at least 2GB for all units and configurations
  • Imp Automatic initialization of new Storage disks for VSP/SPG
  • Imp Firmware updates by self hosted Web Updates
  • Imp Getting Started -guide in Console and Web Administration
  • Imp IPv6 support in Web Administration
  • Imp Keep current search in History/Queues while browsing and performing actions
  • Imp IP-address whitelist in Content-Flow
  • Imp Quarantine action "Empty" only empties the selected folder
  • Imp Japanese language support in Quarantine
  • Bug If no MX is found, try to use the A/AAAA record
  • Bug SNMP and NTP problems with reconfiguration
  • Imp 3rd party components updated
  • Imp Overall improvements in functionality and reliability

Released on 2009-08-09

  • Imp Overall improvements in functionality and reliability

Released on 2009-08-09

  • Imp Overall improvements in functionality and reliability


Released on 2009-07-10

  • Imp Throughput vastly improved, read the guidelines
  • Imp Option to disable internal statistics and history
  • New New HSL functions
  • Imp Overall improvements in functionality and reliability


Released on 2009-06-25

  • New SNMP monitoring; custom MIB with statistics and information
  • Bug Fixed Kaspersky engine error
  • Imp Truncate configuration from CLI to save memory
  • Bug Cache timeout set at execution instead of completion
  • Imp IP Policy may also block UDP packets ($protocol)
  • Imp Removed start-up related warnings
  • Bug http() function can handle more than 10 parameters
  • Imp Exceptions in Recipient Flow are reported as Defer()
  • Imp Global quarantine admin users may blacklist globally
  • Imp Blacklist handles domains and wildcard (%@domain)
  • Imp Notify senders that they are blacklisted
  • Imp Re-arranged tabs into new system menu in Web Admin.
  • Bug Redirection bug when accessing a HTTPS interface using HTTP
  • Bug Configuration upgrade for remote systems could cause timeouts
  • Imp Better transport-lookup for messages generated internally
  • Imp Mail function GetRoute() in HSL improved
  • Imp Array function array_reverse() in HSL
  • Imp Rate control function rate() in HSL
  • Imp Rate control module in Recipient and Authentication Flows
  • Imp Default message rate for authenticated users is 100 msg/h
  • Imp HSL may cache results per message/session
  • Imp Overall improvements in functionality and reliability


Released on 2009-06-03

  • New Advanced options on Mail Content Flow with custom rules
  • Imp Larger history (100.000 msgs.) for small disks (4 GB)
  • Imp Anti-virus and Pattern Analysis (SA) results in history
  • Imp Quarantine allows users to download messages
  • Imp Quarantine web interface scales content to browser size
  • Imp Quarantine accepts LDAP sign-in using alias as username
  • Imp Quarantine has Korean translation
  • Imp Quarantine displays outgoing queue
  • Imp Quarantine displays folder's message count on mouse over
  • Imp SPF module has trusted forwarders white-list field
  • Imp Option to reject messages with virus
  • Imp Recipient Flows reports the reason for rejection to sender
  • Imp Overall performance and reliability improved
  • Bug Quarantine now shows attachments correctly
  • Bug Delivery forced default transport during certain circumstances
  • Bug Quarantine now honors the LDAP version setting
  • Bug It is now possible to mix recipient flows with "disabled"


Released on 2009-05-18

  • Imp New Quarantine with LDAP support and Clustering
  • Imp Administrator can access the Quarantine using their credentials
  • Imp Quarantine has administrator-only folders (invisible to users)
  • Imp Reporting > Real Time Log displays Anti-Virus, LDAP, etc.
  • Imp The console's startup screen displays IP address
  • Imp FTP access requires full permissions or the "f"-flag
  • Imp Administrators cannot change their own permissions
  • New Added "null" transport (discards messages)
  • Imp VMware ESXi users need to resize the disk during install
  • Imp Added "Per Domain" for the SMTP Recipient Flow lookup module
  • Bug Trace configuration revisions changes by administrator user
  • Imp Recipient Flows are per-domain instead of per-incoming.
  • Imp Improved queue/history management responsiveness
  • Imp Performance optimizations
  • Imp 3:rd Party Components Updated
  • Imp CLI command "version" displays appliance information
  • Imp Overall performance and reliability improved


Released on 2009-03-24

  • New Import Configuration from Clipboard
  • Bug Installer on Windows 2000
  • Bug Installer field validation
  • Imp Warning on VMware Configuration Import
  • Imp Repair License in Web Admin.
  • Bug History Page in Internet Explorer fixed
  • Imp Changes in terminology (Process Flow = Content Flow, etc)
  • Bug Long lines message bug fixed
  • New Implemented cache [] function();
  • Bug IP Policy cache is now cleared properly
  • Imp Web Admin. Script fields is monospace and support [tab]
  • New Added !~ (negated regular expression) matching
  • Imp Updates 3d-party libraries
  • New Caches the Incoming's smtp_rcpt_lookup
  • Imp Clear cache button (Mail Gateway -> Settings)
  • Bug Non-UTF-8 bug (Mail Gateway -> Activity)
  • Imp IP Policy performance improved
  • Bug HTTP re-configured during address change
  • Imp Removed reverse DNS lookups
  • Bug Memory storage capacity resolved
  • Bug Authentication and Recipient Flow re-configuration
  • Bug NTP producing false error messages
  • Imp Autodetect language in Web Admin.
  • Imp Mail Content Flow didn't virus-check spam messages
  • Imp Overall improvements and stability


Released on 2009-02-27

  • Imp Firmware Update with step-by-step guide
  • Imp VSP Installation with quick-start guide
  • Imp "Paging" in Mail Gateway Activity tabs
  • New dnstxt(), dnsmx() and implode() functions in HSL
  • Bug 500-errors handled correctly
  • New Support for alternative DNS in lookup-mx
  • Bug Handle UTF-8 in Tag Subject i Mail Flow
  • New More languages added
  • Imp Graph directions changed (left to right)
  • Imp More SMTP debugging
  • New Direct Processing gives reject function
  • New Reject() function in Mail Flow
  • Imp Set concurrent connections per Incoming (server)
  • Imp Function declaration and "include" support in HSL
  • Imp Full UTF-8 support
  • Imp Overall improvements and stability

Released on 2009-01-16

  • Imp SMTP/LDAP SMTP authentication support
  • Bug Disk Operation Stability
  • Imp Storage Management (backup and restore)
  • Imp Add multiple domains from Web Admin
  • Imp Authentication and Recipient Flows
  • Imp Many new functions added to HSL (see Wiki)
  • Imp Secure Disk Wipe from Recovery Console
  • Imp Send test mail to administrator from Web Admin
  • Imp Reset Statistics in Web Admin
  • Bug DNS/MX resolving
  • Imp Authentication in Outgoing Transports
  • Imp Preview mail in Quarantine
  • Bug Quarantine handles quoted-printable
  • Bug Quarantine reports handles quoted-printable
  • Imp Warn users when Quarantine getting full
  • Imp Script testing tool
  • Imp Searching logs indicates when showing realtime
  • Imp Custom icons for script blocks in Web Admin
  • Imp Improved anti-virus detection
  • Imp SOAP interface improvements
  • Imp Better Default Flows
  • Bug Resolved back-to-default-config bug

Released on 2008-11-25

  • Bug Quarantine templates

Released on 2008-11-20

  • Bug Quarantine templates


Released on 2008-11-12

  • Imp Send Domain Reports from Web Admin
  • Bug Domain Statistics reported correctly (lowercase)
  • Bug Overall Web Admin reliability
  • Imp LDAP debugging
  • Imp Mail throughput performance vastly improved
  • Imp SPF Query Tool in Web Admin
  • Imp in_network() now supports IP-ranges in HSL
  • Imp Block() may send reason for blocking in HSL
  • Imp dnsptr() to lookup PTR (ipv4 and ipv6) in HSL
  • Imp 5 s timeout for dns() request by default in HSL
  • Imp in_file() function (eg. black/white-lists) in HSL
  • Imp First comment in a Flow Script shown as title
  • Imp Customize generated e-mail
  • Imp Multiple LDAP servers on incoming listerners
  • Imp Default contact changed to "Postmaster"
  • Imp Multidimensional arrays in HSL
  • Bug Overall reliability and functionality
  • Imp Quarantine translated to Swedish and customizable
  • Imp Better default mail gateway Process Flow


Released on 2008-08-21

  • Imp Improved quarantine with reports
  • Imp Statistics in Web Administration
  • Imp Domain reports with additional statistics
  • Imp Logging is separated and improved
  • Imp Message tracking (Activity)
  • Imp Web Administration re-organization
  • Bug Storage recovery from power failures
  • Imp Certificate tunable "Optional but Verify"
  • Imp Error messages are displayed as dialogues
  • Imp Generate SSL certificates (Diagnostics section)
  • Imp Name (tag) configuration revisions
  • Imp SOAP configuration API (using WSDL file)
  • Imp NFS replaces SMB for network storage
  • Imp Graceful shutdown and restart
  • Imp Boot procedure with progress and log
  • Imp Multidimensional arrays in HSL
  • Imp Headers are UTF-8 decoded in HSL
  • Imp GetDSN(), GetRoute(), DeliverAsSpam() in HSL

Released on 2008-06-09

  • Bug Web Administration error on factory reset units
  • Imp Added German and Japanese language support
  • Imp HSL Scripting in Outgoing Queue
  • Imp Domain name variable in HSL
  • Imp WrapMessageAddHeader function added in HSL
  • Imp Revert to default config upon fatal errors
  • Imp Disable Incoming Listeners upon storage failure
  • Imp Regular Expression modifiers in HSL
  • Imp Initial Access Control Flow statistics
  • Imp Incoming Queue shows entire message
  • Imp http() and explode() functions added to HSL
  • Imp Pattern Analysis (spam assassin) module added
  • Imp LDAP testing on Diagnostics section
  • Bug Max Message Size can be increased
  • Bug Overall reliability and functionality


Released on 2008-05-15

  • Imp Added Italian, Spanish and Korean language support
  • Imp Overall reliability improved


Released on 2008-05-12

  • Bug SPF calculated $spamscore incorrectly
  • Imp Reboot to Update Firmware from Web Admin.
  • Bug Removed extra newline in messages
  • Bug Database conversions could fail
  • Imp Ability to disable ACL flow for services
  • Bug NTP synchronization problem solved
  • Imp Model-specific performance optimizations
  • Bug Recovery from power failure
  • Bug Windows (SMB) share no longer fails
  • Imp Added date/time functionality to HSL
  • Imp Overall reliability improved


Released on 2008-04-28

  • Bug Problems in the parser of the mail scanner are fixed
  • Bug Ajax problems in the mail processing flow are fixed
  • Imp New functions in HSL (Halon Scripting Language)
  • Imp UTF-8 support in HSL
  • Bug Internet Explorer and Opera support
  • Imp Overall reliability improved