__ __ _ _ ____ ____ __ _ _ __ __ __
( ) / _\ ( \/ )( _ \( \ / _\ ( \/ ) / _\ ( )( )
/ (_/\/ \/ \/ \ ) _ ( ) D (/ \/ \/ \/ \ )( / (_/\
--- A tiny and restricted SMTP server ---
This is an _extremely simple_ SMTP server designed specifically for
running on personal servers with a very small number (~1) users. It
is probably best defined in terms of what it does not support:
- It does not (yet?) support TLS connections.
- It does not relay messages between remote addresses.
- It does not allow unauthenticated delivery to remote addresses.
- It does not spawn threads to allow simultaneous connections.
- It does not respond with honest errors on failed deliveries.
Apart from the lack of TLS, I consider these features. There's no
(obvious) way for LambdaMail to become a source of spam, the lack
of multithreaded operation is a built-in rate limiter (not to mention
its side effect of making all delivery operations "atomic"), and
its penchant for just responding "250 OK" to almost everything means
that it doesn't leak information about users on the system.
LambdaMail is still under active development and, given that it was
written for a single use case, lacks any documentation. However it's
a pretty simple (if a bit messy) Scheme program, so glancing over the
code should suffice.
--- Source code ---Download the latest source (zip archive)Browse the git repository
You can clone the repository directly from
As with all the repositories hosted here at the lambda lab, suggested
patches are also welcome! Just commit your changes to a branch with
name begining with "patch_" and push to the repository above,
describing the nature of the changes in the body of your commit
--- Project Feedback ---Submit feedbackView recent feedback
This gopher hole was dug using Scratchy v1.4.1.
Powered by Chicken Scheme!