-static int snort_config_add_metric_data_source_type(metric_definition_t *md, oconfig_item_t *ci){
- if ((ci->values_num != 1) || (ci->values[0].type != OCONFIG_TYPE_STRING)){
- WARNING("snort plugin: `DataSourceType' needs exactly one string argument.");
- return (-1);
- }
-
- if (strcasecmp(ci->values[0].value.string, "GAUGE") == 0)
- md->data_source_type = DS_TYPE_GAUGE;
- else if (strcasecmp(ci->values[0].value.string, "COUNTER") == 0)
- md->data_source_type = DS_TYPE_COUNTER;
- else if (strcasecmp(ci->values[0].value.string, "DERIVE") == 0)
- md->data_source_type = DS_TYPE_DERIVE;
- else if (strcasecmp(ci->values[0].value.string, "ABSOLUTE") == 0)
- md->data_source_type = DS_TYPE_ABSOLUTE;
- else {
- WARNING("snort plugin: Unrecognized value for `DataSourceType' `%s'.", ci->values[0].value.string);
- return (-1);
- }
-
- return (0);
-}
-