diff --git a/ipmi/manualcmds.cpp b/ipmi/manualcmds.cpp
index 1622e2e..0967539 100644
--- a/ipmi/manualcmds.cpp
+++ b/ipmi/manualcmds.cpp
@@ -105,7 +105,8 @@
  * </method>
  */
 ipmi_ret_t ZoneControlIpmiHandler::setManualModeState(
-    const uint8_t* reqBuf, [[maybe_unused]] uint8_t* replyBuf, size_t* dataLen)
+    const uint8_t* reqBuf, [[maybe_unused]] uint8_t* replyBuf,
+    const size_t* dataLen)
 {
     if (*dataLen < sizeof(struct FanCtrlRequestSet))
     {
diff --git a/ipmi/manualcmds.hpp b/ipmi/manualcmds.hpp
index 4e11662..057ffc9 100644
--- a/ipmi/manualcmds.hpp
+++ b/ipmi/manualcmds.hpp
@@ -17,7 +17,8 @@
 class ZoneControlIpmiHandler
 {
   public:
-    ZoneControlIpmiHandler(std::unique_ptr<ZoneControlInterface> control) :
+    explicit ZoneControlIpmiHandler(
+        std::unique_ptr<ZoneControlInterface> control) :
         _control(std::move(control))
     {}
 
@@ -28,7 +29,7 @@
                                   size_t* dataLen);
 
     ipmi_ret_t setManualModeState(const uint8_t* reqBuf, uint8_t* replyBuf,
-                                  size_t* dataLen);
+                                  const size_t* dataLen);
 
   private:
     std::unique_ptr<ZoneControlInterface> _control;
