Beispiel #1
0
bool RuleManager::_FindRule(const char *rule_name, RuleType &type_into, uint16 &index_into) {
	if(rule_name == nullptr)
		return(false);

	int r;
	int rcount = CountRules();
	for(r = 0; r < rcount; r++) {
		const RuleInfo &rule = s_RuleInfo[r];
		if(strcmp(rule_name, rule.name) == 0) {
			type_into = rule.type;
			index_into = rule.rule_index;
			return(true);
		}
	}
	_log(RULES__ERROR, "Unable to find rule '%s'", rule_name);
	return(false);
}
Beispiel #2
0
bool RuleManager::_FindRule(const char *rule_name, RuleType &type_into, uint16 &index_into) {
	if (rule_name == nullptr)
		return(false);

	int i;
	int rule_count = CountRules();
	for (i = 0; i < rule_count; i++) {
		const RuleInfo &rule = s_RuleInfo[i];
		if (strcmp(rule_name, rule.name) == 0) {
			type_into = rule.type;
			index_into = rule.rule_index;
			return(true);
		}
	}
	Log.Out(Logs::Detail, Logs::Rules, "Unable to find rule '%s'", rule_name);
	return(false);
}
Beispiel #3
0
bool RuleManager::ListRules(const char *catname, std::vector<const char *> &into) {
	CategoryType cat = InvalidCategory;
	if(catname != nullptr) {
		cat = FindCategory(catname);
		if(cat == InvalidCategory) {
			_log(RULES__ERROR, "Unable to find category '%s'", catname);
			return(false);
		}
	}
	int r;
	int rcount = CountRules();
	for(r = 0; r < rcount; r++) {
		const RuleInfo &rule = s_RuleInfo[r];
		if(catname == nullptr || cat == rule.category) {
			into.push_back(rule.name);
		}
	}
	return(true);
}
Beispiel #4
0
bool RuleManager::ListRules(const char *catname, std::vector<const char *> &into) {
	CategoryType cat = InvalidCategory;
	if (catname != nullptr) {
		cat = FindCategory(catname);
		if (cat == InvalidCategory) {
			Log.Out(Logs::Detail, Logs::Rules, "Unable to find category '%s'", catname);
			return(false);
		}
	}
	int i;
	int rule_count = CountRules();
	for (i = 0; i < rule_count; i++) {
		const RuleInfo &rule = s_RuleInfo[i];
		if (catname == nullptr || cat == rule.category) {
			into.push_back(rule.name);
		}
	}
	return(true);
}