summaryrefslogtreecommitdiffstats
path: root/discover/platform-powerpc.c
diff options
context:
space:
mode:
authorSam Mendoza-Jonas <samjc.mj@gmail.com>2015-12-18 11:28:30 +1100
committerSam Mendoza-Jonas <samjc.mj@gmail.com>2015-12-18 11:28:30 +1100
commit45e9e7a53540e87e2129bb11fd853501131fb795 (patch)
treeba5ac78f859fc937e5e1e4ee98e3596fb4021c7a /discover/platform-powerpc.c
parent0dae90626e54e46372c9feddc2f9ac82f046547d (diff)
parentf5d24f2a0727a23a6a4a888651aea4232aa6e32f (diff)
downloadtalos-petitboot-45e9e7a53540e87e2129bb11fd853501131fb795.tar.gz
talos-petitboot-45e9e7a53540e87e2129bb11fd853501131fb795.zip
Merge pull request #11 from open-power/coverity
Coverity fixes
Diffstat (limited to 'discover/platform-powerpc.c')
-rw-r--r--discover/platform-powerpc.c19
1 files changed, 7 insertions, 12 deletions
diff --git a/discover/platform-powerpc.c b/discover/platform-powerpc.c
index 2807934..7370d7d 100644
--- a/discover/platform-powerpc.c
+++ b/discover/platform-powerpc.c
@@ -179,7 +179,7 @@ static int write_nvram(struct platform_powerpc *platform)
struct process *process;
struct param *param;
const char *argv[6];
- int rc;
+ int rc = 0;
argv[0] = "nvram";
argv[1] = "--update-config";
@@ -438,7 +438,6 @@ static void populate_bootdev_config(struct platform_powerpc *platform,
{
struct autoboot_option *opt, *new = NULL;
char *pos, *end, *old_dev = NULL;
- const char delim = ' ';
unsigned int n_new = 0;
const char *val;
bool conflict;
@@ -469,11 +468,9 @@ static void populate_bootdev_config(struct platform_powerpc *platform,
if (read_bootdev(config, &pos, opt)) {
pb_log("bootdev config is in an unknown format "
- "(expected uuid:... or mac:...)");
+ "(expected uuid:... or mac:...)\n");
talloc_free(opt);
- if (strchr(pos, delim))
- continue;
- return;
+ continue;
}
new = talloc_realloc(config, new, struct autoboot_option,
@@ -759,9 +756,8 @@ static int read_bootdev_sysparam(const char *name, uint8_t *val)
char path[50];
int fd, rc;
- strcpy(path, sysparams_dir);
- assert(strlen(name) < sizeof(path) - strlen(path));
- strcat(path, name);
+ assert(strlen(sysparams_dir) + strlen(name) < sizeof(path));
+ snprintf(path, sizeof(path), "%s%s", sysparams_dir, name);
fd = open(path, O_RDONLY);
if (fd < 0) {
@@ -795,9 +791,8 @@ static int write_bootdev_sysparam(const char *name, uint8_t val)
char path[50];
int fd, rc;
- strcpy(path, sysparams_dir);
- assert(strlen(name) < sizeof(path) - strlen(path));
- strcat(path, name);
+ assert(strlen(sysparams_dir) + strlen(name) < sizeof(path));
+ snprintf(path, sizeof(path), "%s%s", sysparams_dir, name);
fd = open(path, O_WRONLY);
if (fd < 0) {
OpenPOWER on IntegriCloud