#ifndef ZABBIX_CACHECONFIG_H
#define ZABBIX_CACHECONFIG_H
#include "zbxdbhigh.h"
#include "zbxcomms.h"
#include "zbxeval.h"
#include "zbxavailability.h"
#include "zbxversion.h"
#include "zbxvault.h"
#include "zbxregexp.h"
#include "zbxtagfilter.h"
#define ZBX_NO_POLLER 255
#define ZBX_POLLER_TYPE_NORMAL 0
#define ZBX_POLLER_TYPE_UNREACHABLE 1
#define ZBX_POLLER_TYPE_IPMI 2
#define ZBX_POLLER_TYPE_PINGER 3
#define ZBX_POLLER_TYPE_JAVA 4
#define ZBX_POLLER_TYPE_HISTORY 5
#define ZBX_POLLER_TYPE_ODBC 6
#define ZBX_POLLER_TYPE_HTTPAGENT 7
#define ZBX_POLLER_TYPE_AGENT 8
#define ZBX_POLLER_TYPE_SNMP 9
#define ZBX_POLLER_TYPE_COUNT 10
typedef enum
{
ZBX_SESSION_TYPE_DATA = 0,
ZBX_SESSION_TYPE_CONFIG,
ZBX_SESSION_TYPE_COUNT,
}
zbx_session_type_t;
#define ZBX_MAX_JAVA_ITEMS 32
#define ZBX_MAX_SNMP_ITEMS 128
#define ZBX_MAX_POLLER_ITEMS 128
#define ZBX_MAX_PINGER_ITEMS 128
#define ZBX_MAX_HTTPAGENT_ITEMS 1000
#define ZBX_MAX_AGENT_ITEMS 1000
#define ZBX_MAX_ITEMS 1000
#define ZBX_SNMPTRAP_LOGGING_ENABLED 1
#define ZBX_AGENT_ZABBIX (INTERFACE_TYPE_AGENT - 1)
#define ZBX_AGENT_SNMP (INTERFACE_TYPE_SNMP - 1)
#define ZBX_AGENT_IPMI (INTERFACE_TYPE_IPMI - 1)
#define ZBX_AGENT_JMX (INTERFACE_TYPE_JMX - 1)
#define ZBX_AGENT_UNKNOWN 255
#define ZBX_AGENT_MAX INTERFACE_TYPE_COUNT
typedef struct
{
zbx_uint64_t interfaceid;
char ip_orig[ZBX_INTERFACE_IP_LEN_MAX];
char dns_orig[ZBX_INTERFACE_DNS_LEN_MAX];
char port_orig[ZBX_INTERFACE_PORT_LEN_MAX];
char *addr;
unsigned short port;
unsigned char useip;
unsigned char type;
unsigned char main;
unsigned char available;
int disable_until;
char error[ZBX_INTERFACE_ERROR_LEN_MAX];
int errors_from;
}
zbx_dc_interface_t;
typedef struct
{
zbx_uint64_t interfaceid;
char *addr;