Date: Tue, 30 Mar 2010 10:40:08 GMT From: Ruslan Ermilov <ru@FreeBSD.org> To: freebsd-bugs@FreeBSD.org Subject: Re: bin/144644: [patch] Fix *alloc cornercases with config(1) Message-ID: <201003301040.o2UAe8bv009059@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR bin/144644; it has been noted by GNATS. From: Ruslan Ermilov <ru@FreeBSD.org> To: Garrett Cooper <gcooper@FreeBSD.org> Cc: bug-followup@FreeBSD.org Subject: Re: bin/144644: [patch] Fix *alloc cornercases with config(1) Date: Tue, 30 Mar 2010 14:34:26 +0400 On Sun, Mar 21, 2010 at 04:58:18AM -0700, Garrett Cooper wrote: > On Sat, Mar 13, 2010 at 12:36 AM, Garrett Cooper <gcooper@freebsd.org> wrote: > > On Fri, Mar 12, 2010 at 11:28 PM, Garrett Cooper <yanegomi@gmail.com> wrote: > >> The attached patch addresses the non-style(9) conformity with my > >> previous patch as pointed out by several folks on current@. > > > > Sorry -- missed a spot... > > The following patch incorporates a logical change from errx(3) to > err(3) made by ru@ in an informal review. I also picked up a few other > logical messages that were originally errx(EXIT_ERR, ...) and > converted them to err(EXIT_ERR, ...) in a similar fashion. Part of the changes are invalid (shouldn't have been converted from errx() to err()). : Index: main.c : =================================================================== : --- main.c (revision 205872) : +++ main.c (working copy) : @@ -120,7 +120,7 @@ : if (*destdir == '\0') : strlcpy(destdir, optarg, sizeof(destdir)); : else : - errx(2, "directory already set"); : + err(EXIT_FAILURE, "directory already set"); : break; : case 'g': : debugging++; : @@ -175,7 +175,7 @@ : if (mkdir(p, 0777)) : err(2, "%s", p); : } else if (!S_ISDIR(buf.st_mode)) : - errx(2, "%s isn't a directory", p); : + err(EXIT_FAILURE, "%s isn't a directory", p); : : SLIST_INIT(&cputype); : SLIST_INIT(&mkopt); : @@ -519,7 +519,7 @@ : */ : p = strstr(kernconfstr, KERNCONFTAG); : if (p == NULL) : - errx(EXIT_FAILURE, "Something went terribly wrong!"); : + err(EXIT_FAILURE, "Something went terribly wrong!"); : *p = '\0'; : fprintf(fo, "%s", kernconfstr); : fprintf(fo, "%s", sbuf_data(sb)); : @@ -671,19 +673,19 @@ : [...] : if (S_ISDIR(st.st_mode)) : - errx(EXIT_FAILURE, "'%s' is a directory", file); : + err(EXIT_FAILURE, "'%s' is a directory", file); : fp = fdopen(r, "r"); : [...] : pp = popen(cmd, "r"); : if (pp == NULL) : - errx(EXIT_FAILURE, "popen() failed"); : + err(EXIT_FAILURE, "popen() failed"); This is questionable; see the popen(3) manpage for details, section ERRORS. : Index: lang.l : =================================================================== : --- lang.l (revision 205872) : +++ lang.l (working copy) : @@ -31,6 +31,7 @@ : * $FreeBSD$ : */ : : +#include <err.h> Misplaced include. : #include <assert.h> : #include <ctype.h> : #include <string.h> Cheers, -- Ruslan Ermilov ru@FreeBSD.org FreeBSD committer
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201003301040.o2UAe8bv009059>