PLDM : Multiple vmi certificate exchange

With this story PLDM detects interface added signal on interface
xyz.openbmc_project.Certs.Entry and saves the value of CSR property.
This CSR string is then sent to the host. Once the host responds to it
the response is verified and a client certificate received from host
is updates/saved in a dbus property - ClientCertificate.

For multiple certificate exchange, new dbus objects are
created for signing requests from different clients. Each dbus
object has properties such has CSR and Client certificate that get
updated with the certificate string when a valid CSR request is
sent to host and client certficate is received successfully.

After the dbus property (ClientCertificate) has a valid client
certificate string, status property of the dbus interface
xyz.openbmc_project.Certs.Entry is updated from pending to complete.

Signed-off-by: Varsha Kaverappa <vkaverap@in.ibm.com>
Change-Id: I63afb15190ae9c21eb86421d75f51618b358c074
diff --git a/oem/ibm/requester/dbus_to_file_handler.hpp b/oem/ibm/requester/dbus_to_file_handler.hpp
index b6e8b5d..bd7b3c6 100644
--- a/oem/ibm/requester/dbus_to_file_handler.hpp
+++ b/oem/ibm/requester/dbus_to_file_handler.hpp
@@ -48,12 +48,28 @@
     void processNewResourceDump(const std::string& vspString,
                                 const std::string& resDumpReqPass);
 
+    /** @brief Process the new CSR file available
+     *  @param[in] csr - CSR string
+     *  @param[in] fileHandle - file Handle for  new file request
+     */
+    void newCsrFileAvailable(const std::string& csr,
+                             const std::string fileHandle);
+
   private:
     /** @brief Send the new file available command request to hypervisor
      *  @param[in] fileSize - size of the file
      */
     void sendNewFileAvailableCmd(uint64_t fileSize);
 
+    /** @brief Send the new file available command request to hypervisor
+     *  @param[in] fileSize - size of the file
+     *  @param[in] fileHandle - file handle
+     *  @param[in] type - file type
+     */
+    void newFileAvailableSendToHost(const uint32_t fileSize,
+                                    const uint32_t fileHandle,
+                                    const uint16_t type);
+
     /** @brief fd of MCTP communications socket */
     int mctp_fd;