Skip to content

Response to system GUID command is not as per the IPMI specification #93

Open
AlexanderAmelkin opened this issue Jan 18, 2018 · 0 comments

Comments

@AlexanderAmelkin
Copy link

Reported by: Devender
Original Ticket: ipmitool/bugs/501

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;

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant