Integration with Sendmail |
For interaction between Dr.Web MailD and Sendmail system, the latter must support Milter API. If the used Sendmail copy does not support the API, rebuild the system to add Milter API to the supported libraries. For details, refer to the corresponding documentation on the used Sendmail system. Note: To check whether the Sendmail copy supports Milter API, use the following command: # sendmail -bt -d0 < /dev/null If the output text contains "milter" string, your copy of Sendmail supports Milter API.
Interaction between Sendmail MTA and Dr.Web MailD is performed via Milter API (drweb-milter module is used as Receiver) and is implemented as follows: •Through the transport connection defined by drweb-milter transport address __ADDRESS__, Sendmail system receives internal commands from Milter API and a message itself. The message is sent in segments depending on the stage of the mail session (helo, mail from:, rcpt to:, etc.). Therefore, the message is saved by drweb-milter module to the temporary directory. Through Milter API, drweb-milter transmits instructions regarding the message to the Sendmail system. Milter API is a multithreaded library – several mail sessions can be processed simultaneously. In the interaction scheme, given above, Sendmail system is a client and drweb-milter is a server, therefore, in the sendmail.cf configuration file drweb-milter address must be specified, and Sendmail system chooses the appropriate client address for this connection; •Through another transport connection drweb-milter module sends commands to drweb-maild module and waits for its response. In the scheme given above, drweb-milter module works as a proxy (or transformer) between the Sendmail system interface and drweb-maild module. Note features of operation through Milter in synchronous and asynchronous modes.
|