Good work,Mark!

Thanks! I've updated it to 0.85.1 now, which wasn't too hard (everything in the same place as last time).

Did you looked at my (partial) port of ClamAV ?
(http:\\www.bransoft.com\clamav.html) We could "join forces"  ;-)
No, I hadn't found it. I wish I had, it would have saved me some work! I'd be very happy to join forces.

I'm very busy now but soon I'll  back to clamav development.
DNS TXT record is pure winsock based in my port (ported from uLibc
source) so it's better I think (may be used under Win98/Me also)
OK, that makes sense. I've personally no interest in anything < NT but I can see that people might want to use them. The main advantage to using Window's built-in DNS support is that you don't have to configure the resolver, you just use what the machine has configured. AFAIK it's impossible to get the actual DNS configuration in any kind of simple way (e.g. API call). Have a look at what c-ares (libcurl maintains this now) to see what I mean -- there are hundreds of lines of code trying to get the DNS servers, and the result still isn't quite right.

but some featurer are missing like external archives support
This seems to work fine in my port, I assume you just didn't get around to replacing the fork()/exec() with a spawn?

> or broken
like vba code decomposition.
Not sure if this works with my stuff, I've nothing to test it with.

> Anyway it's 0.90 code (full RAR support!)
from CVS and I try to always generate correct patches as soon as I have
time.
I think I'm happier to track the stable version at the moment, as I'm using it in a production environment. I guess forward porting things shouldn't be too hard though.

My idea (I think that other team members agree here) is to build port in
such way that will be always easy to create libclamav as DLL and use it
for creating GUI.
I've not much interest in GUIs either :) Any GUI implementation I would have thought would be best off connecting to a local clamd, as that way things like shell extensions become much faster. I agree with the general method: I also opted for building libclamav as a DLL (our ports are not very different at all, I see we did the exact same thing with libgmp :-).

Of course creating command line tools like clamscan is
also importand but main goal is to make clamd NT service with libclamav
as DLL to easy upgrade to new engine version.I have very limited clamd
NT service now and start working on GUI part.
I'd like to merge clamd NT service with some source code from original
clamd especially code for reloading new CVD from disk (and not canceling
working threads) plus some thread count limits.It will rather become
local on-computer service and the main reason is concurent scanning of
many files (10-20) to speed up process.


Hmm, how are you approaching this? I just wrapped clamd up a little in a service wrapper that lets you do net start/net stop. The threading code I left just as it was, and it seems to work fine. Plus the code in freshclam to tell clamd to reload the database seems to be OK as well.

For updating the engine, that's not all that hard. You need version resources in everything (MSI likes these), you download a new MSI package and do msiexec /i<installer> reinstall=all reinstallmode=vomus and it takes care of stopping services, installing, and starting them again. I wouldn't go with having a non-updateable wrapper and a downloadable binary as this wouldn't allow you to address changes in most of the rest of the code. I'm sure you'd want to sign the package somehow as well.

What do you think the best way to proceed is?
_______________________________________________
http://lurker.clamav.net/list/clamav-devel.html

Reply via email to