C
C
SMTP Connect and Authenticate
Demonstrates how to connect and then authenticate with an SMTP server.Chilkat C Downloads
#include <C_CkMailMan.h>
void ChilkatSample(void)
{
BOOL success;
HCkMailMan mailman;
success = FALSE;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
mailman = CkMailMan_Create();
CkMailMan_putSmtpHost(mailman,"smtp.mail.us-west-2.awsapps.com");
CkMailMan_putSmtpSsl(mailman,TRUE);
CkMailMan_putSmtpPort(mailman,465);
success = CkMailMan_SmtpConnect(mailman);
if (success == FALSE) {
printf("%s\n",CkMailMan_lastErrorText(mailman));
CkMailMan_Dispose(mailman);
return;
}
CkMailMan_putSmtpUsername(mailman,"john@example.com");
CkMailMan_putSmtpPassword(mailman,"the_password");
success = CkMailMan_SmtpAuthenticate(mailman);
if (success == FALSE) {
printf("%s\n",CkMailMan_lastErrorText(mailman));
CkMailMan_Dispose(mailman);
return;
}
printf("Authenticated!\n");
printf("%s\n",CkMailMan_smtpSessionLog(mailman));
// Sample session log:
// 220 smtp.us-west-2.mail.awsapps.com ESMTP Amazon WorkMail SMTP Service
// EHLO SLICE<CRLF>
// 250-smtp.us-west-2.mail.awsapps.com
// 250-8BITMIME
// 250-AUTH PLAIN LOGIN
// 250 Ok
// AUTH LOGIN<CRLF>
// 334 VXNlcm5hbWU6
// am9obkBleGFtcGxlLmNvbQ==<CRLF>
// 334 UGFzc3dvcmQ6
// {PasswordOrCredentials}
// 235 Authentication successful.
CkMailMan_Dispose(mailman);
}