diff options
| author | liuxueli <[email protected]> | 2024-11-27 10:27:34 +0000 |
|---|---|---|
| committer | liuxueli <[email protected]> | 2024-11-27 10:27:34 +0000 |
| commit | ad02793073353103ccccf3fab1afdd6cc30946d5 (patch) | |
| tree | b7d8bf1fad5567ccf830daa8ba6c64927b738a85 /scanner/scanner_module.h | |
| parent | 38307ed232012dcbd44bd95167b8f37c7186d1fb (diff) | |
scanner and security enforcer rebase developdev-scanner
Diffstat (limited to 'scanner/scanner_module.h')
| -rw-r--r-- | scanner/scanner_module.h | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/scanner/scanner_module.h b/scanner/scanner_module.h new file mode 100644 index 0000000..89a80a4 --- /dev/null +++ b/scanner/scanner_module.h @@ -0,0 +1,65 @@ +#pragma once + +#include <stdint.h> +#include <stddef.h> +#include <stdbool.h> +#include <uuid/uuid.h> +#include <limits.h> + +#include <uthash/utarray.h> + +#include "attribute_schema.h" + +enum IP_PROTOCOL +{ + IP_PROTOCOL_UNKNOWN=0, + IP_PROTOCOL_ICMP=1, + IP_PROTOCOL_TCP, + IP_PROTOCOL_UDP, + IP_PROTOCOL_MAX +}; + +struct global_parameter +{ + char sled_ip[NAME_MAX]; + char device_id[NAME_MAX]; + char device_sn[NAME_MAX]; + char device_tag[NAME_MAX]; + char data_center[NAME_MAX]; + char device_group[NAME_MAX]; + + int traffic_vsystem_id; + int default_unknown_app_id; + int session_record_enabled; +}; + +struct default_parameter +{ + uuid_t boolean_true_object_uuid; + uuid_t boolean_false_object_uuid; + uuid_t ip_protocol_object_uuid[IP_PROTOCOL_MAX]; +}; + +struct scanner_maat; +struct packet_scanner; +struct session_scanner; + +struct scanner +{ + struct logger *logger; + struct module_manager *mod_mgr; + struct default_parameter default_para; + struct global_parameter global_para; + + struct scanner_maat *cm_maat; + struct scanner_maat *sd_maat; + + struct packet_scanner *pkt_scanner; + struct session_scanner *sess_scanner; + struct attribute_schema attr_schema[ATTRIBUTE_SCHEMA_MAX]; +}; + +uuid_t *scanner_get0_boolean_object_uuid(struct scanner *scanner, bool value); + +void scanner_print_debug_hit_object(struct scanner *scanner, const char *readable_addr, struct maat_hit_object *hit_object_list, size_t hit_object_num); +void scanner_print_debug_hit_rule(struct scanner *scanner, const char *readable_addr, const char *tablename, uuid_t *rule_uuid_list, size_t rule_uuid_num); |
