diff --git a/src/mgmt/management-tool.hpp b/src/mgmt/management-tool.hpp
index 64968c7..576913b 100644
--- a/src/mgmt/management-tool.hpp
+++ b/src/mgmt/management-tool.hpp
@@ -168,7 +168,7 @@
            const std::string& inFile = DEFAULT_IO,
            const time::seconds& ttl = DEFAULT_RR_TTL,
            const Name& dskCertName = DEFAULT_CERT,
-           const ndn::io::IoEncoding encoding = ndn::io::BASE_64);
+           const ndn::io::IoEncoding encoding = ndn::io::BASE64);
 
   /** @brief remove rrset from the NDNS local database
    *
diff --git a/tests/unit/mgmt/management-tool.cpp b/tests/unit/mgmt/management-tool.cpp
index ed8e02b..459e9eb 100644
--- a/tests/unit/mgmt/management-tool.cpp
+++ b/tests/unit/mgmt/management-tool.cpp
@@ -716,9 +716,9 @@
   Name dskName = m_keyChain.generateRsaKeyPair(zoneName, false);
   shared_ptr<IdentityCertificate> dskCert = m_keyChain.selfSign(dskName);
 
-  ndn::io::save(*dskCert, output, ndn::io::BASE_64);
+  ndn::io::save(*dskCert, output, ndn::io::BASE64);
   BOOST_CHECK_NO_THROW(
-    m_tool.addRrSet(zoneName, output, DEFAULT_CACHE_TTL, DEFAULT_CERT, ndn::io::BASE_64));
+    m_tool.addRrSet(zoneName, output, DEFAULT_CACHE_TTL, DEFAULT_CERT, ndn::io::BASE64));
 
   // raw
   dskName = m_keyChain.generateRsaKeyPair(zoneName, false);
diff --git a/tools/ndns-add-rr-from-file.cpp b/tools/ndns-add-rr-from-file.cpp
index a08d26a..5394b19 100644
--- a/tools/ndns-add-rr-from-file.cpp
+++ b/tools/ndns-add-rr-from-file.cpp
@@ -121,7 +121,7 @@
       ioEncoding = ndn::io::HEX;
     }
     else if (encoding == "base64") {
-      ioEncoding = ndn::io::BASE_64;
+      ioEncoding = ndn::io::BASE64;
     }
     else {
       std::cerr << "Error: not supported encoding format '" << encoding
