I got bit by unique_ptr
when implementing a linked list today. You need to be careful to manually release()
the unique_ptr
before resetting or you might accidentally free the entire list. This comes up when doing insertions and stuff like that.
Category Archives: _Twitter Archive π€
You can use /proc/*/mem to bypass memory protections
Filmed some screencasts today explaining some interesting behavior with /proc/self/mem
— you can use it to write to unwritable memory (including the text of libc!).
Read bits are not enforced for memory mappings
Filmed a screencast exploring some neat mmap behavior — read bits are not enforced for memory mappings. This is because the underlying x86 page table entries have a single bit to toggle between “Read” and “Read/Write”.
macOS has a native memory leak checker
I landed code in LLDB!
I landed some code in lldb! Did some tweeting about it here:
Reproducing a GCC 8.1 ABI compatibility bug
I was reading about GCC and noticed this very suspicious warning line about an accidental compatibility break: https://gcc.gnu.org/gcc-8/changes.html
I thought it would be interesting to reproduce this. I reproduced this specific scenario they outline and compiled two translations units, one with GCC 8.1, one with an earlier version (GCC 7) and observed the segfault that happens when two incompatible calling conventions interact with each other.