Symbol: sock_ops
include/linux/bpf-cgroup.h
130
struct bpf_sock_ops_kern *sock_ops,
include/linux/bpf-cgroup.h
334
#define BPF_CGROUP_RUN_PROG_SOCK_OPS_SK(sock_ops, sk) \
include/linux/bpf-cgroup.h
339
sock_ops, \
include/linux/bpf-cgroup.h
344
#define BPF_CGROUP_RUN_PROG_SOCK_OPS(sock_ops) \
include/linux/bpf-cgroup.h
347
if (cgroup_bpf_enabled(CGROUP_SOCK_OPS) && (sock_ops)->sk) { \
include/linux/bpf-cgroup.h
348
typeof(sk) __sk = sk_to_full_sk((sock_ops)->sk); \
include/linux/bpf-cgroup.h
351
sock_ops, \
include/linux/bpf-cgroup.h
503
#define BPF_CGROUP_RUN_PROG_SOCK_OPS(sock_ops) ({ 0; })
include/linux/bpf_types.h
29
BPF_PROG_TYPE(BPF_PROG_TYPE_SOCK_OPS, sock_ops,
include/net/tcp.h
2824
struct bpf_sock_ops_kern sock_ops;
include/net/tcp.h
2827
memset(&sock_ops, 0, offsetof(struct bpf_sock_ops_kern, temp));
include/net/tcp.h
2829
sock_ops.is_fullsock = 1;
include/net/tcp.h
2830
sock_ops.is_locked_tcp_sock = 1;
include/net/tcp.h
2834
sock_ops.sk = sk;
include/net/tcp.h
2835
sock_ops.op = op;
include/net/tcp.h
2837
memcpy(sock_ops.args, args, nargs * sizeof(*args));
include/net/tcp.h
2839
ret = BPF_CGROUP_RUN_PROG_SOCK_OPS(&sock_ops);
include/net/tcp.h
2841
ret = sock_ops.reply;
kernel/bpf/cgroup.c
1722
struct bpf_sock_ops_kern *sock_ops,
kernel/bpf/cgroup.c
1727
return bpf_prog_run_array_cg(&cgrp->bpf, atype, sock_ops, bpf_prog_run,
net/core/sock.c
953
struct bpf_sock_ops_kern sock_ops;
net/core/sock.c
955
memset(&sock_ops, 0, offsetof(struct bpf_sock_ops_kern, temp));
net/core/sock.c
956
sock_ops.op = op;
net/core/sock.c
957
sock_ops.is_fullsock = 1;
net/core/sock.c
958
sock_ops.sk = sk;
net/core/sock.c
959
bpf_skops_init_skb(&sock_ops, skb, 0);
net/core/sock.c
960
__cgroup_bpf_run_filter_sock_ops(sk, &sock_ops, CGROUP_SOCK_OPS);
net/ipv4/tcp_input.c
154
struct bpf_sock_ops_kern sock_ops;
net/ipv4/tcp_input.c
172
memset(&sock_ops, 0, offsetof(struct bpf_sock_ops_kern, temp));
net/ipv4/tcp_input.c
173
sock_ops.op = BPF_SOCK_OPS_PARSE_HDR_OPT_CB;
net/ipv4/tcp_input.c
174
sock_ops.is_fullsock = 1;
net/ipv4/tcp_input.c
175
sock_ops.is_locked_tcp_sock = 1;
net/ipv4/tcp_input.c
176
sock_ops.sk = sk;
net/ipv4/tcp_input.c
177
bpf_skops_init_skb(&sock_ops, skb, tcp_hdrlen(skb));
net/ipv4/tcp_input.c
179
BPF_CGROUP_RUN_PROG_SOCK_OPS(&sock_ops);
net/ipv4/tcp_input.c
185
struct bpf_sock_ops_kern sock_ops;
net/ipv4/tcp_input.c
189
memset(&sock_ops, 0, offsetof(struct bpf_sock_ops_kern, temp));
net/ipv4/tcp_input.c
190
sock_ops.op = bpf_op;
net/ipv4/tcp_input.c
191
sock_ops.is_fullsock = 1;
net/ipv4/tcp_input.c
192
sock_ops.is_locked_tcp_sock = 1;
net/ipv4/tcp_input.c
193
sock_ops.sk = sk;
net/ipv4/tcp_input.c
196
bpf_skops_init_skb(&sock_ops, skb, tcp_hdrlen(skb));
net/ipv4/tcp_input.c
198
BPF_CGROUP_RUN_PROG_SOCK_OPS(&sock_ops);
net/ipv4/tcp_output.c
477
struct bpf_sock_ops_kern sock_ops;
net/ipv4/tcp_output.c
488
memset(&sock_ops, 0, offsetof(struct bpf_sock_ops_kern, temp));
net/ipv4/tcp_output.c
490
sock_ops.op = BPF_SOCK_OPS_HDR_OPT_LEN_CB;
net/ipv4/tcp_output.c
506
sock_ops.sk = (struct sock *)req;
net/ipv4/tcp_output.c
507
sock_ops.syn_skb = syn_skb;
net/ipv4/tcp_output.c
511
sock_ops.is_fullsock = 1;
net/ipv4/tcp_output.c
512
sock_ops.is_locked_tcp_sock = 1;
net/ipv4/tcp_output.c
513
sock_ops.sk = sk;
net/ipv4/tcp_output.c
516
sock_ops.args[0] = bpf_skops_write_hdr_opt_arg0(skb, synack_type);
net/ipv4/tcp_output.c
517
sock_ops.remaining_opt_len = *remaining;
net/ipv4/tcp_output.c
520
bpf_skops_init_skb(&sock_ops, skb, 0);
net/ipv4/tcp_output.c
522
err = BPF_CGROUP_RUN_PROG_SOCK_OPS_SK(&sock_ops, sk);
net/ipv4/tcp_output.c
524
if (err || sock_ops.remaining_opt_len == *remaining)
net/ipv4/tcp_output.c
527
opts->bpf_opt_len = *remaining - sock_ops.remaining_opt_len;
net/ipv4/tcp_output.c
541
struct bpf_sock_ops_kern sock_ops;
net/ipv4/tcp_output.c
547
memset(&sock_ops, 0, offsetof(struct bpf_sock_ops_kern, temp));
net/ipv4/tcp_output.c
549
sock_ops.op = BPF_SOCK_OPS_WRITE_HDR_OPT_CB;
net/ipv4/tcp_output.c
552
sock_ops.sk = (struct sock *)req;
net/ipv4/tcp_output.c
553
sock_ops.syn_skb = syn_skb;
net/ipv4/tcp_output.c
557
sock_ops.is_fullsock = 1;
net/ipv4/tcp_output.c
558
sock_ops.is_locked_tcp_sock = 1;
net/ipv4/tcp_output.c
559
sock_ops.sk = sk;
net/ipv4/tcp_output.c
562
sock_ops.args[0] = bpf_skops_write_hdr_opt_arg0(skb, synack_type);
net/ipv4/tcp_output.c
563
sock_ops.remaining_opt_len = max_opt_len;
net/ipv4/tcp_output.c
565
bpf_skops_init_skb(&sock_ops, skb, first_opt_off);
net/ipv4/tcp_output.c
567
err = BPF_CGROUP_RUN_PROG_SOCK_OPS_SK(&sock_ops, sk);
net/ipv4/tcp_output.c
572
nr_written = max_opt_len - sock_ops.remaining_opt_len;
tools/testing/selftests/bpf/cgroup_getset_retval_hooks.h
6
BPF_RETVAL_HOOK(sock_ops, "sockops", bpf_sock_ops, -EINVAL)
tools/testing/selftests/bpf/prog_tests/sock_addr.c
315
struct sock_ops user_ops = {
tools/testing/selftests/bpf/prog_tests/sock_addr.c
326
struct sock_ops kern_ops_sock_sendmsg = {
tools/testing/selftests/bpf/prog_tests/sock_addr.c
337
struct sock_ops kern_ops_kernel_sendmsg = {
tools/testing/selftests/bpf/prog_tests/sock_addr.c
356
struct sock_ops *ops;