> This has come up on the clamav list before and has become > more critical now with all the extra signatures (Sanesecurity etc). > Some folks want a child process to do the reload, but that would > lead to a big increase in memory.
Well... in our case (Perl/ASSP) setting up timeouts for the "ping()" (optionally for the scan, not mandatory) as I described should help solving the issue; btw a quicker solution which won't imply a huge code change in ClamD would be adding support for a "BUSY" answer to requests, at that point (after updating the client apps) a client may decide what to do if the scanner reports a busy state e.g. may just wait or may disconnect and go on w/o scanning see, the main issue isn't implementing a "child process" for the reload, it's the fact that ClamD invalidates/wipes the current sig in memory and then reloads the sigs "over them" so there's no "active signature" or better said, no "ready" one until the reload doesn't complete, this means that to make that change (not the one I just suggested) in ClamD the developers should handle two signatures "buffers" one containing the current ones which will let the scanner work while the signatures are reloaded into the second "buffer" at that point, and only at that point, the code should apply a "lock", swap the buffers and discard the old one but as you see it's not so easy to implement such a thing, while adding support for a "BUSY" reply should be quite easy ------------------------------------------------------------------------------ Come build with us! The BlackBerry(R) Developer Conference in SF, CA is the only developer event you need to attend this year. Jumpstart your developing skills, take BlackBerry mobile applications to market and stay ahead of the curve. Join us from November 9 - 12, 2009. Register now! http://p.sf.net/sfu/devconference _______________________________________________ Assp-test mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/assp-test
