]> granicus.if.org Git - esp-idf/commitdiff
lwip fuzzer: supplied dummy dns server entry to work with internal packet processing...
authorDavid Cermak <cermak@espressif.com>
Fri, 28 Jun 2019 12:12:10 +0000 (14:12 +0200)
committerDavid Cermak <cermak@espressif.com>
Thu, 18 Jul 2019 08:34:03 +0000 (10:34 +0200)
components/lwip/test_afl_host/Makefile
components/lwip/test_afl_host/network_mock.c
components/lwip/test_afl_host/test_dns.c

index 7c5cf49f3a0ac80e50deb675c5994a997a08e404..b236b327a8901445278121cca6cac15c097e0aaa 100644 (file)
@@ -1,6 +1,6 @@
 COMPONENTS_DIR=../..
 CFLAGS=-std=gnu99 -Og -ggdb -ffunction-sections -fdata-sections -nostdlib -Wall  -Werror=all -Wno-int-to-pointer-cast -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wextra \
--Wno-unused-parameter -Wno-sign-compare -Wno-address   -Wno-unused-variable -DESP_PLATFORM -D IDF_VER=\"v3.1\" -MMD -MP -DWITH_POSIX
+-Wno-unused-parameter -Wno-sign-compare -Wno-address   -Wno-unused-variable -DESP_PLATFORM -D IDF_VER=\"v3.1\" -MMD -MP -DWITH_POSIX -DLWIP_NO_CTYPE_H=1
 INC_DIRS=-I . -I ./build/config -I $(COMPONENTS_DIR)/newlib/platform_include -I $(COMPONENTS_DIR)/newlib/include -I $(COMPONENTS_DIR)/driver/include -I $(COMPONENTS_DIR)/esp32/include -I $(COMPONENTS_DIR)/ethernet/include -I $(COMPONENTS_DIR)/freertos/include -I $(COMPONENTS_DIR)/heap/include -I $(COMPONENTS_DIR)/lwip/lwip/src/include  -I $(COMPONENTS_DIR)/lwip/include/apps -I $(COMPONENTS_DIR)/lwip/lwip/src/include/netif -I $(COMPONENTS_DIR)/lwip/lwip/src/include/posix -I $(COMPONENTS_DIR)/lwip/port/esp32/include -I $(COMPONENTS_DIR)/lwip/lwip/src/include/posix -I $(COMPONENTS_DIR)/lwip/include/apps/ping -I $(COMPONENTS_DIR)/lwip/include/apps/sntp  -I $(COMPONENTS_DIR)/soc/esp32/include -I $(COMPONENTS_DIR)/soc/include -I $(COMPONENTS_DIR)/tcpip_adapter/include -I $(COMPONENTS_DIR)/esp_rom/include  -I $(COMPONENTS_DIR)/esp_common/include -I $(COMPONENTS_DIR)/xtensa/include -I $(COMPONENTS_DIR)/xtensa/esp32/include -I $(COMPONENTS_DIR)/esp_wifi/include -I $(COMPONENTS_DIR)/esp_event/include
 TEST_NAME=test
 FUZZ=afl-fuzz
index 947b6b22b27c3c64163aad03395866f3818c2987..aeaad72d32b221b0f8ad17a7cd9bef5837b332c3 100644 (file)
@@ -94,7 +94,7 @@ struct pbuf * pbuf_alloc(pbuf_layer layer, u16_t length, pbuf_type type)
     p = (struct pbuf *)malloc(MEMP_PBUF_POOL);
     p->tot_len = length;
     p->next = NULL;
-    p->type = PBUF_POOL;
+    p->type_internal = PBUF_POOL;
     p->len = length;
     p->payload = malloc(length);
     return p;
index 131a8b3ed788da1424a3db8bb4101d753e64628b..1e9a588150a1237af9531bdc16a5b1dd6befac79 100644 (file)
@@ -66,6 +66,8 @@ int main(int argc, char** argv)
         p->next = NULL;
 
         // Pretend that the response is from our pending querries
+        IP4_ADDR(&server_ip, 8, 8, 8, 8);
+        dns_setserver(0, &server_ip);
         dns_test_inject_port_and_txid(1024, (buf[0]<<8) + buf[1]);
         dns_test_dns_enqueue("test", 4, NULL, NULL, 0);