mirror of
https://github.com/ipmitool/ipmitool.git
synced 2025-05-10 18:47:22 +00:00
only decode sensor-specific states
This commit is contained in:
parent
5298b1ca71
commit
30eec7d0ac
@ -839,45 +839,50 @@ ipmi_sdr_print_sensor_compact(struct ipmi_intf * intf,
|
||||
"Not Readable" :
|
||||
"Not Readable ";
|
||||
} else {
|
||||
switch (sensor->sensor.type) {
|
||||
case 0x07: /* processor */
|
||||
if (rsp->data[2] & 0x80)
|
||||
state = csv_output ?
|
||||
"Present" :
|
||||
"Present ";
|
||||
else
|
||||
state = csv_output ?
|
||||
"Not Present" :
|
||||
"Not Present ";
|
||||
break;
|
||||
case 0x10: /* event logging disabled */
|
||||
if (rsp->data[2] & 0x10)
|
||||
state = csv_output ?
|
||||
"Log Full" :
|
||||
"Log Full ";
|
||||
else if (rsp->data[2] & 0x04)
|
||||
state = csv_output ?
|
||||
"Log Clear" :
|
||||
"Log Clear ";
|
||||
else {
|
||||
sprintf(temp, "0x%02x", rsp->data[2]);
|
||||
state = temp;
|
||||
}
|
||||
break;
|
||||
case 0x21: /* slot/connector */
|
||||
if (rsp->data[2] & 0x04)
|
||||
state = csv_output ?
|
||||
"Installed" :
|
||||
"Installed ";
|
||||
else
|
||||
state = csv_output ?
|
||||
"Not Installed" :
|
||||
"Not Installed ";
|
||||
break;
|
||||
default:
|
||||
if (sensor->event_type != 0x6f) {
|
||||
sprintf(temp, "0x%02x", rsp->data[2]);
|
||||
state = temp;
|
||||
break;
|
||||
} else {
|
||||
switch (sensor->sensor.type) {
|
||||
case 0x07: /* processor */
|
||||
if (rsp->data[2] & 0x80)
|
||||
state = csv_output ?
|
||||
"Present" :
|
||||
"Present ";
|
||||
else
|
||||
state = csv_output ?
|
||||
"Not Present" :
|
||||
"Not Present ";
|
||||
break;
|
||||
case 0x10: /* event logging disabled */
|
||||
if (rsp->data[2] & 0x10)
|
||||
state = csv_output ?
|
||||
"Log Full" :
|
||||
"Log Full ";
|
||||
else if (rsp->data[2] & 0x04)
|
||||
state = csv_output ?
|
||||
"Log Clear" :
|
||||
"Log Clear ";
|
||||
else {
|
||||
sprintf(temp, "0x%02x", rsp->data[2]);
|
||||
state = temp;
|
||||
}
|
||||
break;
|
||||
case 0x21: /* slot/connector */
|
||||
if (rsp->data[2] & 0x04)
|
||||
state = csv_output ?
|
||||
"Installed" :
|
||||
"Installed ";
|
||||
else
|
||||
state = csv_output ?
|
||||
"Not Installed" :
|
||||
"Not Installed ";
|
||||
break;
|
||||
default:
|
||||
sprintf(temp, "0x%02x", rsp->data[2]);
|
||||
state = temp;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -2322,6 +2327,8 @@ ipmi_sdr_dump_bin(struct ipmi_intf * intf, const char * ofile)
|
||||
}
|
||||
}
|
||||
|
||||
ipmi_sdr_end(intf, itr);
|
||||
|
||||
fclose(fp);
|
||||
return rc;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user