bpf: Fix bpf_strncmp proto.
authorAlexei Starovoitov <ast@kernel.org>
Mon, 13 Mar 2023 23:58:43 +0000 (16:58 -0700)
committerMartin KaFai Lau <martin.lau@kernel.org>
Tue, 14 Mar 2023 06:08:21 +0000 (23:08 -0700)
bpf_strncmp() doesn't write into its first argument.
Make sure that the verifier knows about it.

Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: David Vernet <void@manifault.com>
Link: https://lore.kernel.org/r/20230313235845.61029-2-alexei.starovoitov@gmail.com
Signed-off-by: Martin KaFai Lau <martin.lau@kernel.org>
kernel/bpf/helpers.c

index 77d64b6..f753676 100644 (file)
@@ -571,7 +571,7 @@ static const struct bpf_func_proto bpf_strncmp_proto = {
        .func           = bpf_strncmp,
        .gpl_only       = false,
        .ret_type       = RET_INTEGER,
-       .arg1_type      = ARG_PTR_TO_MEM,
+       .arg1_type      = ARG_PTR_TO_MEM | MEM_RDONLY,
        .arg2_type      = ARG_CONST_SIZE,
        .arg3_type      = ARG_PTR_TO_CONST_STR,
 };