InternalQueryState& operator=(const InternalQueryState& orig) = delete;
boost::optional<Netmask> subnet{boost::none}; // 40
- std::set<QType> ttlCapTypes;
+ std::unordered_set<QType> ttlCapTypes;
ComboAddress origRemote; // 28
ComboAddress origDest; // 28
ComboAddress hopRemote;
});
luaCtx.writeFunction("LimitTTLResponseAction", [](uint32_t min, uint32_t max, boost::optional<LuaArray<uint16_t>> types) {
- std::set<QType> capTypes;
+ std::unordered_set<QType> capTypes;
if (types) {
+ capTypes.reserve(types->size());
for (const auto& [idx, type] : *types) {
capTypes.insert(QType(type));
}
private:
static thread_local std::default_random_engine t_randomEngine;
std::vector<ComboAddress> d_addrs;
- std::set<uint16_t> d_types;
+ std::unordered_set<uint16_t> d_types;
std::vector<std::string> d_rawResponses;
PacketBuffer d_raw;
DNSName d_cname;
public:
LimitTTLResponseAction() {}
- LimitTTLResponseAction(uint32_t min, uint32_t max = std::numeric_limits<uint32_t>::max(), std::set<QType> types = {}) : d_types(types), d_min(min), d_max(max)
+ LimitTTLResponseAction(uint32_t min, uint32_t max = std::numeric_limits<uint32_t>::max(), std::unordered_set<QType> types = {}) : d_types(types), d_min(min), d_max(max)
{
}
}
private:
- std::set<QType> d_types;
+ std::unordered_set<QType> d_types;
uint32_t d_min{0};
uint32_t d_max{std::numeric_limits<uint32_t>::max()};
};