From 0fb81e4d8e6e41c1ef5febf07fa9719bfa368016 Mon Sep 17 00:00:00 2001 From: Srivats P Date: Tue, 12 Mar 2019 19:04:59 +0530 Subject: [PATCH] Send ARP/NDP request from emuldevice if unresolved --- server/emuldevice.cpp | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/server/emuldevice.cpp b/server/emuldevice.cpp index 1e3760d..6d59782 100644 --- a/server/emuldevice.cpp +++ b/server/emuldevice.cpp @@ -303,17 +303,6 @@ void EmulDevice::sendArpRequest(quint32 tgtIp) if (!tgtIp) return; - // FIXME: Now that the caller does a isResolved check, re-evaluate - // the below behaviour - // This function will be called once per unique stream - which - // may all have the same dst IP; even if dst IP are different the - // gateway for the different dst IP may all be same. However, - // we don't want to send duplicate ARP requests, so we check - // if the tgtIP is already in the cache (resolved or unresolved) - // and if so, we don't resend it - if (arpTable_.contains(tgtIp)) - return; - reqPkt = new PacketBuffer; reqPkt->reserve(encapSize()); pktData = reqPkt->put(28); @@ -670,11 +659,6 @@ void EmulDevice::sendNeighborSolicit(UInt128 tgtIp) if (tgtIp == UInt128(0, 0)) return; - // Do we already have a NDP entry (resolved or unresolved)? - // If so, don't resend (see note in sendArpRequest()) - if (ndpTable_.contains(tgtIp)) - return; - // Form the solicited node address to be used as dstIp // ff02::1:ffXX:XXXX/104 dstIp = UInt128((quint64(0xff02) << 48),