函数逻辑报告 |
Source Code:include\linux\bpf_verifier.h |
Create Date:2022-07-27 14:08:23 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:cur_regs
函数原型:static inline struct bpf_reg_state *cur_regs(struct bpf_verifier_env *env)
返回类型:struct bpf_reg_state
参数:
类型 | 参数 | 名称 |
---|---|---|
struct bpf_verifier_env * | env |
418 | 返回:regs |
名称 | 描述 |
---|---|
check_map_access_type | |
__check_map_access | heck read/write into map element returned by bpf_map_lookup_elem() |
__check_packet_access | |
check_packet_access | |
check_sock_access | |
reg_state | |
check_mem_access | heck 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 | |
process_spin_lock | Implementation details:* bpf_map_lookup returns PTR_TO_MAP_VALUE_OR_NULL* Two bpf_map_lookups (even with the same key) will have different reg->id |
check_func_arg | |
record_func_key | |
check_helper_call | |
adjust_scalar_min_max_vals | WARNING: This function does calculations on 64-bit values, but the actual* execution may occur on 32-bit values. Therefore, things like bitshifts* need extra checks in the 32-bit case. |
check_alu_op | heck validity of 32-bit and 64-bit arithmetic operations |
check_ld_imm | verify BPF_LD_IMM64 instruction |
check_ld_abs | verify safety of LD_ABS|LD_IND instructions:* - they can only appear in the programs where ctx == skb* - since they are wrappers of function calls, they scratch R1-R5 registers,* preserve R6-R9, and store return value into R0* Implicit input:* ctx == skb |
check_return_code | |
do_check |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |