summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorAlexander Amelkin <alexander@amelkin.msk.ru>2018-07-26 19:54:57 +0300
committerAlexander Amelkin <alexander@amelkin.msk.ru>2018-07-26 19:54:57 +0300
commit329ebdff84bdc61dc224ca5f7ea33a31eed146f0 (patch)
treeb6eb06aa0fd5a56bb6328619976f9ca5e467728e /lib
parent6ee52071dd148811cc6c44f3c0d6b6ba34eb3964 (diff)
downloadipmitool-329ebdff84bdc61dc224ca5f7ea33a31eed146f0.tar.gz
mc: Fix manufacturer ID masking
A potential future problem has been identified in the manufacturer ID processing code for `mc info` command. Only 16 of 24 bits were used. This is fixed now. Also added support for ID 0x0FFFFF, the 'reserved' value as per IPMI specification. It is now reported as 'Unspecified' unlike other non-listed IDs that are still reported as 'Unknown'. ID 0xFFFFFE is used for debugging purposes in hope that IANA won't reach that number of entities any soon. If it will though, then IANA's assignment will take precedence. Signed-off-by: Alexander Amelkin <alexander@amelkin.msk.ru>
Diffstat (limited to 'lib')
-rw-r--r--lib/ipmi_strings.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/lib/ipmi_strings.c b/lib/ipmi_strings.c
index e0b36c9..49fa784 100644
--- a/lib/ipmi_strings.c
+++ b/lib/ipmi_strings.c
@@ -38,17 +38,27 @@
const struct valstr ipmi_oem_info[] = {
- { IPMI_OEM_UNKNOWN, "Unknown" },
+/* These are at the top so they are found first */
+ { IPMI_OEM_UNKNOWN, "Unknown" },
+ { IPMI_OEM_RESERVED, "Unspecified" },
/* The included file is auto-generated from offical IANA PEN list */
#include "ipmi_pen_list.inc.c"
- { 0xffff , NULL },
+/*
+ * This debug ID is at the bottom so that if IANA assigns it to
+ * any entity, that IANA's value is found first and reported.
+ */
+ { IPMI_OEM_DEBUG, "A Debug Assisting Company, Ltd." },
+ { -1 , NULL },
};
const struct oemvalstr ipmi_oem_product_info[] = {
/* Keep OEM grouped together */
+ /* For ipmitool debugging */
+ { IPMI_OEM_DEBUG, 0x1234, "Great Debuggable BMC" },
+
/* Intel stuff, thanks to Tim Bell */
{ IPMI_OEM_INTEL, 0x000C, "TSRLT2" },
{ IPMI_OEM_INTEL, 0x001B, "TIGPR2U" },