• Andrey Ignatov's avatar
    selftests/bpf: Test for get_socket_cookie · 194db0d9
    Andrey Ignatov authored
    Add test to use get_socket_cookie() from BPF programs of types
    BPF_PROG_TYPE_SOCK_OPS and BPF_PROG_TYPE_CGROUP_SOCK_ADDR.
    
    The test attaches two programs to cgroup, runs TCP server and client in
    the cgroup and checks that two operations are done properly on client
    socket when user calls connect(2):
    
    1. In BPF_CGROUP_INET6_CONNECT socket cookie is used as the key to write
       new value in a map for client socket.
    
    2. In BPF_CGROUP_SOCK_OPS (BPF_SOCK_OPS_TCP_CONNECT_CB callback) the
       value written in "1." is found by socket cookie, since it's the same
       socket, and updated.
    
    Finally the test verifies the value in the map.
    Signed-off-by: default avatarAndrey Ignatov <rdna@fb.com>
    Acked-by: default avatarYonghong Song <yhs@fb.com>
    Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
    194db0d9
socket_cookie_prog.c 1.23 KB