2
0
forked from drew/smtprelay

Allows specify the sender used on SMTP conversation with outgoing server.

This commit is contained in:
Carlos Alberto Costa Beppler
2019-09-06 17:07:37 -03:00
parent 2c9645ac68
commit 0b65e904d8
2 changed files with 10 additions and 1 deletions

View File

@@ -25,6 +25,7 @@ var (
remoteHost = flag.String("remote_host", "smtp.gmail.com:587", "Outgoing SMTP server") remoteHost = flag.String("remote_host", "smtp.gmail.com:587", "Outgoing SMTP server")
remoteUser = flag.String("remote_user", "", "Username for authentication on outgoing SMTP server") remoteUser = flag.String("remote_user", "", "Username for authentication on outgoing SMTP server")
remotePass = flag.String("remote_pass", "", "Password for authentication on outgoing SMTP server") remotePass = flag.String("remote_pass", "", "Password for authentication on outgoing SMTP server")
remoteSender = flag.String("remote_sender", "", "Sender username for messages on outgoing SMTP server")
versionInfo = flag.Bool("version", false, "Show version information") versionInfo = flag.Bool("version", false, "Show version information")
) )

10
main.go
View File

@@ -117,10 +117,18 @@ func mailHandler(peer smtpd.Peer, env smtpd.Envelope) error {
log.Printf("delivering using smarthost %s\n", *remoteHost) log.Printf("delivering using smarthost %s\n", *remoteHost)
var sender string
if *remoteSender == "" {
sender = env.Sender
} else {
sender = *remoteSender
}
err := SendMail( err := SendMail(
*remoteHost, *remoteHost,
auth, auth,
env.Sender, sender,
env.Recipients, env.Recipients,
env.Data, env.Data,
) )