History log of /openbmc/bmcweb/redfish-core/include/redfish_oem_routing.hpp (Results 1 – 3 of 3)
Revision Date Author Comments
# fdf51f5c 04-Apr-2025 Rohit PAI <ropai@nvidia.com>

Avoid http request copy in OEM handler

Initial copy was done to avoid request object going out of scope before
OEM handler are invoked.
The MR avoids the whole copy of the request object and create

Avoid http request copy in OEM handler

Initial copy was done to avoid request object going out of scope before
OEM handler are invoked.
The MR avoids the whole copy of the request object and create a sub
route object which contains elements required for OEM route handling.

Tested
- Service Validator Passes
- OpenBMC OEM properties and rendered well.

Change-Id: I3ef80a130afe6ab764a13704a8b672f5b0635126
Signed-off-by: Rohit PAI <ropai@nvidia.com>

show more ...


# a83bec20 03-Apr-2025 Ed Tanous <ed@tanous.net>

Fix build break

608ad2cc0e17bf62ff34bae7ceb499816fe13fbb
and
c1a75ebc267a78853fb26a3da8c6b3388e6ee07c
Collided. Fix the build error.

Change-Id: I683ea7a7b21b2297ab93010815b01e04373e1cea
Signed-off

Fix build break

608ad2cc0e17bf62ff34bae7ceb499816fe13fbb
and
c1a75ebc267a78853fb26a3da8c6b3388e6ee07c
Collided. Fix the build error.

Change-Id: I683ea7a7b21b2297ab93010815b01e04373e1cea
Signed-off-by: Ed Tanous <ed@tanous.net>

show more ...


# c1a75ebc 03-Jan-2025 rohitpai <rohitpai77@gmail.com>

OEM Route Handling Infrastructure

Goal of the MR is to provide infrastructure support in bmcweb to manage
the OEM fragment handling separately. OEM schema are vendor defined and
per DMTF resource we

OEM Route Handling Infrastructure

Goal of the MR is to provide infrastructure support in bmcweb to manage
the OEM fragment handling separately. OEM schema are vendor defined and
per DMTF resource we could have multiple vendor defined OEM schema to be
enabled.

The feature allows registration of route handler per schema per OEM
namespace.
Example
```
REDFISH_SUB_ROUTE<"/redfish/v1/Managers/<str>/#/Oem/OpenBmc">(service,
HttpVerb::Get)(oemOpenBmcCallback);
REDFISH_SUB_ROUTE<"/redfish/v1/Managers/<str>/#/Oem/Nvidia">(service,
HttpVerb::Get)(oemNidiaCallback);
```

We can have separate vendor defined route handlers per resource. Each of
these route handlers can populate their own vendor specific OEM data.
The OEM code can be better organized and enabled/disabled as per the
platform needs. The current MR has the code changes related to handling
GET requests alone. The feature only supports requests
where the response payload is JSON.

Tests
- All UT cases passes
- New UT added for RF OEM router passes
- Service Validator passes on qemu
- GET Response on Manager/bmc resource contains the OEM fragment

```
curl -c cjar -b cjar -k -X GET https://127.0.0.1:2443/redfish/v1/Managers/bmc
{
"@odata.id": "/redfish/v1/Managers/bmc",
"@odata.type": "#Manager.v1_14_0.Manager",

"Oem": {
"OpenBmc": {
"@odata.id": "/redfish/v1/Managers/bmc#/Oem/OpenBmc",
"@odata.type": "#OpenBMCManager.v1_0_0.Manager",
"Certificates": {
"@odata.id": "/redfish/v1/Managers/bmc/Truststore/Certificates"
}
}
},

"UUID": "40575e98-90d7-4c10-9eb5-8d8a7156c9b9"
}
```

Change-Id: Ic82aa5fe760eda31e2792fbdfb6884ac3ea613dc
Signed-off-by: Rohit PAI <rohitpai77@gmail.com>

show more ...