Home
last modified time | relevance | path

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

/linux-4.4.14/kernel/
Dseccomp.c346 static struct seccomp_filter *seccomp_prepare_filter(struct sock_fprog *fprog) in seccomp_prepare_filter() argument
352 if (fprog->len == 0 || fprog->len > BPF_MAXINSNS) in seccomp_prepare_filter()
355 BUG_ON(INT_MAX / fprog->len < sizeof(struct sock_filter)); in seccomp_prepare_filter()
373 ret = bpf_prog_create_from_user(&sfilter->prog, fprog, in seccomp_prepare_filter()
394 struct sock_fprog fprog; in seccomp_prepare_user_filter() local
402 fprog.len = fprog32.len; in seccomp_prepare_user_filter()
403 fprog.filter = compat_ptr(fprog32.filter); in seccomp_prepare_user_filter()
406 if (copy_from_user(&fprog, user_filter, sizeof(fprog))) in seccomp_prepare_user_filter()
408 filter = seccomp_prepare_filter(&fprog); in seccomp_prepare_user_filter()
877 struct sock_fprog_kern *fprog; in seccomp_get_filter() local
[all …]
/linux-4.4.14/drivers/net/team/
Dteam_mode_loadbalance.c247 struct sock_fprog_kern *fprog; in __fprog_create() local
252 fprog = kmalloc(sizeof(*fprog), GFP_KERNEL); in __fprog_create()
253 if (!fprog) in __fprog_create()
255 fprog->filter = kmemdup(filter, data_len, GFP_KERNEL); in __fprog_create()
256 if (!fprog->filter) { in __fprog_create()
257 kfree(fprog); in __fprog_create()
260 fprog->len = data_len / sizeof(struct sock_filter); in __fprog_create()
261 *pfprog = fprog; in __fprog_create()
265 static void __fprog_destroy(struct sock_fprog_kern *fprog) in __fprog_destroy() argument
267 kfree(fprog->filter); in __fprog_destroy()
[all …]
/linux-4.4.14/net/core/
Dfilter.c837 const struct sock_fprog *fprog) in bpf_prog_store_orig_filter() argument
839 unsigned int fsize = bpf_classic_proglen(fprog); in bpf_prog_store_orig_filter()
847 fkprog->len = fprog->len; in bpf_prog_store_orig_filter()
861 struct sock_fprog_kern *fprog = fp->orig_prog; in bpf_release_orig_filter() local
863 if (fprog) { in bpf_release_orig_filter()
864 kfree(fprog->filter); in bpf_release_orig_filter()
865 kfree(fprog); in bpf_release_orig_filter()
1048 int bpf_prog_create(struct bpf_prog **pfp, struct sock_fprog_kern *fprog) in bpf_prog_create() argument
1050 unsigned int fsize = bpf_classic_proglen(fprog); in bpf_prog_create()
1054 if (fprog->filter == NULL) in bpf_prog_create()
[all …]
Dsock_diag.c78 struct sock_fprog_kern *fprog; in sock_diag_put_filterinfo() local
94 fprog = filter->prog->orig_prog; in sock_diag_put_filterinfo()
95 if (!fprog) in sock_diag_put_filterinfo()
98 flen = bpf_classic_proglen(fprog); in sock_diag_put_filterinfo()
106 memcpy(nla_data(attr), fprog->filter, flen); in sock_diag_put_filterinfo()
Dsock.c912 struct sock_fprog fprog; in sock_setsockopt() local
915 if (copy_from_user(&fprog, optval, sizeof(fprog))) in sock_setsockopt()
918 ret = sk_attach_filter(&fprog, sk); in sock_setsockopt()
/linux-4.4.14/include/linux/
Dfilter.h402 #define bpf_classic_proglen(fprog) (fprog->len * sizeof(fprog->filter[0])) argument
443 int bpf_prog_create(struct bpf_prog **pfp, struct sock_fprog_kern *fprog);
444 int bpf_prog_create_from_user(struct bpf_prog **pfp, struct sock_fprog *fprog,
448 int sk_attach_filter(struct sock_fprog *fprog, struct sock *sk);
449 int __sk_attach_filter(struct sock_fprog *fprog, struct sock *sk,
/linux-4.4.14/drivers/isdn/i4l/
Disdn_ppp.c635 struct sock_fprog_kern fprog; in isdn_ppp_ioctl() local
642 fprog.len = len; in isdn_ppp_ioctl()
643 fprog.filter = code; in isdn_ppp_ioctl()
649 if (fprog.filter != NULL) in isdn_ppp_ioctl()
650 err = bpf_prog_create(&is->pass_filter, &fprog); in isdn_ppp_ioctl()
659 struct sock_fprog_kern fprog; in isdn_ppp_ioctl() local
666 fprog.len = len; in isdn_ppp_ioctl()
667 fprog.filter = code; in isdn_ppp_ioctl()
673 if (fprog.filter != NULL) in isdn_ppp_ioctl()
674 err = bpf_prog_create(&is->active_filter, &fprog); in isdn_ppp_ioctl()
/linux-4.4.14/drivers/net/
Dtun.c193 struct sock_fprog fprog; member
626 err = __sk_attach_filter(&tun->fprog, tfile->socket.sk, in tun_attach()
1821 ret = __sk_attach_filter(&tun->fprog, tfile->socket.sk, in tun_attach_filter()
2119 if (copy_from_user(&tun->fprog, argp, sizeof(tun->fprog))) in __tun_chr_ioctl()
2139 if (copy_to_user(argp, &tun->fprog, sizeof(tun->fprog))) in __tun_chr_ioctl()
/linux-4.4.14/drivers/net/ppp/
Dppp_generic.c766 struct sock_fprog_kern fprog = { in ppp_ioctl() local
772 if (fprog.filter) in ppp_ioctl()
773 err = bpf_prog_create(&pass_filter, &fprog); in ppp_ioctl()
792 struct sock_fprog_kern fprog = { in ppp_ioctl() local
798 if (fprog.filter) in ppp_ioctl()
799 err = bpf_prog_create(&active_filter, &fprog); in ppp_ioctl()
/linux-4.4.14/lib/
Dtest_bpf.c5238 struct sock_fprog_kern fprog; in generate_filter() local
5243 fprog.filter = fptr; in generate_filter()
5244 fprog.len = flen; in generate_filter()
5246 *err = bpf_prog_create(&fp, &fprog); in generate_filter()
5265 *err, fprog.len); in generate_filter()
/linux-4.4.14/net/packet/
Daf_packet.c1560 struct sock_fprog fprog; in fanout_set_data_cbpf() local
1565 if (len != sizeof(fprog)) in fanout_set_data_cbpf()
1567 if (copy_from_user(&fprog, data, len)) in fanout_set_data_cbpf()
1570 ret = bpf_prog_create_from_user(&new, &fprog, NULL, false); in fanout_set_data_cbpf()