Commit a8deba85 authored by Liu Jian's avatar Liu Jian Committed by Daniel Borkmann
Browse files

bpftool: Add sock_release help info for cgroup attach/prog load command



The help information was not added at the time when the function got added.
Fix this and add the missing information to its cli, documentation and bash
completion.

Fixes: db94cc0b ("bpftool: Add support for BPF_CGROUP_INET_SOCK_RELEASE")
Signed-off-by: default avatarLiu Jian <liujian56@huawei.com>
Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
Reviewed-by: default avatarQuentin Monnet <quentin@isovalent.com>
Link: https://lore.kernel.org/bpf/20210525014139.323859-1-liujian56@huawei.com
parent 84316ca4
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -30,7 +30,8 @@ CGROUP COMMANDS
|	*ATTACH_TYPE* := { **ingress** | **egress** | **sock_create** | **sock_ops** | **device** |
|		**bind4** | **bind6** | **post_bind4** | **post_bind6** | **connect4** | **connect6** |
|               **getpeername4** | **getpeername6** | **getsockname4** | **getsockname6** | **sendmsg4** |
|               **sendmsg6** | **recvmsg4** | **recvmsg6** | **sysctl** | **getsockopt** | **setsockopt** }
|               **sendmsg6** | **recvmsg4** | **recvmsg6** | **sysctl** | **getsockopt** | **setsockopt** |
|               **sock_release** }
|	*ATTACH_FLAGS* := { **multi** | **override** }

DESCRIPTION
@@ -106,6 +107,7 @@ DESCRIPTION
		  **getpeername6** call to getpeername(2) for an inet6 socket (since 5.8);
		  **getsockname4** call to getsockname(2) for an inet4 socket (since 5.8);
		  **getsockname6** call to getsockname(2) for an inet6 socket (since 5.8).
		  **sock_release** closing an userspace inet socket (since 5.9).

	**bpftool cgroup detach** *CGROUP* *ATTACH_TYPE* *PROG*
		  Detach *PROG* from the cgroup *CGROUP* and attach type
+1 −1
Original line number Diff line number Diff line
@@ -44,7 +44,7 @@ PROG COMMANDS
|		**cgroup/connect4** | **cgroup/connect6** | **cgroup/getpeername4** | **cgroup/getpeername6** |
|               **cgroup/getsockname4** | **cgroup/getsockname6** | **cgroup/sendmsg4** | **cgroup/sendmsg6** |
|		**cgroup/recvmsg4** | **cgroup/recvmsg6** | **cgroup/sysctl** |
|		**cgroup/getsockopt** | **cgroup/setsockopt** |
|		**cgroup/getsockopt** | **cgroup/setsockopt** | **cgroup/sock_release** |
|		**struct_ops** | **fentry** | **fexit** | **freplace** | **sk_lookup**
|	}
|       *ATTACH_TYPE* := {
+3 −3
Original line number Diff line number Diff line
@@ -478,7 +478,7 @@ _bpftool()
                                cgroup/recvmsg4 cgroup/recvmsg6 \
                                cgroup/post_bind4 cgroup/post_bind6 \
                                cgroup/sysctl cgroup/getsockopt \
                                cgroup/setsockopt struct_ops \
                                cgroup/setsockopt cgroup/sock_release struct_ops \
                                fentry fexit freplace sk_lookup" -- \
                                                   "$cur" ) )
                            return 0
@@ -1021,7 +1021,7 @@ _bpftool()
                        device bind4 bind6 post_bind4 post_bind6 connect4 connect6 \
                        getpeername4 getpeername6 getsockname4 getsockname6 \
                        sendmsg4 sendmsg6 recvmsg4 recvmsg6 sysctl getsockopt \
                        setsockopt'
                        setsockopt sock_release'
                    local ATTACH_FLAGS='multi override'
                    local PROG_TYPE='id pinned tag name'
                    case $prev in
@@ -1032,7 +1032,7 @@ _bpftool()
                        ingress|egress|sock_create|sock_ops|device|bind4|bind6|\
                        post_bind4|post_bind6|connect4|connect6|getpeername4|\
                        getpeername6|getsockname4|getsockname6|sendmsg4|sendmsg6|\
                        recvmsg4|recvmsg6|sysctl|getsockopt|setsockopt)
                        recvmsg4|recvmsg6|sysctl|getsockopt|setsockopt|sock_release)
                            COMPREPLY=( $( compgen -W "$PROG_TYPE" -- \
                                "$cur" ) )
                            return 0
+2 −1
Original line number Diff line number Diff line
@@ -28,7 +28,8 @@
	"                        connect6 | getpeername4 | getpeername6 |\n"   \
	"                        getsockname4 | getsockname6 | sendmsg4 |\n"   \
	"                        sendmsg6 | recvmsg4 | recvmsg6 |\n"           \
	"                        sysctl | getsockopt | setsockopt }"
	"                        sysctl | getsockopt | setsockopt |\n"	       \
	"                        sock_release }"

static unsigned int query_flags;

+1 −1
Original line number Diff line number Diff line
@@ -2138,7 +2138,7 @@ static int do_help(int argc, char **argv)
		"                 cgroup/getpeername4 | cgroup/getpeername6 |\n"
		"                 cgroup/getsockname4 | cgroup/getsockname6 | cgroup/sendmsg4 |\n"
		"                 cgroup/sendmsg6 | cgroup/recvmsg4 | cgroup/recvmsg6 |\n"
		"                 cgroup/getsockopt | cgroup/setsockopt |\n"
		"                 cgroup/getsockopt | cgroup/setsockopt | cgroup/sock_release |\n"
		"                 struct_ops | fentry | fexit | freplace | sk_lookup }\n"
		"       ATTACH_TYPE := { msg_verdict | stream_verdict | stream_parser |\n"
		"                        flow_dissector }\n"