Actions
Bug #5145
closedValidatorConfig: checker - conflict between spec and implementation
Start date:
Due date:
% Done:
100%
Estimated time:
2.00 h
Tags:
Description
ValidatorConfig specification states:
A rule must have at least one checker property.
A packet is treated as valid if it can pass at least one of the checkers and as invalid when it cannot pass any checkers.
Rule::check function implementation is:
for (const auto& checker : m_checkers) {
bool result = checker->check(pktType, pktName, klName, state);
if (!result) {
return result;
}
hasPendingResult = true;
}
If a rule has multiple checkers and a packet would pass some but not all checkers:
- According to the current specification, the packet should be treated as valid.
- According to the current implementation, the packet would be treated as invalid.
Either the specification or the implementation must be updated to match the other.
Actions