diff --git a/control/json/manager.hpp b/control/json/manager.hpp
index 2b913fe..310132d 100644
--- a/control/json/manager.hpp
+++ b/control/json/manager.hpp
@@ -104,11 +104,12 @@
 /**
  * Data associated to a subscribed signal
  * Tuple constructed of:
- *     std::vector<SignalPkg> = List of the signal's packages
+ *     std::unique_ptr<std::vector<SignalPkg>> =
+ *         Pointer to list of the signal's packages
  *     std::unique_ptr<sdbusplus::server::match::match> =
  *         Pointer to match holding the subscription to a signal
  */
-using SignalData = std::tuple<std::vector<SignalPkg>,
+using SignalData = std::tuple<std::unique_ptr<std::vector<SignalPkg>>,
                               std::unique_ptr<sdbusplus::server::match::match>>;
 
 /**
@@ -411,7 +412,7 @@
      * @param[in] pkgs - Signal packages associated to the signal being handled
      */
     void handleSignal(sdbusplus::message::message& msg,
-                      const std::vector<SignalPkg>& pkgs);
+                      const std::vector<SignalPkg>* pkgs);
 
     /**
      * @brief Get the sdbusplus bus object
