// Typically declared in LLVM's asan_interface.h. #ifdef SK_SANITIZE_ADDRESS extern"C" { void __asan_poison_memory_region(voidconstvolatile *addr, size_t size); void __asan_unpoison_memory_region(voidconstvolatile *addr, size_t size); int __asan_address_is_poisoned(voidconstvolatile *addr);
} #endif
// Code that implements bespoke allocation arenas can poison the entire arena on creation, then // unpoison chunks of arena memory as they are parceled out. Consider leaving gaps between blocks // to detect buffer overrun. staticinlinevoid sk_asan_poison_memory_region([[maybe_unused]] voidconstvolatile* addr,
[[maybe_unused]] size_t size) { #ifdef SK_SANITIZE_ADDRESS
__asan_poison_memory_region(addr, size); #endif
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.