From owner-freebsd-audit Mon Sep 3 14:22:15 2001 Delivered-To: freebsd-audit@freebsd.org Received: from rover.village.org (rover.bsdimp.com [204.144.255.66]) by hub.freebsd.org (Postfix) with ESMTP id 33D5C37B40B; Mon, 3 Sep 2001 14:22:12 -0700 (PDT) Received: from harmony.village.org (harmony.village.org [10.0.0.6]) by rover.village.org (8.11.3/8.11.3) with ESMTP id f83LMAX16024; Mon, 3 Sep 2001 15:22:11 -0600 (MDT) (envelope-from imp@harmony.village.org) Received: from harmony.village.org (localhost.village.org [127.0.0.1]) by harmony.village.org (8.11.3/8.11.4) with ESMTP id f83LMAh28309; Mon, 3 Sep 2001 15:22:10 -0600 (MDT) (envelope-from imp@harmony.village.org) Message-Id: <200109032122.f83LMAh28309@harmony.village.org> To: "Brian F. Feldman" Subject: Re: users.c PATCH - please review Cc: Mike Barcroft , David Hill , audit@FreeBSD.ORG In-reply-to: Your message of "Mon, 03 Sep 2001 17:20:50 EDT." <200109032120.f83LKoS53035@green.bikeshed.org> References: <200109032120.f83LKoS53035@green.bikeshed.org> Date: Mon, 03 Sep 2001 15:22:10 -0600 From: Warner Losh Sender: owner-freebsd-audit@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG In message <200109032120.f83LKoS53035@green.bikeshed.org> "Brian F. Feldman" writes: : Warner Losh wrote: : > In message <20010901125802.F85574@coffee.q9media.com> Mike Barcroft writes: : > : David Hill writes: : > : > I have patched users/users.c so that it will compile under WARNS?=2. I have both attached and cut/pasted it to the message. : > : > Please review it. : > : : > : > diff -ru /usr/src/usr.bin/users.orig/users.c /usr/src/usr.bin/users/users.c : > : > --- /usr/src/usr.bin/users.orig/users.c Fri Aug 27 21:07:14 1999 : > : > +++ /usr/src/usr.bin/users/users.c Fri Aug 31 15:58:20 2001 : > : > @@ -117,5 +117,8 @@ : > : > scmp(p, q) : > : > const void *p, *q; : > : > { : > : > - return(strncmp((char *)p, (char *)q, UT_NAMESIZE)); : > : > + const char *const pp1 = p; : > : > + const char *const pp2 = q; : > : > + : > : > + return(strncmp(pp1, pp2, UT_NAMESIZE)); : > : > } : > : : > : Why create new local variables? Just get rid of the bogus casts. : > : > Why not just : > return (strncmp((const char *)p, (const char *)q, UT_NAMESIZE)); : > : > Also, const char *const is wrong. No need for the second const. : : Technically, there's nothing wrong with declaring "a const pointer to a : const character", just casting to that would be very strange (and probably : illegal; not sure). In any case, I'm not sure I see the point of not just : using two (const char *) casts and not increasing the function size other : than adding a blank line and space for style(9). That should remove any : warning about casting away const qualification. That was rather my point. const char *const is wrong because it is too consty, the second const doesn't buy you anything. Warner To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-audit" in the body of the message