diff --git a/tools/ndnputchunks3.cpp b/tools/ndnputchunks3.cpp
index e6d74b2..66d0a8e 100644
--- a/tools/ndnputchunks3.cpp
+++ b/tools/ndnputchunks3.cpp
@@ -84,6 +84,7 @@
 
     m_face.setInterestFilter(m_name,
                              bind(&Producer::onInterest, this, _1, _2),
+                             RegisterPrefixSuccessCallback(),
                              bind(&Producer::onRegisterFailed, this, _1, _2));
     m_face.processEvents();
   }
diff --git a/tools/ndnsec-dsk-gen.hpp b/tools/ndnsec-dsk-gen.hpp
index d99ea2b..50cd76a 100644
--- a/tools/ndnsec-dsk-gen.hpp
+++ b/tools/ndnsec-dsk-gen.hpp
@@ -72,7 +72,7 @@
 
   Name defaultCertName = keyChain.getDefaultCertificateNameForIdentity(identityName);
   bool isDefaultDsk = false;
-  if (defaultCertName.get(-3).toEscapedString().substr(0,4) == "dsk-")
+  if (defaultCertName.get(-3).toUri().substr(0,4) == "dsk-")
     isDefaultDsk = true;
 
   if (isDefaultDsk)
diff --git a/tools/tlvdump.cpp b/tools/tlvdump.cpp
index 5f5eac8..47752ae 100644
--- a/tools/tlvdump.cpp
+++ b/tools/tlvdump.cpp
@@ -97,7 +97,7 @@
   if (block.elements().empty())
     {
       std::cout << " [[";
-      ndn::name::Component(block.value(), block.value_size()).toEscapedString(std::cout);
+      ndn::name::Component(block.value(), block.value_size()).toUri(std::cout);
       std::cout<< "]]";
     }
   std::cout << std::endl;
@@ -151,7 +151,7 @@
 {
   while (is.peek() != std::char_traits<char>::eof()) {
     try {
-      ndn::Block block(is);
+      ndn::Block block = ndn::Block::fromStream(is);
       BlockPrinter(block, "");
       // HexPrinter(block, "");
     }
