MFC r205880 by ru:
- Handle calloc() allocation failures. - Fixed a comment. - 2 -> EXIT_FAILURE in some places. - errx() -> err() where appropriate. PR: 144644 Submitted by: Garrett Cooper Also fix endinclude() prototype to avoid compiler warning.
This commit is contained in:
parent
9b7228a41e
commit
3d28eb4488
@ -166,6 +166,8 @@ Config_spec:
|
||||
CPU Save_id {
|
||||
struct cputype *cp =
|
||||
(struct cputype *)calloc(1, sizeof (struct cputype));
|
||||
if (cp == NULL)
|
||||
err(EXIT_FAILURE, "calloc");
|
||||
cp->cpu_name = $2;
|
||||
SLIST_INSERT_HEAD(&cputype, cp, cpu_next);
|
||||
} |
|
||||
@ -197,6 +199,8 @@ Config_spec:
|
||||
struct hint *hint;
|
||||
|
||||
hint = (struct hint *)calloc(1, sizeof (struct hint));
|
||||
if (hint == NULL)
|
||||
err(EXIT_FAILURE, "calloc");
|
||||
hint->hint_name = $2;
|
||||
STAILQ_INSERT_TAIL(&hints, hint, hint_next);
|
||||
hintmode = 1;
|
||||
@ -331,6 +335,8 @@ newfile(char *name)
|
||||
struct files_name *nl;
|
||||
|
||||
nl = (struct files_name *) calloc(1, sizeof *nl);
|
||||
if (nl == NULL)
|
||||
err(EXIT_FAILURE, "calloc");
|
||||
nl->f_name = name;
|
||||
STAILQ_INSERT_TAIL(&fntab, nl, f_next);
|
||||
}
|
||||
@ -364,6 +370,8 @@ newdev(char *name)
|
||||
}
|
||||
|
||||
np = (struct device *) calloc(1, sizeof *np);
|
||||
if (np == NULL)
|
||||
err(EXIT_FAILURE, "calloc");
|
||||
np->d_name = name;
|
||||
STAILQ_INSERT_TAIL(&dtab, np, d_next);
|
||||
}
|
||||
@ -422,6 +430,8 @@ newopt(struct opt_head *list, char *name, char *value, int append)
|
||||
}
|
||||
|
||||
op = (struct opt *)calloc(1, sizeof (struct opt));
|
||||
if (op == NULL)
|
||||
err(EXIT_FAILURE, "calloc");
|
||||
op->op_name = name;
|
||||
op->op_ownfile = 0;
|
||||
op->op_value = value;
|
||||
|
@ -33,6 +33,7 @@
|
||||
|
||||
#include <assert.h>
|
||||
#include <ctype.h>
|
||||
#include <err.h>
|
||||
#include <string.h>
|
||||
#include "y.tab.h"
|
||||
#include "config.h"
|
||||
@ -220,6 +221,8 @@ cfgfile_add(const char *fname)
|
||||
struct cfgfile *cf;
|
||||
|
||||
cf = calloc(1, sizeof(*cf));
|
||||
if (cf == NULL)
|
||||
err(EXIT_FAILURE, "calloc");
|
||||
assert(cf != NULL);
|
||||
asprintf(&cf->cfg_path, "%s", fname);
|
||||
STAILQ_INSERT_TAIL(&cfgfiles, cf, cfg_next);
|
||||
@ -285,7 +288,7 @@ include(const char *fname, int ateof)
|
||||
* Terminate the most recent inclusion.
|
||||
*/
|
||||
static int
|
||||
endinclude()
|
||||
endinclude(void)
|
||||
{
|
||||
struct incl *in;
|
||||
int ateof;
|
||||
|
@ -120,7 +120,7 @@ main(int argc, char **argv)
|
||||
if (*destdir == '\0')
|
||||
strlcpy(destdir, optarg, sizeof(destdir));
|
||||
else
|
||||
errx(2, "directory already set");
|
||||
errx(EXIT_FAILURE, "directory already set");
|
||||
break;
|
||||
case 'g':
|
||||
debugging++;
|
||||
@ -175,7 +175,7 @@ main(int argc, char **argv)
|
||||
if (mkdir(p, 0777))
|
||||
err(2, "%s", p);
|
||||
} else if (!S_ISDIR(buf.st_mode))
|
||||
errx(2, "%s isn't a directory", p);
|
||||
errx(EXIT_FAILURE, "%s isn't a directory", p);
|
||||
|
||||
SLIST_INIT(&cputype);
|
||||
SLIST_INIT(&mkopt);
|
||||
@ -256,7 +256,7 @@ get_srcdir(void)
|
||||
int i;
|
||||
|
||||
if (realpath("../..", srcdir) == NULL)
|
||||
errx(2, "Unable to find root of source tree");
|
||||
err(EXIT_FAILURE, "Unable to find root of source tree");
|
||||
if ((pwd = getenv("PWD")) != NULL && *pwd == '/' &&
|
||||
(pwd = strdup(pwd)) != NULL) {
|
||||
/* Remove the last two path components. */
|
||||
@ -513,7 +513,7 @@ configfile(void)
|
||||
}
|
||||
sbuf_finish(sb);
|
||||
/*
|
||||
* We print first part of the tamplate, replace our tag with
|
||||
* We print first part of the template, replace our tag with
|
||||
* configuration files content and later continue writing our
|
||||
* template.
|
||||
*/
|
||||
@ -650,6 +650,8 @@ remember(const char *file)
|
||||
}
|
||||
}
|
||||
hl = calloc(1, sizeof(*hl));
|
||||
if (hl == NULL)
|
||||
err(EXIT_FAILURE, "calloc");
|
||||
hl->h_name = s;
|
||||
hl->h_next = htab;
|
||||
htab = hl;
|
||||
@ -671,19 +673,19 @@ kernconfdump(const char *file)
|
||||
|
||||
r = open(file, O_RDONLY);
|
||||
if (r == -1)
|
||||
errx(EXIT_FAILURE, "Couldn't open file '%s'", file);
|
||||
err(EXIT_FAILURE, "Couldn't open file '%s'", file);
|
||||
error = fstat(r, &st);
|
||||
if (error == -1)
|
||||
errx(EXIT_FAILURE, "fstat() failed");
|
||||
err(EXIT_FAILURE, "fstat() failed");
|
||||
if (S_ISDIR(st.st_mode))
|
||||
errx(EXIT_FAILURE, "'%s' is a directory", file);
|
||||
fp = fdopen(r, "r");
|
||||
if (fp == NULL)
|
||||
errx(EXIT_FAILURE, "fdopen() failed");
|
||||
err(EXIT_FAILURE, "fdopen() failed");
|
||||
osz = 1024;
|
||||
o = calloc(1, osz);
|
||||
if (o == NULL)
|
||||
errx(EXIT_FAILURE, "Couldn't allocate memory");
|
||||
err(EXIT_FAILURE, "Couldn't allocate memory");
|
||||
/* ELF note section header. */
|
||||
asprintf(&cmd, "/usr/bin/elfdump -c %s | grep -A 5 kern_conf"
|
||||
"| tail -2 | cut -d ' ' -f 2 | paste - - -", file);
|
||||
@ -703,7 +705,7 @@ kernconfdump(const char *file)
|
||||
"INCLUDE_CONFIG_FILE", file);
|
||||
r = fseek(fp, off, SEEK_CUR);
|
||||
if (r != 0)
|
||||
errx(EXIT_FAILURE, "fseek() failed");
|
||||
err(EXIT_FAILURE, "fseek() failed");
|
||||
for (i = 0; i < size - 1; i++) {
|
||||
r = fgetc(fp);
|
||||
if (r == EOF)
|
||||
|
@ -98,6 +98,8 @@ new_fent(void)
|
||||
struct file_list *fp;
|
||||
|
||||
fp = (struct file_list *) calloc(1, sizeof *fp);
|
||||
if (fp == NULL)
|
||||
err(EXIT_FAILURE, "calloc");
|
||||
STAILQ_INSERT_TAIL(&ftab, fp, f_next);
|
||||
return (fp);
|
||||
}
|
||||
|
@ -70,6 +70,8 @@ options(void)
|
||||
/* Fake the cpu types as options. */
|
||||
SLIST_FOREACH(cp, &cputype, cpu_next) {
|
||||
op = (struct opt *)calloc(1, sizeof(*op));
|
||||
if (op == NULL)
|
||||
err(EXIT_FAILURE, "calloc");
|
||||
op->op_name = ns(cp->cpu_name);
|
||||
SLIST_INSERT_HEAD(&opt, op, op_next);
|
||||
}
|
||||
@ -84,6 +86,8 @@ options(void)
|
||||
|
||||
/* Fake MAXUSERS as an option. */
|
||||
op = (struct opt *)calloc(1, sizeof(*op));
|
||||
if (op == NULL)
|
||||
err(EXIT_FAILURE, "calloc");
|
||||
op->op_name = ns("MAXUSERS");
|
||||
snprintf(buf, sizeof(buf), "%d", maxusers);
|
||||
op->op_value = ns(buf);
|
||||
@ -199,6 +203,8 @@ do_option(char *name)
|
||||
tidy++;
|
||||
} else {
|
||||
op = (struct opt *) calloc(1, sizeof *op);
|
||||
if (op == NULL)
|
||||
err(EXIT_FAILURE, "calloc");
|
||||
op->op_name = inw;
|
||||
op->op_value = invalue;
|
||||
SLIST_INSERT_HEAD(&op_head, op, op_next);
|
||||
@ -225,6 +231,8 @@ do_option(char *name)
|
||||
if (value && !seen) {
|
||||
/* New option appears */
|
||||
op = (struct opt *) calloc(1, sizeof *op);
|
||||
if (op == NULL)
|
||||
err(EXIT_FAILURE, "calloc");
|
||||
op->op_name = ns(name);
|
||||
op->op_value = value ? ns(value) : NULL;
|
||||
SLIST_INSERT_HEAD(&op_head, op, op_next);
|
||||
@ -336,6 +344,8 @@ next:
|
||||
}
|
||||
|
||||
po = (struct opt_list *) calloc(1, sizeof *po);
|
||||
if (po == NULL)
|
||||
err(EXIT_FAILURE, "calloc");
|
||||
po->o_name = this;
|
||||
po->o_file = val;
|
||||
SLIST_INSERT_HEAD(&otab, po, o_next);
|
||||
|
Loading…
x
Reference in New Issue
Block a user