Implement GetBIOSAttributeCurrentValueByHandle

Implement GetBIOSAttributeCurrentValueByHandle
in libpldmresponder

Tested:
tested with this json
https://github.com/openbmc/openbmc/blob/master/meta-ibm/meta-witherspoon/recipes-phosphor/pldm/pldm/enum_attrs.json

root@fp5280g2:/tmp# ./pldmtool raw --data 0x80 0x03 0x08 0x00 0x00 0x00 0x00 0x00 0x02 0x00
Encode request successfully
Request Message:
08 01 80 03 08 00 00 00 00 00 02 00
Success in creating the socket : RC = 3
Success in connecting to socket : RC = 0
Success in sending message type as pldm to mctp : RC = 0
Write to socket successful : RC = 12
Total length:12
Loopback response message:
08 01 80 03 08 00 00 00 00 00 02 00
On first recv(),response == request : RC = 0
Total length: 13
Shutdown Socket successful :  RC = 0
Response Message:
08 01 00 03 08 00 00 00 00 00 05 01 00

root@fp5280g2:/tmp# ./pldmtool raw --data 0x80 0x03 0x08 0x00 0x00 0x00 0x00 0x00 0x03 0x00
Encode request successfully
Request Message:
08 01 80 03 08 00 00 00 00 00 03 00
Success in creating the socket : RC = 3
Success in connecting to socket : RC = 0
Success in sending message type as pldm to mctp : RC = 0
Write to socket successful : RC = 12
Total length:12
Loopback response message:
08 01 80 03 08 00 00 00 00 00 03 00
On first recv(),response == request : RC = 0
Total length: 13
Shutdown Socket successful :  RC = 0
Response Message:
08 01 00 03 08 00 00 00 00 00 05 01 01

root@fp5280g2:/tmp# ./pldmtool raw --data 0x80 0x03 0x08 0x00 0x00 0x00 0x00 0x00 0x06 0x00
Encode request successfully
Request Message:
08 01 80 03 08 00 00 00 00 00 06 00
Success in creating the socket : RC = 3
Success in connecting to socket : RC = 0
Success in sending message type as pldm to mctp : RC = 0
Write to socket successful : RC = 12
Total length:12
Loopback response message:
08 01 80 03 08 00 00 00 00 00 06 00
On first recv(),response == request : RC = 0
Total length: 6
Shutdown Socket successful :  RC = 0
Response Message:
08 01 00 03 08 88

Signed-off-by: John Wang <wangzqbj@inspur.com>
Change-Id: Ibb68cbb3c825184bd30bdf6cea9d84d91f3a3a16
diff --git a/libpldmresponder/bios.hpp b/libpldmresponder/bios.hpp
index f9a3eff..41ac70c 100644
--- a/libpldmresponder/bios.hpp
+++ b/libpldmresponder/bios.hpp
@@ -67,6 +67,15 @@
      *  @param[return] Response - PLDM Response message
      */
     Response getBIOSTable(const pldm_msg* request, size_t payloadLength);
+
+    /** @brief Handler for GetBIOSAttributeCurrentValueByHandle
+     *
+     *  @param[in] request - Request message
+     *  @param[in] payloadLength - Request message payload length
+     *  @return Response - PLDM Response message
+     */
+    Response getBIOSAttributeCurrentValueByHandle(const pldm_msg* request,
+                                                  size_t payloadLength);
 };
 
 } // namespace bios