blob: 2996912e700e9f262fd8828840af359f79f2c718 [file] [log] [blame]
John Edward Broadbente6ffe702021-10-14 14:03:11 -07001#include "verifyDriveGeometry.hpp"
2
3#include "estoraged_conf.hpp"
4
5#include <phosphor-logging/lg2.hpp>
6#include <xyz/openbmc_project/eStoraged/error.hpp>
7
8#include <string>
9
10using sdbusplus::xyz::openbmc_project::eStoraged::Error::EraseError;
11
12void VerifyDriveGeometry::geometryOkay(uint64_t bytes)
13{
14 if (bytes > ERASE_MAX_GEOMETRY)
15 {
16 lg2::error("Erase verify Geometry too large", "REDFISH_MESSAGE_ID",
17 std::string("OpenBMC.0.1.DriveEraseFailure"),
18 "REDFISH_MESSAGE_ARGS",
19 std::to_string(bytes) + ">" +
20 std::to_string(ERASE_MAX_GEOMETRY));
21 throw EraseError();
22 }
23 else if (bytes < ERASE_MIN_GEOMETRY)
24 {
25 lg2::error(
26 "eStorageD erase verify Geometry too small", "REDFISH_MESSAGE_ID",
27 std::string("OpenBMC.0.1.DriveEraseFailure"),
28 "REDFISH_MESSAGE_ARGS",
29 std::to_string(bytes) + "<" + std::to_string(ERASE_MIN_GEOMETRY));
30 throw EraseError();
31 }
32 else
33 {
34 lg2::info("eStorageD erase verify Geometry in range",
35 "REDFISH_MESSAGE_ID",
36 std::string("OpenBMC.0.1.DriveEraseSuccess"));
37 }
38}