if(!B.getDomainInfo(domain, di))
return "Domain '"+domain.toString()+"' unknown";
- if(di.masters.empty())
+ if(di.kind != DomainInfo::Slave || di.masters.empty())
return "Domain '"+domain.toString()+"' is not a slave domain (or has no master defined)";
random_shuffle(di.masters.begin(), di.masters.end());
try {
DNSSECKeeper dk (&B); // reuse our UeberBackend copy for DNSSECKeeper
- if(!B.getDomainInfo(domain, di) || !di.backend) { // di.backend and B are mostly identical
+ if(!B.getDomainInfo(domain, di) || !di.backend || di.kind != DomainInfo::Slave) { // di.backend and B are mostly identical
L<<Logger::Error<<"Can't determine backend for domain '"<<domain<<"'"<<endl;
return;
}
try {
DNSSECKeeper dk (&B); // reuse our UeberBackend copy for DNSSECKeeper
- if(!B.getDomainInfo(domain, di) || !di.backend) { // di.backend and B are mostly identical
+ if(!B.getDomainInfo(domain, di) || !di.backend || di.kind != DomainInfo::Slave) { // di.backend and B are mostly identical
L<<Logger::Error<<"Can't determine backend for domain '"<<domain<<"'"<<endl;
return;
}