[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CANiq72nYuWJDESJKOzgtarM5QeGVe3DVik3HZyOEXUdNK8QfeA@mail.gmail.com>
Date: Fri, 4 Feb 2022 02:07:40 +0100
From: Miguel Ojeda <miguel.ojeda.sandonis@...il.com>
To: Kees Cook <keescook@...omium.org>
Cc: Nick Desaulniers <ndesaulniers@...gle.com>,
Miguel Ojeda <ojeda@...nel.org>,
Nathan Chancellor <nathan@...nel.org>, llvm@...ts.linux.dev,
George Burgess IV <gbiv@...gle.com>,
linux-kernel <linux-kernel@...r.kernel.org>,
linux-hardening@...r.kernel.org
Subject: Re: [PATCH v6 2/4] Compiler Attributes: Add __overloadable for Clang
On Thu, Feb 3, 2022 at 10:04 PM Kees Cook <keescook@...omium.org> wrote:
>
> That might be an issue, but the *real* issue is the implicit mutation of
> the function into an inline with _additional_ arguments. i.e.
>
> char *strcpy(char * POS p, const char * POS q)
>
> is really
>
> char *strcpy(char * const p, const char * const q, size_t __size_of_p, size_t __size_of_q)
Shouldn't that be
char *strcpy(char * const p, size_t __size_of_p, const char * const
q, size_t __size_of_q)
? i.e. the docs point at this but say:
"...and implicitly pass the result of this call in as an invisible
argument of type `size_t` directly after the parameter annotated with
`pass_object_size`."
Cheers,
Miguel
Powered by blists - more mailing lists