[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1539357759.2656.7.camel@linux.ibm.com>
Date: Fri, 12 Oct 2018 08:22:39 -0700
From: James Bottomley <jejb@...ux.ibm.com>
To: Denis Kenzior <denkenz@...il.com>, ndesaulniers@...gle.com,
dhowells@...hat.com
Cc: natechancellor@...il.com, ebiggers@...gle.com,
Mimi Zohar <zohar@...ux.vnet.ibm.com>,
James Morris <jmorris@...ei.org>,
"Serge E. Hallyn" <serge@...lyn.com>,
linux-integrity@...r.kernel.org, keyrings@...r.kernel.org,
linux-security-module@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] KEYS: trusted: fix -Wvarags warning
On Fri, 2018-10-12 at 10:13 -0500, Denis Kenzior wrote:
> Hi James,
>
> > > So can't we simply use 'bool' or uint32 as the type for h3
> > > instead of re-ordering everything
> >
> > The problem is the standard is ambiguious. The only thing that's
> > guaranteed to work for all time is a char *. If you want to keep
> > the order, what I'd suggest is inserting a dummy pointer argument
> > which is always expected to be NULL between the h3 and the varargs.
>
> So maybe I'm misunderstanding something, but the issue seems to be
> that unsigned char is promoted to 'unsigned char *' by Clang and
> probably unsigned int or int by gcc.
>
> So instead of having unsigned char h3, can't we simply have bool h3
> or unsigned int h3?
Given the ambiguity in the standards, the safe thing that will work for
all time and all potential compilers is a char *
James
Powered by blists - more mailing lists