diff --git a/src/mgmt/nfd/control-command.hpp b/src/mgmt/nfd/control-command.hpp
index 7544156..1db9f13 100644
--- a/src/mgmt/nfd/control-command.hpp
+++ b/src/mgmt/nfd/control-command.hpp
@@ -144,13 +144,13 @@
 public:
   FaceCreateCommand();
 
-  virtual void
+  void
   applyDefaultsToRequest(ControlParameters& parameters) const override;
 
-  virtual void
+  void
   validateRequest(const ControlParameters& parameters) const override;
 
-  virtual void
+  void
   validateResponse(const ControlParameters& parameters) const override;
 };
 
@@ -165,17 +165,17 @@
 public:
   FaceUpdateCommand();
 
-  virtual void
+  void
   applyDefaultsToRequest(ControlParameters& parameters) const override;
 
-  virtual void
+  void
   validateRequest(const ControlParameters& parameters) const override;
 
   /**
    * \note This can only validate ControlParameters in a success response.
    *       Failure responses should be validated with validateRequest.
    */
-  virtual void
+  void
   validateResponse(const ControlParameters& parameters) const override;
 };
 
@@ -190,10 +190,10 @@
 public:
   FaceDestroyCommand();
 
-  virtual void
+  void
   validateRequest(const ControlParameters& parameters) const override;
 
-  virtual void
+  void
   validateResponse(const ControlParameters& parameters) const override;
 };
 
@@ -205,10 +205,10 @@
 class FaceLocalControlCommand : public ControlCommand
 {
 public:
-  virtual void
+  void
   validateRequest(const ControlParameters& parameters) const override;
 
-  virtual void
+  void
   validateResponse(const ControlParameters& parameters) const override;
 
 protected:
@@ -251,10 +251,10 @@
 public:
   FibAddNextHopCommand();
 
-  virtual void
+  void
   applyDefaultsToRequest(ControlParameters& parameters) const override;
 
-  virtual void
+  void
   validateResponse(const ControlParameters& parameters) const override;
 };
 
@@ -269,10 +269,10 @@
 public:
   FibRemoveNextHopCommand();
 
-  virtual void
+  void
   applyDefaultsToRequest(ControlParameters& parameters) const override;
 
-  virtual void
+  void
   validateResponse(const ControlParameters& parameters) const override;
 };
 
@@ -299,10 +299,10 @@
 public:
   StrategyChoiceUnsetCommand();
 
-  virtual void
+  void
   validateRequest(const ControlParameters& parameters) const override;
 
-  virtual void
+  void
   validateResponse(const ControlParameters& parameters) const override;
 };
 
@@ -317,10 +317,10 @@
 public:
   RibRegisterCommand();
 
-  virtual void
+  void
   applyDefaultsToRequest(ControlParameters& parameters) const override;
 
-  virtual void
+  void
   validateResponse(const ControlParameters& parameters) const override;
 };
 
@@ -335,10 +335,10 @@
 public:
   RibUnregisterCommand();
 
-  virtual void
+  void
   applyDefaultsToRequest(ControlParameters& parameters) const override;
 
-  virtual void
+  void
   validateResponse(const ControlParameters& parameters) const override;
 };
 
