std::vector<SVCRecordParameters> parameters;
parameters.reserve(parametersListSize);
for (size_t idx = 0; idx < parametersListSize; idx++) {
- if (parametersList[idx] == nullptr) {
+ // NOLINTNEXTLINE(cppcoreguidelines-pro-bounds-pointer-arithmetic): this is a C API
+ const auto& parameter = parametersList[idx];
+ if (parameter == nullptr) {
return false;
}
- parameters.push_back(parametersList[idx]->parameters);
+ parameters.push_back(parameter->parameters);
}
return dnsdist::svc::generateSVCResponse(*dnsQuestion->dq, ttl, parameters);
}
void dnsdist_ffi_svc_record_parameters_free(dnsdist_ffi_svc_record_parameters* parameters)
{
+ // NOLINTNEXTLINE(cppcoreguidelines-owning-memory): this is a C API, RAII is not an option
delete parameters;
}
bool generateSVCResponse(DNSQuestion& dnsQuestion, const std::vector<std::vector<uint8_t>>& svcRecordPayloads, const std::set<std::pair<DNSName, ComboAddress>>& additionals4, const std::set<std::pair<DNSName, ComboAddress>>& additionals6, const ResponseConfig& responseConfig)
{
/* it will likely be a bit bigger than that because of additionals */
- auto totalPayloadsSize = 0;
+ size_t totalPayloadsSize = 0;
for (const auto& payload : svcRecordPayloads) {
totalPayloadsSize += payload.size();
}