Dear all,

I encountered a strange problem when testing the next code snippet:

1 if (pw = getpwuid(getuid()) == NULL)
2   return ;

3 .. = pw->pw_dir;

When handling line 1, KLEE firstly invokes *externalDispatcher->executeCall*
which will invoke *runProtectedCall* to execute the external function and
store
the result to a given memory location. Then, it will invoke *fromMemory* to
get the
return value from the location. However, it encounters an "out of bound"
error
when handling line 3. I printed the value of variable *pw* at line 1, and
got something like *139894903382656*, which definitely does not equal to '
*null*',
thus it will arrive line 3. Actually, *139894903382656* seems an invalid
address.

So why does this strange situation happen?

Thank you all in advance.

Best regards,

Qiuping Yi
Parasol Laboratory
Department of Computer Science and Engineering
Texas A&M University
College Station
TX 77843
_______________________________________________
klee-dev mailing list
klee-dev@imperial.ac.uk
https://mailman.ic.ac.uk/mailman/listinfo/klee-dev

Reply via email to