Lines Matching refs:fprog

669 static struct seccomp_filter *seccomp_prepare_filter(struct sock_fprog *fprog)  in seccomp_prepare_filter()  argument
680 if (fprog->len == 0 || fprog->len > BPF_MAXINSNS) in seccomp_prepare_filter()
683 BUG_ON(INT_MAX / fprog->len < sizeof(struct sock_filter)); in seccomp_prepare_filter()
701 ret = bpf_prog_create_from_user(&sfilter->prog, fprog, 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()
733 fprog.filter = compat_ptr(fprog32.filter); in seccomp_prepare_user_filter()
736 if (copy_from_user(&fprog, user_filter, sizeof(fprog))) in seccomp_prepare_user_filter()
738 filter = seccomp_prepare_filter(&fprog); in seccomp_prepare_user_filter()
750 static bool seccomp_is_const_allow(struct sock_fprog_kern *fprog, in seccomp_is_const_allow() argument
757 if (WARN_ON_ONCE(!fprog)) in seccomp_is_const_allow()
769 for (pc = 0; pc < fprog->len; pc++) { in seccomp_is_const_allow()
770 struct sock_filter *insn = &fprog->filter[pc]; in seccomp_is_const_allow()
836 struct sock_fprog_kern *fprog = sfilter->prog->orig_prog; in seccomp_cache_prepare_bitmap() local
857 if (seccomp_is_const_allow(fprog, &sd)) in seccomp_cache_prepare_bitmap()
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()
2227 if (copy_to_user(data, fprog->filter, bpf_classic_proglen(fprog))) in seccomp_get_filter()