函数逻辑报告 |
Source Code:kernel\bpf\verifier.c |
Create Date:2022-07-27 14:11:52 |
| Last Modify:2022-05-19 20:02:10 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:starting from main bpf function walk all instructions of the function* and recursively walk all callees that given function can call
函数原型:static int check_max_stack_depth(struct bpf_verifier_env *env)
返回类型:int
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct bpf_verifier_env * | env |
| 2671 | subprog等于subprog_info |
| 2676 | process_func : |
| 2684 | 返回:负EACCES |
| 2686 | continue_func : |
| 2688 | 以i小于subprog_end循环 |
| 2689 | 如果 opcode 不等于BPF_JMP按位或unction call 的值则继续下一循环 |
| 2691 | 如果 source register 不等于when bpf_call->src_reg == BPF_PSEUDO_CALL, bpf_call->imm == pc-relative* offset to another bpf function则继续下一循环 |
| 2698 | i等于i加 signed immediate constant 加1 |
| 2699 | idx等于find_subprog(env, i) |
| 2700 | 如果idx小于0则 |
| 2705 | frame自加 |
| 2706 | 如果frame大于等于MAX_CALL_FRAMES则 |
| 2711 | 转到:process_func |
| 2716 | 如果frame恒等于0则返回:0 |
| 2719 | frame自减 |
| 2722 | 转到:continue_func |
| 名称 | 描述 |
|---|---|
| bpf_check |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |