mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-24 14:54:49 +08:00
bpf: sk_msg, add tests for size field
This adds tests to read the size field to test_verifier. Signed-off-by: John Fastabend <john.fastabend@gmail.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
This commit is contained in:
parent
584e46813e
commit
945a47d87c
@ -1843,10 +1843,20 @@ static struct bpf_test tests[] = {
|
|||||||
.prog_type = BPF_PROG_TYPE_SK_SKB,
|
.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 = {
|
.insns = {
|
||||||
BPF_LDX_MEM(BPF_DW, BPF_REG_2, BPF_REG_1,
|
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(),
|
BPF_EXIT_INSN(),
|
||||||
},
|
},
|
||||||
.errstr = "invalid bpf_context access",
|
.errstr = "invalid bpf_context access",
|
||||||
@ -1857,7 +1867,7 @@ static struct bpf_test tests[] = {
|
|||||||
"invalid read past end of SK_MSG",
|
"invalid read past end of SK_MSG",
|
||||||
.insns = {
|
.insns = {
|
||||||
BPF_LDX_MEM(BPF_W, BPF_REG_2, BPF_REG_1,
|
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(),
|
BPF_EXIT_INSN(),
|
||||||
},
|
},
|
||||||
.errstr = "R0 !read_ok",
|
.errstr = "R0 !read_ok",
|
||||||
|
Loading…
Reference in New Issue
Block a user