From e5c2676f830dbfcfdb0470ac8c5dcbbb7bd0a03a Mon Sep 17 00:00:00 2001 From: Alberto Bertogli Date: Fri, 6 Nov 2015 03:46:13 +0000 Subject: [PATCH] Convert addresses to lower case This patch makes the MAIL FROM and RCPT TO commands convert addresses to lower case. It also makes the commands themselves case-flexible as a side effect. --- chasquid.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/chasquid.go b/chasquid.go index e7a7273..4cefc73 100644 --- a/chasquid.go +++ b/chasquid.go @@ -380,8 +380,8 @@ func (c *Conn) NOOP(params string) (code int, msg string) { func (c *Conn) MAIL(params string) (code int, msg string) { // params should be: "FROM:" // First, get rid of the "FROM:" part (but check it, it's mandatory). - sp := strings.SplitN(params, ":", 2) - if len(sp) != 2 || sp[0] != "FROM" { + sp := strings.SplitN(strings.ToLower(params), ":", 2) + if len(sp) != 2 || sp[0] != "from" { return 500, "unknown command" } @@ -415,8 +415,8 @@ func (c *Conn) MAIL(params string) (code int, msg string) { func (c *Conn) RCPT(params string) (code int, msg string) { // params should be: "TO:" // First, get rid of the "TO:" part (but check it, it's mandatory). - sp := strings.SplitN(params, ":", 2) - if len(sp) != 2 || sp[0] != "TO" { + sp := strings.SplitN(strings.ToLower(params), ":", 2) + if len(sp) != 2 || sp[0] != "to" { return 500, "unknown command" }