diff --git a/host_state_manager.cpp b/host_state_manager.cpp
index 3e06d73..5930d8a 100644
--- a/host_state_manager.cpp
+++ b/host_state_manager.cpp
@@ -291,23 +291,15 @@
     }
 }
 
-int Host::sysStateChangeSignal(sd_bus_message *msg, void *userData,
-                                  sd_bus_error *retError)
-{
-    return static_cast<Host*>(userData)->sysStateChange(msg, retError);
-}
-
-int Host::sysStateChange(sd_bus_message* msg,
-                         sd_bus_error* retError)
+void Host::sysStateChange(sdbusplus::message::message& msg)
 {
     uint32_t newStateID {};
     sdbusplus::message::object_path newStateObjPath;
     std::string newStateUnit{};
     std::string newStateResult{};
 
-    auto sdPlusMsg = sdbusplus::message::message(msg);
     //Read the msg and populate each variable
-    sdPlusMsg.read(newStateID, newStateObjPath, newStateUnit, newStateResult);
+    msg.read(newStateID, newStateObjPath, newStateUnit, newStateResult);
 
     if((newStateUnit == HOST_STATE_POWEROFF_TGT) &&
        (newStateResult == "done") &&
@@ -346,8 +338,6 @@
          }
 
      }
-
-    return 0;
 }
 
 Host::Transition Host::requestedHostTransition(Transition value)
