swrap: add basic support for fd-passing via SCM_RIGHTS
[socket_wrapper.git] / tests / CMakeLists.txt
index 829c2431066359188698b30c2537499b22e38ead..db36bf35321b96e7b375d3a80890956ed96454f2 100644 (file)
@@ -61,7 +61,7 @@ set(SWRAP_TESTS
     ${SWRAP_THREADED_TESTS})
 
 if (HAVE_STRUCT_MSGHDR_MSG_CONTROL)
-    set(SWRAP_TESTS ${SWRAP_TESTS} test_sendmsg_recvmsg_fd)
+    set(SWRAP_TESTS ${SWRAP_TESTS} test_sendmsg_recvmsg_fd test_echo_tcp_sendmsg_recvmsg_fd)
 endif (HAVE_STRUCT_MSGHDR_MSG_CONTROL)
 
 function(ADD_CMOCKA_TEST_ENVIRONMENT _TEST_NAME)
@@ -92,6 +92,15 @@ function(ADD_CMOCKA_TEST_ENVIRONMENT _TEST_NAME)
         set(TORTURE_ENVIRONMENT "LD_PRELOAD=${_TMP_ENV}")
     endif()
 
+    if (CMAKE_BUILD_TYPE)
+        string(TOLOWER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_LOWER)
+        if (CMAKE_BUILD_TYPE_LOWER STREQUAL "addresssanitizer" OR
+            CMAKE_BUILD_TYPE_LOWER STREQUAL "threadsanitizer" OR
+            CMAKE_BUILD_TYPE_LOWER STREQUAL "undefinedsanitizer")
+            list(APPEND TORTURE_ENVIRONMENT "SOCKET_WRAPPER_DISABLE_DEEPBIND=1")
+        endif()
+    endif()
+
     set_property(TEST
                     ${_TEST_NAME}
                 PROPERTY
@@ -107,18 +116,6 @@ foreach(_SWRAP_TEST ${SWRAP_TESTS})
     add_cmocka_test_environment(${_SWRAP_TEST})
 endforeach()
 
-# These test will fail on because there is a threading race condition in
-# FreeBSD.
-# See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=231848
-if (FREEBSD)
-    set_tests_properties(test_thread_echo_tcp_connect
-                         PROPERTIES DISABLED TRUE)
-    set_tests_properties(test_thread_echo_tcp_write_read
-                         PROPERTIES DISABLED TRUE)
-    set_tests_properties(test_thread_echo_tcp_sendmsg_recvmsg
-                         PROPERTIES DISABLED TRUE)
-endif()
-
 if (HELGRIND_TESTING)
     find_program(VALGRIND_EXECUTABLE valgrind)
     if (VALGRIND_EXECUTABLE)
@@ -139,7 +136,7 @@ if (HELGRIND_TESTING)
                     TEST
                         ${_HELGRIND_TEST}
                     PROPERTY
-                        ENVIRONMENT LD_PRELOAD=${SOCKET_WRAPPER_LOCATION})
+                        ENVIRONMENT LD_PRELOAD=${SOCKET_WRAPPER_LOCATION} SOCKET_WRAPPER_DISABLE_DEEPBIND=1)
             endif()
         endforeach()
     endif()