nsec3zone=getNSEC3PARAM(auth, &ns3pr);
if(!nsec3zone) {
- DNSName dqname = DNSName(qname).labelReverse();
+ DNSName dqname(DNSName(qname).labelReverse().toString(" ", false)); // the horror
//cerr<<"in bind2backend::getBeforeAndAfterAbsolute: no nsec3 for "<<auth<<endl;
return findBeforeAndAfterUnhashed(bbd, dqname, unhashed, before, after);
}
if(logging)
L << Logger::Info << backend_name << "(updateDNSSECOrderAndAuth) domain_id: '" << domain_id << "' zonename: '" << zonename << "' qname: '" << qname << "' auth: '" << auth << "'" << endl;
- string ins=qname.makeRelative(zonename).makeLowerCase().labelReverse().toString();
+ string ins=qname.makeRelative(zonename).makeLowerCase().labelReverse().toString(" ", false);
return this->updateDNSSECOrderAndAuthAbsolute(domain_id, qname, ins, auth);
}
// lcqname=labelReverse(lcqname);
DNSName dnc;
string relqname, sbefore, safter;
- relqname=qname.makeRelative(zonename).toStringNoDot();
+ relqname=qname.makeRelative(zonename).labelReverse().toString(" ", false);
//sbefore = before.toString();
//safter = after.toString();
bool ret = this->getBeforeAndAfterNamesAbsolute(id, relqname, dnc, sbefore, safter);
+ boost::replace_all(sbefore, " ", ".");
+ boost::replace_all(safter, " ", ".");
before = DNSName(sbefore).labelReverse() + lczonename;
after = DNSName(safter).labelReverse() + lczonename;
} else {
// NSEC
if (rr.auth || rr.qtype.getCode() == QType::NS) {
- ordername=rr.qname.makeRelative(domain).makeLowerCase().labelReverse().toStringNoDot();
+ ordername=rr.qname.makeRelative(domain).makeLowerCase().labelReverse().toString(" ", false);
di.backend->feedRecord(rr, &ordername);
} else
di.backend->feedRecord(rr);
records++;
if(securedZone && (zrr.auth || zrr.dr.d_type == QType::NS)) {
if (NSEC3Zone || zrr.dr.d_type) {
- keyname = NSEC3Zone ? hashQNameWithSalt(ns3pr, zrr.dr.d_name) : zrr.dr.d_name.labelReverse().toString();
+ keyname = NSEC3Zone ? hashQNameWithSalt(ns3pr, zrr.dr.d_name) : zrr.dr.d_name.labelReverse().toString(" ", false);
NSECXEntry& ne = nsecxrepo[keyname];
ne.d_ttl = sd.default_ttl;
ne.d_auth = (ne.d_auth || zrr.auth || (NSEC3Zone && (!ns3pr.d_flags || (presignedZone && ns3pr.d_flags))));
nrc.d_set.insert(QType::RRSIG);
nrc.d_set.insert(QType::NSEC);
if(boost::next(iter) != nsecxrepo.end()) {
- nrc.d_next = DNSName(boost::next(iter)->first).labelReverse();
+ nrc.d_next = DNSName(boost::next(iter)->first).labelReverse(); // XXX likely we need to do the spaces thing here
}
else
- nrc.d_next=DNSName(nsecxrepo.begin()->first).labelReverse();
+ nrc.d_next=DNSName(nsecxrepo.begin()->first).labelReverse(); // XXX likely we need to do the spaces thing here
- zrr.dr.d_name = DNSName(iter->first).labelReverse();
+ zrr.dr.d_name = DNSName(iter->first).labelReverse(); // XXX likely we need to do the spaces thing here
zrr.dr.d_ttl = sd.default_ttl;
zrr.dr.d_content = std::make_shared<NSECRecordContent>(nrc);
else if(g_mode==POSTGRES) {
cout<<"insert into records (domain_id, name, ordername, auth, type,content,ttl,prio,disabled) select id ,"<<
sqlstr(toLower(qname))<<", "<<
- sqlstr(DNSName(qname).makeRelative(DNSName(zname)).makeLowerCase().labelReverse().toStringNoDot())<<", '"<< (auth ? 't' : 'f') <<"', "<<
+ sqlstr(DNSName(qname).makeRelative(DNSName(zname)).makeLowerCase().labelReverse().toString(" ", false))<<", '"<< (auth ? 't' : 'f') <<"', "<<
sqlstr(qtype)<<", "<<
sqlstr(stripDotContent(content))<<", "<<ttl<<", "<<prio<<", '"<<(disabled ? 't': 'f') <<
"' from domains where name="<<toLower(sqlstr(zname))<<";\n";