From: Pieter Lexis Date: Wed, 24 Jan 2018 09:06:33 +0000 (+0100) Subject: XPF: Fix coverity "copy paste" issue X-Git-Tag: dnsdist-1.3.0~125^2~1 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=54dd870ad02e0e7a9af88057620090d625ae2e9d;p=pdns XPF: Fix coverity "copy paste" issue Fix CID 1385372. --- diff --git a/pdns/xpf.cc b/pdns/xpf.cc index 86d98d75f..270428b4f 100644 --- a/pdns/xpf.cc +++ b/pdns/xpf.cc @@ -40,20 +40,16 @@ std::string generateXPFPayload(bool tcp, const ComboAddress& source, const Combo ret.append(reinterpret_cast(&version), sizeof(version)); ret.append(reinterpret_cast(&protocol), sizeof(protocol)); + // We already established source and destination sin_family equivalence if (source.isIPv4()) { assert(addrSize == sizeof(source.sin4.sin_addr.s_addr)); ret.append(reinterpret_cast(&source.sin4.sin_addr.s_addr), addrSize); - } - else { - assert(addrSize == sizeof(source.sin6.sin6_addr.s6_addr)); - ret.append(reinterpret_cast(&source.sin6.sin6_addr.s6_addr), addrSize); - } - - if (source.isIPv4()) { assert(addrSize == sizeof(destination.sin4.sin_addr.s_addr)); ret.append(reinterpret_cast(&destination.sin4.sin_addr.s_addr), addrSize); } else { + assert(addrSize == sizeof(source.sin6.sin6_addr.s6_addr)); + ret.append(reinterpret_cast(&source.sin6.sin6_addr.s6_addr), addrSize); assert(addrSize == sizeof(destination.sin6.sin6_addr.s6_addr)); ret.append(reinterpret_cast(&destination.sin6.sin6_addr.s6_addr), addrSize); }