Lines Matching refs:sock_ops
474 struct bpf_sock_ops_kern sock_ops; in bpf_skops_hdr_opt_len() local
485 memset(&sock_ops, 0, offsetof(struct bpf_sock_ops_kern, temp)); in bpf_skops_hdr_opt_len()
487 sock_ops.op = BPF_SOCK_OPS_HDR_OPT_LEN_CB; in bpf_skops_hdr_opt_len()
503 sock_ops.sk = (struct sock *)req; in bpf_skops_hdr_opt_len()
504 sock_ops.syn_skb = syn_skb; in bpf_skops_hdr_opt_len()
508 sock_ops.is_fullsock = 1; in bpf_skops_hdr_opt_len()
509 sock_ops.sk = sk; in bpf_skops_hdr_opt_len()
512 sock_ops.args[0] = bpf_skops_write_hdr_opt_arg0(skb, synack_type); in bpf_skops_hdr_opt_len()
513 sock_ops.remaining_opt_len = *remaining; in bpf_skops_hdr_opt_len()
516 bpf_skops_init_skb(&sock_ops, skb, 0); in bpf_skops_hdr_opt_len()
518 err = BPF_CGROUP_RUN_PROG_SOCK_OPS_SK(&sock_ops, sk); in bpf_skops_hdr_opt_len()
520 if (err || sock_ops.remaining_opt_len == *remaining) in bpf_skops_hdr_opt_len()
523 opts->bpf_opt_len = *remaining - sock_ops.remaining_opt_len; in bpf_skops_hdr_opt_len()
537 struct bpf_sock_ops_kern sock_ops; in bpf_skops_write_hdr_opt() local
543 memset(&sock_ops, 0, offsetof(struct bpf_sock_ops_kern, temp)); in bpf_skops_write_hdr_opt()
545 sock_ops.op = BPF_SOCK_OPS_WRITE_HDR_OPT_CB; in bpf_skops_write_hdr_opt()
548 sock_ops.sk = (struct sock *)req; in bpf_skops_write_hdr_opt()
549 sock_ops.syn_skb = syn_skb; in bpf_skops_write_hdr_opt()
553 sock_ops.is_fullsock = 1; in bpf_skops_write_hdr_opt()
554 sock_ops.sk = sk; in bpf_skops_write_hdr_opt()
557 sock_ops.args[0] = bpf_skops_write_hdr_opt_arg0(skb, synack_type); in bpf_skops_write_hdr_opt()
558 sock_ops.remaining_opt_len = max_opt_len; in bpf_skops_write_hdr_opt()
560 bpf_skops_init_skb(&sock_ops, skb, first_opt_off); in bpf_skops_write_hdr_opt()
562 err = BPF_CGROUP_RUN_PROG_SOCK_OPS_SK(&sock_ops, sk); in bpf_skops_write_hdr_opt()
567 nr_written = max_opt_len - sock_ops.remaining_opt_len; in bpf_skops_write_hdr_opt()