Lines Matching refs:optlen
1418 int *optlen, char **kernel_optval) in __cgroup_bpf_run_filter_setsockopt() argument
1440 max_optlen = max_t(int, 16, *optlen); in __cgroup_bpf_run_filter_setsockopt()
1446 ctx.optlen = *optlen; in __cgroup_bpf_run_filter_setsockopt()
1448 if (copy_from_user(ctx.optval, optval, min(*optlen, max_optlen)) != 0) { in __cgroup_bpf_run_filter_setsockopt()
1463 if (ctx.optlen == -1) { in __cgroup_bpf_run_filter_setsockopt()
1466 } else if (ctx.optlen > max_optlen || ctx.optlen < -1) { in __cgroup_bpf_run_filter_setsockopt()
1480 if (ctx.optlen != 0) { in __cgroup_bpf_run_filter_setsockopt()
1481 *optlen = ctx.optlen; in __cgroup_bpf_run_filter_setsockopt()
1489 void *p = kmalloc(ctx.optlen, GFP_USER); in __cgroup_bpf_run_filter_setsockopt()
1495 memcpy(p, ctx.optval, ctx.optlen); in __cgroup_bpf_run_filter_setsockopt()
1512 int __user *optlen, int max_optlen, in __cgroup_bpf_run_filter_getsockopt() argument
1532 ctx.optlen = max_optlen; in __cgroup_bpf_run_filter_getsockopt()
1546 if (get_user(ctx.optlen, optlen)) { in __cgroup_bpf_run_filter_getsockopt()
1551 if (ctx.optlen < 0) { in __cgroup_bpf_run_filter_getsockopt()
1557 min(ctx.optlen, max_optlen)) != 0) { in __cgroup_bpf_run_filter_getsockopt()
1573 if (ctx.optlen > max_optlen || ctx.optlen < 0) { in __cgroup_bpf_run_filter_getsockopt()
1586 if (ctx.optlen != 0) { in __cgroup_bpf_run_filter_getsockopt()
1587 if (copy_to_user(optval, ctx.optval, ctx.optlen) || in __cgroup_bpf_run_filter_getsockopt()
1588 put_user(ctx.optlen, optlen)) { in __cgroup_bpf_run_filter_getsockopt()
1603 int *optlen, int retval) in __cgroup_bpf_run_filter_getsockopt_kern() argument
1611 .optlen = *optlen, in __cgroup_bpf_run_filter_getsockopt_kern()
1613 .optval_end = optval + *optlen, in __cgroup_bpf_run_filter_getsockopt_kern()
1630 if (ctx.optlen > *optlen) in __cgroup_bpf_run_filter_getsockopt_kern()
1641 if (ctx.optlen != 0) in __cgroup_bpf_run_filter_getsockopt_kern()
1642 *optlen = ctx.optlen; in __cgroup_bpf_run_filter_getsockopt_kern()
1989 case offsetof(struct bpf_sockopt, optlen): in cg_sockopt_is_valid_access()
2053 case offsetof(struct bpf_sockopt, optlen): in cg_sockopt_convert_ctx_access()
2055 *insn++ = CG_SOCKOPT_ACCESS_FIELD(BPF_STX_MEM, optlen); in cg_sockopt_convert_ctx_access()
2057 *insn++ = CG_SOCKOPT_ACCESS_FIELD(BPF_LDX_MEM, optlen); in cg_sockopt_convert_ctx_access()