Wez Furlong 4fe11e5f31 smtp client: ensure all reads and writes have a timeout
There were a few cases where client operations weren't wrapped
up in a timeout, which is a potential cause of hanging on shutdown:
if we're waiting an unbounded amount of time for a connection to
do something before we can shutdown, then we'll never finish.

The current timeouts struct really encodes the read timeout for
waiting for the result of a command.

What we also need is a duration to wait for sending data. We're
using the smaller of the per-command read timeout or 1 minute for
this.
2023-06-22 07:41:31 -07:00
2023-03-06 07:53:27 -07:00
2023-03-29 09:23:45 -07:00
2023-02-10 16:44:10 -07:00
2023-06-21 15:15:56 -07:00
2023-06-21 18:10:15 -07:00
2023-02-21 21:18:49 -07:00
2023-02-21 21:18:49 -07:00
2023-03-09 20:56:02 -07:00
2023-03-31 14:39:03 -04:00
2023-02-15 06:51:59 -07:00

KumoMTA

This repository holds the source code to KumoMTA, a modern Message Transfer Agent designed for large scale sending environments.

You can learn more about why it exists here.

Documentation

You can learn more about KumoMTA from the Documentation

Community

Real-time discussion is available on Our Discord.

Our Forum is better for long-form questions and discussions.

Developers

If you're interesting in contributing/extending KumoMTA, take a look at DEVELOPERS.md.

Getting Help

Please see How to Report Bugs or Get Help

S
Description
The first Open-Source high-performance MTA developed from the ground-up for high-volume email sending environments.
Readme
37 MiB
Languages
Rust 91.8%
Lua 6.3%
Python 0.9%
Shell 0.8%
JavaScript 0.1%