if (cni != found.second.end() &&
type != RRType::CNAME()) {
result_rrset = cni->second;
- result_status = CNAME;
+ result_status = WILDCARD_CNAME;
} else if (nsi != found.second.end()) {
result_rrset = nsi->second;
result_status = DELEGATION;
this->expected_sig_rdatas_.clear();
doFindTest(*finder, isc::dns::Name("a.cnamewild.example.org."),
isc::dns::RRType::TXT(), isc::dns::RRType::CNAME(),
- this->rrttl_, ZoneFinder::CNAME,
+ this->rrttl_, ZoneFinder::WILDCARD_CNAME,
this->expected_rdatas_, this->expected_sig_rdatas_);
this->expected_rdatas_.clear();
/// actually the best wildcard we have). Data sources that don't
/// support DNSSEC don't need to distinguish them.
///
+ /// In case of CNAME, if the CNAME is a wildcard (i.e., its owner name
+ /// starts with the label "*"), WILDCARD_CNAME will be returned instead
+ /// of CNAME.
+ ///
/// In case of NXRRSET related results, the returned NSEC record
/// belongs to the domain which would provide the result if it
/// contained the correct type (in case of NXRRSET, it is the queried
CNAME, ///< The search encounters and returns a CNAME RR
DNAME, ///< The search encounters and returns a DNAME RR
WILDCARD, ///< Succes by wildcard match, for DNSSEC
+ WILDCARD_CNAME, ///< CNAME on wildcard, search returns CNAME, for DNSSEC
WILDCARD_NXRRSET ///< NXRRSET on wildcard, for DNSSEC
};