stunndard / cocosmail Goto Github PK
View Code? Open in Web Editor NEWThis project forked from toorop/tmail
Golang SMTP server
License: MIT License
This project forked from toorop/tmail
Golang SMTP server
License: MIT License
Use separate SSL for EACH listening endpoint, be it SMTP, POP3 or anything else.
It should be possible to use a separate SSL cert for EACH listening endpoint.
For example, for a multihomed, multi-IP host that uses different hostnames for different IPs, and/or SMTP/POP3 listeners.
Received: from mail-yb1-x.x.xx. ([xx.xx.xx.xx] helo=[xxx])
by unknown with ESMTPS (unknow unknow) <-- here
(cocosmail 0.2.0)
(envelope-from [email protected])
id ....
for ...; Wed, 09 Jun 2021 06:27:02 +0200
This seems to affect messages received with STARTTLS only.
Make sure it works for ipv6-only and dual socket configuration.
I'm getting 100% CPU usage when sending an email from a client to cocosmail server with SMTP. Peaking around 600Kbyte/sec.
Goroutine and exitasap
channel seem completely non-necessary there.
cocosmail can listen on several IP addresses at the sime time. Make it possible to use different mail system name for each listening IP.
<connect to listening ip1>:
220 cocosmail.domain1.io ESMTP - f3838fc0b51467288d7ef58f8b4b3b5759e72753
<connect to listening ip2>:
220 another.mail.io ESMTP - f3838fc0b51467288d7ef58f8b4b3b5759e72753
There are delays with failed MAIL FROM, but not in case of failed AUTH, despite the connection is terminated. There also no delays (and no termination) in case of failed domain or user in RCPT TO.
Multi @ is allowed and other issues
220 tmail.io ESMTP - f3838fc0b51467288d7ef58f8b4b3b5759e72753
mail from:<
250 ok
mail from:<addr@domain@[email protected]
250 ok
Plugin system needs to be reworked so it can use some embedded scripting language for every hook that is called during the life cycle of a message.
Implement a graceful shutdown, any pending tasks should complete cleanly without data loss.
do not accept AUTH in non-encrypted sessions from public IPs.
make it configurable?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.