Which INDY version is usable?

Giganews Newsgroups
Subject: Which INDY version is usable?
Posted by:  arthur hoornweg (arthur.hoornw…@wanadoo.nl.net)
Date: Mon, 29 Mar 2004

I am implementing an anti-spam filter into our company's
mail server and I'd like to use INDY for it.

I need the functionality of tidPOP3 and tidMessage so
that I can load a *.eml mail file, check it for some
spam characteristics, modify the "subject" line if I
think there's spam in it, and save the file again.

The basic concept is like this:

  Message:=tidmessage.create;
  Message.Loadfromfile (filename);
  If CheckSpam (message) then
  BEGIN
      message.Subject:='SPAM! ' + message.subject;
      message.savetofile (filename);
  END;
  message.free;

I had a terrible time using Indy 9.0.14 because some
basic functionality (tidmessage.savetofile) is
broken and causes access violations.
Moreover, the MIME decoder/encoder all by itself changes
the MIME boundaries in the mail and corrupts some 20 %
of the e-mail messages it processes, so that Outlook
Express displays a blank body.

I downloaded the CVS snapshot of Indy 9 only to find that
the MIME processor was even worse.

So I thought I'd give Indy 10 a try, but my memory monitor
shows it has memory leaks which makes it unusable.

I'd rather not re-write the whole MIME parsing stuff. Could
a kind soul give me some advise as to which Indy version is
the most stable in the POP3 / Mime disciplines?

Or maybe point out an alternative library that works?

--
Arthur Hoornweg
(please remove the ".net" from my e-mail address)

Replies