Noticed reading System GUID command is returning invalid value. IPMItool is not returing the data in the correct format.
Sytem GUID
61a39523-78f2-11e5-9862-e6402cfc3223
./ipmitool -I lanplus -H x.x.xxx.xxx -P 0penBmc -C 1 mc guid System GUID : 2cfc3223-e640-9862-e511-f2782395a361
Expected
2332fc2c40e6-6298-e511-f278-2395a361
Issue noticed is the below structure defined in ./include/ipmitool/ipmimc.h is not as per IPMI specification (Refer to section 20.8)
/ Structure follow the IPMI V.2 Rev 1.0
* See Table 20-10 /
struct ipmi_guid_t {
uint32_t time_low; / timestamp low field /
uint16_t time_mid; / timestamp middle field /
uint16_t time_hi_and_version; / timestamp high field and version number /
uint8_t clock_seq_hi_variant;/ clock sequence high field and variant /
uint8_t clock_seq_low; / clock sequence low field /
uint8_t node[6]; / node /
} ATTRIBUTE_PACKING;
As per specification the structure should have been defined as
struct ipmi_guid_t {
uint8_t node[6]; / node /
uint8_t clock_seq_low; / clock sequence low field /
uint8_t clock_seq_hi_variant;/ clock sequence high field and variant /
uint16_t time_hi_and_version; / timestamp high field and version number /
uint16_t time_mid; / timestamp middle field /
uint32_t time_low; / timestamp low field /
} ATTRIBUTE_PACKING;
Resolved in github.com/ipmitool/ipmitool/issues/25