root/tags/python-ptrace-0.4.0/ChangeLog

Revision 1, 2.9 kB (checked in by haypo, 5 months ago)

Import tags and trunk from Fusil svn

  • Property svn:eol-style set to native
Line 
1 Changelog
2 =========
3
4 python-ptrace 0.4.0 (2008-08-19)
5 --------------------------------
6
7 Visible changes:
8
9  * Rename the project to "python-ptrace" (old name was "Ptrace)
10  * strace.py: create --ignore-regex option
11  * PtraceSignal: support SIGBUS, display the related registers and
12    the instruction
13  * Support execve() syscall tracing
14
15 Developer changes:
16
17  * New API is incompatible with 0.3.2
18  * PtraceProcess.waitProcessEvent() accepts optional blocking=False argument
19  * PtraceProcess.getreg()/setreg() are able to read/write i386 and x86-64
20    "sub-registers" like al or bx
21  * Remove iterProc() function, replaced by openProc() with explicit
22    call to .close() to make sure that files are closed
23  * Create searchProcessesByName()
24  * Replace CPU_PPC constant by CPU_POWERPC and create CPU_PPC32 and CPU_PPC64
25  * Create MemoryMapping object, used by readMappings() and findStack() methods
26    of PtraceProcess
27  * Always define all PtraceProcess methods but raise an error if the function
28    is not implemented
29
30 Version 0.3.2 (2008-07-25)
31 --------------------------
32
33  * Rewrite ip_int2str() using inet_ntoa() to avoid IPy dependency
34  * Add kill() and unlink() syscall prototypes
35  * Fix sign conversion error in ptrace() to fix error detection
36  * Catch OSError in ptrace.disasm (unable to find libdistorm64.so)
37  * PtraceDebugger.addProcess(): detach the process on exception
38  * Breakpoint: don't store bytes if the process is not running anymore
39  * writeError() now re-raise KeyboardInterrupt
40  * PtraceProcess: don't detach or terminate process if it is was running
41  * PtraceProcess: never send SIGTRAP signal to a process!
42
43 Version 0.3.1 (2008-07-08)
44 --------------------------
45
46 Minor update:
47
48  * ptrace.ctypes_errno: use ctypes_support.get_errno() when it's available
49  * Create RUNNING_PYPY constant is ptrace.os_tools
50  * Remove ptrace dependency from ptrace.pydistorm to be able to use
51    it outside ptrace
52
53 Version 0.3 (2008-03-26)
54 ------------------------
55
56  * Support OpenBSD i386
57  * Use ptrace_io() on FreeBSD for faster readBytes()/writeBytes() methods
58  * Use ptrace_peekuser() to read registers on OS without ptrace_getregs()
59    (eg. Linux 2.4 on PPC)
60  * Breakpoint works on PPC CPU (use TRAP instruction)
61  * Delete process and raise ProcessExit on abnormal process death
62    (eg. detected by waitpid(pid))
63  * Write new Python binding to distorm64 library
64  * gdb.py: create "backtrace" command
65  * gdb.py: support operators in expressions (eg. $eip+4)
66
67
68 Version 0.2 (2008-02-14)
69 ------------------------
70
71  * Able to trace multiple processes
72  * Many new gdb.py commands: hexdump, signal, print, etc.
73  * Support i386 (Linux, FreeBSD), x86_64 (Linux) and PPC (Linux)
74  * Guess reason why a signal is sent: invalid memory read, stack
75    overflow, division by zero, etc.
76  * Create simple C program to test strace.py and gdb.py
77  * Move files to three main modules: ptrace.binding, ptrace.syscall
78    and ptrace.debugger
79
80 Version 0.1 (2008-02-08)
81 ------------------------
82
83  * First public release
84
Note: See TracBrowser for help on using the browser.