diff --git a/daemon/fw/forwarder.cpp b/daemon/fw/forwarder.cpp
index d438f10..a605ef0 100644
--- a/daemon/fw/forwarder.cpp
+++ b/daemon/fw/forwarder.cpp
@@ -117,8 +117,7 @@
   }
 
   // insert InRecord
-  pit::InRecordCollection::iterator inRecordIt =
-    pitEntry->insertOrUpdateInRecord(inFace.shared_from_this(), interest);
+  pitEntry->insertOrUpdateInRecord(inFace.shared_from_this(), interest);
 
   // app chosen nexthops
   bool isAppChosenNexthops = false; // TODO get from local control header
@@ -150,13 +149,21 @@
 {
   NFD_LOG_DEBUG("onOutgoingInterest face=" << outFace.getId() << " interest=" << pitEntry->getName());
 
+  // /localhost scope control
+  bool violatesLocalhost = !outFace.isLocal() &&
+                           s_localhostName.isPrefixOf(pitEntry->getName());
+  if (violatesLocalhost) {
+    NFD_LOG_DEBUG("onOutgoingInterest face=" << outFace.getId()
+      << " interest=" << pitEntry->getName() << " violates /localhost");
+    return;
+  }
+
   // pick Interest
   const Interest& interest = pitEntry->getInterest();
   // TODO pick the last incoming Interest
 
   // insert OutRecord
-  pit::OutRecordCollection::iterator outRecordIt =
-    pitEntry->insertOrUpdateOutRecord(outFace.shared_from_this(), interest);
+  pitEntry->insertOrUpdateOutRecord(outFace.shared_from_this(), interest);
 
   // set PIT unsatisfy timer
   this->setUnsatisfyTimer(pitEntry);
@@ -198,7 +205,7 @@
                            s_localhostName.isPrefixOf(data.getName());
   if (violatesLocalhost) {
     NFD_LOG_DEBUG("onIncomingData face=" << inFace.getId()
-      << " interest=" << data.getName() << " violates /localhost");
+      << " data=" << data.getName() << " violates /localhost");
     return;
   }
 
@@ -269,6 +276,15 @@
 {
   NFD_LOG_DEBUG("onOutgoingData face=" << outFace.getId() << " data=" << data.getName());
 
+  // /localhost scope control
+  bool violatesLocalhost = !outFace.isLocal() &&
+                           s_localhostName.isPrefixOf(data.getName());
+  if (violatesLocalhost) {
+    NFD_LOG_DEBUG("onOutgoingData face=" << outFace.getId()
+      << " data=" << data.getName() << " violates /localhost");
+    return;
+  }
+
   // traffic manager
   // pass through
 
