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
69 typedef enum fc_error_tag {
98 const char *fc_strerror(fc_error_t fcerror);
114 fc_error_t fc_initialize(
fc_config *config);
123 void fc_cleanup(
void);
136 fc_error_t fc_prune_database_directory(
138 uint32_t nDatabases);
148 fc_error_t fc_test_database(
149 const char *dbFilename,
150 int bBytecodeEnabled);
164 fc_error_t fc_dns_query_update_info(
165 const char *dnsUpdateInfoServer,
166 char **dnsUpdateInfo,
179 fc_error_t fc_download_url_database(
180 const char *urlDatabase,
193 fc_error_t fc_download_url_databases(
194 char **urlDatabaseList,
195 uint32_t nUrlDatabases,
211 fc_error_t fc_update_database(
212 const char *database,
216 const char *dnsUpdateInfo,
217 int bScriptedUpdates,
234 fc_error_t fc_update_databases(
240 const char *dnsUpdateInfo,
241 int bScriptedUpdates,
260 typedef fc_error_t (*fccb_download_complete)(
const char *dbFilename,
void *context);
266 extern 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