Adding support for helper function bpf_getsockops to socket_ops BPF programs. This patch only supports TCP_CONGESTION.
Showing the changes to include/uapi/linux (1 of 3 files). Show all
Unified · Split
| @@ -613,12 +613,22 @@ union bpf_attr { · 612 unmodified lines | |||
| 613 | * int bpf_setsockopt(bpf_socket, level, optname, optval, optlen) | 613 | * int bpf_setsockopt(bpf_socket, level, optname, optval, optlen) |
| 614 | * Calls setsockopt. Not all opts are available, only those with | 614 | * Calls setsockopt. Not all opts are available, only those with |
| 615 | * integer optvals plus TCP_CONGESTION. | 615 | * integer optvals plus TCP_CONGESTION. |
| 616 | * Supported levels: SOL_SOCKET and IPROTO_TCP | 616 | * Supported levels: SOL_SOCKET and IPPROTO_TCP |
| 617 | * @bpf_socket: pointer to bpf_socket | 617 | * @bpf_socket: pointer to bpf_socket |
| 618 | * @level: SOL_SOCKET or IPROTO_TCP | 618 | * @level: SOL_SOCKET or IPPROTO_TCP |
| 619 | * @optname: option name | 619 | * @optname: option name |
| 620 | * @optval: pointer to option value | 620 | * @optval: pointer to option value |
| 621 | * @optlen: length of optval in byes | 621 | * @optlen: length of optval in bytes |
| 622 | * Return: 0 or negative error | ||
| 623 | * | ||
| 624 | * int bpf_getsockopt(bpf_socket, level, optname, optval, optlen) | ||
| 625 | * Calls getsockopt. Not all opts are available. | ||
| 626 | * Supported levels: IPPROTO_TCP | ||
| 627 | * @bpf_socket: pointer to bpf_socket | ||
| 628 | * @level: IPPROTO_TCP | ||
| 629 | * @optname: option name | ||
| 630 | * @optval: pointer to option value | ||
| 631 | * @optlen: length of optval in bytes | ||
| 622 | * Return: 0 or negative error | 632 | * Return: 0 or negative error |
| 623 | * | 633 | * |
| 624 | * int bpf_skb_adjust_room(skb, len_diff, mode, flags) | 634 | * int bpf_skb_adjust_room(skb, len_diff, mode, flags) |
| @@ -721,7 +731,8 @@ union bpf_attr { · 96 unmodified lines | |||
| 721 | FN(sock_map_update), \ | 731 | FN(sock_map_update), \ |
| 722 | FN(xdp_adjust_meta), \ | 732 | FN(xdp_adjust_meta), \ |
| 723 | FN(perf_event_read_value), \ | 733 | FN(perf_event_read_value), \ |
| 724 | FN(perf_prog_read_value), | 734 | FN(perf_prog_read_value), \ |
| 735 | FN(getsockopt), | ||
| 725 | 736 | ||
| 726 | /* integer value in 'imm' field of BPF_CALL instruction selects which helper | 737 | /* integer value in 'imm' field of BPF_CALL instruction selects which helper |
| 727 | * function eBPF program intends to call | 738 | * function eBPF program intends to call |