fw: make strategies understand scope
refs #1253
Change-Id: I57f7a6008e6f08c9817e58f480020eb9219a4aec
diff --git a/daemon/fw/broadcast-strategy.cpp b/daemon/fw/broadcast-strategy.cpp
index 3e8c2bf..7f5b248 100644
--- a/daemon/fw/broadcast-strategy.cpp
+++ b/daemon/fw/broadcast-strategy.cpp
@@ -28,16 +28,14 @@
{
const fib::NextHopList& nexthops = fibEntry->getNextHops();
- bool isPropagated = false;
for (fib::NextHopList::const_iterator it = nexthops.begin(); it != nexthops.end(); ++it) {
shared_ptr<Face> outFace = it->getFace();
- if (outFace->getId() != inFace.getId()) {
+ if (pitEntry->canForwardTo(*outFace)) {
this->sendInterest(pitEntry, outFace);
- isPropagated = true;
}
}
- if (!isPropagated) {
+ if (!pitEntry->hasUnexpiredOutRecords()) {
this->rejectPendingInterest(pitEntry);
}
}