char *response;
gchar **tokens;
struct sr_scpi_hw_info *hw_info;
+ gchar *idn_substr;
response = NULL;
tokens = NULL;
g_free(response);
hw_info = g_malloc0(sizeof(struct sr_scpi_hw_info));
- hw_info->manufacturer = g_strstrip(g_strdup(tokens[0]));
+
+ idn_substr = g_strstr_len(tokens[0], -1, "IDN ");
+ if (idn_substr == NULL)
+ hw_info->manufacturer = g_strstrip(g_strdup(tokens[0]));
+ else
+ hw_info->manufacturer = g_strstrip(g_strdup(idn_substr + 4));
+
hw_info->model = g_strstrip(g_strdup(tokens[1]));
hw_info->serial_number = g_strstrip(g_strdup(tokens[2]));
hw_info->firmware_version = g_strstrip(g_strdup(tokens[3]));