dmi_hpe_physical_attrs

Synopsis

#include <opendmi/entity/hpe/physical-attrs.h>

typedef struct dmi_hpe_physical_attrs {
    dmi_uuid_t uuid;
    dmi_binary_t identifier_raw;
    char *identifier;
    const char *serial_number;
} dmi_hpe_physical_attrs_t;

Description

The dmi_hpe_physical_attrs_t structure holds the decoded HP/HPE physical attribute information, which keeps the physical serial number and UUID of the server, whose standard fields hold virtual ones, e.g. on Synergy, where a workload moves from one server to another along with its identity.

The structure is returned by dmi_entity_info for the structures decoded by dmi_hpe_physical_attrs_legacy_spec up to G7, and by dmi_hpe_physical_attrs_spec from Gen8 onwards, of type DMI_TYPE(hpe_physical_attrs), declared in <opendmi/module/hpe.h>, once the HPE extension module (dmi_hpe_module) is enabled, which it is for HP and HPE servers. It lives as long as the context it has been decoded in.

Up to G7, the structure holds 16 characters instead of the UUID: the product number and the serial number, which identifier points to, and uuid is zero. From Gen8 onwards, identifier is nullptr. The structures of unknown generation are not decoded.

Fields

uuid

Physical UUID, from Gen8 onwards.

identifier_raw

Product number and serial number, 16 characters, up to G7, as the structure holds them.

identifier

Product number and serial number, e.g. 484184GB894484YN, or nullptr if they are not printable. The string belongs to the structure, and is freed along with it.

serial_number

Physical serial number.

Standards

Not part of the SMBIOS specification. Defined by HP and HPE for their servers; the layout is the one dmidecode documents.