summaryrefslogtreecommitdiff
path: root/meta-openbmc-mods/meta-common/recipes-phosphor/interfaces/bmcweb/0006-Fix-Image-and-ImageName-values-in-schema.patch
blob: c182822a652ab28390437c411ebd672bfe03ee56 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
From 15305d3a9db371af924482e5a6959bbf7812cf6c Mon Sep 17 00:00:00 2001
From: Przemyslaw Czarnowski <przemyslaw.hawrylewicz.czarnowski@intel.com>
Date: Wed, 29 Jul 2020 15:56:57 +0200
Subject: [PATCH] Fix Image and ImageName values in schema

According to design document and schema Image shall contain URL of
image location and ImageName only name of the image.

Change-Id: Ie1a906c66aa2a10113c307eb1e7d2d7da2810fbd
Signed-off-by: Przemyslaw Czarnowski <przemyslaw.hawrylewicz.czarnowski@intel.com>
---
 redfish-core/lib/virtual_media.hpp | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/redfish-core/lib/virtual_media.hpp b/redfish-core/lib/virtual_media.hpp
index 183abbe..0345e7b 100644
--- a/redfish-core/lib/virtual_media.hpp
+++ b/redfish-core/lib/virtual_media.hpp
@@ -97,7 +97,15 @@ static void vmParseInterfaceObject(const DbusInterfaceType& interface,
                     std::get_if<std::string>(&imageUrlProperty->second);
                 if (imageUrlValue && !imageUrlValue->empty())
                 {
-                    aResp->res.jsonValue["ImageName"] = *imageUrlValue;
+                    std::size_t lastIndex = imageUrlValue->rfind("/");
+                    if (lastIndex == std::string::npos)
+                    {
+                        aResp->res.jsonValue["ImageName"] = *imageUrlValue;
+                    }
+
+                    aResp->res.jsonValue["ImageName"] =
+                        imageUrlValue->substr(lastIndex + 1);
+                    aResp->res.jsonValue["Image"] = *imageUrlValue;
                     aResp->res.jsonValue["Inserted"] = *activeValue;
                     if (*activeValue == true)
                     {
-- 
2.25.0