new upstream release (3.3.0); modify package compatibility for Stretch
[ossec-hids.git] / src / config / global-config.h
1 /* Copyright (C) 2009 Trend Micro Inc.
2  * All right reserved.
3  *
4  * This program is a free software; you can redistribute it
5  * and/or modify it under the terms of the GNU General Public
6  * License (version 2) as published by the FSF - Free Software
7  * Foundation
8  */
9
10 #ifndef _CCONFIG__H
11 #define _CCONFIG__H
12
13 #include "shared.h"
14
15 /* Configuration structure */
16 typedef struct __Config {
17     u_int8_t logall;
18     u_int8_t logall_json;
19     u_int8_t stats;
20     u_int8_t integrity;
21     u_int8_t syscheck_auto_ignore;
22     u_int8_t syscheck_alert_new;
23     u_int8_t rootcheck;
24     u_int8_t hostinfo;
25     u_int8_t mailbylevel;
26     u_int8_t logbylevel;
27     u_int8_t logfw;
28     int decoder_order_size;
29
30
31     /* Prelude support */
32     u_int8_t prelude;
33     /* which min. level the alert must be sent to prelude */
34     u_int8_t prelude_log_level;
35     /* prelude profile name */
36     char *prelude_profile;
37
38     /* GeoIP DB */
39     char *geoipdb_file;
40
41     /* ZEROMQ Export */
42     u_int8_t zeromq_output;
43     char *zeromq_output_uri;
44     char *zeromq_output_server_cert;
45     char *zeromq_output_client_cert;
46
47     /* JSONOUT Export */
48     u_int8_t jsonout_output;
49
50     /* Not currently used */
51     u_int8_t keeplogdate;
52
53     /* Mail alerting */
54     short int mailnotify;
55
56     /* Custom Alert output*/
57     short int custom_alert_output;
58     char *custom_alert_output_format;
59
60     /* For the active response */
61     int ar;
62
63     /* For the correlation */
64     int memorysize;
65
66     /* List of files to ignore (syscheck) */
67     char **syscheck_ignore;
68
69     /* List of ips to never block */
70     os_ip **allow_list;
71
72     /* List of hostnames to never block */
73     char **hostname_allow_list;
74
75     /* List of rules */
76     char **includes;
77
78     /* List of Lists */
79     char **lists;
80
81     /* List of decoders */
82     char **decoders;
83
84     /* Global rule hash */
85     OSHash *g_rules_hash;
86
87 #ifdef LIBGEOIP_ENABLED
88     /* GeoIP support */
89     u_int8_t loggeoip;
90     char *geoip_db_path;
91     char *geoip6_db_path;
92     int geoip_jsonout;
93 #endif
94
95     /* MD5 DB support */
96     char *md5_allowlist;
97
98 } _Config;
99
100 #endif /* _CCONFIG__H */
101