#pragma once #include #include #include #include namespace llarp::dns { /// decode name from buffer; return nullopt on failure std::optional DecodeName(llarp_buffer_t* buf, bool trimTrailingDot = false); /// encode name to buffer bool EncodeNameTo(llarp_buffer_t* buf, std::string_view name); std::optional DecodePTR(std::string_view name); bool NameIsReserved(std::string_view name); } // namespace llarp::dns