EDGESEC  0.1.0-alpha.0+sha.ca29a8277b72f80785649ea9ef9cd7edf642d939
Secure router - reference implementation
supervisor_config.h
Go to the documentation of this file.
1 
11 #ifndef SUPERVISOR_CONFIG_H
12 #define SUPERVISOR_CONFIG_H
13 
14 #include <stdbool.h>
15 #include <sqlite3.h>
16 
17 #include <eloop.h>
18 #include "../ap/ap_config.h"
19 #include "../capture/capture_config.h"
20 #include "../crypt/crypt_config.h"
21 #include "../dhcp/dhcp_config.h"
22 #include "../dns/dns_config.h"
23 #include "../firewall/firewall_service.h"
24 #include "../radius/radius_config.h"
25 #include "../utils/iface.h"
26 #include "../utils/iface_mapper.h"
27 
28 #include "mac_mapper.h"
29 
34 struct auth_ticket {
36  ssize_t passphrase_len;
38  int vlanid;
39 };
40 
46  struct fwctx *fw_ctx;
54  bool exec_capture;
58  char nat_bridge[IF_NAMESIZE];
61  char nat_interface[IF_NAMESIZE];
66  UT_array *config_ifinfo_array;
68  UT_array *subscribers_array;
71  int udp_sock;
74  struct apconf hconfig;
75  struct dhcp_conf dconfig;
76  struct dns_conf nconfig;
77  struct mdns_conf mconfig;
78  struct radius_conf rconfig;
79  sqlite3 *macconn_db;
83  struct auth_ticket *ticket;
84  int ap_sock;
85  struct eloop_data *eloop;
86 };
87 
88 #endif
#define AP_SECRET_LEN
Definition: ap_config.h:26
File containing the definition of the mac mapper.
#define MAX_DEVICE_LABEL_SIZE
Definition: mac_mapper.h:27
The hostapd configuration structure.
Definition: ap_config.h:51
Authentication ticket structure definition.
Definition: supervisor_config.h:34
uint8_t passphrase[AP_SECRET_LEN]
Definition: supervisor_config.h:35
char device_label[MAX_DEVICE_LABEL_SIZE]
Definition: supervisor_config.h:37
ssize_t passphrase_len
Definition: supervisor_config.h:36
int vlanid
Definition: supervisor_config.h:38
The MAC bridge address store list.
Definition: bridge_list.h:35
The capture configuration structure.
Definition: capture_config.h:32
crypt context structure definition
Definition: crypt_config.h:25
The dhcp configuration structures.
Definition: dhcp_config.h:40
The dns configuration structures.
Definition: dns_config.h:42
Definition: firewall_config.h:28
Definition: firewall_config.h:33
Subnet to interface connection mapper.
Definition: iface_mapper.h:76
MAC mapper connection structure.
Definition: mac_mapper.h:66
keyd array hasmap structure definition
Definition: hashmap.h:23
VLAN to interface connection mapper.
Definition: iface_mapper.h:96
Definition: iface.h:33
The mDNS configuration structures.
Definition: dns_config.h:51
Radius configuration structure.
Definition: radius_config.h:23
Definition: radius_server.h:95
Supervisor structure definition.
Definition: supervisor_config.h:45
struct crypt_context * crypt_ctx
Definition: supervisor_config.h:81
bool allow_all_nat
Definition: supervisor_config.h:53
char nat_bridge[IF_NAMESIZE]
Definition: supervisor_config.h:58
struct radius_server_data * radius_srv
Definition: supervisor_config.h:80
struct firewall_conf firewall_config
Definition: supervisor_config.h:72
struct eloop_data * eloop
Definition: supervisor_config.h:85
sqlite3 * macconn_db
Definition: supervisor_config.h:79
hmap_if_conn * if_mapper
Definition: supervisor_config.h:48
struct fwctx * fw_ctx
Definition: supervisor_config.h:46
uint8_t wpa_passphrase[AP_SECRET_LEN]
Definition: supervisor_config.h:55
struct iface_context * iface_ctx
Definition: supervisor_config.h:82
struct mdns_conf mconfig
Definition: supervisor_config.h:77
ssize_t wpa_passphrase_len
Definition: supervisor_config.h:57
bool allocate_vlans
Definition: supervisor_config.h:63
struct apconf hconfig
Definition: supervisor_config.h:74
int default_open_vlanid
Definition: supervisor_config.h:64
int udp_sock
Definition: supervisor_config.h:71
struct dhcp_conf dconfig
Definition: supervisor_config.h:75
struct bridge_mac_list * bridge_list
Definition: supervisor_config.h:69
hmap_mac_conn * mac_mapper
Definition: supervisor_config.h:47
int domain_sock
Definition: supervisor_config.h:70
hmap_str_keychar * hmap_bin_paths
Definition: supervisor_config.h:50
struct auth_ticket * ticket
Definition: supervisor_config.h:83
char nat_interface[IF_NAMESIZE]
Definition: supervisor_config.h:61
int ap_sock
Definition: supervisor_config.h:84
struct capture_conf capture_config
Definition: supervisor_config.h:73
bool exec_capture
Definition: supervisor_config.h:54
struct dns_conf nconfig
Definition: supervisor_config.h:76
UT_array * subscribers_array
Definition: supervisor_config.h:68
bool allow_all_connections
Definition: supervisor_config.h:51
hmap_vlan_conn * vlan_mapper
Definition: supervisor_config.h:49
struct radius_conf rconfig
Definition: supervisor_config.h:78
UT_array * config_ifinfo_array
Definition: supervisor_config.h:66