From Fedora Project Wiki
(convert to new category system) |
(Try to clarify the desired behavior of the case) |
||
Line 3: | Line 3: | ||
|actions= | |actions= | ||
# Run the following python script that abuse the <code>ctypes</code> module in such a way as to cause <code>/usr/bin/python</code> to segfault/abort. | # Run the following python script that abuse the <code>ctypes</code> module in such a way as to cause <code>/usr/bin/python</code> to segfault/abort. | ||
## First, cause a ''segfault'' | ## First, cause a ''segfault'' (triggering a core dump) | ||
##: <pre> | ##: <pre> | ||
##: python -c "import ctypes; ctypes.string_at(0xffffffff)" | ##: python -c "import ctypes; ctypes.string_at(0xffffffff)" | ||
##: Segmentation fault (core dumped)</pre> | ##: Segmentation fault (core dumped)</pre> | ||
## Next, cause | ## Next, cause an ''assertion failure'' (triggering a core dump) | ||
##: <pre> | ##: <pre> | ||
##: python -c "import ctypes; ctypes.string_at(0x0)" | ##: python -c "import ctypes; ctypes.string_at(0x0)" | ||
Line 15: | Line 15: | ||
# Finally, repeat the steps for {{command|python3-debuginfo}} | # Finally, repeat the steps for {{command|python3-debuginfo}} | ||
|results= | |results= | ||
# In each case, | # In each case, the C-level backtrace in the ABRT report ought to contain details on the Python objects that were present in the C stack frames. For example, it ought to be possible to see repr()-style printings of the Python objects, rather than just hexadecimal addresses. | ||
#* please see [[Features/EasierPythonDebugging#How_To_Test|EasierPythonDebuggingTests]] for more information. | #* please see [[Features/EasierPythonDebugging#How_To_Test|EasierPythonDebuggingTests]] for more information. | ||
# Note that this does not work well on x86_64 | |||
}} | }} | ||
[[Category:Package_abrt_test_cases]] | [[Category:Package_abrt_test_cases]] |
Revision as of 20:29, 15 March 2011
Description
This test case tests the functionality of the ABRT together with EasierPythonDebugging.
How to test
- Run the following python script that abuse the
ctypes
module in such a way as to cause/usr/bin/python
to segfault/abort.- First, cause a segfault (triggering a core dump)
- python -c "import ctypes; ctypes.string_at(0xffffffff)"
- Segmentation fault (core dumped)
- Next, cause an assertion failure (triggering a core dump)
- python -c "import ctypes; ctypes.string_at(0x0)"
- python: Objects/stringobject.c:115: PyString_FromString: Assertion `str != ((void *)0)' failed.
- Aborted (core dumped)
- First, cause a segfault (triggering a core dump)
- Next, repeat all of the above for
python3
- Finally, repeat the steps for
python3-debuginfo
Expected Results
- In each case, the C-level backtrace in the ABRT report ought to contain details on the Python objects that were present in the C stack frames. For example, it ought to be possible to see repr()-style printings of the Python objects, rather than just hexadecimal addresses.
- please see EasierPythonDebuggingTests for more information.
- Note that this does not work well on x86_64