Lines Matching refs:optlen
1382 int *optlen, char **kernel_optval) in __cgroup_bpf_run_filter_setsockopt() argument
1404 max_optlen = max_t(int, 16, *optlen); in __cgroup_bpf_run_filter_setsockopt()
1410 ctx.optlen = *optlen; in __cgroup_bpf_run_filter_setsockopt()
1412 if (copy_from_user(ctx.optval, optval, min(*optlen, max_optlen)) != 0) { in __cgroup_bpf_run_filter_setsockopt()
1427 if (ctx.optlen == -1) { in __cgroup_bpf_run_filter_setsockopt()
1430 } else if (ctx.optlen > max_optlen || ctx.optlen < -1) { in __cgroup_bpf_run_filter_setsockopt()
1444 if (ctx.optlen != 0) { in __cgroup_bpf_run_filter_setsockopt()
1445 *optlen = ctx.optlen; in __cgroup_bpf_run_filter_setsockopt()
1453 void *p = kmalloc(ctx.optlen, GFP_USER); in __cgroup_bpf_run_filter_setsockopt()
1459 memcpy(p, ctx.optval, ctx.optlen); in __cgroup_bpf_run_filter_setsockopt()
1476 int __user *optlen, int max_optlen, in __cgroup_bpf_run_filter_getsockopt() argument
1496 ctx.optlen = max_optlen; in __cgroup_bpf_run_filter_getsockopt()
1510 if (get_user(ctx.optlen, optlen)) { in __cgroup_bpf_run_filter_getsockopt()
1515 if (ctx.optlen < 0) { in __cgroup_bpf_run_filter_getsockopt()
1521 min(ctx.optlen, max_optlen)) != 0) { in __cgroup_bpf_run_filter_getsockopt()
1537 if (ctx.optlen > max_optlen || ctx.optlen < 0) { in __cgroup_bpf_run_filter_getsockopt()
1550 if (ctx.optlen != 0) { in __cgroup_bpf_run_filter_getsockopt()
1551 if (copy_to_user(optval, ctx.optval, ctx.optlen) || in __cgroup_bpf_run_filter_getsockopt()
1552 put_user(ctx.optlen, optlen)) { in __cgroup_bpf_run_filter_getsockopt()
1567 int *optlen, int retval) in __cgroup_bpf_run_filter_getsockopt_kern() argument
1575 .optlen = *optlen, in __cgroup_bpf_run_filter_getsockopt_kern()
1577 .optval_end = optval + *optlen, in __cgroup_bpf_run_filter_getsockopt_kern()
1594 if (ctx.optlen > *optlen) in __cgroup_bpf_run_filter_getsockopt_kern()
1605 if (ctx.optlen != 0) in __cgroup_bpf_run_filter_getsockopt_kern()
1606 *optlen = ctx.optlen; in __cgroup_bpf_run_filter_getsockopt_kern()
1951 case offsetof(struct bpf_sockopt, optlen): in cg_sockopt_is_valid_access()
2015 case offsetof(struct bpf_sockopt, optlen): in cg_sockopt_convert_ctx_access()
2017 *insn++ = CG_SOCKOPT_ACCESS_FIELD(BPF_STX_MEM, optlen); in cg_sockopt_convert_ctx_access()
2019 *insn++ = CG_SOCKOPT_ACCESS_FIELD(BPF_LDX_MEM, optlen); in cg_sockopt_convert_ctx_access()