From: Otto Moerbeek Date: Fri, 30 Oct 2020 08:33:00 +0000 (+0100) Subject: Suggestions by @rgacogne X-Git-Tag: dnsdist-1.6.0-alpha0~11^2~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d58249ee318b35d595fa49c3b9688d84eb552398;p=thirdparty%2Fpdns.git Suggestions by @rgacogne --- diff --git a/pdns/pdns_recursor.cc b/pdns/pdns_recursor.cc index 0ee0b52210..b175a66340 100644 --- a/pdns/pdns_recursor.cc +++ b/pdns/pdns_recursor.cc @@ -887,7 +887,7 @@ static void protobufLogQuery(uint8_t maskV4, uint8_t maskV6, const boost::uuids: requestor.setPort(remote.getPort()); pdns::ProtoZero::Message m{128, std::string::size_type(policyTags.empty() ? 0 : 64)}; // XXX guesses at sizes - m.request(uniqueId, requestor, local, qname, qtype, qclass, id, tcp, len); + m.setRequest(uniqueId, requestor, local, qname, qtype, qclass, id, tcp, len); m.setServerIdentity(SyncRes::s_serverID); m.setEDNSSubnet(ednssubnet, ednssubnet.isIPv4() ? maskV4 : maskV6); m.setRequestorId(requestorId); @@ -1409,7 +1409,7 @@ static void startDoResolve(void *p) #ifdef HAVE_PROTOBUF if (checkProtobufExport(luaconfsLocal)) { pbMessage = make_unique(128, 128); // XXX guess at sizes - pbMessage->response(dc->d_mdp.d_qname, dc->d_mdp.d_qtype, dc->d_mdp.d_qclass); + pbMessage->setResponse(dc->d_mdp.d_qname, dc->d_mdp.d_qtype, dc->d_mdp.d_qclass); pbMessage->setServerIdentity(SyncRes::s_serverID); // RRSets added below @@ -1800,23 +1800,18 @@ static void startDoResolve(void *p) } needCommit = true; -#ifdef NOD_ENABLED bool udr = false; +#ifdef NOD_ENABLED if (g_udrEnabled) { udr = udrCheckUniqueDNSRecord(dc->d_mdp.d_qname, dc->d_mdp.d_qtype, *i); if (!hasUDR && udr) hasUDR = true; } -#endif /* NOD ENABLED */ +#endif /* NOD ENABLED */ #ifdef HAVE_PROTOBUF if (t_protobufServers) { -#ifdef NOD_ENABLED - // if (g_udrEnabled) ? pbMessage->addRR(*i, luaconfsLocal->protobufExportConfig.exportTypes, udr); -#else - pbMessage->addRR(*i, luaconfsLocal->protobufExportConfig.exportTypes); -#endif /* NOD_ENABLED */ } #endif } diff --git a/pdns/protozero.cc b/pdns/protozero.cc index 88dafab343..3a40b38347 100644 --- a/pdns/protozero.cc +++ b/pdns/protozero.cc @@ -57,7 +57,7 @@ void pdns::ProtoZero::Message::encodeDNSName(protozero::pbf_writer& pbf, std::st // leaving the block will cause the sub writer to compute how much was written based on the new size and update the size accordingly } -void pdns::ProtoZero::Message::request(const boost::uuids::uuid& uniqueId, const ComboAddress& requestor, const ComboAddress& local, const DNSName& qname, uint16_t qtype, uint16_t qclass, uint16_t id, bool tcp, size_t len) +void pdns::ProtoZero::Message::setRequest(const boost::uuids::uuid& uniqueId, const ComboAddress& requestor, const ComboAddress& local, const DNSName& qname, uint16_t qtype, uint16_t qclass, uint16_t id, bool tcp, size_t len) { setType(1); setMessageIdentity(uniqueId); @@ -73,18 +73,14 @@ void pdns::ProtoZero::Message::request(const boost::uuids::uuid& uniqueId, const setToPort(local.getPort()); } -void pdns::ProtoZero::Message::response(const DNSName& qname, uint16_t qtype, uint16_t qclass) +void pdns::ProtoZero::Message::setResponse(const DNSName& qname, uint16_t qtype, uint16_t qclass) { setType(2); setQuestion(qname, qtype, qclass); } -#ifdef NOD_ENABLED void pdns::ProtoZero::Message::addRR(const DNSRecord& record, const std::set& exportTypes, bool udr) -#else -void pdns::ProtoZero::Message::addRR(const DNSRecord& record, const std::set& exportTypes) -#endif /* NOD_ENABLED */ { if (record.d_place != DNSResourceRecord::ANSWER || record.d_class != QClass::IN) { return; diff --git a/pdns/protozero.hh b/pdns/protozero.hh index 3f985ef7f4..f257b03882 100644 --- a/pdns/protozero.hh +++ b/pdns/protozero.hh @@ -34,7 +34,7 @@ namespace pdns { namespace ProtoZero { class Message { public: - // Start a new messagebug, constaining separate data for the response part + // Start a new messagebuf, containing separate data for the response part Message(std::string::size_type sz1, std::string::size_type sz2) : d_message{d_msgbuf}, d_response{d_rspbuf} { // This is extra space in addition to what's already there @@ -71,8 +71,8 @@ namespace pdns { void encodeComboAddress(protozero::pbf_tag_type type, const ComboAddress& ca); void encodeNetmask(protozero::pbf_tag_type type, const Netmask& subnet, uint8_t mask); void encodeDNSName(protozero::pbf_writer& pbf, std::string& buffer, protozero::pbf_tag_type type, const DNSName& name); - void request(const boost::uuids::uuid& uniqueId, const ComboAddress& requestor, const ComboAddress& local, const DNSName& qname, uint16_t qtype, uint16_t qclass, uint16_t id, bool tcp, size_t len); - void response(const DNSName& qname, uint16_t qtype, uint16_t qclass); + void setRequest(const boost::uuids::uuid& uniqueId, const ComboAddress& requestor, const ComboAddress& local, const DNSName& qname, uint16_t qtype, uint16_t qclass, uint16_t id, bool tcp, size_t len); + void setResponse(const DNSName& qname, uint16_t qtype, uint16_t qclass); void setType(int mtype) { @@ -175,11 +175,9 @@ namespace pdns { { d_response.add_uint32(1, rcode); } -#ifdef NOD_ENABLED + void addRR(const DNSRecord& record, const std::set& exportTypes, bool udr); -#else - void addRR(const DNSRecord& record, const std::set& exportTypes); -#endif + void setAppliedPolicy(const std::string& policy) { d_response.add_string(3, policy);