xref: /aosp_15_r20/external/libpcap/testprogs/fuzz/CMakeLists.txt (revision 8b26181f966a6af5cf6981a6f474313de533bb28)
1*8b26181fSAndroid Build Coastguard Workeradd_executable(fuzz_pcap onefile.c fuzz_pcap.c)
2*8b26181fSAndroid Build Coastguard Workertarget_link_libraries(fuzz_pcap ${ARGN} ${LIBRARY_NAME}_static ${PCAP_LINK_LIBRARIES})
3*8b26181fSAndroid Build Coastguard Workerif(NOT "${SANITIZER_FLAGS}" STREQUAL "")
4*8b26181fSAndroid Build Coastguard Worker  set_target_properties(fuzz_pcap PROPERTIES
5*8b26181fSAndroid Build Coastguard Worker      LINK_FLAGS "${SANITIZER_FLAGS}")
6*8b26181fSAndroid Build Coastguard Workerendif()
7*8b26181fSAndroid Build Coastguard Worker
8*8b26181fSAndroid Build Coastguard Workeradd_executable(fuzz_filter onefile.c fuzz_filter.c)
9*8b26181fSAndroid Build Coastguard Workertarget_link_libraries(fuzz_filter ${ARGN} ${LIBRARY_NAME}_static ${PCAP_LINK_LIBRARIES})
10*8b26181fSAndroid Build Coastguard Workerif(NOT "${SANITIZER_FLAGS}" STREQUAL "")
11*8b26181fSAndroid Build Coastguard Worker  set_target_properties(fuzz_filter PROPERTIES
12*8b26181fSAndroid Build Coastguard Worker      LINK_FLAGS "${SANITIZER_FLAGS}")
13*8b26181fSAndroid Build Coastguard Workerendif()
14*8b26181fSAndroid Build Coastguard Worker
15*8b26181fSAndroid Build Coastguard Workeradd_executable(fuzz_both onefile.c fuzz_both.c)
16*8b26181fSAndroid Build Coastguard Workertarget_link_libraries(fuzz_both ${ARGN} ${LIBRARY_NAME}_static ${PCAP_LINK_LIBRARIES})
17*8b26181fSAndroid Build Coastguard Workerif(NOT "${SANITIZER_FLAGS}" STREQUAL "")
18*8b26181fSAndroid Build Coastguard Worker  set_target_properties(fuzz_both PROPERTIES
19*8b26181fSAndroid Build Coastguard Worker      LINK_FLAGS "${SANITIZER_FLAGS}")
20*8b26181fSAndroid Build Coastguard Workerendif()
21*8b26181fSAndroid Build Coastguard Worker
22*8b26181fSAndroid Build Coastguard Workerif(ENABLE_REMOTE AND "$ENV{CFLAGS}" MATCHES "-DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION")
23*8b26181fSAndroid Build Coastguard Workeradd_executable(fuzz_rclient onefile.c fuzz_rclient.c)
24*8b26181fSAndroid Build Coastguard Workertarget_link_libraries(fuzz_rclient ${ARGN} ${LIBRARY_NAME}_static ${PCAP_LINK_LIBRARIES})
25*8b26181fSAndroid Build Coastguard Workerif(NOT "${SANITIZER_FLAGS}" STREQUAL "")
26*8b26181fSAndroid Build Coastguard Worker  set_target_properties(fuzz_rclient PROPERTIES
27*8b26181fSAndroid Build Coastguard Worker      LINK_FLAGS "${SANITIZER_FLAGS}")
28*8b26181fSAndroid Build Coastguard Workerendif()
29*8b26181fSAndroid Build Coastguard Worker
30*8b26181fSAndroid Build Coastguard Workeradd_executable(fuzz_rserver onefile.c fuzz_rserver.c ../../rpcapd/daemon.c)
31*8b26181fSAndroid Build Coastguard Workercheck_function_exists(crypt HAVE_CRYPT_IN_SYSTEM_LIBRARIES)
32*8b26181fSAndroid Build Coastguard Workerif(HAVE_CRYPT_IN_SYSTEM_LIBRARIES)
33*8b26181fSAndroid Build Coastguard Worker    set(HAVE_CRYPT TRUE)
34*8b26181fSAndroid Build Coastguard Workerelse(HAVE_CRYPT_IN_SYSTEM_LIBRARIES)
35*8b26181fSAndroid Build Coastguard Worker     set(PCAP_LINK_LIBRARIES ${PCAP_LINK_LIBRARIES} crypt)
36*8b26181fSAndroid Build Coastguard Workerendif(HAVE_CRYPT_IN_SYSTEM_LIBRARIES)
37*8b26181fSAndroid Build Coastguard Workertarget_link_libraries(fuzz_rserver ${ARGN} ${LIBRARY_NAME}_static ${PCAP_LINK_LIBRARIES})
38*8b26181fSAndroid Build Coastguard Worker
39*8b26181fSAndroid Build Coastguard Workerif(NOT "${SANITIZER_FLAGS}" STREQUAL "")
40*8b26181fSAndroid Build Coastguard Worker  set_target_properties(fuzz_rserver PROPERTIES
41*8b26181fSAndroid Build Coastguard Worker      LINK_FLAGS "${SANITIZER_FLAGS}")
42*8b26181fSAndroid Build Coastguard Workerendif()
43*8b26181fSAndroid Build Coastguard Workerendif(ENABLE_REMOTE AND "$ENV{CFLAGS}" MATCHES "-DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION")
44