static void set_result(uint16_t *buf, modbus_datatype_t type, modbus_endianness_t endianness, AGENT_RESULT *res)
# ifdef HAVE_LIBMODBUS_STATIC
zbx_mutex_t modbus_lock = ZBX_MUTEX_NULL;
#define LOCK_MODBUS zbx_mutex_lock(modbus_lock)
#define UNLOCK_MODBUS zbx_mutex_unlock(modbus_lock)
#define ZBX_MODBUS_DATATYPE_STRLEN_MAX 6
#define ZBX_MODBUS_BAUDRATE_DEFAULT 115200
#define ZBX_MODBUS_ADDRESS_MAX 65535
static struct modbus_datatype_ref
modbus_datatype_t datatype;
char datatype_str[ZBX_MODBUS_DATATYPE_STRLEN_MAX + 1];
{ ZBX_MODBUS_DATATYPE_BIT, "bit" },
{ ZBX_MODBUS_DATATYPE_INT8, "int8" },
{ ZBX_MODBUS_DATATYPE_UINT8, "uint8" },
{ ZBX_MODBUS_DATATYPE_INT16, "int16" },
{ ZBX_MODBUS_DATATYPE_UINT16, "uint16" },
{ ZBX_MODBUS_DATATYPE_INT32, "int32" },
{ ZBX_MODBUS_DATATYPE_UINT32, "uint32" },
{ ZBX_MODBUS_DATATYPE_FLOAT, "float" },
{ ZBX_MODBUS_DATATYPE_UINT64, "uint64" },
{ ZBX_MODBUS_DATATYPE_DOUBLE, "double" }