Update sockmap_listen to accommodate the recent change in sockmap that
rejects unbound UDP sockets.

TCP: Reject unbound and bound (unless established or listening).
UDP: Accept only bound sockets.

Signed-off-by: Michal Luczaj <[email protected]>
---
 tools/testing/selftests/bpf/prog_tests/sockmap_listen.c | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/sockmap_listen.c 
b/tools/testing/selftests/bpf/prog_tests/sockmap_listen.c
index cc0c68bab907..6ee1bc6b3b23 100644
--- a/tools/testing/selftests/bpf/prog_tests/sockmap_listen.c
+++ b/tools/testing/selftests/bpf/prog_tests/sockmap_listen.c
@@ -63,11 +63,8 @@ static void test_insert_opened(struct test_sockmap_listen 
*skel __always_unused,
        errno = 0;
        value = s;
        err = bpf_map_update_elem(mapfd, &key, &value, BPF_NOEXIST);
-       if (sotype == SOCK_STREAM) {
-               if (!err || errno != EOPNOTSUPP)
-                       FAIL_ERRNO("map_update: expected EOPNOTSUPP");
-       } else if (err)
-               FAIL_ERRNO("map_update: expected success");
+       if (!err || errno != EOPNOTSUPP)
+               FAIL_ERRNO("map_update: expected EOPNOTSUPP");
        xclose(s);
 }
 
@@ -93,8 +90,12 @@ static void test_insert_bound(struct test_sockmap_listen 
*skel __always_unused,
        errno = 0;
        value = s;
        err = bpf_map_update_elem(mapfd, &key, &value, BPF_NOEXIST);
-       if (!err || errno != EOPNOTSUPP)
-               FAIL_ERRNO("map_update: expected EOPNOTSUPP");
+       if (sotype == SOCK_STREAM) {
+               if (!err || errno != EOPNOTSUPP)
+                       FAIL_ERRNO("map_update: expected EOPNOTSUPP");
+       } else if (err) {
+               FAIL_ERRNO("map_update: expected success");
+       }
 close:
        xclose(s);
 }
@@ -1289,7 +1290,7 @@ static void test_ops(struct test_sockmap_listen *skel, 
struct bpf_map *map,
                /* insert */
                TEST(test_insert_invalid),
                TEST(test_insert_opened),
-               TEST(test_insert_bound, SOCK_STREAM),
+               TEST(test_insert_bound),
                TEST(test_insert),
                /* delete */
                TEST(test_delete_after_insert),

-- 
2.54.0


Reply via email to