#Asan

27 messages · Page 1 of 1 (latest)

finite gulch
#

What is address here?
@opaque bison In case you are okay with continuing the convo here

heavy scaffoldBOT
#

When your question is answered use !solved to mark the question as resolved.

Remember to ask specific questions, provide necessary details, and reduce your question to its simplest form. For tips on how to ask a good question use !howto ask.

finite gulch
opaque bison
#

Like I said before, "address" here is just the name

#

nothing important

#

But the tool as a whole will help you catch all sorts of issues

finite gulch
#

And address is indicating additional functionality

opaque bison
#

the name of the tool -ASan - "address sanitizer"

#

I'm not quite sure why you think it's important unless there's something else I'm missing

long valve
#

it sanitizes for invalid memory accesses

opaque bison
#

for reference, the tool that looks for undefined behavior is called "UBsan" - undefined behavior sanitizer

long valve
#

it does that by tracking which addresses are valid addresses.

#

in other words, it sanitizes how your program uses addresses.

#

i.e.: it's an address sanitizer.

finite gulch
#

We have a lot here. sp, bp, pc

long valve
#

I have no idea what you mean

finite gulch
#

I'm referring to the abbrevations.

long valve
#

I'll need some context

finite gulch
#

I just commented on it, let's drop that, never mind about it.

#

I guess what's more imporntant is, why does these 00's represent the array? Is this before or after the array being written to?

opaque bison
#

It's showing the memory around the faulty access

#

the exact address that was accessed incorrectly is in [...]

finite gulch
opaque bison
#

It's just a helpful tool that you may not need

#

If you make an invalid memory access (like trying to use a pointer after it was freed for example), it will catch it, then show you the values of the bytes at the location you tried accessing as a debug tool

#

So for example, if there was some data there you could maybe trace back where you got the invalid pointer from