I think I could have setup it up to scan the a Data Stream removing the need for the temp files. However, I needed a quick and dirty solution if you know what I mean. So I left it as a matcher like Vincenzo's IsInfected class. Hence most of the code is Vincenzo's, except for the part that calls CLAMD.
Sure, I always appreciate the need to get something working first.
Any input on updating it to a Mailet or sending the messages directly to Clamd would be appreciated.
Changing it to a mailet should be almost a no brainer. How it picks up configuration is the biggest change (you'll use getInitParameter instead of the StringTokenizer), but otherwise just extend a different class and have the code in service() instead of match().
In terms of eliminating the need for temp files, I would split out the code that connects to clamd to another method. Then in dumpPart() where it recurses through all the mime parts, instead of writing a block to check to disk, take that input stream and send that to the method that communicates with clamd.
-- Serge Knystautas President Lokitech >> software . strategy . design >> http://www.lokitech.com p. 301.656.5501 e. [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]