Lines Matching refs:optlen
1789 int *optlen, char **kernel_optval) in __cgroup_bpf_run_filter_setsockopt() argument
1804 max_optlen = max_t(int, 16, *optlen); in __cgroup_bpf_run_filter_setsockopt()
1809 ctx.optlen = *optlen; in __cgroup_bpf_run_filter_setsockopt()
1811 if (copy_from_user(ctx.optval, optval, min(*optlen, max_optlen)) != 0) { in __cgroup_bpf_run_filter_setsockopt()
1824 if (ctx.optlen == -1) { in __cgroup_bpf_run_filter_setsockopt()
1827 } else if (ctx.optlen > max_optlen || ctx.optlen < -1) { in __cgroup_bpf_run_filter_setsockopt()
1829 if (*optlen > PAGE_SIZE && ctx.optlen >= 0) { in __cgroup_bpf_run_filter_setsockopt()
1831 ctx.optlen, max_optlen); in __cgroup_bpf_run_filter_setsockopt()
1847 if (ctx.optlen != 0) { in __cgroup_bpf_run_filter_setsockopt()
1848 *optlen = ctx.optlen; in __cgroup_bpf_run_filter_setsockopt()
1856 void *p = kmalloc(ctx.optlen, GFP_USER); in __cgroup_bpf_run_filter_setsockopt()
1862 memcpy(p, ctx.optval, ctx.optlen); in __cgroup_bpf_run_filter_setsockopt()
1879 int __user *optlen, int max_optlen, in __cgroup_bpf_run_filter_getsockopt() argument
1894 ctx.optlen = max_optlen; in __cgroup_bpf_run_filter_getsockopt()
1907 if (get_user(ctx.optlen, optlen)) { in __cgroup_bpf_run_filter_getsockopt()
1912 if (ctx.optlen < 0) { in __cgroup_bpf_run_filter_getsockopt()
1916 orig_optlen = ctx.optlen; in __cgroup_bpf_run_filter_getsockopt()
1919 min(ctx.optlen, max_optlen)) != 0) { in __cgroup_bpf_run_filter_getsockopt()
1933 if (optval && (ctx.optlen > max_optlen || ctx.optlen < 0)) { in __cgroup_bpf_run_filter_getsockopt()
1934 if (orig_optlen > PAGE_SIZE && ctx.optlen >= 0) { in __cgroup_bpf_run_filter_getsockopt()
1936 ctx.optlen, max_optlen); in __cgroup_bpf_run_filter_getsockopt()
1944 if (ctx.optlen != 0) { in __cgroup_bpf_run_filter_getsockopt()
1945 if (optval && copy_to_user(optval, ctx.optval, ctx.optlen)) { in __cgroup_bpf_run_filter_getsockopt()
1949 if (put_user(ctx.optlen, optlen)) { in __cgroup_bpf_run_filter_getsockopt()
1962 int *optlen, int retval) in __cgroup_bpf_run_filter_getsockopt_kern() argument
1969 .optlen = *optlen, in __cgroup_bpf_run_filter_getsockopt_kern()
1971 .optval_end = optval + *optlen, in __cgroup_bpf_run_filter_getsockopt_kern()
1989 if (ctx.optlen > *optlen) in __cgroup_bpf_run_filter_getsockopt_kern()
1994 if (ctx.optlen != 0) in __cgroup_bpf_run_filter_getsockopt_kern()
1995 *optlen = ctx.optlen; in __cgroup_bpf_run_filter_getsockopt_kern()
2362 case offsetof(struct bpf_sockopt, optlen): in cg_sockopt_is_valid_access()
2426 case offsetof(struct bpf_sockopt, optlen): in cg_sockopt_convert_ctx_access()
2428 *insn++ = CG_SOCKOPT_ACCESS_FIELD(BPF_STX_MEM, optlen); in cg_sockopt_convert_ctx_access()
2430 *insn++ = CG_SOCKOPT_ACCESS_FIELD(BPF_LDX_MEM, optlen); in cg_sockopt_convert_ctx_access()