[PATCH cgi-io 00/12] fixes and improvements
Petr Štetiar
ynezz at true.cz
Mon Oct 12 08:37:06 EDT 2020
Hi,
this patch series adds the basic building blocks of automatic CI unit testing,
fuzzing and fixing all discovered issues.
Cheers,
Petr
Petr Štetiar (12):
Fix warnings reported by clang-10 static analyzer
Fix possible NULL dereference
Fix clang compiler errors
Refactor utility functions into static library
Add fuzzing of multipart_parser
Add fuzzing of utility functions
Fix off-by-one in postdecode_fields
Add .gitignore
Add initial GitLab CI support
Disable session ACLs during unit testing
tests: add cgi-io built with clang sanitizers
tests: add cram based unit tests
.gitignore | 1 +
.gitlab-ci.yml | 7 +
CMakeLists.txt | 25 +-
main.c | 296 ++----------------
multipart_parser.c | 3 +
tests/CMakeLists.txt | 6 +
tests/cram/CMakeLists.txt | 25 ++
tests/cram/test-cases/cgi-exec-01.txt | 1 +
tests/cram/test-cases/cgi-exec-02.txt | 1 +
tests/cram/test-cases/cgi-exec-03.txt | 1 +
tests/cram/test-san_cgi-exec.t | 30 ++
tests/cram/test_cgi-exec.t | 30 ++
tests/fuzz-multipart-parser/CMakeLists.txt | 18 ++
tests/fuzz-multipart-parser/corpus/.keep | 0
tests/fuzz-multipart-parser/dict/parser.dict | 10 +
tests/fuzz-multipart-parser/inputs/input1.txt | 6 +
tests/fuzz-multipart-parser/inputs/input2.txt | 10 +
.../test-fuzz-multipart-parser.c | 43 +++
tests/fuzz/CMakeLists.txt | 18 ++
.../58668e7669fd564d99db5d581fcdb6a5618440b5 | 1 +
.../5ba93c9db0cff93f52b521d7420e43f6eda2784f | Bin 0 -> 1 bytes
.../adc83b19e793491b1c6ea0fd8b46cd9f32e592fc | 1 +
...h-9adc1b00fe9189d66d3bfd8b7759b003cf3f5427 | Bin 0 -> 191 bytes
...h-c1e3b9cd71f83cc0de5ab4c0e3db39316cd5c6c0 | 1 +
tests/fuzz/test-fuzz.c | 43 +++
util.c | 286 +++++++++++++++++
util.h | 12 +
27 files changed, 598 insertions(+), 277 deletions(-)
create mode 100644 .gitignore
create mode 100644 .gitlab-ci.yml
create mode 100644 tests/CMakeLists.txt
create mode 100644 tests/cram/CMakeLists.txt
create mode 100644 tests/cram/test-cases/cgi-exec-01.txt
create mode 100644 tests/cram/test-cases/cgi-exec-02.txt
create mode 100644 tests/cram/test-cases/cgi-exec-03.txt
create mode 100644 tests/cram/test-san_cgi-exec.t
create mode 100644 tests/cram/test_cgi-exec.t
create mode 100644 tests/fuzz-multipart-parser/CMakeLists.txt
create mode 100644 tests/fuzz-multipart-parser/corpus/.keep
create mode 100644 tests/fuzz-multipart-parser/dict/parser.dict
create mode 100644 tests/fuzz-multipart-parser/inputs/input1.txt
create mode 100644 tests/fuzz-multipart-parser/inputs/input2.txt
create mode 100644 tests/fuzz-multipart-parser/test-fuzz-multipart-parser.c
create mode 100644 tests/fuzz/CMakeLists.txt
create mode 100644 tests/fuzz/corpus/58668e7669fd564d99db5d581fcdb6a5618440b5
create mode 100644 tests/fuzz/corpus/5ba93c9db0cff93f52b521d7420e43f6eda2784f
create mode 100644 tests/fuzz/corpus/adc83b19e793491b1c6ea0fd8b46cd9f32e592fc
create mode 100644 tests/fuzz/corpus/crash-9adc1b00fe9189d66d3bfd8b7759b003cf3f5427
create mode 100644 tests/fuzz/corpus/crash-c1e3b9cd71f83cc0de5ab4c0e3db39316cd5c6c0
create mode 100644 tests/fuzz/test-fuzz.c
create mode 100644 util.c
create mode 100644 util.h
More information about the openwrt-devel
mailing list