Go
Go
Send an SMTP RSET Command
See more SMTP Examples
Demonstrates the Chilkat MailMan.SmtpReset method, which sends an SMTP RSET command to the server. RSET resets the server-side state of the current mail transaction. This example opens a connection, sends RSET, and closes.
Background: During an SMTP session a message is built up across
MAIL FROM and RCPT TO commands. If you need to abandon that partially-specified transaction — say an error occurred midway — RSET clears it without dropping the connection, so the same authenticated session can start a fresh message. It's a lightweight way to recover in-session rather than reconnecting.Chilkat Go Downloads
success := false
// Demonstrates the MailMan.SmtpReset method, which sends an SMTP RSET command to the server.
// RSET resets the server-side state of the current mail transaction.
mailman := chilkat.NewMailMan()
// Configure the SMTP server connection.
mailman.SetSmtpHost("smtp.example.com")
mailman.SetSmtpPort(465)
mailman.SetSmtpSsl(true)
mailman.SetSmtpUsername("user@example.com")
mailman.SetSmtpPassword("myPassword")
// Open the connection.
success = mailman.OpenSmtpConnection()
if success == false {
fmt.Println(mailman.LastErrorText())
mailman.DisposeMailMan()
return
}
// Reset the current SMTP mail transaction.
success = mailman.SmtpReset()
if success == false {
fmt.Println(mailman.LastErrorText())
mailman.DisposeMailMan()
return
}
success = mailman.CloseSmtpConnection()
if success == false {
fmt.Println(mailman.LastErrorText())
mailman.DisposeMailMan()
return
}
fmt.Println("Sent SMTP RSET.")
mailman.DisposeMailMan()