Locally define used RDE headers

2 RDE headers used by bios-bmc-smm-error-logger are being removed from
libbej repo. Also bios-bmc-smm-error-logger doesn't use RDE protocol.
It simply uses 2 RDE headers to encapsulate data sent from BIOS.
Therefore this change defines the RDE headers (removed from libbej)
locally.

Signed-off-by: Kasun Athukorala <kasunath@google.com>
Change-Id: I9d0dfd669283bee6443e9d542b941bf73787fe95
diff --git a/include/rde/rde_handler.hpp b/include/rde/rde_handler.hpp
index 65e9361..4b63790 100644
--- a/include/rde/rde_handler.hpp
+++ b/include/rde/rde_handler.hpp
@@ -1,7 +1,7 @@
 #pragma once
 
-#include "bej_decoder_json.hpp"
 #include "external_storer_interface.hpp"
+#include "libbej/bej_decoder_json.hpp"
 #include "rde_dictionary_manager.hpp"
 
 #include <cstdint>
@@ -58,6 +58,41 @@
 };
 
 /**
+ * @brief RDEOperationInit response header.
+ *
+ * BIOS uses this header to send the BEJ encoded data.
+ */
+struct RdeOperationInitReqHeader
+{
+    uint32_t resourceID;
+    uint16_t operationID;
+    uint8_t operationType;
+
+    // OperationFlags bits
+    uint8_t locatorValid : 1;
+    uint8_t containsRequestPayload : 1;
+    uint8_t containsCustomRequestParameters : 1;
+
+    uint8_t reserved : 5;
+    uint32_t sendDataTransferHandle;
+    uint8_t operationLocatorLength;
+    uint32_t requestPayloadLength;
+} __attribute__((__packed__));
+
+/**
+ * @brief RDEMultipartReceive response header.
+ *
+ * BIOS uses this header to send the BEJ dictionary data.
+ */
+struct MultipartReceiveResHeader
+{
+    uint8_t completionCode;
+    uint8_t transferFlag;
+    uint32_t nextDataTransferHandle;
+    uint32_t dataLengthBytes;
+} __attribute__((__packed__));
+
+/**
  * @brief Handles RDE messages from the BIOS - BMC circular buffer and updates
  * ExternalStorer.
  */