#if defined(HAVE_SSH2) || defined(HAVE_SSH)
int zbx_ssh_get_value(zbx_dc_item_t *item, const char *config_source_ip, const char *config_ssh_key_location,
const char *port, *dns, *encoding, *ssh_options;
zbx_init_agent_request(&request);
if (SUCCEED != zbx_parse_item_key(item->key, &request))
SET_MSG_RESULT(result, zbx_strdup(NULL, "Invalid item key format."));
#define SSH_RUN_KEY "ssh.run"
if (0 != strcmp(SSH_RUN_KEY, get_rkey(&request)))
SET_MSG_RESULT(result, zbx_strdup(NULL, "Unsupported item key for this item type."));
if (5 < get_rparams_num(&request))
SET_MSG_RESULT(result, zbx_strdup(NULL, "Too many parameters."));
if (NULL != (dns = get_rparam(&request, 1)) && '\0' != *dns)
zbx_strscpy(item->interface.dns_orig, dns);
item->interface.addr = item->interface.dns_orig;
if (NULL == item->interface.addr || '\0' == *(item->interface.addr))
SET_MSG_RESULT(result, zbx_strdup(NULL,
"SSH checks must have IP parameter or the host interface to be specified."));