Sample code for 30+ languages & platforms
Rust

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 Rust Downloads

Rust

// 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.

let mailman = chilkat::MailMan::new();

// Configure the SMTP server connection.
mailman.set_smtp_host("smtp.example.com");
mailman.set_smtp_port(465);
mailman.set_smtp_ssl(true);
mailman.set_smtp_username("user@example.com");
mailman.set_smtp_password("myPassword");

// Open the connection.

if mailman.open_smtp_connection().is_err() {
    println!("{}", mailman.last_error_text());
    return;
}

// Reset the current SMTP mail transaction.
if mailman.smtp_reset().is_err() {
    println!("{}", mailman.last_error_text());
    return;
}

if mailman.close_smtp_connection().is_err() {
    println!("{}", mailman.last_error_text());
    return;
}

println!("Sent SMTP RSET.");