Re: [PATCH] scripts/clang-tools: Remove DeprecatedOrUnsafeBufferHandling check

From: Nick Desaulniers
Date: Wed Aug 17 2022 - 19:40:20 EST


On Thu, Aug 4, 2022 at 10:46 AM Guru Das Srinagesh
<quic_gurus@xxxxxxxxxxx> wrote:
>
> This `clang-analyzer` check flags the use of memset(), suggesting a more
> secure version of the API, such as memset_s(), which does not exist in
> the kernel:
>
> warning: Call to function 'memset' is insecure as it does not provide
> security checks introduced in the C11 standard. Replace with analogous
> functions that support length arguments or provides boundary checks such
> as 'memset_s' in case of C11
> [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
>
> Signed-off-by: Guru Das Srinagesh <quic_gurus@xxxxxxxxxxx>
> ---
> scripts/clang-tools/run-clang-tools.py | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/scripts/clang-tools/run-clang-tools.py b/scripts/clang-tools/run-clang-tools.py
> index f754415a..1337ced 100755
> --- a/scripts/clang-tools/run-clang-tools.py
> +++ b/scripts/clang-tools/run-clang-tools.py
> @@ -51,6 +51,7 @@ def run_analysis(entry):
> checks += "linuxkernel-*"
> else:
> checks += "clang-analyzer-*"
> + checks += ",-clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling"

Thanks for the patch! I think it makes sense to add this. I suspect
the list of checks we might want to disable may grow. Maybe when it
does, we could put these in an array and join them at the end.

Anyways, LGTM
Reviewed-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>

Masahiro, would you mind picking this up for us, please?

> p = subprocess.run(["clang-tidy", "-p", args.path, checks, entry["file"]],
> stdout=subprocess.PIPE,
> stderr=subprocess.STDOUT,
> --
> 2.7.4
>


--
Thanks,
~Nick Desaulniers