snmp_trap: send AdditionalData contents
The log messages often contain essential diagnostics information in a
key-value list in AdditionalData. Add it in space-separated form to the
SNMP trap.
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Change-Id: I72a49a59e6f3f9fcc24a69b0752cbb7b122be940
diff --git a/src/data_types.hpp b/src/data_types.hpp
index 81bb8cb..cffbd99 100644
--- a/src/data_types.hpp
+++ b/src/data_types.hpp
@@ -4,7 +4,11 @@
#include <experimental/any>
#include <sdbusplus/message.hpp>
+#include <sdbusplus/utility/merge_variants.hpp>
#include <string>
+#include <xyz/openbmc_project/Association/Definitions/server.hpp>
+#include <xyz/openbmc_project/Logging/Entry/server.hpp>
+#include <xyz/openbmc_project/Software/Version/server.hpp>
namespace any_ns = std::experimental;
@@ -63,9 +67,12 @@
template <typename T>
using InterfacesAdded =
std::map<std::string, std::map<std::string, std::variant<T>>>;
-using Value = std::variant<bool, uint8_t, int16_t, uint16_t, int32_t, uint32_t,
- int64_t, uint64_t, std::string>;
-
+using Value = sdbusplus::utility::merge_variants_t<
+ sdbusplus::xyz::openbmc_project::Association::server::Definitions::
+ PropertiesVariant,
+ sdbusplus::xyz::openbmc_project::Logging::server::Entry::PropertiesVariant,
+ sdbusplus::xyz::openbmc_project::Software::server::Version::
+ PropertiesVariant>;
/** @brief ObjectManager.InterfacesAdded signal signature alias. */
using Interface = std::string;
using Property = std::string;