diff --git a/tests/unit/daemon/name-server.cpp b/tests/unit/daemon/name-server.cpp
index 0e5f302..f2b64bb 100644
--- a/tests/unit/daemon/name-server.cpp
+++ b/tests/unit/daemon/name-server.cpp
@@ -311,9 +311,14 @@
   {
     // ensure prefix is registered
     run();
-    validatorFace->onSendInterest.connect([&] (const Interest& interest) {
+
+    validatorFace->onSendInterest.connect([this] (const Interest& interest) {
       NDNS_LOG_TRACE("validatorFace get Interest: " << interest.getName());
-      face->receive(interest);
+
+      shared_ptr<const Interest> i = interest.shared_from_this();
+      io.post([i, this] {
+          face->receive(*i);
+        });
     });
   }
 
@@ -386,9 +391,12 @@
   bool hasDataBack = false;
 
   shared_ptr<Regex> regex = make_shared<Regex>("(<>*)<KEY>(<>+)<ID-CERT><>");
-  face->onSendData.connectSingleShot([&] (const Data& data) {
+  face->onSendData.connect([&] (const Data& data) {
     if (regex->match(data.getName())) {
-      validatorFace->receive(data); // It's data requested by validator
+      shared_ptr<const Data> d = data.shared_from_this();
+      io.post([d, this] {
+          validatorFace->receive(*d); // It's data requested by validator
+        });
     }
     else {
       // cert is requested by validator
