Lines Matching refs:max_optlen

1371 static int sockopt_alloc_buf(struct bpf_sockopt_kern *ctx, int max_optlen,  in sockopt_alloc_buf()  argument
1374 if (unlikely(max_optlen < 0)) in sockopt_alloc_buf()
1377 if (unlikely(max_optlen > PAGE_SIZE)) { in sockopt_alloc_buf()
1381 max_optlen = PAGE_SIZE; in sockopt_alloc_buf()
1384 if (max_optlen <= sizeof(buf->data)) { in sockopt_alloc_buf()
1389 ctx->optval_end = ctx->optval + max_optlen; in sockopt_alloc_buf()
1390 return max_optlen; in sockopt_alloc_buf()
1393 ctx->optval = kzalloc(max_optlen, GFP_USER); in sockopt_alloc_buf()
1397 ctx->optval_end = ctx->optval + max_optlen; in sockopt_alloc_buf()
1399 return max_optlen; in sockopt_alloc_buf()
1427 int ret, max_optlen; in __cgroup_bpf_run_filter_setsockopt() local
1440 max_optlen = max_t(int, 16, *optlen); in __cgroup_bpf_run_filter_setsockopt()
1442 max_optlen = sockopt_alloc_buf(&ctx, max_optlen, &buf); in __cgroup_bpf_run_filter_setsockopt()
1443 if (max_optlen < 0) in __cgroup_bpf_run_filter_setsockopt()
1444 return max_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()
1466 } else if (ctx.optlen > max_optlen || ctx.optlen < -1) { 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()
1534 max_optlen = sockopt_alloc_buf(&ctx, max_optlen, &buf); in __cgroup_bpf_run_filter_getsockopt()
1535 if (max_optlen < 0) in __cgroup_bpf_run_filter_getsockopt()
1536 return max_optlen; 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()