yanlis yazmisim Not:BU PATCH unofficial patch !!!
clamavin yeni versiyonunda libclamav api sinde bazi fonksiyonlarda degisiklik yaptilar. Clamavin bir onceki versiyonu kurabilirsiniz yada asagidaki yamayi deneyebilirsiniz Not:BU PATCH unofficial patch degil !!!
--- dansguardian-2.9.8.2.orig/src/contentscanners/clamav.cpp 2006-01-23
14:06:49.000000000 -0200
+++ dansguardian-2.9.8.2/src/contentscanners/clamav.cpp 2007-03-08
03:29:20.000000000 -0300
@@ -64,7 +64,11 @@
private:
// virus database root node
- struct cl_node *root;
+#ifdef CL_SCAN_ALGORITHMIC
+ struct cl_engine *engine;
+#else
+ struct cl_node *engine;
+#endif
// archive limit options
struct cl_limits limits;
@@ -95,7 +99,7 @@
// destroy plugin
int clamavinstance::quit()
{
- cl_free(root);
+ cl_free(engine);
return DGCS_OK;
}
@@ -159,7 +163,7 @@
}
//int rc = cl_scanbuff(object, objectsize - 1, &vn, root);
- rc = cl_scandesc(fd, &vn, NULL, root, &limits, CL_SCAN_STDOPT);
+ rc = cl_scandesc(fd, &vn, NULL, engine, &limits, CL_SCAN_STDOPT);
close(fd);
#ifdef __CLAMAV_SHM
@@ -184,7 +188,7 @@
{
lastmessage = lastvirusname = "";
const char *vn = "";
- int rc = cl_scanfile(filename, &vn, NULL, root, &limits,
CL_SCAN_STDOPT
+ int rc = cl_scanfile(filename, &vn, NULL, engine, &limits,
CL_SCAN_STDOPT
/*CL_ARCHIVE | CL_OLE2 | CL_MAIL | CL_OLE2 | CL_SCAN_PE |
CL_SCAN_BLOCKBROKEN | CL_SCAN_HTML */ );
return doRC(rc, vn);
}
@@ -251,7 +255,7 @@
#endif
// set file, recursion and compression ratio limits for scanning
archives
- root = NULL;
+ engine = NULL;
limits.maxfiles = cv["maxfiles"].toInteger();
if (limits.maxfiles < 1) {
limits.maxfiles = 1000;
@@ -272,9 +276,14 @@
// load virus database
unsigned int virnum = 0;
- int rc = cl_loaddbdir(cl_retdbdir(), &root, &virnum);
+#ifdef CL_SCAN_ALGORITHMIC
+ unsigned int dboptions = CL_DB_STDOPT;
+ int rc = cl_load(cl_retdbdir(), &engine, &virnum, dboptions);
+#else
+ int rc = cl_loaddbdir(cl_retdbdir(), &engine, &virnum);
+#endif
#ifdef DGDEBUG
- std::cout << "root: " << root << " virnum: " << virnum <<
std::endl;
+ std::cout << "engine: " << engine << " virnum: " << virnum <<
std::endl;
#endif
if (rc != 0) {
if (!is_daemonised)
@@ -282,7 +291,7 @@
syslog(LOG_ERR, "Error loading clamav db: %s",
cl_strerror(rc));
return DGCS_ERROR;
}
- rc = cl_build(root);
+ rc = cl_build(engine);
if (rc != 0) {
if (!is_daemonised)
std::cerr << "Error building clamav db: " <<
cl_strerror(rc) << std::endl;
---------------------------------------------------------------------
Listeye soru sormadan once lutfen http://ipucu.enderunix.org sitesine bakiniz.
Cikmak icin, e-mail: [EMAIL PROTECTED]
Liste arsivi: http://lists.enderunix.org
Turkiye'nin ilk FreeBSD kitabi: http://www.acikakademi.com/catalog/freebsd





Gökhan ALKAN
---------------------------
http://ipucu.enderunix.org
http://www.enderunix.org

---------------------------------------------------------------------
Listeye soru sormadan once lutfen http://ipucu.enderunix.org sitesine bakiniz.

Cikmak icin, e-mail: [EMAIL PROTECTED]
Liste arsivi: http://lists.enderunix.org
Turkiye'nin ilk FreeBSD kitabi: http://www.acikakademi.com/catalog/freebsd


Cevap