Home
last modified time | relevance | path

Searched refs:fprog (Results 1 – 10 of 10) sorted by relevance

/linux-6.15/drivers/net/team/
H A Dteam_mode_loadbalance.c257 struct sock_fprog_kern *fprog; in __fprog_create() local
262 fprog = kmalloc(sizeof(*fprog), GFP_KERNEL); in __fprog_create()
263 if (!fprog) in __fprog_create()
266 if (!fprog->filter) { in __fprog_create()
267 kfree(fprog); in __fprog_create()
271 *pfprog = fprog; in __fprog_create()
277 kfree(fprog->filter); in __fprog_destroy()
278 kfree(fprog); in __fprog_destroy()
294 err = bpf_prog_create(&fp, fprog); in lb_bpf_func_set()
296 __fprog_destroy(fprog); in lb_bpf_func_set()
[all …]
/linux-6.15/kernel/
H A Dseccomp.c680 if (fprog->len == 0 || fprog->len > BPF_MAXINSNS) in seccomp_prepare_filter()
724 struct sock_fprog fprog; in seccomp_prepare_user_filter() local
732 fprog.len = fprog32.len; in seccomp_prepare_user_filter()
736 if (copy_from_user(&fprog, user_filter, sizeof(fprog))) in seccomp_prepare_user_filter()
757 if (WARN_ON_ONCE(!fprog)) in seccomp_is_const_allow()
769 for (pc = 0; pc < fprog->len; pc++) { in seccomp_is_const_allow()
2201 struct sock_fprog_kern *fprog; in seccomp_get_filter() local
2213 fprog = filter->prog->orig_prog; in seccomp_get_filter()
2214 if (!fprog) { in seccomp_get_filter()
2223 ret = fprog->len; in seccomp_get_filter()
[all …]
/linux-6.15/net/core/
H A Dsock_diag.c79 struct sock_fprog_kern *fprog; in sock_diag_put_filterinfo() local
95 fprog = filter->prog->orig_prog; in sock_diag_put_filterinfo()
96 if (!fprog) in sock_diag_put_filterinfo()
99 flen = bpf_classic_proglen(fprog); in sock_diag_put_filterinfo()
107 memcpy(nla_data(attr), fprog->filter, flen); in sock_diag_put_filterinfo()
H A Dfilter.c1177 if (fprog) { in bpf_release_orig_filter()
1178 kfree(fprog->filter); in bpf_release_orig_filter()
1179 kfree(fprog); in bpf_release_orig_filter()
1384 if (!bpf_check_basics_ok(fprog->filter, fprog->len)) in bpf_prog_create()
1393 fp->len = fprog->len; in bpf_prog_create()
1431 if (!bpf_check_basics_ok(fprog->filter, fprog->len)) in bpf_prog_create_from_user()
1443 fp->len = fprog->len; in bpf_prog_create_from_user()
1509 if (!bpf_check_basics_ok(fprog->filter, fprog->len)) in __get_filter()
11262 if (!fprog) in sk_get_filter()
11265 ret = fprog->len; in sk_get_filter()
[all …]
H A Dsock.c1471 struct sock_fprog fprog; in sk_setsockopt() local
1473 ret = copy_bpf_fprog_from_user(&fprog, optval, optlen); in sk_setsockopt()
1475 ret = sk_attach_filter(&fprog, sk); in sk_setsockopt()
1492 struct sock_fprog fprog; in sk_setsockopt() local
1494 ret = copy_bpf_fprog_from_user(&fprog, optval, optlen); in sk_setsockopt()
1496 ret = sk_reuseport_attach_filter(&fprog, sk); in sk_setsockopt()
/linux-6.15/include/linux/
H A Dfilter.h1056 #define bpf_classic_proglen(fprog) (fprog->len * sizeof(fprog->filter[0])) argument
1106 int bpf_prog_create(struct bpf_prog **pfp, struct sock_fprog_kern *fprog);
1107 int bpf_prog_create_from_user(struct bpf_prog **pfp, struct sock_fprog *fprog,
1111 int sk_attach_filter(struct sock_fprog *fprog, struct sock *sk);
1113 int sk_reuseport_attach_filter(struct sock_fprog *fprog, struct sock *sk);
/linux-6.15/drivers/net/ppp/
H A Dppp_generic.c593 struct sock_fprog_kern fprog; in get_filter() local
601 fprog.len = uprog->len; in get_filter()
602 fprog.filter = memdup_array_user(uprog->filter, in get_filter()
604 if (IS_ERR(fprog.filter)) in get_filter()
605 return ERR_CAST(fprog.filter); in get_filter()
607 err = bpf_prog_create(&res, &fprog); in get_filter()
608 kfree(fprog.filter); in get_filter()
/linux-6.15/drivers/net/
H A Dtun.c195 struct sock_fprog fprog; member
719 err = sk_attach_filter(&tun->fprog, tfile->socket.sk); in tun_attach()
2882 ret = sk_attach_filter(&tun->fprog, tfile->socket.sk); in tun_attach_filter()
3225 if (copy_from_user(&tun->fprog, argp, sizeof(tun->fprog))) in __tun_chr_ioctl()
3245 if (copy_to_user(argp, &tun->fprog, sizeof(tun->fprog))) in __tun_chr_ioctl()
/linux-6.15/net/packet/
H A Daf_packet.c1639 struct sock_fprog fprog; in fanout_set_data_cbpf() local
1645 ret = copy_bpf_fprog_from_user(&fprog, data, len); in fanout_set_data_cbpf()
1649 ret = bpf_prog_create_from_user(&new, &fprog, NULL, false); in fanout_set_data_cbpf()
/linux-6.15/lib/
H A Dtest_bpf.c14843 struct sock_fprog_kern fprog; in generate_filter() local
14848 fprog.filter = fptr; in generate_filter()
14849 fprog.len = flen; in generate_filter()
14851 *err = bpf_prog_create(&fp, &fprog); in generate_filter()
14869 *err, fprog.len); in generate_filter()