21#ifndef __LIBFRESHCLAM_H
22#define __LIBFRESHCLAM_H
24#include "clamav-types.h"
30#define FC_CONFIG_MSG_DEBUG 0x1
31#define FC_CONFIG_MSG_VERBOSE 0x2
32#define FC_CONFIG_MSG_QUIET 0x4
33#define FC_CONFIG_MSG_NOWARN 0x8
34#define FC_CONFIG_MSG_STDOUT 0x10
35#define FC_CONFIG_MSG_SHOWPROGRESS 0x20
37#define FC_CONFIG_LOG_VERBOSE 0x1
38#define FC_CONFIG_LOG_NOWARN 0x2
39#define FC_CONFIG_LOG_TIME 0x4
40#define FC_CONFIG_LOG_ROTATE 0x8
41#define FC_CONFIG_LOG_SYSLOG 0x10
69typedef enum fc_error_tag {
98const char *fc_strerror(fc_error_t fcerror);
114fc_error_t fc_initialize(fc_config *config);
123void fc_cleanup(
void);
136fc_error_t fc_prune_database_directory(
138 uint32_t nDatabases);
148fc_error_t fc_test_database(
149 const char *dbFilename,
150 int bBytecodeEnabled);
164fc_error_t fc_dns_query_update_info(
165 const char *dnsUpdateInfoServer,
166 char **dnsUpdateInfo,
179fc_error_t fc_download_url_database(
180 const char *urlDatabase,
193fc_error_t fc_download_url_databases(
194 char **urlDatabaseList,
195 uint32_t nUrlDatabases,
211fc_error_t fc_update_database(
212 const char *database,
216 const char *dnsUpdateInfo,
217 int bScriptedUpdates,
234fc_error_t fc_update_databases(
240 const char *dnsUpdateInfo,
241 int bScriptedUpdates,
260typedef fc_error_t (*fccb_download_complete)(
const char *dbFilename,
void *context);
266extern void fc_set_fccb_download_complete(fccb_download_complete callback);
Definition libfreshclam.h:45
uint32_t maxAttempts
Definition libfreshclam.h:49
const char * logFile
Definition libfreshclam.h:53
uint32_t connectTimeout
Definition libfreshclam.h:50
const char * proxyPassword
Definition libfreshclam.h:60
uint32_t requestTimeout
Definition libfreshclam.h:51
uint32_t bCompressLocalDatabase
Definition libfreshclam.h:52
uint64_t maxLogSize
Definition libfreshclam.h:48
uint16_t proxyPort
Definition libfreshclam.h:58
bool bFipsLimits
Definition libfreshclam.h:65
uint32_t msgFlags
Definition libfreshclam.h:46
uint32_t logFlags
Definition libfreshclam.h:47
const char * databaseDirectory
Definition libfreshclam.h:61
const char * tempDirectory
Definition libfreshclam.h:62
const char * certsDirectory
Definition libfreshclam.h:63
const char * proxyUsername
Definition libfreshclam.h:59
const char * proxyServer
Definition libfreshclam.h:57
const char * userAgent
Definition libfreshclam.h:56
const char * localIP
Definition libfreshclam.h:55
const char * logFacility
Definition libfreshclam.h:54