2022-05-10 06:43:27 +00:00
|
|
|
//
|
|
|
|
// Created by xajhu on 2021/7/1 0001.
|
|
|
|
//
|
|
|
|
|
2022-11-23 02:41:05 +00:00
|
|
|
#include <zvector/zvector.h>
|
2022-11-21 09:13:44 +00:00
|
|
|
|
2022-05-10 06:43:27 +00:00
|
|
|
#ifndef DAEMON_AGENT_INCLUDE_CONFIG_H
|
|
|
|
#define DAEMON_AGENT_INCLUDE_CONFIG_H
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#define DEFAULT_INTEGRAL_ERR_VALUE (0x0AFFFFAA)
|
|
|
|
|
2022-11-17 07:35:17 +00:00
|
|
|
typedef struct {
|
|
|
|
char rangAddr[256];
|
|
|
|
char subnet[20];
|
|
|
|
char dnsSvr[256];
|
|
|
|
char gateway[20];
|
|
|
|
unsigned int lease;
|
|
|
|
} OBJ_DHCP_RNG, *POBJ_DHCP_RNG;
|
|
|
|
|
2022-05-10 06:43:27 +00:00
|
|
|
typedef enum {
|
2022-11-28 09:57:57 +00:00
|
|
|
VAL_INT = 0,
|
|
|
|
VAL_FLOAT = 1,
|
|
|
|
VAL_STR = 2,
|
|
|
|
VAL_BOOL = 3,
|
|
|
|
VAL_ARRAY_STR = 4,
|
|
|
|
VAL_ARRAY_OBJ = 5,
|
2022-05-10 06:43:27 +00:00
|
|
|
} CONFIG_VALUE_TYPE;
|
|
|
|
|
|
|
|
typedef enum {
|
2022-11-28 09:57:57 +00:00
|
|
|
CFG_DIRECTORY,
|
|
|
|
CFG_CURL_CA_PATH,
|
|
|
|
CFG_BANNER_SHOW,
|
|
|
|
CFG_HARDWARE_WATCH,
|
|
|
|
CFG_HARDWARE_REFRESH,
|
2022-12-21 10:46:53 +00:00
|
|
|
CFG_AGENT_IPTV_POST_URL,
|
2023-01-16 01:37:53 +00:00
|
|
|
CFG_AGENT_MONITER_URL,
|
2022-11-28 09:57:57 +00:00
|
|
|
CFG_WATCH_CPU,
|
|
|
|
CFG_WATCH_MEMORY,
|
|
|
|
CFG_WATCH_DISK,
|
|
|
|
CFG_WATCH_SENSOR,
|
|
|
|
CFG_CPU_REFRESH,
|
|
|
|
CFG_MEM_REFRESH,
|
|
|
|
CFG_DISK_REFRESH,
|
|
|
|
CFG_SENSOR_REFRESH,
|
|
|
|
#ifdef USED_REDIS
|
|
|
|
CFG_DB_REDIS_SERVER,
|
|
|
|
CFG_DB_REDIS_PORT,
|
|
|
|
CFG_DB_REDIS_PASSWD,
|
|
|
|
#endif
|
|
|
|
#ifdef USED_MYSQL
|
|
|
|
CFG_DB_MYSQL_SERVER,
|
|
|
|
CFG_DB_MYSQL_PORT,
|
|
|
|
CFG_DB_MYSQL_USER,
|
|
|
|
CFG_DB_MYSQL_PASSWD,
|
|
|
|
CFG_DB_MYSQL_DB_NAME,
|
|
|
|
#endif
|
|
|
|
#ifdef USED_SQLITE
|
|
|
|
CFG_DB_SQLITE_DB_NAME,
|
|
|
|
CFG_DB_SQLITE_PASSWD,
|
|
|
|
#endif
|
|
|
|
CFG_MQ_SVR_PORT,
|
|
|
|
CFG_MQ_DATA_PATH,
|
|
|
|
CFG_VXLAN_NIC_NAME,
|
|
|
|
CFG_VXLAN_SUPPORT,
|
|
|
|
CFG_VXLAN_PEER_IP,
|
|
|
|
CFG_VXLAN_PEER_MAC,
|
|
|
|
CFG_VXLAN_PKG_FILTER,
|
|
|
|
CFG_HTTP_SVR_ADDR,
|
|
|
|
CFG_HTTP_SVR_PORT,
|
|
|
|
CFG_HTTP_SVR_TCP_NODELAY,
|
2022-12-03 08:46:52 +00:00
|
|
|
CFG_PROTO_CRYPTO,
|
|
|
|
CFG_PROTO_CRYPTO_KEY,
|
2022-12-12 08:00:39 +00:00
|
|
|
#ifdef OPENDHCPD_ON
|
|
|
|
CFG_DHCP_LEASE_TIME,
|
2022-11-28 09:57:57 +00:00
|
|
|
CFG_DHCP_LISTEN_ON,
|
|
|
|
CFG_DHCP_REPLICATION_SVR,
|
|
|
|
CFG_DHCP_RANGE_SET,
|
2022-12-12 08:00:39 +00:00
|
|
|
CFG_DHCP_MAC_FILTER,
|
|
|
|
#endif
|
2022-05-10 06:43:27 +00:00
|
|
|
CONFIG_ITEM_ID_MAX
|
|
|
|
} CONFIG_ITEM_ID;
|
|
|
|
|
|
|
|
const char *get_cur_process_dir();
|
2022-11-22 01:49:33 +00:00
|
|
|
const char *get_cur_process_name();
|
2022-05-10 06:43:27 +00:00
|
|
|
|
|
|
|
const char *config_get_ssl_ca_path();
|
|
|
|
const char *cfg_get_config_directory();
|
|
|
|
int cfg_get_banner_enable();
|
|
|
|
int cfg_get_hardware_watch_enable();
|
|
|
|
unsigned int cfg_get_hardware_refresh_period();
|
|
|
|
int cfg_get_watch_cpu();
|
|
|
|
int cfg_get_watch_memory();
|
|
|
|
int cfg_get_watch_disk();
|
|
|
|
int cfg_get_watch_sensor();
|
|
|
|
unsigned int cfg_get_cpu_refresh_period();
|
|
|
|
unsigned int cfg_get_mem_refresh_period();
|
|
|
|
unsigned int cfg_get_disk_refresh_period();
|
|
|
|
unsigned int cfg_get_sensor_refresh_period();
|
2022-11-28 09:57:57 +00:00
|
|
|
#ifdef USED_REDIS
|
|
|
|
const char *cfg_get_redis_server();
|
|
|
|
int cfg_get_redis_port();
|
|
|
|
const char *cfg_get_redis_passwd();
|
|
|
|
#endif
|
|
|
|
#ifdef USED_MYSQL
|
|
|
|
const char *cfg_get_mysql_server();
|
|
|
|
int cfg_get_mysql_port();
|
|
|
|
const char *cfg_get_mysql_user();
|
|
|
|
const char *cfg_get_mysql_passwd();
|
|
|
|
const char *cfg_get_mysql_database();
|
|
|
|
#endif
|
2022-11-29 06:32:13 +00:00
|
|
|
#ifdef USED_SQLITE
|
|
|
|
const char *cfg_get_sqlite_db_name();
|
|
|
|
const char *cfg_get_sqlite_passwd();
|
|
|
|
#endif
|
2022-11-28 09:57:57 +00:00
|
|
|
int cfg_get_zero_mq_port();
|
|
|
|
const char *cfg_get_zero_mq_data_path();
|
2022-05-10 06:43:27 +00:00
|
|
|
|
2023-01-11 08:04:11 +00:00
|
|
|
const char *cfg_get_string_value(CONFIG_ITEM_ID id);
|
|
|
|
c_vector cfg_get_vector(CONFIG_ITEM_ID id);
|
|
|
|
long double cfg_get_float_value(CONFIG_ITEM_ID id);
|
|
|
|
int cfg_get_bool_value(CONFIG_ITEM_ID id);
|
|
|
|
long long cfg_get_integral_value(CONFIG_ITEM_ID id);
|
|
|
|
int init_config_system(const char *pCfgFile, const char *pKey);
|
|
|
|
void uninit_config_system();
|
|
|
|
void config_item_dump(const char *titleMessage);
|
|
|
|
const char *config_item_dump_fmt(const char *titleMessage);
|
|
|
|
const char *get_config_key(const char *pKeygen);
|
|
|
|
const char *get_config_keygen();
|
|
|
|
int cfg_get_support_vxlan();
|
2022-12-23 02:57:16 +00:00
|
|
|
#ifdef LWIP_ON
|
2023-01-11 08:04:11 +00:00
|
|
|
const char *config_get_vxlan_nic_name();
|
|
|
|
const char *config_get_vxlan_peer_mac();
|
|
|
|
const char *config_get_vxlan_peer_ip();
|
|
|
|
const char *config_get_vxlan_pkg_filter();
|
2022-12-23 02:57:16 +00:00
|
|
|
#endif
|
2022-12-21 10:46:53 +00:00
|
|
|
const char *config_get_agent_iptv_report_url();
|
2023-01-16 01:37:53 +00:00
|
|
|
const char *config_get_agent_moniter_report_url();
|
2022-11-07 06:38:30 +00:00
|
|
|
const char *config_get_http_server_addr();
|
|
|
|
unsigned int config_get_http_server_port();
|
|
|
|
int config_get_http_server_tcp_nodelay();
|
2022-12-03 08:46:52 +00:00
|
|
|
unsigned int config_get_proto_crypto_type();
|
|
|
|
const char *config_get_proto_crypto_key();
|
2023-01-13 08:44:43 +00:00
|
|
|
#ifdef USER_VNI
|
|
|
|
void cfg_set_user_vni_id(int vni);
|
|
|
|
int cfg_get_user_vni_id();
|
|
|
|
#endif
|
2022-11-30 09:57:52 +00:00
|
|
|
#ifdef OPENDHCPD_ON
|
2022-12-12 08:00:39 +00:00
|
|
|
unsigned int config_get_dhcp_server_lease_time();
|
|
|
|
c_vector config_get_dhcp_server_range_set();
|
|
|
|
c_vector config_get_dhcp_listen_on();
|
|
|
|
c_vector config_get_dhcp_replication_svr();
|
|
|
|
c_vector config_get_dhcp_mac_filter();
|
2022-11-30 09:57:52 +00:00
|
|
|
#endif
|
2022-12-12 08:00:39 +00:00
|
|
|
|
2022-05-10 06:43:27 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
2022-12-02 06:42:15 +00:00
|
|
|
#endif //DAEMON_AGENT_INCLUDE_CONFIG_H
|