From: Victor Julien Date: Mon, 2 Sep 2019 13:28:36 +0000 (+0200) Subject: afl: fix compile warnings for decoder fuzz funcs X-Git-Tag: suricata-5.0.0-rc1~106 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=399ab35aa1e802ac75efc3add5befe6909c26d56;p=thirdparty%2Fsuricata.git afl: fix compile warnings for decoder fuzz funcs --- diff --git a/src/decode-afl.c b/src/decode-afl.c index 99551ef4e7..069c309e66 100644 --- a/src/decode-afl.c +++ b/src/decode-afl.c @@ -38,6 +38,16 @@ #include "flow.h" #ifdef AFLFUZZ_DECODER +int AFLDecodeIPV4(ThreadVars *tv, DecodeThreadVars *dtv, Packet *p, + const uint8_t *pkt, uint32_t len, PacketQueue *pq) +{ + return DecodeIPV4(tv, dtv, p, pkt, (uint16_t)len, pq); +} +int AFLDecodeIPV6(ThreadVars *tv, DecodeThreadVars *dtv, Packet *p, + const uint8_t *pkt, uint32_t len, PacketQueue *pq) +{ + return DecodeIPV6(tv, dtv, p, pkt, (uint16_t)len, pq); +} /* stateful processing of data as packets. Because AFL in case of a * crash will only safe the last input, we dump all the inputs to a diff --git a/src/decode.h b/src/decode.h index 4488c05511..66e4f44d7b 100644 --- a/src/decode.h +++ b/src/decode.h @@ -952,10 +952,13 @@ void DecodeIPV6FragHeader(Packet *p, uint8_t *pkt, void AddressDebugPrint(Address *); -#ifdef AFLFUZZ_DECODER typedef int (*DecoderFunc)(ThreadVars *tv, DecodeThreadVars *dtv, Packet *p, - uint8_t *pkt, uint32_t len, PacketQueue *pq); - + const uint8_t *pkt, uint32_t len, PacketQueue *pq); +#ifdef AFLFUZZ_DECODER +int AFLDecodeIPV4(ThreadVars *tv, DecodeThreadVars *dtv, Packet *p, + const uint8_t *pkt, uint32_t len, PacketQueue *pq); +int AFLDecodeIPV6(ThreadVars *tv, DecodeThreadVars *dtv, Packet *p, + const uint8_t *pkt, uint32_t len, PacketQueue *pq); int DecoderParseDataFromFile(char *filename, DecoderFunc Decoder); int DecoderParseDataFromFileSerie(char *fileprefix, DecoderFunc Decoder); #endif diff --git a/src/suricata.c b/src/suricata.c index 51d5df53b3..6393de0f83 100644 --- a/src/suricata.c +++ b/src/suricata.c @@ -1371,18 +1371,18 @@ static void ParseCommandLineAFL(const char *opt_name, char *opt_arg) SpmTableSetup(); AppLayerProtoDetectSetup(); if (strcmp(opt_name, "afl-decoder-ipv4") == 0) - exit(DecoderParseDataFromFile(opt_arg, DecodeIPV4)); + exit(DecoderParseDataFromFile(opt_arg, AFLDecodeIPV4)); else - exit(DecoderParseDataFromFileSerie(opt_arg, DecodeIPV4)); + exit(DecoderParseDataFromFileSerie(opt_arg, AFLDecodeIPV4)); } else if(strstr(opt_name, "afl-decoder-ipv6") != NULL) { StatsInit(); MpmTableSetup(); SpmTableSetup(); AppLayerProtoDetectSetup(); if (strcmp(opt_name, "afl-decoder-ipv6") == 0) - exit(DecoderParseDataFromFile(opt_arg, DecodeIPV6)); + exit(DecoderParseDataFromFile(opt_arg, AFLDecodeIPV6)); else - exit(DecoderParseDataFromFileSerie(opt_arg, DecodeIPV6)); + exit(DecoderParseDataFromFileSerie(opt_arg, AFLDecodeIPV6)); } else if(strstr(opt_name, "afl-decoder-ethernet") != NULL) { StatsInit(); MpmTableSetup();