函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\bpf\syscall.c Create Date:2022-07-27 14:06:43
Last Modify:2022-05-19 18:06:12 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:bpf_prog_attach

函数原型:static int bpf_prog_attach(const union bpf_attr *attr)

返回类型:int

参数:

类型参数名称
const union bpf_attr *attr
2054  如果非操作权限检查则返回:负EPERM
2057  如果helper macro to check that unused fields 'union bpf_attr' are zero (BPF_PROG_ATTACH)则返回:负EINVAL
2060  如果attach_flags按位与BPF_F_ATTACH_MASK的反则返回:负EINVAL
2064  :attach_type恒等于BPF_CGROUP_INET_INGRESS
2065  :attach_type恒等于BPF_CGROUP_INET_EGRESS
2066  ptype等于BPF_PROG_TYPE_CGROUP_SKB
2067  退出
2068  :attach_type恒等于BPF_CGROUP_INET_SOCK_CREATE
2069  :attach_type恒等于BPF_CGROUP_INET4_POST_BIND
2070  :attach_type恒等于BPF_CGROUP_INET6_POST_BIND
2071  ptype等于BPF_PROG_TYPE_CGROUP_SOCK
2072  退出
2073  :attach_type恒等于BPF_CGROUP_INET4_BIND
2074  :attach_type恒等于BPF_CGROUP_INET6_BIND
2075  :attach_type恒等于BPF_CGROUP_INET4_CONNECT
2076  :attach_type恒等于BPF_CGROUP_INET6_CONNECT
2077  :attach_type恒等于BPF_CGROUP_UDP4_SENDMSG
2078  :attach_type恒等于BPF_CGROUP_UDP6_SENDMSG
2079  :attach_type恒等于BPF_CGROUP_UDP4_RECVMSG
2080  :attach_type恒等于BPF_CGROUP_UDP6_RECVMSG
2081  ptype等于BPF_PROG_TYPE_CGROUP_SOCK_ADDR
2082  退出
2083  :attach_type恒等于BPF_CGROUP_SOCK_OPS
2084  ptype等于BPF_PROG_TYPE_SOCK_OPS
2085  退出
2086  :attach_type恒等于BPF_CGROUP_DEVICE
2087  ptype等于BPF_PROG_TYPE_CGROUP_DEVICE
2088  退出
2089  :attach_type恒等于BPF_SK_MSG_VERDICT
2090  ptype等于BPF_PROG_TYPE_SK_MSG
2091  退出
2092  :attach_type恒等于BPF_SK_SKB_STREAM_PARSER
2093  :attach_type恒等于BPF_SK_SKB_STREAM_VERDICT
2094  ptype等于BPF_PROG_TYPE_SK_SKB
2095  退出
2096  :attach_type恒等于BPF_LIRC_MODE2
2097  ptype等于BPF_PROG_TYPE_LIRC_MODE2
2098  退出
2099  :attach_type恒等于BPF_FLOW_DISSECTOR
2100  ptype等于BPF_PROG_TYPE_FLOW_DISSECTOR
2101  退出
2102  :attach_type恒等于BPF_CGROUP_SYSCTL
2103  ptype等于BPF_PROG_TYPE_CGROUP_SYSCTL
2104  退出
2105  :attach_type恒等于BPF_CGROUP_GETSOCKOPT
2106  :attach_type恒等于BPF_CGROUP_SETSOCKOPT
2107  ptype等于BPF_PROG_TYPE_CGROUP_SOCKOPT
2108  退出
2109  默认
2110  返回:负EINVAL
2113  prog等于bpf_prog_get_type( eBPF program to attach , ptype)
2114  如果是错误则返回:错误
2117  如果bpf_prog_attach_check_attach_type(prog, attach_type)则
2118  bpf_prog_put(prog)
2119  返回:负EINVAL
2123  :ptype恒等于BPF_PROG_TYPE_SK_SKB
2124  :ptype恒等于BPF_PROG_TYPE_SK_MSG
2126  退出
2128  ret等于lirc_prog_attach(attr, prog)
2129  退出
2132  退出
2133  默认
2137  如果retbpf_prog_put(prog)
2139  返回:ret