void dnsdist_ffi_dnsquestion_get_localaddr(const dnsdist_ffi_dnsquestion_t* dq, const void** addr, size_t* addrSize) __attribute__ ((visibility ("default")));
uint16_t dnsdist_ffi_dnsquestion_get_local_port(const dnsdist_ffi_dnsquestion_t* dq) __attribute__ ((visibility ("default")));
void dnsdist_ffi_dnsquestion_get_remoteaddr(const dnsdist_ffi_dnsquestion_t* dq, const void** addr, size_t* addrSize) __attribute__ ((visibility ("default")));
+void dnsdist_ffi_dnsquestion_get_masked_remoteaddr(dnsdist_ffi_dnsquestion_t* dq, const void** addr, size_t* addrSize, uint8_t bits) __attribute__ ((visibility ("default")));
uint16_t dnsdist_ffi_dnsquestion_get_remote_port(const dnsdist_ffi_dnsquestion_t* dq) __attribute__ ((visibility ("default")));
void dnsdist_ffi_dnsquestion_get_qname_raw(const dnsdist_ffi_dnsquestion_t* dq, const char** qname, size_t* qnameSize) __attribute__ ((visibility ("default")));
size_t dnsdist_ffi_dnsquestion_get_qname_hash(const dnsdist_ffi_dnsquestion_t* dq, size_t init);
dnsdist_ffi_comboaddress_to_raw(*dq->dq->remote, addr, addrSize);
}
+void dnsdist_ffi_dnsquestion_get_masked_remoteaddr(dnsdist_ffi_dnsquestion_t* dq, const void** addr, size_t* addrSize, uint8_t bits)
+{
+ dq->maskedRemote = Netmask(*dq->dq->remote, bits).getMaskedNetwork();
+ dnsdist_ffi_comboaddress_to_raw(dq->maskedRemote, addr, addrSize);
+}
+
uint16_t dnsdist_ffi_dnsquestion_get_local_port(const dnsdist_ffi_dnsquestion_t* dq)
{
return dq->dq->local->getPort();
std::vector<dnsdist_tag_t> tagsVect;
std::unordered_map<std::string, std::string> httpHeaders;
std::string trailingData;
+ ComboAddress maskedRemote;
boost::optional<std::string> result{boost::none};
boost::optional<std::string> httpPath{boost::none};
boost::optional<std::string> httpQueryString{boost::none};
#define BOOST_TEST_DYN_LINK
#define BOOST_TEST_NO_MAIN
-#include <thread>
#include <boost/test/unit_test.hpp>
#include "dnsdist.hh"
}
#ifdef LUAJIT_VERSION
+
BOOST_AUTO_TEST_CASE(test_lua_ffi_rr) {
std::vector<DNSName> names;
names.reserve(1000);
g_verbose = existingVerboseValue;
}
+
#endif /* LUAJIT_VERSION */
BOOST_AUTO_TEST_SUITE_END()