diff options
Diffstat (limited to 'dnstap.hh')
-rw-r--r-- | dnstap.hh | 34 |
1 files changed, 29 insertions, 5 deletions
@@ -35,15 +35,39 @@ class DnstapMessage { public: - enum class MessageType : uint32_t { auth_query = 1, auth_response = 2, resolver_query = 3, resolver_response = 4, client_query = 5, client_response = 6, forwarder_query = 7, forwarded_response = 8, stub_query = 9, stub_response = 10, tool_query = 11, tool_response = 12 }; - enum class ProtocolType : uint32_t { DoUDP = 1, DoTCP = 2, DoT = 3, DoH = 4, DNSCryptUDP = 5, DNSCryptTCP = 6 }; + enum class MessageType : uint32_t + { + auth_query = 1, + auth_response = 2, + resolver_query = 3, + resolver_response = 4, + client_query = 5, + client_response = 6, + forwarder_query = 7, + forwarded_response = 8, + stub_query = 9, + stub_response = 10, + tool_query = 11, + tool_response = 12 + }; + enum class ProtocolType : uint32_t + { + DoUDP = 1, + DoTCP = 2, + DoT = 3, + DoH = 4, + DNSCryptUDP = 5, + DNSCryptTCP = 6, + DoQ = 7 + }; - DnstapMessage(std::string& buffer, MessageType type, const std::string& identity, const ComboAddress* requestor, const ComboAddress* responder, ProtocolType protocol, const char* packet, const size_t len, const struct timespec* queryTime, const struct timespec* responseTime, boost::optional<const DNSName&> auth=boost::none); + DnstapMessage(std::string&& buffer, MessageType type, const std::string& identity, const ComboAddress* requestor, const ComboAddress* responder, ProtocolType protocol, const char* packet, size_t len, const struct timespec* queryTime, const struct timespec* responseTime, const boost::optional<const DNSName&>& auth = boost::none); void setExtra(const std::string& extra); + std::string&& getBuffer(); -protected: - std::string& d_buffer; +private: + std::string d_buffer; }; #endif /* DISABLE_PROTOBUF */ |