Skip to content

2.1.5

Compare
Choose a tag to compare
@kura kura released this 05 Oct 09:44
· 510 commits to main since this release

The 2.1.5 release is actually a tiny bug fix release that I'm combining with
the large 2.1.4 release.

  • Bugfix for socket.SO_REUSEPORT.

  • Squashed bugs related to socket.socket failing in child processes.
    These squashed bugs fix IPv6 which had a tendency of not working as expected.

  • Added communication between supervisor and children, allow children to be
    restarted if they fail to communicate to the supervisor.

  • Added mode= and delay= optionals to the listen and
    :ref:tls_listen directives. Allowing listeners to spawn on specific ports
    and act in different ways.

    When mode and delay are configured in a listener directive, that
    listener will ignore the global mode and delay options for that listener.
    Setting mode and delay on a listener will also disable
    dynamic-switches for that listener, automatically.

  • Internal module loading changes

  • Added test utilities to the test suite.

  • The blackhole environment will be reset for each test.

  • Added a lot of testing to supervisor, worker and child functionality.

  • Added a --quiet mode to suppress warnings when using
    -ls/--less-secure, running as the root user or not using the
    :ref:tls_dhparams option.

  • Added a warning when running the server as the root user without specifying
    a reduced privilege user and group.

  • Improved shutdown procedure, now does a much better job of disconnecting
    clients and closing everything before exiting.

  • Added an internal counter of invalid SMTP commands. Mitigate DoS attacks,
    maximum failed commands per connection is 10. Clients that violate this rule
    get disconnected.