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; ----



mrb,
freebsd 6.2 sistem üzerine squid 2.6.9 clamav 0.90 ve dansguardian 2.9.8.2 kurmaya çalisiyorum squid ve clamavi kurdum problemsiz olarak çalisiyor fakat dansguardiani enable clamd ve Enable ClamAV library support (libclamav) seklinde kurmaya çalistigimda asagidaki hatayi aliyorum. yanliz enable clamd seklinde kurarsam bir problem yok enable clamav library de eklersem hata aliyorum.
contentscanners/clamav.cpp: In member function `virtual int 
clamavinstance::init(void*)':
contentscanners/clamav.cpp:275: error: `cl_loaddbdir' was not declared in this 
scope
*** Error code 1
Stop in /usr/ports/www/dansguardian-devel/work/dansguardian-2.9.8.2/src.
*** Error code 1
Stop in /usr/ports/www/dansguardian-devel/work/dansguardian-2.9.8.2.
*** Error code 1
Stop in /usr/ports/www/dansguardian-devel/work/dansguardian-2.9.8.2.
*** Error code 1
Stop in /usr/ports/www/dansguardian-devel.
*** Error code 1 Stop in /usr/ports/www/dansguardian-devel. saygilar veysi gümüs



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