summaryrefslogtreecommitdiffstats
path: root/chassishandler.C
diff options
context:
space:
mode:
authorChris Austen <austenc@us.ibm.com>2015-12-03 15:26:20 -0600
committerChris Austen <austenc@us.ibm.com>2015-12-03 15:26:20 -0600
commit7888c4dcef5340b6dbff931218b7100095b34dd1 (patch)
treee535caf304161d4fa965c0cf43bf8857871c89bd /chassishandler.C
parent169395e5d6133e4d5151e8f7cc14493da74f76be (diff)
downloadphosphor-host-ipmid-7888c4dcef5340b6dbff931218b7100095b34dd1.tar.gz
phosphor-host-ipmid-7888c4dcef5340b6dbff931218b7100095b34dd1.zip
Support host reboot
Diffstat (limited to 'chassishandler.C')
-rw-r--r--chassishandler.C11
1 files changed, 6 insertions, 5 deletions
diff --git a/chassishandler.C b/chassishandler.C
index 56b8375..1389db9 100644
--- a/chassishandler.C
+++ b/chassishandler.C
@@ -31,7 +31,7 @@ ipmi_ret_t ipmi_chassis_wildcard(ipmi_netfn_t netfn, ipmi_cmd_t cmd,
//------------------------------------------------------------
// Calls into Chassis Control Dbus object to do the power off
//------------------------------------------------------------
-int ipmi_chassis_power_off()
+int ipmi_chassis_power_control(const char *method)
{
// sd_bus error
int rc = 0;
@@ -50,7 +50,7 @@ int ipmi_chassis_power_off()
chassis_bus_name, // Service to contact
chassis_object_name, // Object path
chassis_intf_name, // Interface name
- "powerOff", // Method to be called
+ method, // Method to be called
&bus_error, // object to return error
&response, // Response buffer if any
NULL); // No input arguments
@@ -69,6 +69,7 @@ int ipmi_chassis_power_off()
return rc;
}
+
//----------------------------------------------------------------------
// Chassis Control commands
//----------------------------------------------------------------------
@@ -89,11 +90,11 @@ ipmi_ret_t ipmi_chassis_control(ipmi_netfn_t netfn, ipmi_cmd_t cmd,
switch(chassis_ctrl_cmd)
{
case CMD_POWER_OFF:
+ rc = ipmi_chassis_power_control("powerOff");
+ break;
case CMD_HARD_RESET:
- {
- rc = ipmi_chassis_power_off();
+ rc = ipmi_chassis_power_control("reboot");
break;
- }
default:
{
fprintf(stderr, "Invalid Chassis Control command:[0x%X] received\n",chassis_ctrl_cmd);
OpenPOWER on IntegriCloud