static int preproc_snmp_parse_line(const char *data, zbx_snmp_value_pair_t *p, size_t *line_len, char **error)
#include "item_preproc.h"
#include "preproc_snmp.h"
ZBX_VECTOR_IMPL(snmp_walk_to_json_param, zbx_snmp_walk_to_json_param_t)
ZBX_PTR_VECTOR_IMPL(snmp_walk_to_json_output_val, zbx_snmp_walk_json_output_value_t *)
ZBX_PTR_VECTOR_IMPL(snmp_value_pair, zbx_snmp_value_pair_t *)
#define ZBX_PREPROC_SNMP_UTF8_FROM_HEX 1
#define ZBX_PREPROC_SNMP_MAC_FROM_HEX 2
#define ZBX_PREPROC_SNMP_UINT_FROM_BITS 3
static char zbx_snmp_init_done;
static int preproc_snmp_translate_oid(const char *oid_in, char **oid_out)
char buffer[MAX_OID_LEN];
oid oid_tmp[MAX_OID_LEN];
size_t oid_len = MAX_OID_LEN;
if (0 != get_node(oid_in, oid_tmp, &oid_len))
snprint_objid(buffer, sizeof(buffer), oid_tmp, oid_len);
*oid_out = zbx_strdup(NULL, buffer);
static zbx_hash_t snmp_value_pair_hash_func(const void *d)
const zbx_snmp_value_pair_t *s = (const zbx_snmp_value_pair_t *)d;
return ZBX_DEFAULT_STRING_HASH_FUNC(s->oid);
static int snmp_value_pair_compare_func(const void *d1, const void *d2)
const zbx_snmp_value_pair_t *s1 = (const zbx_snmp_value_pair_t *)d1;
const zbx_snmp_value_pair_t *s2 = (const zbx_snmp_value_pair_t *)d2;