From: John Fastabend Subject: [PATCH bpf-next 3/3] bpf: sk_msg, add tests for size field Date: Sun, 16 Dec 2018 15:47:06 -0800 Message-ID: <1545004026-5127-4-git-send-email-john.fastabend@gmail.com> References: <1545004026-5127-1-git-send-email-john.fastabend@gmail.com> Cc: netdev@vger.kernel.org, john.fastabend@gmail.com To: daniel@iogearbox.net, ast@kernel.org Return-path: Received: from mail-io1-f68.google.com ([209.85.166.68]:33556 "EHLO mail-io1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731249AbeLPXrg (ORCPT ); Sun, 16 Dec 2018 18:47:36 -0500 Received: by mail-io1-f68.google.com with SMTP id t24so8710585ioi.0 for ; Sun, 16 Dec 2018 15:47:35 -0800 (PST) In-Reply-To: <1545004026-5127-1-git-send-email-john.fastabend@gmail.com> Sender: netdev-owner@vger.kernel.org List-ID: This adds tests to read the size field to test_verifier. Signed-off-by: John Fastabend --- tools/testing/selftests/bpf/test_verifier.c | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/tools/testing/selftests/bpf/test_verifier.c b/tools/testing/selftests/bpf/test_verifier.c index 537a8f9..65ea2fa 100644 --- a/tools/testing/selftests/bpf/test_verifier.c +++ b/tools/testing/selftests/bpf/test_verifier.c @@ -1792,10 +1792,20 @@ static struct bpf_test tests[] = { .prog_type = BPF_PROG_TYPE_SK_SKB, }, { - "invalid 64B read of family in SK_MSG", + "valid access size in SK_MSG", + .insns = { + BPF_LDX_MEM(BPF_W, BPF_REG_0, BPF_REG_1, + offsetof(struct sk_msg_md, size)), + BPF_EXIT_INSN(), + }, + .result = ACCEPT, + .prog_type = BPF_PROG_TYPE_SK_MSG, + }, + { + "invalid 64B read of size in SK_MSG", .insns = { BPF_LDX_MEM(BPF_DW, BPF_REG_2, BPF_REG_1, - offsetof(struct sk_msg_md, family)), + offsetof(struct sk_msg_md, size)), BPF_EXIT_INSN(), }, .errstr = "invalid bpf_context access", @@ -1806,7 +1816,7 @@ static struct bpf_test tests[] = { "invalid read past end of SK_MSG", .insns = { BPF_LDX_MEM(BPF_W, BPF_REG_2, BPF_REG_1, - offsetof(struct sk_msg_md, local_port) + 4), + offsetof(struct sk_msg_md, size) + 4), BPF_EXIT_INSN(), }, .errstr = "R0 !read_ok", -- 2.7.4