You need to install the following dependencies and configure the PATH environment variable to point to the binary directory where gclang is located:
$ yum makecache
$ yum install -y git unzip patch golang llvm clang compiler-rt libasan-static libasan
$ go env -w GO111MODULE=auto
$ go env -w GOPROXY="https://goproxy.io,direct"
$ go get -v github.com/SRI-CSL/gllvm/cmd/...
$ export PATH=/root/go/bin:$PATH
# cd the iSulad root directory
$ mkdir build && cd build
$ cmake -DCMAKE_BUILD_TYPE=Debug -DENABLE_ASAN=ON -DENABLE_FUZZ=ON ..
$ cmake -DCMAKE_BUILD_TYPE=Debug -DGCOV=ON -DENABLE_ASAN=ON -DENABLE_FUZZ=ON ..
$ make -j $(nproc)
Execute all fuzz test cases:
$ cd test/fuzz/
$ ./fuzz.sh
Execute some fuzz test cases:
$ cd test/fuzz/
$ ./fuzz.sh test_gr_obj_parser_fuzz test_pw_obj_parser_fuzz test_volume_mount_spec_fuzz test_volume_parse_volume_fuzz
If the test is successful, a log will be generated in the iSulad root directory:
$ ls -la *.log
-rw-------. 1 root root 2357 Jul 4 10:23 test_gr_obj_parser_fuzz.log
-rw-------. 1 root root 3046 Jul 4 10:23 test_pw_obj_parser_fuzz.log
-rw-------. 1 root root 1167 Jul 4 10:23 test_volume_mount_spec_fuzz.log
-rw-------. 1 root root 3411 Jul 4 10:23 test_volume_parse_volume_fuzz.log
You can use third-party tools to collect coverage information and analyze it. For example, you can run the following command to let lcov collect cover.info, where ISULAD_SRC_PATH is filled with iSulad source code path:
$ lcov -gcov-tool /usr/bin/llvm-gcov.sh -c -d -m $ISULAD_SRC_PATH -o cover.info
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )