Update pldm-softpoweroff application with working values

This commit updates the pldm-softpoweroff application so that it can
properly locate the PLDM effecter and sensor PDRs for the graceful
poweroff request. It also updates the host terminus ID to the correct
value.

Tested by:

Running the application when Hostboot was IPLing, and also when PHYP
was at standby.

  root@ever39bmc:~# /tmp/pldm-softpoweroff
  Getting the response. PLDM RC = 0
  Timer started waiting for host soft off, TIMEOUT_IN_SEC = 0x1c20
  root@ever39bmc:~# echo $?
  0

Signed-off-by: Zach Clark <zach@ibm.com>
Change-Id: I7408611881abecfb5169816af032e2fb9d3a8a09
diff --git a/softoff/softoff.cpp b/softoff/softoff.cpp
index 83d46f0..df5807e 100644
--- a/softoff/softoff.cpp
+++ b/softoff/softoff.cpp
@@ -30,7 +30,11 @@
 using Clock = Clock<clockId>;
 using Timer = Time<clockId>;
 
-pldm::pdr::TerminusID TID = 0; // TID will be implemented later.
+using sdbusplus::exception::SdBusError;
+
+// Shutdown effecter terminus ID, set when we look up the effecter
+pldm::pdr::TerminusID TID = 0;
+
 namespace sdbusRule = sdbusplus::bus::match::rules;
 
 SoftPowerOff::SoftPowerOff(sdbusplus::bus_t& bus, sd_event* event,
@@ -131,7 +135,7 @@
              msgPreviousEventState);
 
     if (msgSensorID == sensorID && msgSensorOffset == sensorOffset &&
-        msgEventState == PLDM_SW_TERM_GRACEFUL_SHUTDOWN)
+        msgEventState == PLDM_SW_TERM_GRACEFUL_SHUTDOWN && msgTID == TID)
     {
         // Receive Graceful shutdown completion event message. Disable the timer
         auto rc = timer.stop();