~louis/ubuntu/trusty/clamav/lp799623_fix_logrotate

« back to all changes in this revision

Viewing changes to libclamav/clamav.h

  • Committer: Bazaar Package Importer
  • Author(s): Scott Kitterman
  • Date: 2010-03-12 11:30:04 UTC
  • mfrom: (0.41.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20100312113004-b0fop4bkycszdd0z
Tags: 0.96~rc1+dfsg-0ubuntu1
* New upstream RC - FFE (LP: #537636):
  - Add OfficialDatabaseOnly option to clamav-base.postinst.in
  - Add LocalSocketGroup option to clamav-base.postinst.in
  - Add LocalSocketMode option to clamav-base.postinst.in
  - Add CrossFilesystems option to clamav-base.postinst.in
  - Add ClamukoScannerCount option to clamav-base.postinst.in
  - Add BytecodeSecurity opiton to clamav-base.postinst.in
  - Add DetectionStatsHostID option to clamav-freshclam.postinst.in
  - Add Bytecode option to clamav-freshclam.postinst.in
  - Add MilterSocketGroup option to clamav-milter.postinst.in
  - Add MilterSocketMode option to clamav-milter.postinst.in
  - Add ReportHostname option to clamav-milter.postinst.in
  - Bump libclamav SO version to 6.1.0 in libclamav6.install
  - Drop clamdmon from clamav.examples (no longer shipped by upstream)
  - Drop libclamav.a from libclamav-dev.install (not built by upstream)
  - Update SO version for lintian override for libclamav6
  - Add new Bytecode Testing Tool, usr/bin/clambc, to clamav.install
  - Add build-depends on python and python-setuptools for new test suite
  - Update debian/copyright for the embedded copy of llvm (using the system
    llvm is not currently feasible)

Show diffs side-by-side

added added

removed removed

Lines of Context:
65
65
    CL_EMAXREC,
66
66
    CL_EMAXSIZE,
67
67
    CL_EMAXFILES,
68
 
    CL_EFORMAT
 
68
    CL_EFORMAT,
 
69
    CL_EBYTECODE
69
70
} cl_error_t;
70
71
 
71
72
/* db options */
72
73
#define CL_DB_PHISHING      0x2
73
74
#define CL_DB_PHISHING_URLS 0x8
74
75
#define CL_DB_PUA           0x10
75
 
#define CL_DB_CVDNOTMP      0x20
 
76
#define CL_DB_CVDNOTMP      0x20    /* obsolete */
76
77
#define CL_DB_OFFICIAL      0x40    /* internal */
77
78
#define CL_DB_PUA_MODE      0x80
78
79
#define CL_DB_PUA_INCLUDE   0x100
79
80
#define CL_DB_PUA_EXCLUDE   0x200
80
81
#define CL_DB_COMPILED      0x400   /* internal */
81
82
#define CL_DB_DIRECTORY     0x800   /* internal */
 
83
#define CL_DB_OFFICIAL_ONLY 0x1000
 
84
#define CL_DB_BYTECODE      0x2000
 
85
#define CL_DB_SIGNED        0x4000  /* internal */
82
86
 
83
87
/* recommended db settings */
84
 
#define CL_DB_STDOPT        (CL_DB_PHISHING | CL_DB_PHISHING_URLS)
 
88
#define CL_DB_STDOPT        (CL_DB_PHISHING | CL_DB_PHISHING_URLS | CL_DB_BYTECODE)
85
89
 
86
90
/* scan options */
87
91
#define CL_SCAN_RAW                     0x0
92
96
#define CL_SCAN_HTML                    0x10
93
97
#define CL_SCAN_PE                      0x20
94
98
#define CL_SCAN_BLOCKBROKEN             0x40
95
 
#define CL_SCAN_MAILURL                 0x80
 
99
#define CL_SCAN_MAILURL                 0x80 /* ignored */
96
100
#define CL_SCAN_BLOCKMAX                0x100 /* ignored */
97
101
#define CL_SCAN_ALGORITHMIC             0x200
98
102
#define CL_SCAN_PHISHING_BLOCKSSL       0x800 /* ssl mismatches, not ssl by itself*/
108
112
/* recommended scan settings */
109
113
#define CL_SCAN_STDOPT          (CL_SCAN_ARCHIVE | CL_SCAN_MAIL | CL_SCAN_OLE2 | CL_SCAN_PDF | CL_SCAN_HTML | CL_SCAN_PE | CL_SCAN_ALGORITHMIC | CL_SCAN_ELF)
110
114
 
 
115
/* cl_countsigs options */
 
116
#define CL_COUNTSIGS_OFFICIAL       0x1
 
117
#define CL_COUNTSIGS_UNOFFICIAL     0x2
 
118
#define CL_COUNTSIGS_ALL            (CL_COUNTSIGS_OFFICIAL | CL_COUNTSIGS_UNOFFICIAL)
 
119
 
111
120
struct cl_engine;
112
121
struct cl_settings;
113
122
 
131
140
    CL_ENGINE_AC_MINDEPTH,          /* uint32_t */
132
141
    CL_ENGINE_AC_MAXDEPTH,          /* uint32_t */
133
142
    CL_ENGINE_TMPDIR,               /* (char *) */
134
 
    CL_ENGINE_KEEPTMP               /* uint32_t */
 
143
    CL_ENGINE_KEEPTMP,              /* uint32_t */
 
144
    CL_ENGINE_BYTECODE_SECURITY     /* uint32_t */
 
145
};
 
146
 
 
147
enum bytecode_security {
 
148
    CL_BYTECODE_TRUST_ALL=0, /* insecure, debug setting */
 
149
    CL_BYTECODE_TRUST_SIGNED, /* default */
 
150
    CL_BYTECODE_TRUST_NOTHING /* paranoid setting */
135
151
};
136
152
 
137
153
extern int cl_engine_set_num(struct cl_engine *engine, enum cl_engine_field field, long long num);
196
212
extern int cl_statchkdir(const struct cl_stat *dbstat);
197
213
extern int cl_statfree(struct cl_stat *dbstat);
198
214
 
 
215
/* count signatures */
 
216
extern int cl_countsigs(const char *path, unsigned int countoptions, unsigned int *sigs);
 
217
 
199
218
/* enable debug messages */
200
219
extern void cl_debug(void);
201
220