From: Remi Gacogne Date: Wed, 25 Sep 2024 13:12:09 +0000 (+0200) Subject: dnsdist: Apply Otto's suggestion to the Lua FFI proxy protocol API X-Git-Tag: rec-5.2.0-alpha1~55^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F14664%2Fhead;p=thirdparty%2Fpdns.git dnsdist: Apply Otto's suggestion to the Lua FFI proxy protocol API --- diff --git a/pdns/dnsdistdist/dnsdist-lua-ffi.cc b/pdns/dnsdistdist/dnsdist-lua-ffi.cc index 49d7b47e55..192e8f1cfd 100644 --- a/pdns/dnsdistdist/dnsdist-lua-ffi.cc +++ b/pdns/dnsdistdist/dnsdist-lua-ffi.cc @@ -1121,9 +1121,12 @@ bool dnsdist_ffi_dnsquestion_add_proxy_protocol_values(dnsdist_ffi_dnsquestion_t size_t dnsdist_ffi_dnsquestion_get_proxy_protocol_values(dnsdist_ffi_dnsquestion_t* dnsQuestion, const dnsdist_ffi_proxy_protocol_value_t** out) { - size_t count = 0; - if (dnsQuestion == nullptr || dnsQuestion->dq == nullptr || out == nullptr || !dnsQuestion->dq->proxyProtocolValues) { - return count; + if (dnsQuestion == nullptr || dnsQuestion->dq == nullptr || !dnsQuestion->dq->proxyProtocolValues) { + return 0; + } + + if (out == nullptr) { + return dnsQuestion->proxyProtocolValuesVect->size(); } dnsQuestion->proxyProtocolValuesVect = std::make_unique>(dnsQuestion->dq->proxyProtocolValues->size()); @@ -1133,11 +1136,10 @@ size_t dnsdist_ffi_dnsquestion_get_proxy_protocol_values(dnsdist_ffi_dnsquestion targetEntry.size = entry.content.size(); targetEntry.value = entry.content.data(); targetEntry.type = entry.type; - ++count; } *out = dnsQuestion->proxyProtocolValuesVect->data(); - return count; + return dnsQuestion->proxyProtocolValuesVect->size(); } struct dnsdist_ffi_domain_list_t