![c++ socket programming error stack smashing detected c++ socket programming error stack smashing detected](https://image.slidesharecdn.com/main-130110034013-phpapp01/95/smashing-the-stack-35-638.jpg)
CRC mismatch (computed 9efd3dd5 wanted ae0f290f) CRC mismatch (computed 88040ace wanted 71b58165) CRC mismatch (computed ac9b5ddb wanted a10d05bf) CRC mismatch (computed 6116126e wanted 54e3f1f2) 12291- object doesn't have a symbol table
![c++ socket programming error stack smashing detected c++ socket programming error stack smashing detected](https://media.springernature.com/lw685/springer-static/image/art%3A10.1007%2Fs10207-018-00425-8/MediaObjects/10207_2018_425_Fig1_HTML.png)
CRC mismatch (computed dc37bb90 wanted ea8c3b40) Not good - the actual breakage may happen a lot earlier. According to GCC manual, the check is done when the function returns, which in this case means "when the user is disconnected and the receiver thread exits". Next, I studied how exactly the stack check works.
C++ socket programming error stack smashing detected code#
First thing I did was to verify all the code by eye - I cleaned up some ugly things but found nothing really dangerous.
![c++ socket programming error stack smashing detected c++ socket programming error stack smashing detected](https://i1.rgstatic.net/publication/330569242_SSPFA_effective_stack_smashing_protection_for_Android_OS/links/5fb92e8292851c933f4a250d/largepreview.png)
There's not so many occasions where this happens - basically just working with arrays (or C-strings which are arrays, too). What it tells me: either the function `Receiver::Thread()` or some function called from it breaks the stack. #3 0x00007ffff6dafe81 in _GI_fortify_fail_abort "stack smashing detected") at fortify_fail.c:33 sysdeps/unix/sysv/linux/raise.c: No such file or directory. Thread 744 "rorserver" received signal SIGABRT, Aborted.