const char *cl_retdbdir(void); int cl_load(const char *path, struct cl_engine *engine, unsigned int *signo, unsigned int options);
cl_retdbdir()
returns the default (hardcoded) path to the directory
with ClamAV databases.
cl_load()
loads a single database file or all databases from a
given directory (when path
points to a directory). The second
argument is used for passing in the pointer to the engine that should
be previously allocated with cl_engine_new()
. A number of loaded
signatures will be added to signo
9. The last argument can
pass the following flags:
cl_load()
returns CL_SUCCESS
on success and another code on
failure.
... struct cl_engine *engine; unsigned int sigs = 0; int ret; if((ret = cl_init(CL_INIT_DEFAULT)) != CL_SUCCESS) { printf("cl_init() error: %s\n", cl_strerror(ret)); return 1; } if(!(engine = cl_engine_new())) { printf("Can't create new engine\n"); return 1; } ret = cl_load(cl_retdbdir(), engine, &sigs, CL_DB_STDOPT);