Add fuzzing test on function resolv_gethostbyname for DnsResolver.
Bug: 240913174
Test: sees go/android-fuzzing-run or uses commands below
# Build & run
FUZZER_NAME=resolv_gethostbyname_fuzzer
DEVICE_TRACE_PATH=/data/fuzz/$(get_build_var TARGET_ARCH)/${FUZZER_NAME}/data.profraw
CLANG_COVERAGE=true NATIVE_COVERAGE_PATHS='*' make ${FUZZER_NAME}
adb sync data && adb shell LLVM_PROFILE_FILE=${DEVICE_TRACE_PATH} /data/fuzz/$(get_build_var TARGET_ARCH)/${FUZZER_NAME}/${FUZZER_NAME} -runs=10000
# Check results
adb pull ${DEVICE_TRACE_PATH} data.profraw
llvm-profdata merge --sparse data.profraw --output data.profdata
llvm-cov show --format=html --instr-profile=data.profdata ${ANDROID_PRODUCT_OUT}/symbols/data/fuzz/$(get_build_var TARGET_ARCH)/${FUZZER_NAME}/${FUZZER_NAME} --ignore-filename-regex='\/frameworks\/' --ignore-filename-regex='\/rust\/crates\/' --ignore-filename-regex='\/system\/' --ignore-filename-regex='\/external\/' --ignore-filename-regex='\/\.intermediates\/' --output-dir=coverage-html
Change-Id: Idff35a3de9af2e48217bc23da0f94c782b070a29
This code uses LOG(X) for logging. Log levels are VERBOSE,DEBUG,INFO,WARNING and ERROR. The default setting is WARNING and logs relate to WARNING and ERROR will be shown. If you want to enable the DEBUG level logs, using following command. adb shell service call dnsresolver 10 i32 1 VERBOSE 0 DEBUG 1 INFO 2 WARNING 3 ERROR 4 Verbose resolver logs could contain PII -- do NOT enable in production builds.