Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\bpf\verifier.c Create Date:2022-07-28 12:57:56
Last Modify:2022-05-19 20:02:10 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:check_packet_access

Proto:static int check_packet_access(struct bpf_verifier_env *env, u32 regno, int off, int size, bool zero_size_allowed)

Type:int

Parameter:

TypeParameterName
struct bpf_verifier_env *env
u32regno
intoff
intsize
boolzero_size_allowed
2363  regs = cur_regs(env)
2364  reg = regs[regno]
2375  If minimum possible (s64)value < 0 Then
2376  verbose(env, "R%d min value is negative, either use unsigned index or do a if (index >=0) check.\n", regno)
2378  Return -EACCES
2380  err = __check_packet_access(env, regno, off, size, zero_size_allowed)
2381  If err Then
2382  verbose(env, "R%d offset is outside of the packet\n", regno)
2383  Return err
2392  max_pkt_offset = max_t - return maximum of two values, using the specified type*@type: data type to use*@x: first value*@y: second value(u32, max_pkt_offset, off + maximum possible (u64)value + size - 1)
2396  Return err
Caller
NameDescribe
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_helper_mem_access