| 56909b73 | 25-Dec-2025 |
Jayanth Othayoth <ojayanth@gmail.com> |
clang-tidy: guard optional JSON access
Add explicit control flow before dereferencing std::optional<nlohmann::json> in src/report_manager.cpp. Read fields only on the engaged path to satisfy bugpron
clang-tidy: guard optional JSON access
Add explicit control flow before dereferencing std::optional<nlohmann::json> in src/report_manager.cpp. Read fields only on the engaged path to satisfy bugprone-unchecked-optional-access and keep builds passing with -Werror. No functional changes.
Fixed below type errors
''' ../src/report_manager.cpp:186:30: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors] 186 | size_t version = data->at("Version").get<size_t>(); | ^~~~ ../src/report_manager.cpp:191:28: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors] 191 | bool enabled = data->at("Enabled").get<bool>(); | ^~~~ ../src/report_manager.cpp:192:31: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors] 192 | std::string& id = data->at("Id").get_ref<std::string&>(); | ^~~~ ../src/report_manager.cpp:193:33: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors] 193 | std::string& name = data->at("Name").get_ref<std::string&>(); | ^~~~ '''
Change-Id: I76faad387fa3786b8770653c745c7ea05d525911 Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
show more ...
|
| 66db900f | 17-Nov-2025 |
Michal Orzel <michalx.orzel@intel.com> |
Remove LogToJournal trigger action
It has been decided to drop support to LogToLogService action on Redfish, because it doesn't comply with specification in its current form. Its dbus counterpart is
Remove LogToJournal trigger action
It has been decided to drop support to LogToLogService action on Redfish, because it doesn't comply with specification in its current form. Its dbus counterpart is LogToJournal, therefore this change removes its implementation.
bmcweb patch: [1] phosphor-dus-interfaces patch: [2]
Tested: Verified manually that trigger with LogToJournal action cannot be created. Unit tests passed.
[1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/84960 [2] https://gerrit.openbmc.org/c/openbmc/phosphor-dbus-interfaces/+/85268
Change-Id: I82989cdc8c5ab7df70f75614ff24700e14efc4e9 Signed-off-by: Michal Orzel <michalx.orzel@intel.com>
show more ...
|
| c1dbac16 | 12-Nov-2025 |
Piotr Sulewski <piotrx.sulewski@intel.com> |
Resolve coverity issues
* Added Rule of Five compliance to the reported classes * Added explicit default destructors and assignment operators * Corrected comparison statement
Tested: UTs passed
Ch
Resolve coverity issues
* Added Rule of Five compliance to the reported classes * Added explicit default destructors and assignment operators * Corrected comparison statement
Tested: UTs passed
Change-Id: Ifcfc1055e2e65d9f3ce10e3878ff3f1dd5d84929 Signed-off-by: Piotr Sulewski <piotrx.sulewski@intel.com>
show more ...
|
| b9709d9c | 04-Nov-2025 |
Patrick Williams <patrick@stwcx.xyz> |
use sdbusplus unpack syntax
Rather than defining a variable and then reading it from a message, sdbusplus also supports directly unpack-ing from the message. Use this syntax instead as it is more e
use sdbusplus unpack syntax
Rather than defining a variable and then reading it from a message, sdbusplus also supports directly unpack-ing from the message. Use this syntax instead as it is more efficient and succinct.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I54b14bc229d055428ec3183c488976e659e44d09
show more ...
|
| 995ebe7e | 27-Aug-2025 |
Boleslaw Ogonczyk Makowski <boleslawx.ogonczyk-makowski@intel.com> |
Remove deprecated "Thresholds" property and fix UTs
Thresholds have been split into "DiscreteThresholds" and "NumericThresholds", remove deprecated property, update UTs
Tested: UTs passed
Change-I
Remove deprecated "Thresholds" property and fix UTs
Thresholds have been split into "DiscreteThresholds" and "NumericThresholds", remove deprecated property, update UTs
Tested: UTs passed
Change-Id: I1959be879e9016b84fff7f7ae6cfad1f5d00e5aa Signed-off-by: Boleslaw Ogonczyk Makowski <boleslawx.ogonczyk-makowski@intel.com>
show more ...
|
| 6f56d268 | 25-Jul-2025 |
Michal Orzel <michalx.orzel@intel.com> |
Fix trigger type for OnChange triggers
Triggers with no threshold parameters should be treated as ones that activate on change of monitored metric values', with `Discrete` property value set to true
Fix trigger type for OnChange triggers
Triggers with no threshold parameters should be treated as ones that activate on change of monitored metric values', with `Discrete` property value set to true. Otherwise they will be wrongly treated as numeric triggers on Redfish side. This patch corrects this behavior.
Tested: 1. Created simple discrete trigger: `TestTriggerDiscreteOnChange`, with `DiscreteTriggerCondition` set to `Changed`. 2. busctl introspect xyz.openbmc_project.Telemetry /xyz/openbmc_project/Telemetry/Triggers/TelemetryService/ TestTriggerDiscreteOnChange 3. Verified that `Discrete` property is true
All unit tests have passed.
Change-Id: I06762c94b38a9da42a64c9a014d3f6dd47577176 Signed-off-by: Michal Orzel <michalx.orzel@intel.com>
show more ...
|
| dc5d2f1c | 08-Dec-2024 |
Jayanth Othayoth <ojayanth@gmail.com> |
clang-tidy: Remove unused lambda captures
The following errors were reported during clang-tidy enablement due to unused lambda captures.
''' ../src/metric.cpp:119:50: error: lambda capture 'this' i
clang-tidy: Remove unused lambda captures
The following errors were reported during clang-tidy enablement due to unused lambda captures.
''' ../src/metric.cpp:119:50: error: lambda capture 'this' is not used [-Werror '''
The fix involves removing these unused lambda captures.
Tested: Build and unit testing verified.
Change-Id: I6a4b42ea3df7513e1208638f427007680e2a15cf Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
show more ...
|
| 583ba441 | 03-Feb-2025 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: update latest spec and reformat
Copy the latest format file from the docs repository and apply.
Change-Id: Ic2bc1d98d8ad469a3477f9059ec890fc8339907d Signed-off-by: Patrick Williams <p
clang-format: update latest spec and reformat
Copy the latest format file from the docs repository and apply.
Change-Id: Ic2bc1d98d8ad469a3477f9059ec890fc8339907d Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
| 2efa95d8 | 19-Oct-2024 |
Ed Tanous <ed@tanous.net> |
Remove variant from Thresholds interface
The Thresholds property on the Trigger interface is currently defined as a relatively complex type: variant< array<discrete struct> array<numeric struc
Remove variant from Thresholds interface
The Thresholds property on the Trigger interface is currently defined as a relatively complex type: variant< array<discrete struct> array<numeric struct> >
This causes some oddities in unpacking given that Dbus properties are already a variant, applications consuming this interface have to double wrap the variant. This was confusing enough that bmcweb has to keep the trigger types separate, and cannot use the common typing.
This commit changes by adding two new parameters NumericThresholds: array<numeric struct> DiscreteThresholds: array<discrete struct>
Which deduplicates the double wrapped variant.
The intent is that this duplicated interface will exist for a transition period of a week or two, while bmcweb (the only user of this) transitions the code to use the new properties, then a followup common will drop the thresholds properly.
Tested: WIP
Change-Id: I6717d4075de53c91aa179a90c7a844c4a13534cc Signed-off-by: Ed Tanous <ed@tanous.net>
show more ...
|
| 6050b655 | 20-Dec-2024 |
Michal Orzel <michalx.orzel@intel.com> |
Fix CI compilation issue
Resolves maybe-uninitialized error for std::function object, which shows when compiling with optimizations.
Tested: CI build passed.
Change-Id: Ia6f07a23715f0bf34d19e100bc
Fix CI compilation issue
Resolves maybe-uninitialized error for std::function object, which shows when compiling with optimizations.
Tested: CI build passed.
Change-Id: Ia6f07a23715f0bf34d19e100bca94fc29cd0aa9f Signed-off-by: Michal Orzel <michalx.orzel@intel.com>
show more ...
|
| f535cad6 | 16-Aug-2024 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: re-format for clang-18
clang-format-18 isn't compatible with the clang-format-17 output, so we need to reformat the code with the latest version. The way clang-18 handles lambda forma
clang-format: re-format for clang-18
clang-format-18 isn't compatible with the clang-format-17 output, so we need to reformat the code with the latest version. The way clang-18 handles lambda formatting also changed, so we have made changes to the organization default style format to better handle lambda formatting.
See I5e08687e696dd240402a2780158664b7113def0e for updated style. See Iea0776aaa7edd483fa395e23de25ebf5a6288f71 for clang-18 enablement.
Change-Id: I956cf3cb1bbfc017c4d4dceb3195c1d0735b0605 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
| 5e7cbf42 | 01-Aug-2024 |
Michal Orzel <michalx.orzel@intel.com> |
Verify reading parameters on update
Adds verification of ReadingParameter's metric count when property is being updated. This brings consistency with behavior upon adding a new report, where that sa
Verify reading parameters on update
Adds verification of ReadingParameter's metric count when property is being updated. This brings consistency with behavior upon adding a new report, where that same check is being made. Also adds a unit test for that check.
Tested: On platform, by updating report's ReadingParameter with object containing metric count exceeding one specified by `max-reading-parameters` project option. With this change applied, that operation failed, as expected.
Change-Id: I06c8e21178d6bd554b62886e0e4f8cd0589f0d09 Signed-off-by: Michal Orzel <michalx.orzel@intel.com>
show more ...
|
| 4d1c2ce2 | 23-Jan-2023 |
Szymon Dompke <szymon.dompke@intel.com> |
Add security check for directory symlinks
Currently only files symlink are verified during file operations. This change is extending check to all directories in path.
Testing done: - UTs are passin
Add security check for directory symlinks
Currently only files symlink are verified during file operations. This change is extending check to all directories in path.
Testing done: - UTs are passing
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I1f30de94872d2a25597d3549224cd90aa8fab634
show more ...
|
| 8018a3ba | 26-Jun-2024 |
Michal Orzel <michalx.orzel@intel.com> |
Adjust LogToRedfish trigger action to DMTF standard
This patch modifies messages sent to Redfish event log to be compliant with message registry schema [1].
Tested: On platform, with corresponding
Adjust LogToRedfish trigger action to DMTF standard
This patch modifies messages sent to Redfish event log to be compliant with message registry schema [1].
Tested: On platform, with corresponding bmcweb patch [2]. Verified that messages appearing in Redfish event log are compliant with schema. UTs passed.
[1] https://redfish.dmtf.org/registries/Telemetry.1.0.0.json [2] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/72315
Change-Id: Ide3d5a13e5be077806df6398c5f51da41f7a7922 Signed-off-by: Michal Orzel <michalx.orzel@intel.com>
show more ...
|
| c7935fa1 | 20-Oct-2023 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: copy latest and re-format
clang-format-17 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest
clang-format: copy latest and re-format
clang-format-17 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest .clang-format from the docs repository and reformat the repository.
Change-Id: I016cb74930cc475843c30bd604e739058effa504 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
| 38c6409c | 05-Oct-2023 |
Wojciech Tempczyk <wojciechx.tempczyk@intel.com> |
Fix static code analysis tool failures
Uncaught exception (boost::system::system_error) is now caught.
Change-Id: I0aa88f173a982ecebfa999fd44ed864be709240c Signed-off-by: Wojciech Tempczyk <wojciec
Fix static code analysis tool failures
Uncaught exception (boost::system::system_error) is now caught.
Change-Id: I0aa88f173a982ecebfa999fd44ed864be709240c Signed-off-by: Wojciech Tempczyk <wojciechx.tempczyk@intel.com>
show more ...
|
| cff70c14 | 27-Oct-2022 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
Removed FutureVersion from API
Instead of using FutureVersion API currently used version is updated. This change needs to be bumped together with [1]. API that utilized map of variants to be more fl
Removed FutureVersion from API
Instead of using FutureVersion API currently used version is updated. This change needs to be bumped together with [1]. API that utilized map of variants to be more flexible and backwards compatible was reverted. It was decided that straight forward API that is commonly used should be used instead.
Removed MetricId property from Metric. In telemetry it was implemented as a name for Metric, but it was supposed to work as described in [2]. Currently MetricId is not supported by telemetry service and property was removed.
Tested: - After chaging bmcweb to use new API old and new features are working as expected
[1]: https://gerrit.openbmc.org/c/openbmc/bmcweb/+/44270 [2]: https://redfish.dmtf.org/schemas/v1/MetricReportDefinition.v1_4_2.json
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com> Change-Id: I5930a466a370f268d68f575a4a3db5ee9655e574
show more ...
|
| 3a1c297a | 10-May-2023 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest .clang-format from the docs repository and reformat the repository.
Change-Id: I1ac255c58971ac5cc4697b8bb1069067aad02d18 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
| a06626d1 | 24-Nov-2022 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
Added security checks for symlinks
Added security checks which prevents service from interacting with symlinks. It is not possible to list/delete/read/write to symlinks.
Tested: Added unit tests wh
Added security checks for symlinks
Added security checks which prevents service from interacting with symlinks. It is not possible to list/delete/read/write to symlinks.
Tested: Added unit tests which confirm that: - Symlinks cannot be removed - Symlinks are not listed - Symlinks cannot be overwritten - Symlinks cannot be read
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com> Change-Id: I50d6d10dac81fd454e7e30520a7c47d5146be58c
show more ...
|
| 18e7101c | 02-Nov-2022 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
simplified appendLimit implementation
AppendLimit is now set to max value by default. This simplifies the code while keeping most of the feature functionality. This change increases report version a
simplified appendLimit implementation
AppendLimit is now set to max value by default. This simplifies the code while keeping most of the feature functionality. This change increases report version and will cause older report to be deleted.
Tested: - AppendLimit is set by default to max value - Telemetry features are working as expected
Change-Id: I94c85393a9601c90c00776bf0bc814d85cbf006a Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>
show more ...
|
| 62c08e9b | 16-Sep-2022 |
Krzysztof Grobelny <krzysztof.grobelny@intel.com> |
Redesigned error handling
Current error handling send only error code, which is not enough to display detailed information. New error handling in additional to error code send property name. This al
Redesigned error handling
Current error handling send only error code, which is not enough to display detailed information. New error handling in additional to error code send property name. This allows to send meaningful messages back to used about errors.
Tested: - Old redfish code properly handles errors (reads only error_code) - Redfish version which read property name from error displays more detailed error information
Change-Id: I54caa20881ac3f3e38cb295a3aa95ddab491303f Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>
show more ...
|
| daeddc7c | 13-Oct-2022 |
Szymon Dompke <szymon.dompke@intel.com> |
Add missing header
Compilation was failing on g++-12, due to missing header in 1 file.
Testing done: - Compilation works on g++-12
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id:
Add missing header
Compilation was failing on g++-12, due to missing header in 1 file.
Testing done: - Compilation works on g++-12
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I658d9ff70dc02bcb541c6b42dff4e54b92a9e60f
show more ...
|
| 892f7c81 | 12-Oct-2022 |
Szymon Dompke <szymon.dompke@intel.com> |
Fix sensor count not updating
When ReadingsParamaters are updated, sensor count may change. This action should resize buffer and update value of "AppendLimit" property in case it was not set by user
Fix sensor count not updating
When ReadingsParamaters are updated, sensor count may change. This action should resize buffer and update value of "AppendLimit" property in case it was not set by user.
Testing done: -UTs passing
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I96486a808a3cce83c09936262304d0a1f55b3fd7
show more ...
|
| 7e114c04 | 13-Oct-2022 |
Szymon Dompke <szymon.dompke@intel.com> |
Use clang-format-15
Some files required reformating.
Testing done: - Clang-format is passing on CI
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I39d53715840818ffabcb3903a5efc9
Use clang-format-15
Some files required reformating.
Testing done: - Clang-format is passing on CI
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I39d53715840818ffabcb3903a5efc97639ed48df
show more ...
|
| 0253f6d3 | 15-Sep-2022 |
Szymon Dompke <szymon.dompke@intel.com> |
Persistency: store special double values
Json library handles infinity and NaN as null. During deserialization, we expect a double and those files were marked as invalid and removed. To prevent this
Persistency: store special double values
Json library handles infinity and NaN as null. During deserialization, we expect a double and those files were marked as invalid and removed. To prevent this behavior and preserve all double values, LabeledTuple 'to_json' and 'from_json' functions were improved to accommodate those special values by using string literals.
Testing done: - UTs added for double<=>json conversion. - UTs passing.
Signed-off-by: Szymon Dompke <szymon.dompke@intel.com> Change-Id: I9193df29cce1db28cda3c895d117d9f3bfca2c24
show more ...
|