Skip to content

Commit

Permalink
avcodec: Disable new iterate API for ossfuzz
Browse files Browse the repository at this point in the history
A few days ago ossfuzz stoped testing new FFmpeg as it run out of diskspacee

https://oss-fuzz-build-logs.storage.googleapis.com/index.html

An alternative would be to revert the API.

This changes for example
-rwxr-x--- 1 michael michael 144803654 May 14 12:54 tools/target_dec_ac3_fixed_fuzzer*
to
-rwxr-x--- 1 michael michael  30333852 May 14 12:51 tools/target_dec_ac3_fixed_fuzzer*

Which should massively decrease space requirements

Signed-off-by: Michael Niedermayer <[email protected]>
  • Loading branch information
michaelni committed May 15, 2018
1 parent d0b5952 commit 64f59a2
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 0 deletions.
5 changes: 5 additions & 0 deletions libavcodec/allcodecs.c
Original file line number Diff line number Diff line change
Expand Up @@ -760,7 +760,12 @@ extern AVCodec ff_vp9_cuvid_decoder;
extern AVCodec ff_vp9_mediacodec_decoder;
extern AVCodec ff_vp9_vaapi_encoder;

// The iterate API is not usable with ossfuzz due to the excessive size of binaries created
#if CONFIG_OSSFUZZ
extern AVCodec * codec_list[];
#else
#include "libavcodec/codec_list.c"
#endif

static AVOnce av_codec_static_init = AV_ONCE_INIT;
static void av_codec_init_static(void)
Expand Down
6 changes: 6 additions & 0 deletions tools/target_dec_fuzzer.c
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,11 @@

int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size);

AVCodec * codec_list[] = {
NULL,
NULL
};

static void error(const char *err)
{
fprintf(stderr, "%s", err);
Expand Down Expand Up @@ -144,6 +149,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
#define DECODER_SYMBOL0(CODEC) ff_##CODEC##_decoder
#define DECODER_SYMBOL(CODEC) DECODER_SYMBOL0(CODEC)
extern AVCodec DECODER_SYMBOL(FFMPEG_DECODER);
codec_list[0] = &DECODER_SYMBOL(FFMPEG_DECODER);
avcodec_register(&DECODER_SYMBOL(FFMPEG_DECODER));

c = &DECODER_SYMBOL(FFMPEG_DECODER);
Expand Down

0 comments on commit 64f59a2

Please sign in to comment.