CLAMAV_PUBLIC {
  global:
    cl_cvdfree;
    cl_cvdhead;
    cl_cvdparse;
    cl_cvdverify;
    cl_debug;
    cl_init;
    cl_engine_new;
    cl_engine_set_num;
    cl_engine_get_num;
    cl_engine_set_str;
    cl_engine_get_str;
    cl_engine_set_clcb_hash;
    cl_engine_set_clcb_meta;
    cl_engine_set_clcb_file_props;
    cl_set_clcb_msg;
    cl_engine_set_clcb_pre_scan;
    cl_engine_set_clcb_post_scan;
    cl_engine_set_clcb_virus_found;
    cl_engine_set_clcb_sigload;
    cl_engine_set_clcb_pre_cache;
    cl_engine_settings_copy;
    cl_engine_settings_apply;
    cl_engine_settings_free;
    cl_engine_compile;
    cl_engine_addref;
    cl_engine_free;
    cl_load;
    cl_retdbdir;
    cl_retflevel;
    cl_retver;
    cl_scandesc;
    cl_scandesc_callback;
    cl_scanfile;
    cl_scanfile_callback;
    cl_statchkdir;
    cl_statfree;
    cl_statinidir;
    cl_countsigs;
    cl_strerror;
    cl_fmap_open_handle;
    cl_fmap_open_memory;
    cl_scanmap_callback;
    cl_fmap_close;
    cl_always_gen_section_hash;
    cl_engine_set_stats_set_cbdata;
    cl_engine_set_clcb_stats_add_sample;
    cl_engine_set_clcb_stats_remove_sample;
    cl_engine_set_clcb_stats_decrement_count;
    cl_engine_set_clcb_stats_submit;
    cl_engine_set_clcb_stats_flush;
    cl_engine_set_clcb_stats_get_num;
    cl_engine_set_clcb_stats_get_size;
    cl_engine_set_clcb_stats_get_hostid;
    cl_hash_init;
    cl_update_hash;
    cl_finish_hash;
    cl_hash_destroy;
    cl_engine_stats_enable;
    lsig_sub_matched;
};
CLAMAV_PRIVATE {
  global:
    cli_sigperf_print;
    cli_sigperf_events_destroy;
    cli_pcre_perf_print;
    cli_pcre_perf_events_destroy;
    cli_pcre_init;
    cli_pcre_build;
    cli_pcre_scanbuf;
    cli_pcre_recaloff;
    cli_pcre_freeoff;

    cli_gettmpdir;
    cli_strtok;
    cli_strtokenize;
    cli_ldbtokenize;
    cli_strlcat;
    cli_strlcpy;
    cli_cvdunpack;
    cli_regcomp;
    cli_regexec;
    cli_regfree;
    cli_strrcpy;
    cli_strbcasestr;
    cli_isnumber;
    cli_gentemp;
    cli_gentempfd;
    cli_rmdirs;
    cli_chomp;
    cli_rndnum;

    cli_calloc;
    cli_ole2_extract;
    cli_errmsg;
    cli_debug_flag;
    cli_dbgmsg_internal;
    cli_vba_readdir;
    cli_vba_inflate;
    cli_ppt_vba_read;
    cli_wm_readdir;
    cli_wm_decrypt_macro;
    cli_free_vba_project;
    cli_readn;
    cli_str2hex;
    cli_hashfile;
    cli_hashstream;
    text_normalize_init;
    text_normalize_reset;
    text_normalize_map;
    html_normalise_map;
    cli_utf16toascii;

    cli_malloc;
    cli_memstr;
    cli_strdup;
    cli_realloc;
    cli_ctime;
    tableCreate;
    tableDestroy;
    tableRemove;
    tableFind;
    tableIterate;
    tableUpdate;
    tableInsert;
    cli_warnmsg;
    cli_strtokbuf;
    cli_js_init;
    cli_js_process_buffer;
    cli_js_parse_done;
    cli_js_destroy;
    cli_js_output;
    cli_unescape;
    cli_textbuffer_append_normalize;
    cli_dconf_init;
    cli_regex2suffix;
    html_normalise_mem;
    init_regex_list;
    is_regex_ok;
    regex_list_done;
    regex_list_add_pattern;
    cli_build_regex_list;
    regex_list_match;
    cli_hashset_destroy;
    phishing_init;
    init_domainlist;
    init_whitelist;
    phishing_done;
    blobCreate;
    blobAddData;
    phishingScan;
    blobDestroy;
    load_regex_matcher;
    html_tag_arg_free;
    disasmbuf;
    uniq_init;
    uniq_free;
    uniq_add;
    uniq_get;
    cli_hex2str;
    cli_ac_init;
    cli_ac_initdata;
    cli_ac_buildtrie;
    cli_ac_scanbuff;
    cli_ac_freedata;
    cli_ac_free;
    cli_ac_chklsig;
    cli_sigopts_handler;
    cli_parse_add;
    cli_bm_init;
    cli_bm_scanbuff;
    cli_bm_free;
    cli_initroots;
    cli_scanbuff;
    cli_fmap_scandesc;
    cli_check_auth_header;
    cli_genhash_pe;
    html_screnc_decode;
    mpool_create;
    mpool_calloc;
    mpool_destroy;
    mpool_free;
    mpool_getstats;
    cli_versig;
    cli_versig2;
    cli_filecopy;
    cli_ftw;
    cli_unlink;
    cli_writen;
    cli_url_canon;
    cli_strerror;
    decodeLine;
    messageCreate;
    messageDestroy;
    base64Flush;
    have_rar;
    have_clamjit;
    cli_bytecode_load;
    cli_bytecode_prepare2;
    cli_bytecode_run;
    cli_bytecode_destroy;
    cli_bytecode_context_alloc;
    cli_bytecode_context_destroy;
    cli_bytecode_context_setfuncid;
    cli_bytecode_context_setparam_int;
    cli_bytecode_context_setparam_ptr;
    cli_bytecode_context_setfile;
    cli_bytecode_context_getresult_int;
    cli_bytecode_context_clear;
    cli_bytecode_init;
    cli_bytecode_done;
    cli_bytecode_debug;
    cli_hex2ui;
    fmap;
    cli_bytecode_context_set_trace;
    cli_bytecode_debug_printsrc;
    cli_bytecode_printversion;
    cli_bytecode_describe;
    cli_bytetype_describe;
    cli_bytevalue_describe;
    cli_byteinst_describe;
    cli_bytefunc_describe;
    cli_printcxxver;
    cli_detect_environment;
    cli_disasm_one;
    cli_utf16_to_utf8;
    get_fpu_endian;
    cl_initialize_crypto;
    cl_cleanup_crypto;
    cl_hash_data;
    cl_hash_file_fd;
    cl_hash_file_fp;
    cl_hash_file_fd_ctx;
    cl_sha256;
    cl_sha1;
    cl_verify_signature;
    cl_verify_signature_x509_keyfile;
    cl_verify_signature_x509;
    cl_get_x509_from_mem;
    cl_validate_certificate_chain_ts_dir;
    cl_validate_certificate_chain;
    cl_verify_signature_fd;
    cl_verify_signature_fd_x509;
    cl_verify_signature_fd_x509_keyfile;
    cl_verify_signature_hash;
    cl_verify_signature_hash_x509;
    cl_verify_signature_hash_x509_keyfile;
    cl_load_cert;
    cl_ASN1_GetTimeT;
    cl_load_crl;
    cl_sign_data_keyfile;
    cl_sign_data;
    cl_sign_file_fd;
    cl_sign_file_fp;
    cl_get_pkey_file;
    cl_base64_decode;
    cl_base64_encode;
    cli_sanitize_filepath;
    cli_gentemp_with_prefix;

    __cli_strcasestr;
    __cli_strndup;
    __cli_strnlen;
    __cli_strnstr;
  local:
    *;
};
