diff options
author | dheerajpdsk <p.dheeraj.srujan.kumar@intel.com> | 2022-05-06 12:32:30 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-05-06 12:32:30 +0300 |
commit | 0945170f93cc0c101bf01739f41136c2f05af570 (patch) | |
tree | 4899512512abc7e1529391ae48337ec8b40acced /meta-openbmc-mods/meta-common/recipes-phosphor/interfaces/bmcweb/eventservice | |
parent | ca8d06bc610af08c2d3efc487aa9519989b743e6 (diff) | |
parent | 9cc183a531e1e309a99784f65b15c0fb1a18ddef (diff) | |
download | openbmc-0945170f93cc0c101bf01739f41136c2f05af570.tar.xz |
Merge pull request #81 from Intel-BMC/update1-0.91-67
Update to internal 1-0.91-67
Diffstat (limited to 'meta-openbmc-mods/meta-common/recipes-phosphor/interfaces/bmcweb/eventservice')
2 files changed, 67 insertions, 8 deletions
diff --git a/meta-openbmc-mods/meta-common/recipes-phosphor/interfaces/bmcweb/eventservice/0004-Add-Server-Sent-Events-support.patch b/meta-openbmc-mods/meta-common/recipes-phosphor/interfaces/bmcweb/eventservice/0004-Add-Server-Sent-Events-support.patch index dfa67935c..760462154 100644 --- a/meta-openbmc-mods/meta-common/recipes-phosphor/interfaces/bmcweb/eventservice/0004-Add-Server-Sent-Events-support.patch +++ b/meta-openbmc-mods/meta-common/recipes-phosphor/interfaces/bmcweb/eventservice/0004-Add-Server-Sent-Events-support.patch @@ -1,4 +1,4 @@ -From ea7d0091545450721d8b9b901e2593401b50d24c Mon Sep 17 00:00:00 2001 +From 1b9e0f434a4c667f6edbaadb257f7a9709953429 Mon Sep 17 00:00:00 2001 From: AppaRao Puli <apparao.puli@linux.intel.com> Date: Fri, 12 Mar 2021 18:53:25 +0000 Subject: [PATCH] Add Server-Sent-Events support @@ -22,12 +22,15 @@ Tested: Change-Id: I36956565cbba30c2007852c9471f477f6d1736e9 Signed-off-by: AppaRao Puli <apparao.puli@linux.intel.com> Signed-off-by: P Dheeraj Srujan Kumar <p.dheeraj.srujan.kumar@intel.com> +Signed-off-by: Ankita Vilas Gawade <ankita.gawade@intel.com> + +%% original patch: 0004-Add-Server-Sent-Events-support.patch --- http/http_connection.hpp | 10 +- http/http_response.hpp | 7 +- - http/routing.hpp | 71 ++++++++++ - http/server_sent_event.hpp | 279 +++++++++++++++++++++++++++++++++++++ - 4 files changed, 362 insertions(+), 5 deletions(-) + http/routing.hpp | 71 +++++++++ + http/server_sent_event.hpp | 298 +++++++++++++++++++++++++++++++++++++ + 4 files changed, 381 insertions(+), 5 deletions(-) create mode 100644 http/server_sent_event.hpp diff --git a/http/http_connection.hpp b/http/http_connection.hpp @@ -180,10 +183,10 @@ index fe9c7e9..c748580 100644 self_t* self = static_cast<self_t*>(this); diff --git a/http/server_sent_event.hpp b/http/server_sent_event.hpp new file mode 100644 -index 0000000..41d18ed +index 0000000..c23a4ee --- /dev/null +++ b/http/server_sent_event.hpp -@@ -0,0 +1,279 @@ +@@ -0,0 +1,298 @@ +#pragma once +#include "http_request.hpp" + @@ -201,6 +204,8 @@ index 0000000..41d18ed + +namespace crow +{ ++constexpr auto inputBufferSize = 1024U * 64U; ++constexpr uint8_t maxFailCount = 5; + +struct SseConnection : std::enable_shared_from_this<SseConnection> +{ @@ -443,6 +448,22 @@ index 0000000..41d18ed + } + rawData += "\n\n"; + ++ if (rawData.size() > inputBufferSize) ++ { ++ BMCWEB_LOG_DEBUG ++ << "Skipping Send Event/Report to SSE Subscription as Buffer Size Exceeded. Size: " ++ << rawData.size(); ++ failCount++; ++ if (failCount > maxFailCount) ++ { ++ BMCWEB_LOG_ERROR ++ << "Fail Count Threshold reached. Closing SSE Connection"; ++ close("max buffer size not suported"); ++ } ++ return; ++ } ++ failCount = 0; ++ + boost::asio::buffer_copy(inputBuffer.prepare(rawData.size()), + boost::asio::buffer(rawData)); + inputBuffer.commit(rawData.size()); @@ -454,8 +475,9 @@ index 0000000..41d18ed + Adaptor adaptor; + + boost::beast::flat_static_buffer<1024U * 8U> outputBuffer; -+ boost::beast::flat_static_buffer<1024U * 64U> inputBuffer; ++ boost::beast::flat_static_buffer<inputBufferSize> inputBuffer; + bool doingWrite = false; ++ uint8_t failCount = 0; + + std::function<void(std::shared_ptr<SseConnection>&, const crow::Request&, + crow::Response&)> @@ -464,5 +486,5 @@ index 0000000..41d18ed +}; +} // namespace crow -- -2.17.1 +2.25.1 diff --git a/meta-openbmc-mods/meta-common/recipes-phosphor/interfaces/bmcweb/eventservice/0014-Fix-Event-Subscription-URI.patch b/meta-openbmc-mods/meta-common/recipes-phosphor/interfaces/bmcweb/eventservice/0014-Fix-Event-Subscription-URI.patch new file mode 100644 index 000000000..a06389c46 --- /dev/null +++ b/meta-openbmc-mods/meta-common/recipes-phosphor/interfaces/bmcweb/eventservice/0014-Fix-Event-Subscription-URI.patch @@ -0,0 +1,37 @@ +From 93daba6ca2de8a82492ea88a7da75a7d337123e1 Mon Sep 17 00:00:00 2001 +From: Gayathri Leburu <gayathri.leburu@intel.com> +Date: Wed, 9 Feb 2022 10:45:19 +0000 +Subject: [PATCH] Fix Event Subscription URI + +While performing GET on /redfish/v1/EventService/Subscriptions/ results +in error 405 - Method not allowed. + +This commit fixes the subscription URI while registering the ROUTE i.e., +during BMCWEB_ROUTE. + +TESTED : + - GET on /redfish/v1/EventService/Subscriptions/ successfully returned + all the list of subscribed events. + +Signed-off-by: Gayathri Leburu <gayathri.leburu@intel.com> +Change-Id: I0edcfd8403e0178fe84d6b8328dabad71c4d5c98 +--- + redfish-core/lib/event_service.hpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/redfish-core/lib/event_service.hpp b/redfish-core/lib/event_service.hpp +index 9b4f6bd..7359a82 100644 +--- a/redfish-core/lib/event_service.hpp ++++ b/redfish-core/lib/event_service.hpp +@@ -173,7 +173,7 @@ inline void requestRoutesSubmitTestEvent(App& app) + + inline void requestRoutesEventDestinationCollection(App& app) + { +- BMCWEB_ROUTE(app, "/redfish/v1/EventService/Subscriptions") ++ BMCWEB_ROUTE(app, "/redfish/v1/EventService/Subscriptions/") + .privileges(redfish::privileges::getEventDestinationCollection) + .methods(boost::beast::http::verb::get)( + [](const crow::Request&, +-- +2.17.1 + |