diff --git a/daemon/mgmt/fib-manager.hpp b/daemon/mgmt/fib-manager.hpp
index 10b4fb2..5ce6e86 100644
--- a/daemon/mgmt/fib-manager.hpp
+++ b/daemon/mgmt/fib-manager.hpp
@@ -14,12 +14,8 @@
 #include "mgmt/manager-base.hpp"
 #include "mgmt/fib-enumeration-publisher.hpp"
 
-#include <ndn-cpp-dev/management/nfd-fib-management-options.hpp>
-
 namespace nfd {
 
-using ndn::nfd::FibManagementOptions;
-
 class Forwarder;
 class Fib;
 
@@ -45,29 +41,16 @@
   onValidatedFibRequest(const shared_ptr<const Interest>& request);
 
   void
-  insertEntry(const FibManagementOptions& options,
-              ControlResponse& response);
-
-
-  void
-  deleteEntry(const FibManagementOptions& options,
-              ControlResponse& response);
-
-  void
-  addNextHop(const FibManagementOptions& options,
+  addNextHop(ControlParameters& parameters,
              ControlResponse& response);
 
   void
-  removeNextHop(const FibManagementOptions& options,
+  removeNextHop(ControlParameters& parameters,
                 ControlResponse& response);
 
   void
   listEntries(const Interest& request);
 
-  bool
-  extractOptions(const Interest& request,
-                 FibManagementOptions& extractedOptions);
-
 private:
 
   Fib& m_managedFib;
@@ -75,7 +58,7 @@
   FibEnumerationPublisher m_fibEnumerationPublisher;
 
   typedef function<void(FibManager*,
-                        const FibManagementOptions&,
+                        ControlParameters&,
                         ControlResponse&)> SignedVerbProcessor;
 
   typedef std::map<Name::Component, SignedVerbProcessor> SignedVerbDispatchTable;
@@ -94,7 +77,7 @@
   static const Name COMMAND_PREFIX; // /localhost/nfd/fib
 
   // number of components in an invalid, but not malformed, unsigned command.
-  // (/localhost/nfd/fib + verb + options) = 5
+  // (/localhost/nfd/fib + verb + parameters) = 5
   static const size_t COMMAND_UNSIGNED_NCOMPS;
 
   // number of components in a valid signed Interest.
