Lines Matching refs:ipmi

87     "/usr/share/ipmi-providers/master_write_read_white_list.json";
112 std::string getActiveSoftwareVersionInfo(ipmi::Context::ptr ctx)
115 ipmi::ObjectTree objectTree;
119 ipmi::getAllDbusObjects(*ctx->bus, softwareRoot, redundancyIntf);
133 ipmi::getService(*ctx->bus, redundancyIntf, softObject.first);
135 ipmi::getManagedObjects(*ctx->bus, service, softwareRoot);
188 ipmi::DbusObjectInfo bmcObject =
189 ipmi::getDbusObject(bus, bmc_state_interface);
191 ipmi::getDbusProperty(bus, bmcObject.second, bmcObject.first,
228 // Defined in 20.6 of ipmi doc
311 ipmi::RspType<> ipmiSetAcpiPowerState(uint8_t sysAcpiState,
329 return ipmi::responseParmOutOfRange();
350 ipmi::getDbusObject(bus, acpi_state::acpiInterface);
351 ipmi::setDbusProperty(bus, acpiObject.second, acpiObject.first,
360 return ipmi::responseUnspecifiedError();
377 return ipmi::responseParmOutOfRange();
398 ipmi::getDbusObject(bus, acpi_state::acpiInterface);
399 ipmi::setDbusProperty(bus, acpiObject.second, acpiObject.first,
408 return ipmi::responseUnspecifiedError();
416 return ipmi::responseSuccess();
426 ipmi::RspType<uint8_t, // acpiSystemPowerState
438 auto acpiObject = ipmi::getDbusObject(bus, acpi_state::acpiInterface);
440 auto sysACPIVal = ipmi::getDbusProperty(
447 auto devACPIVal = ipmi::getDbusProperty(
456 return ipmi::responseUnspecifiedError();
459 return ipmi::responseSuccess(sysAcpiState, devAcpiState);
603 ipmi::RspType<uint8_t, // Device ID
613 ipmiAppGetDeviceId([[maybe_unused]] ipmi::Context::ptr ctx)
628 const char* filename = "/usr/share/ipmi-providers/dev_id.json";
711 return ipmi::responseUnspecifiedError();
717 return ipmi::responseUnspecifiedError();
728 return ipmi::responseSuccess(
733 auto ipmiAppGetSelfTestResults() -> ipmi::RspType<uint8_t, uint8_t>
757 return ipmi::responseSuccess(notImplemented, zero);
810 -> ipmi::RspType<std::array<uint8_t, uuidBinaryLength>>
828 return ipmi::responseSuccess(uuid);
832 -> ipmi::RspType<uint8_t, uint8_t, uint8_t, uint8_t, uint8_t>
842 return ipmi::responseSuccess(nrOutstanding, inputBufferSize,
846 auto ipmiAppGetSystemGuid(ipmi::Context::ptr& ctx)
847 -> ipmi::RspType<std::array<uint8_t, 16>>
853 ipmi::DbusObjectInfo objectInfo{};
854 boost::system::error_code ec = ipmi::getDbusObject(
855 ctx, uuidInterface, ipmi::sensor::inventoryRoot, objectInfo);
866 ec = ipmi::getDbusProperty(ctx, objectInfo.second, objectInfo.first,
875 return ipmi::responseUnspecifiedError();
890 return ipmi::responseUnspecifiedError();
892 return ipmi::responseSuccess(uuid);
913 uint8_t sessionState = std::get<uint8_t>(ipmi::getDbusProperty(
918 ipmi::setDbusProperty(
921 return ipmi::ccSuccess;
931 return ipmi::ccUnspecifiedError;
934 return ipmi::ccInvalidFieldRequest;
937 ipmi::RspType<> ipmiAppCloseSession(uint32_t reqSessionId,
947 return ipmi::response(session::ccInvalidSessionId);
953 return ipmi::response(session::ccInvalidSessionHandle);
959 return ipmi::response(ipmi::ccInvalidFieldRequest);
964 ipmi::ObjectTree objectTree = ipmi::getAllDbusObjects(
982 return ipmi::responseUnspecifiedError();
987 return ipmi::response(setSessionState(busp, service, obj));
996 return ipmi::responseUnspecifiedError();
999 return ipmi::responseInvalidFieldRequest();
1006 while (ch < ipmi::maxIpmiChannels &&
1009 ipmi::ChannelInfo chInfo{};
1010 ipmi::getChannelInfo(ch, chInfo);
1011 if (static_cast<ipmi::EChannelMediumType>(chInfo.mediumType) ==
1012 ipmi::EChannelMediumType::lan8032)
1037 const ipmi::Context::ptr ctx, const uint8_t sessionIndex,
1038 ipmi::message::Payload& payload, uint32_t& reqSessionId,
1044 return ipmi::ccInvalidFieldRequest;
1051 ipmi::ChannelInfo chInfo;
1052 ipmi::getChannelInfo(ctx->channel, chInfo);
1054 if (static_cast<ipmi::EChannelMediumType>(chInfo.mediumType) !=
1055 ipmi::EChannelMediumType::lan8032)
1057 return ipmi::ccInvalidFieldRequest;
1062 return ipmi::ccReqDataLenInvalid;
1077 return ipmi::ccReqDataLenInvalid;
1092 return ipmi::ccReqDataLenInvalid;
1104 return ipmi::ccReqDataLenInvalid;
1108 return ipmi::ccSuccess;
1111 uint8_t getSessionState(ipmi::Context::ptr ctx, const std::string& service,
1114 boost::system::error_code ec = ipmi::getDbusProperty(
1123 return ipmi::ccUnspecifiedError;
1125 return ipmi::ccSuccess;
1148 * @param[in] ctx - ipmi::Context pointer for accessing D-Bus
1155 * @return - ipmi::Cc success or error code
1157 ipmi::Cc getSessionDetails(ipmi::Context::ptr ctx, const std::string& service,
1161 ipmi::PropertyMap sessionProps;
1162 boost::system::error_code ec = ipmi::getAllDbusProperties(
1172 return ipmi::ccUnspecifiedError;
1175 sessionState = ipmi::mappedVariant<uint8_t>(
1180 ipmi::mappedVariant<uint8_t>(sessionProps, "SessionHandle", 0);
1182 ipmi::mappedVariant<uint8_t>(sessionProps, "UserID", 0xff);
1185 ipmi::mappedVariant<uint8_t>(sessionProps, "CurrentPrivilege", 0);
1188 ipmi::mappedVariant<uint8_t>(sessionProps, "ChannelNum", 0xff);
1192 ipmi::mappedVariant<uint32_t>(sessionProps, "RemoteIPAddr", 0);
1195 ipmi::mappedVariant<uint16_t>(sessionProps, "RemotePort", 0);
1198 return ipmi::ccSuccess;
1201 ipmi::RspType<uint8_t, // session handle,
1205 ipmiAppGetSessionInfo(ipmi::Context::ptr ctx, uint8_t sessionIndex,
1206 ipmi::message::Payload& payload)
1218 return ipmi::response(completionCode);
1220 ipmi::ObjectTree objectTree;
1221 boost::system::error_code ec = ipmi::getAllDbusObjects(
1228 return ipmi::responseUnspecifiedError();
1253 return ipmi::responseUnspecifiedError();
1262 return ipmi::response(completionCode);
1279 return ipmi::response(completionCode);
1289 return ipmi::responseSuccess(activeSessionHandle, totalSessionCount,
1293 return ipmi::responseInvalidFieldRequest();
1296 std::optional<std::string> getSysFWVersion(ipmi::Context::ptr& ctx)
1305 ipmi::ObjectTree objectTree;
1307 ipmi::getAllDbusObjects(ctx, softwareRoot, versionIntf, objectTree);
1317 ipmi::PropertyMap props;
1318 ec = ipmi::getAllDbusProperties(ctx, service, objPath, versionIntf,
1326 ipmi::mappedVariant<std::string>(props, "Purpose", ""));
1334 ipmi::mappedVariant<std::string>(props, "Version", ""));
1375 namespace ipmi
1388 } // namespace ipmi
1390 ipmi::RspType<uint8_t, // Parameter revision
1393 ipmiAppGetSystemInfo(ipmi::Context::ptr ctx, uint7_t reserved,
1400 return ipmi::responseInvalidFieldRequest();
1404 return ipmi::responseParmNotSupported();
1408 return ipmi::responseSuccess(paramRevision, std::nullopt, std::nullopt);
1413 return ipmi::responseSuccess(paramRevision, transferStatus,
1419 return ipmi::responseParmNotSupported();
1435 return ipmi::responseUnspecifiedError();
1446 return ipmi::responseSensorInvalid();
1472 return ipmi::responseParmOutOfRange();
1479 return ipmi::responseSuccess(paramRevision, setSelector, configData);
1482 ipmi::RspType<> ipmiAppSetSystemInfo(uint8_t paramSelector, uint8_t data1,
1488 return ipmi::responseInvalidFieldRequest();
1492 return ipmi::responseParmNotSupported();
1501 return ipmi::responseSetInProgressActive();
1507 return ipmi::responseInvalidFieldRequest();
1511 return ipmi::responseSuccess();
1516 return ipmi::responseInvalidFieldRequest();
1551 return ipmi::responseInvalidFieldRequest();
1566 return ipmi::responseParmOutOfRange();
1572 return ipmi::responseSuccess();
1747 ipmi::RspType<std::vector<uint8_t>> ipmiControllerWriteRead(
1754 return ipmi::responseInvalidFieldRequest();
1760 return ipmi::responseInvalidFieldRequest();
1776 ipmi::Cc ret = ipmi::i2cWriteRead(i2cBus, static_cast<uint8_t>(targetAddr),
1778 if (ret != ipmi::ccSuccess)
1780 return ipmi::response(ret);
1782 return ipmi::responseSuccess(readBuf);
1788 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1789 ipmi::app::cmdGetDeviceId, ipmi::Privilege::User,
1793 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1794 ipmi::app::cmdGetBtIfaceCapabilities,
1795 ipmi::Privilege::User, ipmiAppGetBtCapabilities);
1798 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1799 ipmi::app::cmdResetWatchdogTimer,
1800 ipmi::Privilege::Operator, ipmiAppResetWatchdogTimer);
1802 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1803 ipmi::app::cmdGetSessionInfo, ipmi::Privilege::User,
1807 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1808 ipmi::app::cmdSetWatchdogTimer,
1809 ipmi::Privilege::Operator, ipmiSetWatchdogTimer);
1811 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1812 ipmi::app::cmdCloseSession, ipmi::Privilege::Callback,
1816 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1817 ipmi::app::cmdGetWatchdogTimer, ipmi::Privilege::User,
1821 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1822 ipmi::app::cmdGetSelfTestResults,
1823 ipmi::Privilege::User, ipmiAppGetSelfTestResults);
1826 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1827 ipmi::app::cmdGetDeviceGuid, ipmi::Privilege::User,
1831 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1832 ipmi::app::cmdSetAcpiPowerState,
1833 ipmi::Privilege::Admin, ipmiSetAcpiPowerState);
1835 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1836 ipmi::app::cmdGetAcpiPowerState,
1837 ipmi::Privilege::User, ipmiGetAcpiPowerState);
1846 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1847 ipmi::app::cmdMasterWriteRead,
1848 ipmi::Privilege::Admin, ipmiControllerWriteRead);
1852 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1853 ipmi::app::cmdGetSystemGuid, ipmi::Privilege::User,
1857 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1858 ipmi::app::cmdGetChannelCipherSuites,
1859 ipmi::Privilege::None, getChannelCipherSuites);
1862 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1863 ipmi::app::cmdGetSystemInfoParameters,
1864 ipmi::Privilege::User, ipmiAppGetSystemInfo);
1866 ipmi::registerHandler(ipmi::prioOpenBmcBase, ipmi::netFnApp,
1867 ipmi::app::cmdSetSystemInfoParameters,
1868 ipmi::Privilege::Admin, ipmiAppSetSystemInfo);