Date: Tue, 28 May 2002 18:40:02 +1000 (EST) From: Bruce Evans <bde@zeta.org.au> To: Dima Dorfman <dima@trit.org> Cc: Dag-Erling Smorgrav <des@ofug.org>, <audit@FreeBSD.ORG> Subject: Re: %j for printf(9) Message-ID: <20020528182851.G19885-100000@gamplex.bde.org> In-Reply-To: <20020528001227.E5D3E3E5E@turbine.trit.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 28 May 2002, Dima Dorfman wrote:
> Dag-Erling Smorgrav <des@ofug.org> wrote:
> > Dima Dorfman <dima@trit.org> writes:
> > > I would also like to solicit comments on what to do with %z; C99 says
> > > this is the length modifier for size_t, but the kernel treats it as
> > > signed hex. This patch implements the C99 length modifier as %Z, but
> > > that probably shouldn't stay. IIRC, I couldn't find any place in the
> > > kernel that we actually use %z; can it perhaps be removed?
> >
> > des@des ~% egrep -r '%[^\" dious]+z' /sec/freebsd/current/src/sys
> > /sec/freebsd/current/src/sys/ddb/db_examine.c: db_printf("%-*lz", width, (long)value);
> > /sec/freebsd/current/src/sys/ddb/db_examine.c: db_printf("%8lz", (long)addr);
>
> As far as I can tell, these are just implementing %z for the examine
> command. If we remove %z from printf(9), we can probably remove it
> from ddb examine, too.
I've already said to rename %z. Its functionality can't be removed since
ddb depends on it.
ddb's %n has already been renamed to %r, but not completely removed. This
together with -fformat-extensions not turning off non-extensions that aren't
in the kernel printf() causes bugs if %n is actually used.
Bruce
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-audit" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020528182851.G19885-100000>
