James Zern
8dd80ef814
fuzz_utils.h: lower kFuzzPxLimit w/ASan
...
prevents some timeouts when decoding large jpeg source images.
Change-Id: I5cb6a10cbf0658a71fa9f49fc7da4c8d3e70fa00
2023-05-24 19:39:38 -07:00
Yannis Guyon
2d547e24dc
Compare kFuzzPxLimit to max_num_operations
...
To avoid timeouts caused by extreme rescaling such as
1x14339 -> 51712x1
Change-Id: I291d8e3b24155c190256411a506b7312abde8c45
2023-05-16 13:20:14 +02:00
James Zern
8151f388eb
move VP8GetCPUInfo declaration to cpu.c
...
This avoids defining a version in each translation unit when using
__declspec(dllexport) which causes failures due to multiply defined
symbols with clang-cl:
lld-link: error: duplicate symbol: VP8GetCPUInfo
>>> defined at CMakeFiles\webpdecode.dir\Debug\src\dec\alpha_dec.c.obj
>>> defined at CMakeFiles\webpdsp.dir\Debug\src\dsp\dec_sse41.c.obj
...
Bug: webp:607
Change-Id: I6cd1ee75b3db984aa513263a05516e867a64925d
2023-04-27 12:39:13 -07:00
Yannis Guyon
916548c28c
Make kFuzzPxLimit sanitizer dependent
...
Change-Id: Ib70f3c05fc845494c45cb357e70e9602a7e876a3
2023-04-25 08:14:22 +02:00
James Zern
4070b271ab
advanced_api_fuzzer: reduce scaling limit
...
avoids another timeout while fuzzing with ASan
Change-Id: Ic5dfed15347bdd36f42274b8b2a25aec79fd568c
2023-04-18 16:56:23 -07:00
James Zern
0696e1a7fb
advanced_api_fuzzer: reduce scaling limit
...
avoids another timeout while fuzzing with ASan
Change-Id: Icf7209f3f93b894684ac7364864e4568b6b2c057
2023-04-11 12:16:39 -07:00
James Zern
cbf624b561
advanced_api_fuzzer: reduce scaling limit
...
avoids another timeout while fuzzing with ASan
Change-Id: Ibd89e56bf936aeea040cd4c47ccae20960417ac0
2023-03-24 10:52:46 -07:00
yguyon@google.com
89edfdd1e9
Skip slow scaling in libwebp advanced_api_fuzzer
...
Change-Id: Ic57e7f8418afec42f042197a401aaf4cc047b23f
2023-03-24 10:52:43 -07:00
yguyon@google.com
859f19f74f
Reduce libwebp advanced_api_fuzzer threshold
...
To avoid timeouts.
Change-Id: I8909661479cdbcb940bb44c6f9130906cab3f271
2023-03-24 10:52:40 -07:00
Yannis Guyon
1347a32d82
Skip big scaled advanced_api_fuzzer
...
To avoid timeouts.
Change-Id: I8f04fd45313bef47004a616d2460be992692030d
2023-02-08 10:53:40 +01:00
Yannis Guyon
52b6f06703
Fix scaling limit in advanced_api_fuzzer.c
...
config.options.scaled_width or config.options.scaled_height being 0
means a ratio-conservative scaling so 7361842
was not enough.
Change-Id: Ib75241eb683cf824bc46222c5c07535b6c6d7313
2023-02-07 18:05:42 +01:00
Yannis Guyon
7361842839
Limit scaling in libwebp advanced_api_fuzzer.c
...
Change-Id: Ic1e3fdc76f4bdcb1ac68cf4f9334d2e77ca29374
2023-01-27 14:39:14 +01:00
Maryla
9d7ff74a55
Create libsharpyuv.a in makefile.unix.
...
Add libsharpyuv dependency to fuzzer makefile.
Issue: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=49778
Change-Id: Ib03219de33a97c3d7b13d0daffbee2035f2a3bde
2022-08-08 09:40:34 +02:00
James Zern
c5bc36243a
fuzzer/*: normalize src/ includes
...
this uses the format introduced to some files in:
cc3577e9
fuzzer/*: use src/ based include paths
Change-Id: I9b5cbeadbb9d54d1e89f474a6e479a5eb3175ed7
2021-07-28 13:32:19 -07:00
James Zern
b60d460318
advanced_api_fuzzer: add extreme config value coverage
...
this enables cases that might trigger overflows, but increases the risk
of OOM and timeouts
Bug: chromium:1196850
Change-Id: I317b5109525646731e762faa3c34ed28a27595dc
2021-06-23 18:53:05 -07:00
James Zern
cc3577e9b9
fuzzer/*: use src/ based include paths
...
this synchronizes the code with chrome, where this format allows the
code to pass buildtools/checkdeps/checkdeps.py
Bug: 1141126
Change-Id: I25361b1a43cd95730814302f02aa16af8fdb5fd2
2021-01-29 20:04:08 -08:00
Pascal Massimino
8df77fb1b1
animdecoder_fuzzer: fix memory leak
...
BUG=oss-fuzz:28978
Change-Id: I7b3a495c02b4b03f367d732af5acb02856f8bead
2020-12-26 12:26:41 +01:00
James Zern
6325882327
animdecoder_fuzzer: validate canvas size
...
avoids some OOMs due to extreme resolutions
BUG=oss-fuzz:28658
Change-Id: I60b5fb3d7a7d17694a89237d521b851b0897e9fb
2020-12-18 11:18:11 -08:00
James Zern
83604bf3ac
{animencoder,enc_dec}_fuzzer: convert some abort()s to returns
...
with functions that can legitimately fail when under memory pressure the
fuzzer should exit gracefully rather than abort().
+ add some more error detail to output
Bug: chromium:1140448
Change-Id: I1a8582a939e0a5b2b8631c95c0464658c99063e2
2020-10-21 10:48:05 -07:00
James Zern
9f6055fcb2
fuzz_utils.h: rename max() to Max()
...
avoids conflict with windows.h define
Bug: webp:409
Change-Id: I8ae0947365e7071d8ebe1d682c9211882cc2fd89
2020-10-17 16:40:58 -07:00
James Zern
695788e7f5
fuzz_utils.h: make functions WEBP_INLINE
...
+ add some warnings and avoid overriding implicit %.c, %.cc patterns in
makefile.unix
Bug: webp:409
Change-Id: I678c8b1ed630ebb9114208c20b794d2eefdca5a1
2020-10-17 10:49:26 -07:00
James Zern
8cb7e536d2
rename demux_api_fuzzer.c -> mux_demux_api_fuzzer.c
...
this better matches the file's contents
Bug: webp:409
Change-Id: I693795370c0d1af198971693b4ff15a57d996c4b
2020-10-15 16:50:25 -07:00
James Zern
443db47d91
add animdecoder_fuzzer.cc
...
Bug: webp:409
Change-Id: Iade1e6b1288faad9076f72c21c1bde5a6bbfc7e0
2020-10-14 19:44:19 -07:00
James Zern
bd94090a11
import fuzzers from oss-fuzz/chromium
...
+ a simple makefile + README
these were mostly equivalent, chromium added support for
WEBP_REDUCE_CSP.
the file names were normalized as follows:
fuzz_advanced_api.{c,cc} -> advanced_api_fuzzer.c
fuzz_animation_api.{c,cc} -> animation_api_fuzzer.c
fuzz_webp_animencoder.cc -> animencoder_fuzzer.cc
fuzz_demux_api.{c,cc} -> demux_api_fuzzer.c
fuzz_webp_enc_dec.cc -> enc_dec_fuzzer.cc
fuzz.h -> fuzz_utils.h
fuzz_simple_api.{c,cc} -> simple_api_fuzzer.c
Bug: webp:409
Change-Id: Ib997f0c92f25f8a1f91da83790298cd848b61a5d
2020-10-13 18:31:08 -07:00