suppose I have many appearances of strcpy,strcat & memcpy in our project (a very big one!) . How can I easily detect all the places I have an overlap between source and destination pointers.
I know that valgrind can do it but not all cases can be detected at runtime while vilgrind is running (there are many possible flows).
does someone know if gcc hardening can offer a solution for this problem? or maybe other idea besides wrapping those functions and check it by myself?