Fix MeshCmd AMTPower poweroff action to use supported power state.

Joko Sastriawan committed Mar 25, 2021 at 18:54 UTC 8bf806c4f4778cc5535eaa8b4881c51886223956
1 file changed +2 -1
agents/meshcmd.js
+2 -1
@@ -786,7 +786,7 @@ function run(argv) {
786 if (args.poweron) { settings.poweraction = 2; }
787 if (args.sleep) { settings.poweraction = 3; }
788 if (args.powercycle) { settings.poweraction = 5; }
789 - if (args.poweroff) { settings.poweraction = 6; }
789 + if (args.poweroff) { settings.poweraction = 8; }
790 if (args.hibernate) { settings.poweraction = 7; }
791 if (args.reset) { settings.poweraction = 10; }
792 //if (settings.poweraction == 0) { console.log('No power action, specify --poweron, --sleep, --powercycle, --poweroff, --hibernate, --reset.'); exit(1); return; }
@@ -2794,6 +2794,7 @@ function powerActionResponse3(stack, name, response, status) {
2794 if (status != 200) { console.log('SetBootConfigRole failed.'); exit(1); return; }
2795 var bootsources = { 'pxe' : 'Force PXE Boot', 'hdd' : 'Force Hard-drive Boot', 'cd' : 'Force CD/DVD Boot'};
2796 var cbparam='<Address xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing</Address><ReferenceParameters xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"><ResourceURI xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_BootSourceSetting</ResourceURI><SelectorSet xmlns="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"><Selector Name="InstanceID">Intel(r) AMT: ' + bootsources[settings.bootdevice] + '</Selector></SelectorSet></ReferenceParameters>';
2797 + if (!settings.bootdevice) { cbparam=null;}
2798 amtstack.CIM_BootConfigSetting_ChangeBootOrder(cbparam, function(st, nm, resp, sts) {
2799 if (resp.Body['ReturnValue'] != 0) { console.log('(2) Change Boot Order returns '+ response.Body.ReturnValueStr); exit(1); return; }
2800 amtstack.RequestPowerStateChange(settings.poweraction, performAmtPowerActionEx);