22 #ifndef NDN_CXX_SECURITY_VALIDATOR_CONFIG_CHECKER_HPP
23 #define NDN_CXX_SECURITY_VALIDATOR_CONFIG_CHECKER_HPP
32 class ValidationState;
34 namespace validator_config {
47 explicit operator bool()
const
49 return m_error.empty();
98 static unique_ptr<Checker>
115 class NegativeResultBuilder;
117 static NegativeResultBuilder
121 static unique_ptr<Checker>
122 createCustomizedChecker(
const ConfigSection& configSection,
const std::string& configFilename);
124 static unique_ptr<Checker>
125 createHierarchicalChecker(
const ConfigSection& configSection,
const std::string& configFilename);
127 static unique_ptr<Checker>
129 const ConfigSection& configSection,
const std::string& configFilename);
131 static unique_ptr<Checker>
133 const ConfigSection& configSection,
const std::string& configFilename);
171 const std::string& pktNameExpr,
const std::string& pktNameExpand,
172 const std::string& klNameExpr,
const std::string& klNameExpand,
Represents an absolute name.
const std::string & getErrorMessage() const
Return checker error message.
virtual ~Checker()=default
tlv::SignatureTypeValue m_sigType
virtual Result checkNames(const Name &pktName, const Name &klName)
Base version of name checking.
static unique_ptr< Checker > create(const ConfigSection &configSection, const std::string &configFilename)
Create a checker from configuration section.
Result check(uint32_t pktType, tlv::SignatureTypeValue sigType, const Name &pktName, const Name &klName, const ValidationState &state)
Check if packet name and KeyLocator satisfy the checker's conditions.
Checker(tlv::SignatureTypeValue sigType)
static NegativeResultBuilder reject()
HyperRelationChecker(tlv::SignatureTypeValue sigType, const std::string &pktNameExpr, const std::string &pktNameExpand, const std::string &klNameExpr, const std::string &klNameExpand, const NameRelation &hyperRelation)
Result checkNames(const Name &pktName, const Name &klName) override
Base version of name checking.
Result checkNames(const Name &pktName, const Name &klName) override
Base version of name checking.
NameRelationChecker(tlv::SignatureTypeValue sigType, const Name &name, const NameRelation &relation)
Result checkNames(const Name &pktName, const Name &klName) override
Base version of name checking.
RegexChecker(tlv::SignatureTypeValue sigType, const Regex ®ex)
boost::property_tree::ptree ConfigSection
Contains the ndn-cxx security framework.
SignatureTypeValue
SignatureType values.
@ SignatureSha256WithEcdsa