SIGTERM can happen normally in our tests, and the current code has a trap that makes it trigger a clean exit. This causes some errors to be masked, as we end up calling "exit 0" when they occur. The error message will still be displayed, but the caller script will assume it worked. This patch fixes the problem by adjusting the bash signal handlers, so that we ignore SIGTERM (so bash does not get killed by the exit handler) and exit with error on SIGINT (triggered by ctrl-c). Note that under some conditions the SIGTERM trap is not necessary, but this depends on the environment.
chasquid
chasquid is an SMTP (email) server.
It aims to be easy to configure and maintain for a small mail server, at the expense of flexibility and functionality.
It's written in Go, and distributed under the Apache license 2.0.
Features
- Easy to configure.
- Hard to mis-configure in ways that are harmful or insecure (e.g. no open relay, or clear-text authentication).
- Tracking of per-domain TLS support, prevents connection downgrading.
- International usernames (SMTPUTF8) and domain names (IDNA).
- Hooks for easy integration with greylisting, anti-virus and anti-spam.
- Multiple domains, with per-domain user database and aliases.
- Multiple TLS certificates.
- Suffix dropping (
user+something@domain→user@domain). - Easy integration with Let's Encrypt.
- SPF checking.
- Monitoring HTTP server, with exported variables and tracing to help debugging.
- Supports using Dovecot for authentication (experimental).
The following are intentionally not implemented:
Status
chasquid is in beta.
It's functional and has had some production exposure, but some things may still change in backwards-incompatible way, including the configuration format. It should be rare and will be avoided if possible.
You can subscribe to the mailing list to get notifications of such changes, which are also documented in the UPGRADING file.
Documentation
Check out the how-to or the installation guide for more details on how to install and configure chasquid.
Contact
If you have any questions, comments or patches please send them to the mailing list, chasquid@googlegroups.com.
To subscribe, send an email to chasquid+subscribe@googlegroups.com.
You can also browse the archives.