boilerplate_conv(SRV, ns_t_srv,
conv.xfr16BitInt(d_preference); conv.xfr16BitInt(d_weight); conv.xfr16BitInt(d_port);
- conv.xfrLabel(d_target);
+ conv.xfrLabel(d_target);
)
-
-
SOARecordContent::SOARecordContent(const string& mname, const string& rname, const struct soatimes& st)
: DNSRecordContent(ns_t_soa), d_mname(mname), d_rname(rname)
{
}
}
+// fills container with ranges, so {posbegin,posend}
template <typename Container>
void
vstringtok (Container &container, string const &in,
rr.priority = atoi(rr.content.c_str());
vector<pair<string::size_type, string::size_type> > fields;
vstringtok(fields, rr.content, " ");
- if(fields.size()==4)
+ if(fields.size()==4) {
+ if(fields[3].second - fields[3].first > 1) // strip dot, unless root
+ fields[3].second--;
rr.content=string(rr.content.c_str() + fields[1].first, fields[3].second - fields[1].first);
+ }
}
result->push_back(rr);
}
}
i->domain_id=domain_id;
- if (i->qtype.getCode() == QType::SRV)
- i->content = stripDot(i->content);
#if 0
if(i->qtype.getCode()>=60000)