uniFuzzer icon indicating copy to clipboard operation
uniFuzzer copied to clipboard

make generates error

Open D3vil0p3r opened this issue 10 months ago • 0 comments

By running make, it generates the following error:

clang -o callback/demo-callback.o -Wall -fPIC -g -DUF_DEBUG -c callback/demo-callback.c
callback/demo-callback.c:46:29: warning: incompatible pointer types assigning to 'uint32_t *' (aka 'unsigned int *') from 'char *' [-Wincompatible-pointer-types]
   46 |             heapBoundaryGOT = (char *)baseAddr + HEAP_BOUNDARY_GOT_OFFSET;
      |                             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
callback/demo-callback.c:61:27: error: incompatible pointer to integer conversion passing 'char *' to parameter of type 'uint64_t' (aka 'unsigned long') [-Wint-conversion]
   61 |     if(uc_mem_map_ptr(uc, heapBase, HEAP_SIZE, UC_PROT_READ | UC_PROT_WRITE, heapBase) != UC_ERR_OK) {
      |                           ^~~~~~~~
/usr/include/unicorn/unicorn.h:945:47: note: passing argument to parameter 'address' here
  945 | uc_err uc_mem_map_ptr(uc_engine *uc, uint64_t address, size_t size,
      |                                               ^
callback/demo-callback.c:74:27: error: incompatible pointer to integer conversion passing 'char *' to parameter of type 'uint64_t' (aka 'unsigned long') [-Wint-conversion]
   74 |     if(uc_mem_map_ptr(uc, stackTop, STACK_SIZE, UC_PROT_READ | UC_PROT_WRITE, stackTop) != UC_ERR_OK) {
      |                           ^~~~~~~~
/usr/include/unicorn/unicorn.h:945:47: note: passing argument to parameter 'address' here
  945 | uc_err uc_mem_map_ptr(uc_engine *uc, uint64_t address, size_t size,
      |                                               ^
callback/demo-callback.c:87:27: error: incompatible pointer to integer conversion passing 'char *' to parameter of type 'uint64_t' (aka 'unsigned long') [-Wint-conversion]
   87 |     if(uc_mem_map_ptr(uc, dataAddr, DATA_SIZE, UC_PROT_READ | UC_PROT_WRITE, dataAddr) != UC_ERR_OK) {
      |                           ^~~~~~~~
/usr/include/unicorn/unicorn.h:945:47: note: passing argument to parameter 'address' here
  945 | uc_err uc_mem_map_ptr(uc_engine *uc, uint64_t address, size_t size,
      |                                               ^
callback/demo-callback.c:96:9: error: incompatible pointer to integer conversion assigning to 'uint32_t' (aka 'unsigned int') from 'char *' [-Wint-conversion]
   96 |     reg = stackTop+STACK_SIZE - 0x200;
      |         ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
callback/demo-callback.c:99:9: error: incompatible pointer to integer conversion assigning to 'uint32_t' (aka 'unsigned int') from 'char *' [-Wint-conversion]
   99 |     reg = dataAddr;
      |         ^ ~~~~~~~~
callback/demo-callback.c:125:22: error: incompatible pointer to integer conversion assigning to 'uint32_t' (aka 'unsigned int') from 'char *' [-Wint-conversion]
  125 |     *heapBoundaryGOT = heapBase;
      |                      ^ ~~~~~~~~
callback/demo-callback.c:156:15: error: incompatible integer to pointer conversion initializing 'uint32_t *' (aka 'unsigned int *') with an expression of type 'uint32_t' (aka 'unsigned int'); remove * [-Wint-conversion]
  156 |     uint32_t *boundary = *heapBoundaryGOT;
      |               ^          ~~~~~~~~~~~~~~~~
callback/demo-callback.c:159:15: warning: incompatible pointer types initializing 'uint32_t *' (aka 'unsigned int *') with an expression of type 'char *' [-Wincompatible-pointer-types]
  159 |     uint32_t *start = heapBase;
      |               ^       ~~~~~~~~
callback/demo-callback.c:175:15: warning: incompatible pointer types assigning to 'uint32_t *' (aka 'unsigned int *') from 'char *' [-Wincompatible-pointer-types]
  175 |         start = (char *)start + chunk_len + 8;
      |               ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3 warnings and 7 errors generated.
make: *** [Makefile:23: callback/demo-callback.o] Error 1

Please @rk700 can you fix it?

D3vil0p3r avatar Apr 06 '24 19:04 D3vil0p3r