每个使用libclamav库的应用程序都必须包括clamav.h头文件
#include <clamav.h>(使用样例见clamscan/manager.c)
一、装载库
初始化装载库的函数列出如下:
int cl_loaddb(const char * filename , struct cl_node **root , unsigned int *signo);
//装载选择的数据库
int cl_lodedbdir(const char * dirname , struct cl_node **root , unsigned int *signo );
//从目录dirname装载所有的数据库,函数返回默认(硬编码hardcoded)数据库的目录路径。在初始化后,一个内部数据库代表由参数root传出,root必须被初始化到NULL,装载的签名序号由参数signo传出,如果不关心签名计数,参数signo设置为NULL,
const char *cl_retdbdir(viod);
函数cl_loaddb和cl_lodedbdir装载成功时,返回0,失败时,返回一个负数。
函数cl_loaddb用法如下:
...
struct cl_node *root = NULL;
int ret , signo = 0;
ret = cl_loaddbdir(cl_retdbdir() , &root , &signo );
二、错误处理
使用函数cl