summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/ipmitool/ipmi_strings.h2
-rw-r--r--lib/ipmi_main.c5
-rw-r--r--lib/ipmi_strings.c19
3 files changed, 7 insertions, 19 deletions
diff --git a/include/ipmitool/ipmi_strings.h b/include/ipmitool/ipmi_strings.h
index 17c37c6..d60179c 100644
--- a/include/ipmitool/ipmi_strings.h
+++ b/include/ipmitool/ipmi_strings.h
@@ -55,7 +55,7 @@ extern const struct valstr ipmi_integrity_algorithms[];
extern const struct valstr ipmi_encryption_algorithms[];
extern const struct valstr ipmi_user_enable_status_vals[];
extern const struct valstr *ipmi_oem_info;
-int ipmi_oem_info_init();
+void ipmi_oem_info_init();
void ipmi_oem_info_free();
extern const struct valstr picmg_frucontrol_vals[];
diff --git a/lib/ipmi_main.c b/lib/ipmi_main.c
index a673a30..510bc2d 100644
--- a/lib/ipmi_main.c
+++ b/lib/ipmi_main.c
@@ -853,10 +853,7 @@ ipmi_main(int argc, char ** argv,
}
/* load the IANA PEN registry */
- if (ipmi_oem_info_init()) {
- lprintf(LOG_ERR, "Failed to initialize the OEM info dictionary");
- goto out_free;
- }
+ ipmi_oem_info_init();
/* run OEM setup if found */
if (oemtype &&
diff --git a/lib/ipmi_strings.c b/lib/ipmi_strings.c
index 26b359f..c8fc2d0 100644
--- a/lib/ipmi_strings.c
+++ b/lib/ipmi_strings.c
@@ -1719,39 +1719,30 @@ out:
return rc;
}
-int ipmi_oem_info_init()
+void ipmi_oem_info_init()
{
oem_valstr_list_t terminator = { { -1, NULL}, NULL }; /* Terminator */
oem_valstr_list_t *oemlist = &terminator;
bool free_strings = true;
- size_t count;
- int rc = -4;
+ int count;
lprintf(LOG_INFO, "Loading IANA PEN Registry...");
if (ipmi_oem_info) {
lprintf(LOG_INFO, "IANA PEN Registry is already loaded");
- rc = 0;
goto out;
}
- if (!(count = oem_info_list_load(&oemlist))) {
- /*
- * We can't identify OEMs without a loaded registry.
- * Set the pointer to dummy and return.
- */
- ipmi_oem_info = ipmi_oem_info_dummy;
- goto out;
+ if ((count = oem_info_list_load(&oemlist)) < 1) {
+ lprintf(LOG_WARN, "Failed to load entries from IANA PEN Registry");
+ count = 0;
}
/* In the array was allocated, don't free the strings at cleanup */
free_strings = !oem_info_init_from_list(oemlist, count);
- rc = IPMI_CC_OK;
-
out:
oem_info_list_free(&oemlist, free_strings);
- return rc;
}
void ipmi_oem_info_free()