make internal command functor match external

The internal command functor was getting passed a
const message::Handler& instead of a std::shared_ptr<message::Handler>
which will not work with an upcoming patch that needs the functor to be
able to modify the Handler object. Also, it is convenient to have the
same signature for both types of handlers.

Tested: run ipmitool to see that behavior does not change.

Change-Id: Ie8660e4d16bd66eccc282aef2594b88c25b847db
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
diff --git a/command/sol_cmds.cpp b/command/sol_cmds.cpp
index 1253ac5..81dfc99 100644
--- a/command/sol_cmds.cpp
+++ b/command/sol_cmds.cpp
@@ -15,7 +15,7 @@
 using namespace phosphor::logging;
 
 std::vector<uint8_t> payloadHandler(const std::vector<uint8_t>& inPayload,
-                                    const message::Handler& handler)
+                                    std::shared_ptr<message::Handler>& handler)
 {
     // Check inPayload size is at least Payload
     if (inPayload.size() < sizeof(Payload))
@@ -35,7 +35,7 @@
 
     try
     {
-        auto& context = sol::Manager::get().getContext(handler.sessionID);
+        auto& context = sol::Manager::get().getContext(handler->sessionID);
 
         context.processInboundPayload(
             request->packetSeqNum, request->packetAckSeqNum,
@@ -70,7 +70,7 @@
 }
 
 std::vector<uint8_t> getConfParams(const std::vector<uint8_t>& inPayload,
-                                   const message::Handler& handler)
+                                   std::shared_ptr<message::Handler>& handler)
 {
     std::vector<uint8_t> outPayload(sizeof(GetConfParamsResponse));
     auto request =