diff --git a/core/manager-base.cpp b/core/manager-base.cpp
index 3aeec6f..737c1c6 100644
--- a/core/manager-base.cpp
+++ b/core/manager-base.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /**
- * Copyright (c) 2014-2016,  Regents of the University of California,
+ * Copyright (c) 2014-2017,  Regents of the University of California,
  *                           Arizona Board of Regents,
  *                           Colorado State University,
  *                           University Pierre & Marie Curie, Sorbonne University,
@@ -30,13 +30,14 @@
 using ndn::mgmt::ValidateParameters;
 using ndn::mgmt::Authorization;
 
-ManagerBase::ManagerBase(Dispatcher& dispatcher,
-                         const std::string& module)
+ManagerBase::ManagerBase(Dispatcher& dispatcher, const std::string& module)
   : m_dispatcher(dispatcher)
   , m_module(module)
 {
 }
 
+ManagerBase::~ManagerBase() = default;
+
 void
 ManagerBase::registerStatusDatasetHandler(const std::string& verb,
                                           const ndn::mgmt::StatusDatasetHandler& handler)
diff --git a/core/manager-base.hpp b/core/manager-base.hpp
index e947b8d..3d0a465 100644
--- a/core/manager-base.hpp
+++ b/core/manager-base.hpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /**
- * Copyright (c) 2014-2016,  Regents of the University of California,
+ * Copyright (c) 2014-2017,  Regents of the University of California,
  *                           Arizona Board of Regents,
  *                           Colorado State University,
  *                           University Pierre & Marie Curie, Sorbonne University,
@@ -59,8 +59,10 @@
   };
 
 public:
-  ManagerBase(Dispatcher& dispatcher,
-              const std::string& module);
+  ManagerBase(Dispatcher& dispatcher, const std::string& module);
+
+  virtual
+  ~ManagerBase();
 
   const std::string&
   getModule() const
@@ -69,7 +71,6 @@
   }
 
 PUBLIC_WITH_TESTS_ELSE_PROTECTED: // registrations to the dispatcher
-
   // difference from mgmt::ControlCommand: accepts nfd::ControlParameters
   typedef function<void(const ControlCommand& command,
                         const Name& prefix, const Interest& interest,
