Thread (33 messages) 33 messages, 8 authors, 2019-02-14

Re: [PATCH] KEYS: trusted: fix -Wvarags warning

From: Nick Desaulniers <hidden>
Date: 2018-10-12 18:40:03
Also in: keyrings, linux-integrity, lkml

On Fri, Oct 12, 2018 at 10:27 AM Denis Kenzior [off-list ref] wrote:
Hi Nick,
quoted
quoted
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.
No. This is extremely well defined behavior in C.  In C, integral
types are NEVER promoted to pointer to integer types, only to larger
integral types through rules more complicated than the correct flags
to pass to `tar`.
https://xkcd.com/1168/
Ah right.  Thanks for the correction.  So looks like bool won't work for
the same reasons.  But unsigned int should work right?  But then again
this is a boolean value and if we want to be paranoid we can simply
tweak the 'c = h3' assignment to be something like:

c = !!h3;

So in the end, I'm happy with int or unsigned int.
Thanks for the feedback.  I'll wait wait to see if James is also cool
with that approach, and if so, send a v2 based on the next-keys branch
in the security tree as per Nathan, with yours and his Suggested-by
tags.

-- 
Thanks,
~Nick Desaulniers
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help