diff --git a/CHANGELOG b/CHANGELOG index 0f70ca8b4..792917d52 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,5 +1,8 @@ #Nmap Changelog ($Id$); -*-text-*- +o [GH#2269] Fix an issue with -sU where payloads were modified when retrieving + them, causing later payloads to not be sent. [Mariusz Ziulek] + o [GH#2257] Fix an issue in addrset matching that was causing all targets to be excluded if the --excludefile listed a CIDR range that contains an earlier, smaller CIDR range. [Daniel Miller] diff --git a/payload.cc b/payload.cc index c7bfe8fb6..d45af7940 100644 --- a/payload.cc +++ b/payload.cc @@ -315,7 +315,6 @@ int init_payloads(void) { const char *udp_port2payload(u16 dport, size_t *length, u8 tryno) { static const char *payload_null = ""; std::map >::iterator portPayloadIterator; - std::vector portPayloadVector; std::vector::iterator portPayloadVectorIterator; proto_dport key(IPPROTO_UDP, dport); int portPayloadVectorSize; @@ -323,7 +322,7 @@ const char *udp_port2payload(u16 dport, size_t *length, u8 tryno) { portPayloadIterator = portPayloads.find(key); if (portPayloadIterator != portPayloads.end()) { - portPayloadVector = portPayloads.find(key)->second; + std::vector& portPayloadVector = portPayloads.find(key)->second; portPayloadVectorSize = portPayloadVector.size(); tryno %= portPayloadVectorSize;