• Andrey Ignatov's avatar
    selftests/bpf: Selftest for sys_sendmsg hooks · 04b6ab73
    Andrey Ignatov authored
    Add selftest for BPF_CGROUP_UDP4_SENDMSG and BPF_CGROUP_UDP6_SENDMSG
    attach types.
    
    Try to sendmsg(2) to specific IP:port and test that:
    * source IP is overridden as expected.
    * remote IP:port pair is overridden as expected;
    
    Both UDPv4 and UDPv6 are tested.
    
    Output:
      # test_sock_addr.sh 2>/dev/null
      Wait for testing IPv4/IPv6 to become available ... OK
      ... pre-existing test-cases skipped ...
      Test case: sendmsg4: load prog with wrong expected attach type .. [PASS]
      Test case: sendmsg4: attach prog with wrong attach type .. [PASS]
      Test case: sendmsg4: rewrite IP & port (asm) .. [PASS]
      Test case: sendmsg4: rewrite IP & port (C) .. [PASS]
      Test case: sendmsg4: deny call .. [PASS]
      Test case: sendmsg6: load prog with wrong expected attach type .. [PASS]
      Test case: sendmsg6: attach prog with wrong attach type .. [PASS]
      Test case: sendmsg6: rewrite IP & port (asm) .. [PASS]
      Test case: sendmsg6: rewrite IP & port (C) .. [PASS]
      Test case: sendmsg6: IPv4-mapped IPv6 .. [PASS]
      Test case: sendmsg6: deny call .. [PASS]
      Summary: 27 PASSED, 0 FAILED
    Signed-off-by: default avatarAndrey Ignatov <rdna@fb.com>
    Acked-by: default avatarAlexei Starovoitov <ast@kernel.org>
    Acked-by: default avatarMartin KaFai Lau <kafai@fb.com>
    Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
    04b6ab73
sendmsg4_prog.c 1.16 KB