From 232c7dbf21570aa0581d7c8cff71b793555f10cf Mon Sep 17 00:00:00 2001 From: Krzysztof Grobelny Date: Thu, 1 Jul 2021 10:41:47 +0000 Subject: [PATCH] Bmcweb handle permission denied exception Add handling of permission denied exception (EPERM) that can be thrown by VirtualMedia service during Mount/Unmount dbus operations. Tested: Verified that after mounting/unmounting HTTPS resource twice in a row in legacy mode, VirtualMedia returns EPERM, which bmcweb handles as 403 status code. Change-Id: Ibc18d5ec822c5072605b1fc4651389982002798b Signed-off-by: Alicja Rybak --- redfish-core/lib/virtual_media.hpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/redfish-core/lib/virtual_media.hpp b/redfish-core/lib/virtual_media.hpp index 3eb585f..1168939 100644 --- a/redfish-core/lib/virtual_media.hpp +++ b/redfish-core/lib/virtual_media.hpp @@ -931,6 +931,12 @@ inline void doVmAction(const std::shared_ptr& asyncResp, { messages::resourceInUse(asyncResp->res); } + else if (ec == boost::system::errc::permission_denied) + { + messages::accessDenied(asyncResp->res, + crow::utility::urlFromPieces( + "VirtualMedia.Insert")); + } else { messages::internalError(asyncResp->res); -- 2.25.1