EldoS | Feel safer!

Software components for data protection, secure storage and transfer

SMTP Logging

Posted: 07/15/2010 10:39:22
by Tim Sanders (Standard support level)
Joined: 07/15/2010
Posts: 2

I was using the Indy 9 components that provides an OnStatus event that I could use to log detail about the connect and disconnect that can be useful dianogistic information when helping a customer solve an issue. A try...except handler will allow me to catch the errors and log them for the user. Also, I did not see a UseElho to obtain a list of supported authentication types from the host into a string list that could be displayed to the user. Would you consider adding these two features to your EISMTPClient component? See log below for information that can be obtained from Indy 9.


Status: Resolving hostname smtp.myisp.net.
Status: Connecting to xx.xxx.x.xxx.
Status: Connected.
<<<- displayed from String List from Elho reply.
Supported Type: PLAIN
Supported Type: LOGIN
Status: Disconnecting.
Status: Disconnected.
Posted: 07/15/2010 13:45:48
by Ken Ivanov (Team)

Thank you for contacting us.

We actually have no plans of adding a kind of OnStatus event at the moment, however, you can log the mentioned component states from your code. For instance,

Log("Connecting to ...");
Log("Connected. Performing client authentication...");
Log("Authenticated successfully");

You can also use OnSent and OnReceived event to log particular SMTP requests and responses.

Answering to your second question, TElSMTPClient always uses the EHLO command (and thus there is no need in the UseEhlo property). Please check the values of ExtensionChunkingSupported, ExtensionBinarySupported, ExtensionAuthPlainSupported, ExtensionAuthLoginSupported and ExtensionSizeSupported properties to find out what features are supported by the server.
Posted: 04/09/2012 10:44:36
by Daniel Schaer (Standard support level)
Joined: 02/16/2012
Posts: 44


Let me ask if TElSMTPClient is an TIdSMTP descendant.

I work with RAD Studio XE2 and I normaly use TIdSMTP for mail purposes, but now I want to add SSL functionality and I donĀ“t want to distribute OpenSSL libraries.

Thank you.

Posted: 04/09/2012 10:50:18
by Vsevolod Ievgiienko (Team)

Thank you for contacting us.

TElSMTPClient is not a descendant of TIdSMTP. However it is as simple to use as the Indy component and supports SSL/TLS without a need to distribute OpenSSL libraries.
Posted: 04/09/2012 11:12:02
by Daniel Schaer (Standard support level)
Joined: 02/16/2012
Posts: 44

Thank you. My question was because I found this text in your web:

" Delphi edition includes descendant classes for Indy, ICS, Synapse and Delphi sockets (TClientSocket/TServerSocket). Also there are descendants for Indy HTTP and FTP and for ICS HTTP included. This gives you immediate support for several application-level protocols such as HTTPS, FTP over SSL, implicit SMTP over SSL etc."

Posted: 04/09/2012 11:22:27
by Vsevolod Ievgiienko (Team)

The descendant classes you wrote about are located in \EldoS\SecureBlackbox\Classes folder after SBB VCL installation.
Posted: 04/09/2012 11:26:04
by Eugene Mayevski (Team)

The quoted text basically references Indy IO Handler class of SecureBlackbox (found in \Classes\Indy folder), adding which gives you SSL in IdSMTP. That IOHandler is a direct replacement for OpenSSL IOHandler

Sincerely yours
Eugene Mayevski
Posted: 04/09/2012 11:44:22
by Daniel Schaer (Standard support level)
Joined: 02/16/2012
Posts: 44

Thank you. I own a PKIBBox licence, does it give me right for using that IOHandler component, or do I have to buy something else?.

Posted: 04/09/2012 11:49:20
by Vsevolod Ievgiienko (Team)

You need a license for SSLBlackbox to use IOHandler component.
Posted: 04/09/2012 11:51:38
by Eugene Mayevski (Team)

Moved to helpdesk.

Sincerely yours
Eugene Mayevski



Topic viewed 2070 times

Number of guests: 1, registered members: 0, in total hidden: 0


Back to top

As of July 15, 2016 EldoS business operates as a division of /n software, inc. For more information, please read the announcement.

Got it!