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.
Updated by Junxiao Shi almost 4 years ago
- Tags set to security
- Assignee set to Junxiao Shi
20210212 NFD call decides to update the implementation to match the current spec.
Updated by Davide Pesavento almost 4 years ago
- Tags changed from security to security, ValidatorConfig
Updated by Junxiao Shi almost 4 years ago
- Status changed from New to In Progress
Updated by Junxiao Shi almost 4 years ago
- Status changed from In Progress to Code review
- % Done changed from 0 to 60
Updated by Alex Afanasyev almost 4 years ago
- Status changed from Code review to Closed
- % Done changed from 60 to 100
Actions