}
content += makeStringFromDocument(doc);
}
- else if(command == "get-zone") {
- SyncRes::domainmap_t::const_iterator ret = t_sstorage->domainmap->find(varmap["zone"]);
-
- content += "[";
- bool first=1;
-
- if(ret != t_sstorage->domainmap->end()) {
- BOOST_FOREACH(const SyncRes::AuthDomain::records_t::value_type& val, ret->second.d_records) {
- if(!first) content+= ", ";
- first=false;
- stats.clear();
- stats["name"] = val.qname;
- stats["type"] = val.qtype.getName();
- stats["ttl"] = lexical_cast<string>(val.ttl);
- stats["priority"] = lexical_cast<string>(val.priority);
- stats["content"] = val.content;
- content += returnJSONObject(stats);
- }
- }
- content += "]";
- }
else if(command == "zone") {
SyncRes::domainmap_t::const_iterator ret = t_sstorage->domainmap->find(varmap["zone"]);
if (ret != t_sstorage->domainmap->end()) {
//cerr<<"Flushed cache for '"<<varmap["domain"]<<"', cleaned "<<number<<" records"<<endl;
return returnJSONObject(object);
}
- else if(command=="get-zone") {
- UeberBackend B;
- SOAData sd;
- sd.db = (DNSBackend*)-1;
- if(!B.getSOA(varmap["zone"], sd) || !sd.db) {
- map<string, string> err;
- err["error"] = "Could not find domain '"+varmap["zone"]+"'";
- return returnJSONObject(err);
- }
- sd.db->list(varmap["zone"], sd.domain_id);
- DNSResourceRecord rr;
-
- string ret = "[";
- map<string, string> object;
- bool first=1;
- while(sd.db->get(rr)) {
- if(!first) ret += ", ";
- first=false;
- object.clear();
- object["name"] = rr.qname;
- object["type"] = rr.qtype.getName();
- object["ttl"] = lexical_cast<string>(rr.ttl);
- object["priority"] = lexical_cast<string>(rr.priority);
- object["content"] = rr.content;
- ret+=returnJSONObject(object);
- }
-
- ret += "]";
- return ret;
- }
else if(command == "pdns-control") {
if(method!="POST") {
map<string, string> m;