diff options
author | Dave Cobbley <david.j.cobbley@linux.intel.com> | 2018-08-14 20:05:37 +0300 |
---|---|---|
committer | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2018-08-23 04:26:31 +0300 |
commit | eb8dc40360f0cfef56fb6947cc817a547d6d9bc6 (patch) | |
tree | de291a73dc37168da6370e2cf16c347d1eba9df8 /meta-openembedded/meta-networking/recipes-support/openipmi/files | |
parent | 9c3cf826d853102535ead04cebc2d6023eff3032 (diff) | |
download | openbmc-eb8dc40360f0cfef56fb6947cc817a547d6d9bc6.tar.xz |
[Subtree] Removing import-layers directory
As part of the move to subtrees, need to bring all the import layers
content to the top level.
Change-Id: I4a163d10898cbc6e11c27f776f60e1a470049d8f
Signed-off-by: Dave Cobbley <david.j.cobbley@linux.intel.com>
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Diffstat (limited to 'meta-openembedded/meta-networking/recipes-support/openipmi/files')
9 files changed, 1323 insertions, 0 deletions
diff --git a/meta-openembedded/meta-networking/recipes-support/openipmi/files/0001-lanserv-Rename-struct-parameter-printf-for-namespace.patch b/meta-openembedded/meta-networking/recipes-support/openipmi/files/0001-lanserv-Rename-struct-parameter-printf-for-namespace.patch new file mode 100644 index 0000000000..25057fbce5 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/openipmi/files/0001-lanserv-Rename-struct-parameter-printf-for-namespace.patch @@ -0,0 +1,618 @@ +From 8b51a6bf5a4829d8add535a098c0c06a049a9958 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 26 Aug 2017 22:50:57 -0700 +Subject: [PATCH] lanserv: Rename struct parameter printf for namespace + collision + +This comes to fore when we use hardening flags where printf +is treated as macro and gets replaced with printf_chk + +Fixes errors like + +error: no member named '__printf_chk' in 'struct emu_out_s' + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + lanserv/OpenIPMI/serv.h | 2 +- + lanserv/emu_cmd.c | 132 ++++++++++++++++++++++++------------------------ + lanserv/ipmi_sim.c | 10 ++-- + 3 files changed, 72 insertions(+), 72 deletions(-) + +diff --git a/lanserv/OpenIPMI/serv.h b/lanserv/OpenIPMI/serv.h +index d12d63a..8555c85 100644 +--- a/lanserv/OpenIPMI/serv.h ++++ b/lanserv/OpenIPMI/serv.h +@@ -522,7 +522,7 @@ uint8_t ipmb_checksum(uint8_t *data, int size, uint8_t start); + typedef struct emu_data_s emu_data_t; + typedef struct emu_out_s + { +- void (*printf)(struct emu_out_s *out, char *format, ...); ++ void (*eprintf)(struct emu_out_s *out, char *format, ...); + void *data; + } emu_out_t; + +diff --git a/lanserv/emu_cmd.c b/lanserv/emu_cmd.c +index ca44032..54b6f7b 100644 +--- a/lanserv/emu_cmd.c ++++ b/lanserv/emu_cmd.c +@@ -76,7 +76,7 @@ emu_get_uchar(emu_out_t *out, char **toks, unsigned char *val, char *errstr, + if (empty_ok) + return ENOSPC; + if (errstr) +- out->printf(out, "**No %s given\n", errstr); ++ out->eprintf(out, "**No %s given\n", errstr); + return EINVAL; + } + if (str[0] == '\'') { +@@ -86,7 +86,7 @@ emu_get_uchar(emu_out_t *out, char **toks, unsigned char *val, char *errstr, + *val = strtoul(str, &tmpstr, 0); + if (*tmpstr != '\0') { + if (errstr) +- out->printf(out, "**Invalid %s given\n", errstr); ++ out->eprintf(out, "**Invalid %s given\n", errstr); + return EINVAL; + } + +@@ -108,7 +108,7 @@ emu_get_uchar_with_vals(emu_out_t *out, char **toks, + if (empty_ok) + return ENOSPC; + if (errstr) +- out->printf(out, "**No %s given\n", errstr); ++ out->eprintf(out, "**No %s given\n", errstr); + return EINVAL; + } + if (str[0] == '\'') { +@@ -131,7 +131,7 @@ emu_get_uchar_with_vals(emu_out_t *out, char **toks, + *val = strtoul(str, &tmpstr, 0); + if (*tmpstr != '\0') { + if (errstr) +- out->printf(out, "**Invalid %s given\n", errstr); ++ out->eprintf(out, "**Invalid %s given\n", errstr); + return EINVAL; + } + out: +@@ -150,12 +150,12 @@ emu_get_bitmask(emu_out_t *out, char **toks, uint16_t *val, char *errstr, + if (empty_ok) + return ENOSPC; + if (errstr) +- out->printf(out, "**No %s given\n", errstr); ++ out->eprintf(out, "**No %s given\n", errstr); + return EINVAL; + } + if (strlen(str) != size) { + if (errstr) +- out->printf(out, "**invalid number of bits in %s\n", errstr); ++ out->eprintf(out, "**invalid number of bits in %s\n", errstr); + return EINVAL; + } + *val = 0; +@@ -166,7 +166,7 @@ emu_get_bitmask(emu_out_t *out, char **toks, uint16_t *val, char *errstr, + *val |= 1 << i; + } else { + if (errstr) +- out->printf(out, "**Invalid bit value '%c' in %s\n", str[j], ++ out->eprintf(out, "**Invalid bit value '%c' in %s\n", str[j], + errstr); + return EINVAL; + } +@@ -184,13 +184,13 @@ emu_get_uint(emu_out_t *out, char **toks, unsigned int *val, char *errstr) + str = mystrtok(NULL, " \t\n", toks); + if (!str) { + if (errstr) +- out->printf(out, "**No %s given\n", errstr); ++ out->eprintf(out, "**No %s given\n", errstr); + return EINVAL; + } + *val = strtoul(str, &tmpstr, 0); + if (*tmpstr != '\0') { + if (errstr) +- out->printf(out, "**Invalid %s given\n", errstr); ++ out->eprintf(out, "**Invalid %s given\n", errstr); + return EINVAL; + } + +@@ -206,7 +206,7 @@ emu_get_bytes(emu_out_t *out, char **tokptr, unsigned char *data, char *errstr, + + if (!tok) { + if (errstr) +- out->printf(out, "**No %s given\n", errstr); ++ out->eprintf(out, "**No %s given\n", errstr); + return EINVAL; + } + if (*tok == '"') { +@@ -215,7 +215,7 @@ emu_get_bytes(emu_out_t *out, char **tokptr, unsigned char *data, char *errstr, + tok++; + end = strlen(tok) - 1; + if (tok[end] != '"') { +- out->printf(out, "**ASCII %s doesn't end in '\"'", errstr); ++ out->eprintf(out, "**ASCII %s doesn't end in '\"'", errstr); + return EINVAL; + } + if (end > (len - 1)) +@@ -228,7 +228,7 @@ emu_get_bytes(emu_out_t *out, char **tokptr, unsigned char *data, char *errstr, + char c[3]; + /* HEX pw */ + if (strlen(tok) != 32) { +- out->printf(out, "**HEX %s not 32 HEX characters long", errstr); ++ out->eprintf(out, "**HEX %s not 32 HEX characters long", errstr); + return EINVAL; + } + c[2] = '\0'; +@@ -239,7 +239,7 @@ emu_get_bytes(emu_out_t *out, char **tokptr, unsigned char *data, char *errstr, + tok++; + data[i] = strtoul(c, &end, 16); + if (*end != '\0') { +- out->printf(out, "**Invalid HEX character in %s", errstr); ++ out->eprintf(out, "**Invalid HEX character in %s", errstr); + return -1; + } + } +@@ -263,12 +263,12 @@ read_command_file(emu_out_t *out, emu_data_t *emu, const char *command_file) + + buffer = malloc(INPUT_BUFFER_SIZE); + if (!buffer) { +- out->printf(out, "Could not allocate buffer memory\n"); ++ out->eprintf(out, "Could not allocate buffer memory\n"); + rv = ENOMEM; + goto out; + } + while (fgets(buffer+pos, INPUT_BUFFER_SIZE-pos, f)) { +- out->printf(out, "%s", buffer+pos); ++ out->eprintf(out, "%s", buffer+pos); + if (buffer[pos] == '#') + continue; + pos = strlen(buffer); +@@ -318,7 +318,7 @@ sel_enable(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + rv = ipmi_mc_enable_sel(mc, max_records, flags); + if (rv) +- out->printf(out, "**Unable to enable sel, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to enable sel, error 0x%x\n", rv); + return rv; + } + +@@ -343,9 +343,9 @@ sel_add(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + rv = ipmi_mc_add_to_sel(mc, record_type, data, &r); + if (rv) +- out->printf(out, "**Unable to add to sel, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to add to sel, error 0x%x\n", rv); + else +- out->printf(out, "Added record %d\n", r); ++ out->eprintf(out, "Added record %d\n", r); + return rv; + } + +@@ -361,14 +361,14 @@ main_sdr_add(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + if (rv == ENOSPC) + break; + if (rv) { +- out->printf(out, "**Error 0x%x in data byte %d\n", rv, i); ++ out->eprintf(out, "**Error 0x%x in data byte %d\n", rv, i); + return rv; + } + } + + rv = ipmi_mc_add_main_sdr(mc, data, i); + if (rv) +- out->printf(out, "**Unable to add to sdr, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to add to sdr, error 0x%x\n", rv); + return rv; + } + +@@ -389,14 +389,14 @@ device_sdr_add(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + if (rv == ENOSPC) + break; + if (rv) { +- out->printf(out, "**Error 0x%x in data byte %d\n", rv, i); ++ out->eprintf(out, "**Error 0x%x in data byte %d\n", rv, i); + return rv; + } + } + + rv = ipmi_mc_add_device_sdr(mc, lun, data, i); + if (rv) +- out->printf(out, "**Unable to add to sdr, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to add to sdr, error 0x%x\n", rv); + return rv; + } + +@@ -439,7 +439,7 @@ sensor_add(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + while (tok) { + if (strcmp(tok, "poll") == 0) { + if (handler) { +- out->printf(out, "**poll given twice in sensor\n", tok); ++ out->eprintf(out, "**poll given twice in sensor\n", tok); + return -1; + } + +@@ -449,27 +449,27 @@ sensor_add(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + tok = mystrtok(NULL, " \t\n", toks); + if (!tok) { +- out->printf(out, "**No polled sensor handler given\n", tok); ++ out->eprintf(out, "**No polled sensor handler given\n", tok); + return -1; + } + + handler = ipmi_sensor_find_handler(tok); + if (!handler) { +- out->printf(out, "**Invalid sensor handler: %s\n", tok); ++ out->eprintf(out, "**Invalid sensor handler: %s\n", tok); + return -1; + } + + rv = handler->init(mc, lun, num, toks, handler->cb_data, &rcb_data, + &errstr); + if (rv) { +- out->printf(out, "**Error initializing sensor handler: %s\n", ++ out->eprintf(out, "**Error initializing sensor handler: %s\n", + errstr); + return rv; + } + } else if (strcmp(tok, "event-only") == 0) { + event_only = 1; + } else { +- out->printf(out, "**Unknown sensor option: %s\n", tok); ++ out->eprintf(out, "**Unknown sensor option: %s\n", tok); + return -1; + } + +@@ -477,7 +477,7 @@ sensor_add(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + } + + if (handler && event_only) { +- out->printf(out, "**An event-only sensor cannot be polled\n"); ++ out->eprintf(out, "**An event-only sensor cannot be polled\n"); + return -1; + } + +@@ -488,7 +488,7 @@ sensor_add(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + if (!rv && handler->postinit) { + rv = handler->postinit(rcb_data, &errstr); + if (rv) { +- out->printf(out, "**Error in sensor handler postinit: %s\n", ++ out->eprintf(out, "**Error in sensor handler postinit: %s\n", + errstr); + } + } +@@ -496,7 +496,7 @@ sensor_add(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + rv = ipmi_mc_add_sensor(mc, lun, num, type, code, event_only); + } + if (rv) +- out->printf(out, "**Unable to add to sensor, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to add to sensor, error 0x%x\n", rv); + return rv; + } + +@@ -532,7 +532,7 @@ sensor_set_bit(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + rv = ipmi_mc_sensor_set_bit(mc, lun, num, bit, value, gen_event); + if (rv) +- out->printf(out, "**Unable to set sensor bit, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to set sensor bit, error 0x%x\n", rv); + return rv; + } + +@@ -563,7 +563,7 @@ sensor_set_bit_clr_rest(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char ** + + rv = ipmi_mc_sensor_set_bit_clr_rest(mc, lun, num, bit, gen_event); + if (rv) +- out->printf(out, "**Unable to set sensor bit, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to set sensor bit, error 0x%x\n", rv); + return rv; + } + +@@ -594,7 +594,7 @@ sensor_set_value(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + rv = ipmi_mc_sensor_set_value(mc, lun, num, value, gen_event); + if (rv) +- out->printf(out, "**Unable to set sensor value, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to set sensor value, error 0x%x\n", rv); + return rv; + } + +@@ -637,7 +637,7 @@ sensor_set_hysteresis(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **to + rv = ipmi_mc_sensor_set_hysteresis(mc, lun, num, support, positive, + negative); + if (rv) +- out->printf(out, "**Unable to set sensor hysteresis, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to set sensor hysteresis, error 0x%x\n", rv); + return rv; + } + +@@ -682,7 +682,7 @@ sensor_set_threshold(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **tok + rv = ipmi_mc_sensor_set_threshold(mc, lun, num, support, + enabled, 1, thresholds); + if (rv) +- out->printf(out, "**Unable to set sensor thresholds, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to set sensor thresholds, error 0x%x\n", rv); + return rv; + } + +@@ -759,7 +759,7 @@ sensor_set_event_support(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char * + assert_support, deassert_support, + assert_enabled, deassert_enabled); + if (rv) +- out->printf(out, "**Unable to set sensor thresholds, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to set sensor thresholds, error 0x%x\n", rv); + return rv; + } + +@@ -819,7 +819,7 @@ mc_add(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + else if (strcmp("persist_sdr", tok) == 0) + flags |= IPMI_MC_PERSIST_SDR; + else { +- out->printf(out, "**Invalid MC flag: %s\n", tok); ++ out->eprintf(out, "**Invalid MC flag: %s\n", tok); + return -1; + } + } +@@ -833,7 +833,7 @@ mc_add(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + device_revision, major_fw_rev, minor_fw_rev, + device_support, mfg_id, product_id, flags); + if (rv) +- out->printf(out, "**Unable to add the MC, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to add the MC, error 0x%x\n", rv); + return rv; + } + +@@ -890,7 +890,7 @@ mc_set_power(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + rv = ipmi_mc_set_power(mc, power, gen_int); + if (rv) +- out->printf(out, "**Unable to set power, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to set power, error 0x%x\n", rv); + return rv; + } + +@@ -916,7 +916,7 @@ mc_add_fru_data(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + tok = mystrtok(NULL, " \t\n", toks); + if (!tok) { +- out->printf(out, "**No FRU data type given"); ++ out->eprintf(out, "**No FRU data type given"); + return -1; + } + if (strcmp(tok, "file") == 0) { +@@ -929,13 +929,13 @@ mc_add_fru_data(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + rv = get_delim_str(toks, &frufn, &errstr); + if (rv) { +- out->printf(out, "**Error with FRU filename: %d", strerror(rv)); ++ out->eprintf(out, "**Error with FRU filename: %d", strerror(rv)); + return rv; + } + rv = ipmi_mc_add_fru_file(mc, devid, length, file_offset, + (void *) frufn); + if (rv) +- out->printf(out, "**Unable to add FRU file, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to add FRU file, error 0x%x\n", rv); + + } else if (strcmp(tok, "data") == 0) { + for (i=0; i<length; i++) { +@@ -943,14 +943,14 @@ mc_add_fru_data(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + if (rv == ENOSPC) + break; + if (rv) { +- out->printf(out, "**Error 0x%x in data byte %d\n", rv, i); ++ out->eprintf(out, "**Error 0x%x in data byte %d\n", rv, i); + return rv; + } + } + + rv = emu_get_uchar(out, toks, &data[i], "data byte", 1); + if (rv != ENOSPC) { +- out->printf(out, "**Error: input data too long for FRU\n", rv, i); ++ out->eprintf(out, "**Error: input data too long for FRU\n", rv, i); + return EINVAL; + } + +@@ -958,9 +958,9 @@ mc_add_fru_data(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + rv = ipmi_mc_add_fru_data(mc, devid, length, NULL, data); + if (rv) +- out->printf(out, "**Unable to add FRU data, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to add FRU data, error 0x%x\n", rv); + } else { +- out->printf(out, "**FRU type not given, need file or data\n"); ++ out->eprintf(out, "**FRU type not given, need file or data\n"); + rv = EINVAL; + } + return rv; +@@ -981,28 +981,28 @@ mc_dump_fru_data(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + rv = ipmi_mc_get_fru_data_len(mc, devid, &length); + if (rv) { +- out->printf(out, "**Unable to dump FRU data, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to dump FRU data, error 0x%x\n", rv); + goto out; + } + + data = malloc(length); + if (!data) { +- out->printf(out, "**Unable to dump FRU data, out of memory\n", rv); ++ out->eprintf(out, "**Unable to dump FRU data, out of memory\n", rv); + goto out; + } + + rv = ipmi_mc_get_fru_data(mc, devid, length, data); + if (rv) { +- out->printf(out, "**Unable to dump FRU data, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to dump FRU data, error 0x%x\n", rv); + goto out; + } + + for (i=0; i<length; i++) { + if ((i > 0) && ((i % 8) == 0)) +- out->printf(out, "\n"); +- out->printf(out, " 0x%2.2x", data[i]); ++ out->eprintf(out, "\n"); ++ out->eprintf(out, " 0x%2.2x", data[i]); + } +- out->printf(out, "\n"); ++ out->eprintf(out, "\n"); + + out: + if (data) +@@ -1021,7 +1021,7 @@ mc_setbmc(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + return rv; + rv = ipmi_emu_set_bmc_mc(emu, ipmb); + if (rv) +- out->printf(out, "**Invalid IPMB address\n"); ++ out->eprintf(out, "**Invalid IPMB address\n"); + return rv; + } + +@@ -1032,7 +1032,7 @@ atca_enable(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + rv = ipmi_emu_atca_enable(emu); + if (rv) +- out->printf(out, "**Unable to enable ATCA mode, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to enable ATCA mode, error 0x%x\n", rv); + return rv; + } + +@@ -1056,7 +1056,7 @@ atca_set_site(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + rv = ipmi_emu_atca_set_site(emu, hw_address, site_type, site_number); + if (rv) +- out->printf(out, "**Unable to set site type, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to set site type, error 0x%x\n", rv); + return rv; + } + +@@ -1072,7 +1072,7 @@ mc_set_num_leds(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + rv = ipmi_mc_set_num_leds(mc, count); + if (rv) +- out->printf(out, "**Unable to set number of LEDs, error 0x%x\n", rv); ++ out->eprintf(out, "**Unable to set number of LEDs, error 0x%x\n", rv); + return rv; + } + +@@ -1085,7 +1085,7 @@ read_cmds(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + err = get_delim_str(toks, &filename, &errstr); + if (err) { +- out->printf(out, "Could not get include filename: %s\n", errstr); ++ out->eprintf(out, "Could not get include filename: %s\n", errstr); + return err; + } + +@@ -1097,7 +1097,7 @@ read_cmds(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + { + char *nf = malloc(strlen(BASE_CONF_STR) + strlen(filename) + 2); + if (!nf) { +- out->printf(out, "Out of memory in include\n", errstr); ++ out->eprintf(out, "Out of memory in include\n", errstr); + goto out_err; + } + strcpy(nf, BASE_CONF_STR); +@@ -1107,7 +1107,7 @@ read_cmds(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + filename = nf; + err = read_command_file(out, emu, filename); + if (err) { +- out->printf(out, "Could not read include file %s\n", filename); ++ out->eprintf(out, "Could not read include file %s\n", filename); + } + } + +@@ -1147,7 +1147,7 @@ debug_cmd(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + } else if (strcmp(tok, "sol") == 0) { + level |= DEBUG_SOL; + } else { +- out->printf(out, "Invalid debug level '%s', options are 'raw' and 'msg'\n", ++ out->eprintf(out, "Invalid debug level '%s', options are 'raw' and 'msg'\n", + tok); + return EINVAL; + } +@@ -1168,7 +1168,7 @@ persist_cmd(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + } else if (strcmp(tok, "off") == 0) { + persist_enable = 0; + } else { +- out->printf(out, "Invalid persist vale '%s', options are 'on' and 'off'\n", ++ out->eprintf(out, "Invalid persist vale '%s', options are 'on' and 'off'\n", + tok); + return EINVAL; + } +@@ -1194,18 +1194,18 @@ do_define(emu_out_t *out, emu_data_t *emu, lmc_data_t *mc, char **toks) + + name = mystrtok(NULL, " \t\n", toks); + if (!name) { +- out->printf(out, "No variable name given for define\n"); ++ out->eprintf(out, "No variable name given for define\n"); + return EINVAL; + } + err = get_delim_str(toks, &value, &errstr); + if (err) { +- out->printf(out, "Could not get variable %s value: %s\n", name, errstr); ++ out->eprintf(out, "Could not get variable %s value: %s\n", name, errstr); + return err; + } + err = add_variable(name, value); + if (err) { + free(value); +- out->printf(out, "Out of memory setting variable %s\n", name); ++ out->eprintf(out, "Out of memory setting variable %s\n", name); + return err; + } + return 0; +@@ -1301,7 +1301,7 @@ ipmi_emu_cmd(emu_out_t *out, emu_data_t *emu, char *cmd_str) + return rv; + rv = ipmi_emu_get_mc_by_addr(emu, ipmb, &mc); + if (rv) { +- out->printf(out, "**Invalid MC address\n"); ++ out->eprintf(out, "**Invalid MC address\n"); + return rv; + } + } +@@ -1312,7 +1312,7 @@ ipmi_emu_cmd(emu_out_t *out, emu_data_t *emu, char *cmd_str) + } + } + +- out->printf(out, "**Unknown command: %s\n", cmd); ++ out->eprintf(out, "**Unknown command: %s\n", cmd); + + out: + return rv; +diff --git a/lanserv/ipmi_sim.c b/lanserv/ipmi_sim.c +index 9472cce..30c4f27 100644 +--- a/lanserv/ipmi_sim.c ++++ b/lanserv/ipmi_sim.c +@@ -607,8 +607,8 @@ isim_log(sys_data_t *sys, int logtype, msg_t *msg, const char *format, + + con = data->consoles; + while (con) { +- con->out.printf(&con->out, "%s", str); +- con->out.printf(&con->out, "\n"); ++ con->out.eprintf(&con->out, "%s", str); ++ con->out.eprintf(&con->out, "\n"); + con = con->next; + } + #if HAVE_SYSLOG +@@ -956,7 +956,7 @@ console_bind_ready(int fd, void *cb_data, os_hnd_fd_id_t *id) + newcon->shutdown_on_close = 0; + newcon->telnet = 1; + newcon->tn_pos = 0; +- newcon->out.printf = emu_printf; ++ newcon->out.eprintf = emu_printf; + newcon->out.data = newcon; + + setsockopt(rv, IPPROTO_TCP, TCP_NODELAY, (char *)&val, sizeof(val)); +@@ -1463,10 +1463,10 @@ main(int argc, const char *argv[]) + stdio_console.telnet = 0; + stdio_console.tn_pos = 0; + if (nostdio) { +- stdio_console.out.printf = dummy_printf; ++ stdio_console.out.eprintf = dummy_printf; + stdio_console.out.data = &stdio_console; + } else { +- stdio_console.out.printf = emu_printf; ++ stdio_console.out.eprintf = emu_printf; + stdio_console.out.data = &stdio_console; + } + stdio_console.next = NULL; +-- +2.14.1 + diff --git a/meta-openembedded/meta-networking/recipes-support/openipmi/files/do-not-install-pyc-and-pyo.patch b/meta-openembedded/meta-networking/recipes-support/openipmi/files/do-not-install-pyc-and-pyo.patch new file mode 100644 index 0000000000..d4e02be450 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/openipmi/files/do-not-install-pyc-and-pyo.patch @@ -0,0 +1,25 @@ +Do not install pyc and pyo for python module + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Yi Zhao <yi.zhao@windriver.com> +--- + swig/python/Makefile.am | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/swig/python/Makefile.am b/swig/python/Makefile.am +index da95a81..97a62bf 100644 +--- a/swig/python/Makefile.am ++++ b/swig/python/Makefile.am +@@ -33,8 +33,6 @@ CLEANFILES = OpenIPMI_wrap.c OpenIPMI.py OpenIPMI.pyo OpenIPMI.pyc + install-exec-local: _OpenIPMI.la OpenIPMI.py OpenIPMI.pyc OpenIPMI.pyo + $(INSTALL) -d $(DESTDIR)$(PYTHON_INSTALL_DIR) + $(INSTALL_DATA) OpenIPMI.py "$(DESTDIR)$(PYTHON_INSTALL_DIR)" +- $(INSTALL_DATA) OpenIPMI.pyc "$(DESTDIR)$(PYTHON_INSTALL_DIR)" +- $(INSTALL_DATA) OpenIPMI.pyo "$(DESTDIR)$(PYTHON_INSTALL_DIR)" + if test "x$(PYTHON_GUI_DIR)" = "xopenipmigui"; then \ + $(INSTALL) -d $(DESTDIR)$(bindir); \ + $(INSTALL_SCRIPT) $(srcdir)/openipmigui.py "$(DESTDIR)$(bindir)/openipmigui";\ +-- +1.9.1 + diff --git a/meta-openembedded/meta-networking/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch b/meta-openembedded/meta-networking/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch new file mode 100644 index 0000000000..449142fcfa --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch @@ -0,0 +1,22 @@ +Author: Aws Ismail <aws.ismail@windriver.com> +Date: Thu Jun 7 16:00:13 2012 -0400 + + This patch fixes the error during the install stage when + creating a symbolic link for opeipmish in openipmi/cmdlang + + Upstream-Status: Pending + + Signed-off-by: Aws Ismail <aws.ismail@windriver.com> + +Index: OpenIPMI-2.0.24/cmdlang/Makefile.am +=================================================================== +--- OpenIPMI-2.0.24.orig/cmdlang/Makefile.am ++++ OpenIPMI-2.0.24/cmdlang/Makefile.am +@@ -35,6 +35,7 @@ openipmish_LDADD = libOpenIPMIcmdlang.l + # compatability. + install-data-local: + rm -f $(DESTDIR)$(bindir)/ipmish ++ mkdir -p $(DESTDIR)$(bindir)/ + $(LN_S) openipmish $(DESTDIR)$(bindir)/ipmish + + uninstall-local: diff --git a/meta-openembedded/meta-networking/recipes-support/openipmi/files/include_sys_types.patch b/meta-openembedded/meta-networking/recipes-support/openipmi/files/include_sys_types.patch new file mode 100644 index 0000000000..082511a67b --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/openipmi/files/include_sys_types.patch @@ -0,0 +1,17 @@ +include sys/types.h for u_int32_t + +ui.c:340:5: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'? + u_int32_t addr; + ^~~~~~~~~ +Index: OpenIPMI-2.0.24/ui/ui.c +=================================================================== +--- OpenIPMI-2.0.24.orig/ui/ui.c ++++ OpenIPMI-2.0.24/ui/ui.c +@@ -42,6 +42,7 @@ + #include <fcntl.h> + #include <time.h> + #include <sys/time.h> ++#include <sys/types.h> + #include <ctype.h> + + #include <OpenIPMI/ipmi_err.h> diff --git a/meta-openembedded/meta-networking/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch b/meta-openembedded/meta-networking/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch new file mode 100644 index 0000000000..51a398ba53 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch @@ -0,0 +1,41 @@ +Subject: [PATCH] ipmi-init: fix the arguments + +The functions success/failure/warning defined in /etc/init.d/functions +(provided by initscripts) only accepts numeric argument as return code, +not a string. + +Upstream-Status: Inappropriate [OE specific] + +Signed-off-by: Jackie Huang <jackie.huang@windriver.com> +--- + ipmi.init | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/ipmi.init b/ipmi.init +index 2ebcd94..d8161c5 100644 +--- a/ipmi.init ++++ b/ipmi.init +@@ -45,17 +45,17 @@ elif [ -r /etc/init.d/functions ]; then + case "$ACTION" in + success) + echo -n $* +- success "$*" ++ success 0 + echo + ;; + failure) + echo -n $* +- failure "$*" ++ failure 1 + echo + ;; + warning) + echo -n $* +- warning "$*" ++ warning 0 + echo + ;; + *) +-- +1.9.1 + diff --git a/meta-openembedded/meta-networking/recipes-support/openipmi/files/ipmi.service b/meta-openembedded/meta-networking/recipes-support/openipmi/files/ipmi.service new file mode 100644 index 0000000000..6fe1378191 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/openipmi/files/ipmi.service @@ -0,0 +1,12 @@ +[Unit] +Description=IPMI Driver +After=network.target + +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=@LIBEXECDIR@/openipmi-helper start +ExecStop=@LIBEXECDIR@/openipmi-helper stop-all + +[Install] +WantedBy=multi-user.target diff --git a/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-helper b/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-helper new file mode 100755 index 0000000000..4cebfb9c6a --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-helper @@ -0,0 +1,512 @@ +#!/bin/sh +############################################################################# +# +# ipmi: OpenIPMI Driver helper script +# +# Authors: Jan Safranek <jsafrane@redhat.com> +# +# Based on IPMI init script by: +# Matt Domsch <Matt_Domsch@dell.com> +# Chris Poblete <Chris_Poblete@dell.com> +# +# Status return code bits +# no bits set = no errors +# bit 0 set = minimum modules aren't loaded +# bit 1 set = requested feature module isn't loaded +# bit 2 set = /dev/ipmi0 (or /dev/imb if using that instead) doesn't exist +# bit 3 set = /dev/watchdog doesn't exist +# bit 4 set = lockfile doesn't exist +# bit 5 set = modules are loaded even when asked to be unloaded + +CONFIGFILE=/etc/sysconfig/ipmi +# source config info +[ -r ${CONFIGFILE} ] && . ${CONFIGFILE} + +############################################################################# +# GLOBALS +############################################################################# +MODULE_NAME="ipmi" +INTF_NUM=0 + +IPMI_SMB_MODULE_NAME="ipmi_smb" +IPMI_SI_MODULE_NAME="ipmi_si" +kernel=`uname -r | cut -d. -f1-2` +if [ "${kernel}" == "2.4" ]; then + IPMI_SMB_MODULE_NAME="ipmi_smb_intf" + IPMI_SI_MODULE_NAME="ipmi_si_drv" +fi + +MODULES_INTERFACES="" +[ "${DEV_IPMI}" = "yes" ] && MODULES_INTERFACES="${MODULES_INTERFACES} ipmi_devintf" +[ "${IPMI_IMB}" = "yes" ] && MODULES_INTERFACES="${MODULES_INTERFACES} ipmi_imb" + +MODULES_FEATURES="" +[ "${IPMI_WATCHDOG}" = "yes" ] && MODULES_FEATURES="${MODULES_FEATURES} ipmi_watchdog" +[ "${IPMI_POWEROFF}" = "yes" ] && MODULES_FEATURES="${MODULES_FEATURES} ipmi_poweroff" + +MODULES_HW="" +[ "${IPMI_SI}" = "yes" ] && MODULES_HW="${MODULES_HW} ${IPMI_SI_MODULE_NAME}" +[ "${IPMI_SMB}" = "yes" ] && MODULES_HW="${MODULES_HW} ${IPMI_SMB_MODULE_NAME}" + +MODULES_BASE="ipmi_msghandler" +MODULES="${MODULES_INTERFACES} ${MODULES_FEATURES} ${MODULES_HW} ${MODULES_BASE}" + +RETVAL=0 +LOCKFILE=/var/lock/subsys/ipmi +DEV_IPMI_TIMEOUT=150 + +UDEV_EXISTS=0 +if [ -e /sbin/udev -o -e /sbin/udevd ]; then + UDEV_EXISTS=1 +fi + +############################################################################# +# NOTES: +# * /dev/ipmi0 is unconditionally deleted here on ipmi_devintf unload, +# because SLES9 and RHEL4 kernels don't send a message for udev to delete +# it for us. +# +############################################################################# + +modules_loaded_verbose() +{ + OnePlusLoaded=0 + OnePlusUnloaded=0 + for m in $@; do + if /sbin/lsmod | grep $m >/dev/null 2>&1 ; then + echo "$m module loaded." + OnePlusLoaded=1 + else + echo "$m module not loaded." + OnePlusUnloaded=1 + fi + done +} + +modules_loaded() +{ + OnePlusLoaded=0 + OnePlusUnloaded=0 + for m in $@; do + if /sbin/lsmod | grep $m >/dev/null 2>&1 ; then + OnePlusLoaded=1 + else + OnePlusUnloaded=1 + fi + done +} + +device_node_exists () +{ + if [ -e "$1" ]; then + echo "$1 exists." + return 1 + fi + echo "$1 does not exist." + return 0 +} + +minimum_modules_loaded() +{ + rc_base=1 + rc_hw=1 + modules_loaded_verbose "${MODULES_BASE}" + [ ${OnePlusLoaded} -eq 0 ] && rc_base=0 + + modules_loaded_verbose "${MODULES_HW}" + [ ${OnePlusLoaded} -eq 0 ] && rc_hw=0 + + return $((rc_base && rc_hw)) +} + +############################################################################# + +load_si() +{ + if [ "${IPMI_SI}" = "yes" ]; then + modprobe ${IPMI_SI_MODULE_NAME} > /dev/null 2>&1 + modules_loaded ${IPMI_SI_MODULE_NAME} + [ ${OnePlusLoaded} -ne 1 ] && RETVAL=$((RETVAL | 1)) + fi +} + +load_smb() +{ + if [ "${IPMI_SMB}" = "yes" ]; then + modprobe ${IPMI_SMB_MODULE_NAME} > /dev/null 2>&1 + modules_loaded ${IPMI_SMB_MODULE_NAME} + [ ${OnePlusLoaded} -ne 1 ] && RETVAL=$((RETVAL | 1)) + fi +} + +load_hw_modules() +{ + load_si + load_smb +} + +start_watchdog_common() +{ + load_hw_modules + modprobe ipmi_watchdog ${IPMI_WATCHDOG_OPTIONS} > /dev/null 2>&1 + modules_loaded ipmi_watchdog + [ ${OnePlusUnloaded} -ne 0 ] && + RETVAL=$((RETVAL | 2)) && + echo "Watchdog startup failed: cannot load ipmi_watchdog module" && + return + if [ ${UDEV_EXISTS} -eq 0 -a ! -e /dev/watchdog ]; then + mknod -m 0600 /dev/watchdog c 10 130 + [ $? -ne 0 ] && + RETVAL=$((RETVAL | 8)) && + echo "Watchdog startup failed: cannot create /dev/watchdog" && + return + fi +} + +start_watchdog_quiet() +{ + [ "${IPMI_WATCHDOG}" != "yes" ] && + return + start_watchdog_common +} + +start_watchdog() +{ + [ "${IPMI_WATCHDOG}" != "yes" ] && + RETVAL=$((RETVAL | 2)) && + echo "Watchdog not configured" && + return + start_watchdog_common +} + +stop_watchdog() +{ + modprobe -q -r ipmi_watchdog > /dev/null 2>&1 + modules_loaded ipmi_watchdog + if [ ${OnePlusLoaded} -ne 0 ]; then + RETVAL=$((RETVAL | 32)) + echo "Watchog shutdown failed: cannot unload ipmi_watchdog module" + else + if [ "${IPMI_WATCHDOG}" = "yes" ]; then + [ ${UDEV_EXISTS} -eq 0 ] && rm -f /dev/watchdog + fi + fi +} + +stop_watchdog_quiet() +{ + modprobe -q -r ipmi_watchdog > /dev/null 2>&1 + modules_loaded ipmi_watchdog + if [ ${OnePlusLoaded} -ne 0 ]; then + RETVAL=$((RETVAL | 32)) + else + if [ "${IPMI_WATCHDOG}" = "yes" ]; then + [ ${UDEV_EXISTS} -eq 0 ] && rm -f /dev/watchdog + fi + fi +} + +start_powercontrol_common() +{ + local poweroff_opts="" + load_hw_modules + if [ "${IPMI_POWERCYCLE}" == "yes" ]; then + modinfo ipmi_poweroff 2>/dev/null | grep poweroff_control > /dev/null 2>&1 && \ + poweroff_opts="poweroff_control=2" + modinfo ipmi_poweroff 2>/dev/null | grep poweroff_powercycle > /dev/null 2>&1 && \ + poweroff_opts="poweroff_powercycle=1" + fi + modprobe ipmi_poweroff "${poweroff_opts}" > /dev/null 2>&1 + modules_loaded ipmi_poweroff + [ ${OnePlusUnloaded} -ne 0 ] && + RETVAL=$((RETVAL | 2)) && + echo "Powercontroll startup failed: cannot load ipmi_poweroff module" && + return +} + +start_powercontrol_quiet() +{ + [ "${IPMI_POWEROFF}" != "yes" ] && + return + start_powercontrol_common +} + +start_powercontrol() +{ + [ "${IPMI_POWEROFF}" != "yes" ] && + RETVAL=$((RETVAL | 2)) && + echo "Powercontroll not configured" && + return + start_powercontrol_common +} + +stop_powercontrol() +{ + modprobe -q -r ipmi_poweroff > /dev/null 2>&1 + modules_loaded ipmi_poweroff + if [ ${OnePlusLoaded} -ne 0 ]; then + RETVAL=$((RETVAL | 32)) + echo "Powercontroll shutdown failed: cannot unload ipmi_poweroff module" + fi +} + +stop_powercontrol_quiet() +{ + modprobe -q -r ipmi_poweroff > /dev/null 2>&1 + modules_loaded ipmi_poweroff + [ ${OnePlusLoaded} -ne 0 ] && RETVAL=$((RETVAL | 32)) +} + +############################################################################# +unload_all_ipmi_modules() +{ + stop_watchdog_quiet + stop_powercontrol_quiet + for m in ${MODULES}; do + modprobe -q -r ${m} > /dev/null 2>&1 + done + # delete interface node ONLY if ipmi_devintf is unloaded + [ `lsmod | grep -c "ipmi_devintf"` -eq 0 ] && + rm -f "/dev/ipmi${INTF_NUM}" +} + +unload_ipmi_modules_leave_features() +{ + for m in ${MODULES_INTERFACES}; do + modprobe -q -r ${m} > /dev/null 2>&1 + done + # delete interface node ONLY if ipmi_devintf is unloaded + [ `lsmod | grep -c "ipmi_devintf"` -eq 0 ] && + rm -f "/dev/ipmi${INTF_NUM}" + lsmod | egrep -q "ipmi_(poweroff|watchdog)" > /dev/null 2>&1 + if [ "$?" -ne "0" ]; then + stop_watchdog_quiet + stop_powercontrol_quiet + for m in ${MODULES}; do + modprobe -q -r ${m} > /dev/null 2>&1 + done + fi +} + +############################################################################# +load_ipmi_modules () +{ + local locdelay + modprobe ipmi_msghandler > /dev/null 2>&1 + modules_loaded ipmi_msghandler + [ ${OnePlusLoaded} -ne 1 ] && unload_all_ipmi_modules && RETVAL=$((RETVAL | 1)) && return + load_hw_modules + [ $((RETVAL & 1)) -eq 1 ] && unload_all_ipmi_modules && RETVAL=$((RETVAL | 1)) && return + + if [ "${DEV_IPMI}" = "yes" ]; then + modprobe ipmi_devintf > /dev/null 2>&1 + modules_loaded ipmi_devintf + RETVAL=$((RETVAL & ~2)) + [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2)) + if [ ${OnePlusLoaded} -eq 1 ]; then + if [ ${UDEV_EXISTS} -eq 0 ]; then + DEVMAJOR=`cat /proc/devices | awk '/ipmidev/{print $1}'` + rm -f /dev/ipmi${INTF_NUM} + mknod -m 0600 /dev/ipmi${INTF_NUM} c ${DEVMAJOR} 0 || RETVAL=$((RETVAL | 4)) + fi + + # udev can take several seconds to create /dev/ipmi0, + # but it happens asynchronously, so delay here + locdelay=${DEV_IPMI_TIMEOUT} + while [ ! -e /dev/ipmi${INTF_NUM} -a ${locdelay} -gt 0 ]; do + locdelay=$((locdelay - 1)) + sleep 0.1 + done + fi + fi + + if [ "${IPMI_IMB}" = "yes" ]; then + modprobe ipmi_imb > /dev/null 2>&1 + modules_loaded ipmi_imb + RETVAL=$((RETVAL & ~2)) + [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2)) + if [ ${OnePlusLoaded} -eq 1 ]; then + DEVMAJOR=`cat /proc/devices | awk '/imb/{print $1}'` + rm -f /dev/imb + mknod -m 0600 /dev/imb c ${DEVMAJOR} 0 || RETVAL=$((RETVAL | 4)) + fi + fi + + # Per Corey Minyard, essentially no one uses ipmi_radisys + # and we don't want to encourage its further use + # so it won't be handled here. + return +} + +############################################################################# +start() +{ + load_ipmi_modules + if [ ${RETVAL} -eq 0 ]; then + touch ${LOCKFILE} + else + if [ $((RETVAL & 1)) -eq 1 ]; then + echo "Startup failed." + else + touch ${LOCKFILE} && echo "Warning!?" + fi + fi + start_watchdog_quiet + start_powercontrol_quiet +} + +############################################################################# +stop() +{ + unload_ipmi_modules_leave_features + modules_loaded ${MODULES_INTERFACES} + if [ ${OnePlusLoaded} -ne 0 ]; then + RETVAL=$((RETVAL | 32)) + echo "Shutdown failed, something may be in use" + else + rm -f ${LOCKFILE} + fi +} + +stop_all() +{ + unload_all_ipmi_modules + modules_loaded ${MODULES} + if [ ${OnePlusLoaded} -ne 0 ]; then + RETVAL=$((RETVAL | 32)) + echo "Shutdown failed, something may be in use" + else + rm -f ${LOCKFILE} + fi +} + +############################################################################# +restart() +{ + stop_all + RETVAL=0 + start +} + +############################################################################# + +reload() +{ + stop_all + RETVAL=0 + start +} + +############################################################################# + +status_all() +{ + minimum_modules_loaded + [ $? -eq 0 ] && RETVAL=$((RETVAL | 1)) + + modules_loaded_verbose ${MODULES_FEATURES} ${MODULES_INTERFACES} + [ ${OnePlusUnloaded} -ne 0 ] && RETVAL=$((RETVAL | 2)) + + if [ "${DEV_IPMI}" = "yes" ]; then + device_node_exists /dev/ipmi${INTF_NUM} + [ $? -eq 0 ] && RETVAL=$((RETVAL | 4)) + fi + + if [ "${IPMI_IMB}" = "yes" ]; then + device_node_exists /dev/imb + [ $? -eq 0 ] && RETVAL=$((RETVAL | 4)) + fi + + if [ "${IPMI_WATCHDOG}" = "yes" ]; then + device_node_exists /dev/watchdog + [ $? -eq 0 ] && RETVAL=$((RETVAL | 8)) + fi + + [ ! -e ${LOCKFILE} ] && RETVAL=$((RETVAL | 16)) +} + +status() +{ + minimum_modules_loaded + [ $? -eq 0 ] && RETVAL=$((RETVAL | 1)) + + if [ "${DEV_IPMI}" = "yes" ]; then + modules_loaded_verbose ipmi_devintf + [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2)) + + device_node_exists /dev/ipmi${INTF_NUM} + [ $? -eq 0 ] && RETVAL=$((RETVAL | 4)) + fi + + if [ "${IPMI_IMB}" = "yes" ]; then + device_node_exists /dev/imb + [ $? -eq 0 ] && RETVAL=$((RETVAL | 4)) + fi +} + +status_watchdog() +{ + minimum_modules_loaded + [ $? -eq 0 ] && RETVAL=$((RETVAL | 1)) + + modules_loaded_verbose ipmi_watchdog + [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2)) + + device_node_exists /dev/watchdog + [ $? -eq 0 ] && RETVAL=$((RETVAL | 8)) +} + +status_powercontrol() +{ + minimum_modules_loaded + [ $? -eq 0 ] && RETVAL=$((RETVAL | 1)) + + modules_loaded_verbose ipmi_powercontrol + [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2)) +} + +############################################################################# +usage () +{ + echo $"Usage: $0 {start|stop|status" 1>&2 + echo $" restart|condrestart|try-restart|reload|force-reload" 1>&2 + echo $" start-watchdog|stop-watchdog|status-watchdog" 1>&2 + echo $" start-powercontrol|stop-powercontrol|status-powercontrol" 1>&2 + echo $" stop-all|status-all}" 1>&2 + RETVAL=2 +} + +condrestart () +{ + [ -e ${LOCKFILE} ] && restart +} + +############################################################################# +# MAIN +############################################################################# +case "$1" in + start) start ;; + stop) stop ;; + restart) restart ;; + force-reload) reload ;; + reload) reload ;; + status) status ;; + status-all) status_all ;; + condrestart) condrestart ;; + try-restart) condrestart ;; + start-watchdog) start_watchdog ;; + stop-watchdog) stop_watchdog ;; + status-watchdog) status_watchdog ;; + start-powercontrol) start_powercontrol ;; + stop-powercontrol) stop_powercontrol ;; + status-powercontrol) status_powercontrol ;; + stop-all) stop_all ;; + *) usage ;; +esac + +exit ${RETVAL} + +############################################################################# +# end of file +############################################################################# + diff --git a/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch b/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch new file mode 100644 index 0000000000..1fa68f9bac --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch @@ -0,0 +1,26 @@ +Author: Aws Ismail <aws.ismail@windriver.com> +Date: Thu Jun 7 12:28:34 2012 -0400 + + This patch was carried over from WRL4.3 (openipmi v2.0.16) + + It was updated for openipmi v2.0.19 + + Disable making openipmigui man page since we don't need it + + Upstream-Status: Pending + + Signed-off-by: Aws Ismail <aws.ismail@windriver.com> + Signed-off-by: Yi Zhao <yi.zhao@windriver.com> + +diff --git a/man/Makefile.am b/man/Makefile.am +index 632f55b..5ce79f5 100644 +--- a/man/Makefile.am ++++ b/man/Makefile.am +@@ -1,6 +1,6 @@ + + man_MANS = ipmi_ui.1 openipmicmd.1 openipmish.1 ipmi_cmdlang.7 \ +- openipmigui.1 openipmi_conparms.7 solterm.1 rmcp_ping.1 \ ++ openipmi_conparms.7 solterm.1 rmcp_ping.1 \ + openipmi_eventd.1 + + EXTRA_DIST = $(man_MANS) diff --git a/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch b/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch new file mode 100644 index 0000000000..83485a9e60 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch @@ -0,0 +1,50 @@ +From aa0dc0783a6ff5fb56c914b640836223e3c192bb Mon Sep 17 00:00:00 2001 +From: Jackie Huang <jackie.huang@windriver.com> +Date: Mon, 29 Dec 2014 18:16:04 +0800 +Subject: [PATCH] remove host path from la_LDFLAGS + +Upstream-Status: Inappropriate [ cross compile specific ] + +Signed-off-by: Jackie Huang <jackie.huang@windriver.com> +--- + cmdlang/Makefile.am | 2 +- + glib/Makefile.am | 4 ++-- + tcl/Makefile.am | 2 +- + unix/Makefile.am | 4 ++-- + 4 files changed, 6 insertions(+), 6 deletions(-) + +Index: OpenIPMI-2.0.24/cmdlang/Makefile.am +=================================================================== +--- OpenIPMI-2.0.24.orig/cmdlang/Makefile.am ++++ OpenIPMI-2.0.24/cmdlang/Makefile.am +@@ -15,8 +15,7 @@ libOpenIPMIcmdlang_la_SOURCES = cmdlang. + libOpenIPMIcmdlang_la_LIBADD = -lm \ + $(top_builddir)/utils/libOpenIPMIutils.la \ + $(top_builddir)/lib/libOpenIPMI.la +-libOpenIPMIcmdlang_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \ +- -L$(libdir) ++libOpenIPMIcmdlang_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) + + bin_PROGRAMS = openipmish + +Index: OpenIPMI-2.0.24/unix/Makefile.am +=================================================================== +--- OpenIPMI-2.0.24.orig/unix/Makefile.am ++++ OpenIPMI-2.0.24/unix/Makefile.am +@@ -10,14 +10,12 @@ lib_LTLIBRARIES = libOpenIPMIposix.la li + libOpenIPMIpthread_la_SOURCES = posix_thread_os_hnd.c selector.c + libOpenIPMIpthread_la_LIBADD = -lpthread $(GDBM_LIB) \ + $(top_builddir)/utils/libOpenIPMIutils.la $(RT_LIB) +-libOpenIPMIpthread_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \ +- -L$(libdir) ++libOpenIPMIpthread_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) + + libOpenIPMIposix_la_SOURCES = posix_os_hnd.c selector.c + libOpenIPMIposix_la_LIBADD = $(top_builddir)/utils/libOpenIPMIutils.la \ + $(GDBM_LIB) $(RT_LIB) +-libOpenIPMIposix_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \ +- -L$(libdir) ++libOpenIPMIposix_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) + + noinst_HEADERS = heap.h + |