函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\bpf\verifier.c Create Date:2022-07-27 14:11:27
Last Modify:2022-05-19 20:02:10 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:may_access_direct_pkt_data

函数原型:static bool may_access_direct_pkt_data(struct bpf_verifier_env *env, const struct bpf_call_arg_meta *meta, enum bpf_access_type t)

返回类型:bool

参数:

类型参数名称
struct bpf_verifier_env *env
const struct bpf_call_arg_meta *meta
enum bpf_access_typet
2311  : Type of BPF program 恒等于BPF_PROG_TYPE_LWT_IN
2312  : Type of BPF program 恒等于BPF_PROG_TYPE_LWT_OUT
2313  : Type of BPF program 恒等于BPF_PROG_TYPE_LWT_SEG6LOCAL
2314  : Type of BPF program 恒等于BPF_PROG_TYPE_SK_REUSEPORT
2315  : Type of BPF program 恒等于BPF_PROG_TYPE_FLOW_DISSECTOR
2316  : Type of BPF program 恒等于BPF_PROG_TYPE_CGROUP_SKB
2317  如果t恒等于BPF_WRITE则返回:false
2322  : Type of BPF program 恒等于BPF_PROG_TYPE_SCHED_CLS
2323  : Type of BPF program 恒等于BPF_PROG_TYPE_SCHED_ACT
2324  : Type of BPF program 恒等于BPF_PROG_TYPE_XDP
2325  : Type of BPF program 恒等于BPF_PROG_TYPE_LWT_XMIT
2326  : Type of BPF program 恒等于BPF_PROG_TYPE_SK_SKB
2327  : Type of BPF program 恒等于BPF_PROG_TYPE_SK_MSG
2328  如果meta则返回:pkt_access
2331  seen_direct_write = true
2332  返回:true
2334  : Type of BPF program 恒等于BPF_PROG_TYPE_CGROUP_SOCKOPT
2335  如果t恒等于BPF_WRITEseen_direct_write = true
2338  返回:true
2340  默认
2341  返回:false
调用者
名称描述
check_mem_accessheck whether memory at (regno + off) is accessible for t = (read | write)* if t==write, value_regno is a register which value is stored into memory* if t==read, value_regno is a register which will receive the value from memory* if t==write &&
check_func_arg