Derek Parker
117d945897
Use curpc for ret offset
2015-04-03 11:55:58 -05:00
Derek Parker
1d99e03f83
Reduce exported members of DebuggedProcess struct
2015-04-03 11:10:35 -05:00
Derek Parker
ccad114ed1
DRY code duplicated across OSes
2015-04-03 10:52:31 -05:00
Derek Parker
e4426fa51f
Return breakpoint directly from trapWait
2015-04-03 10:47:27 -05:00
Derek Parker
e7a9daf248
Return thread directly from trapWait
2015-04-03 10:32:43 -05:00
Derek Parker
86e1530524
Improve next
implementation
...
* Better tracking of current goroutine
* More efficient, eliminates superfluous step syscalls
* Handles concurrency and thread coordination better
2015-03-31 17:12:45 -05:00
Paul Sbarra
98c054aab4
linux: Don't ask to kill a process that has exited
2015-03-28 15:03:25 -05:00
Derek Parker
0ac24abd2d
Validate args to thread command
2015-03-26 13:15:35 -05:00
Derek Parker
0d9b1ed29b
Minor function refactor
2015-03-24 08:31:56 -05:00
Derek Parker
684dc92ccd
Improve handling of process natural death (OS X)
2015-03-21 17:33:35 -05:00
Derek Parker
6b3d724fdc
Return error if thread_resume fails on suspend_count > 0
2015-03-21 17:05:45 -05:00
Derek Parker
530f66dcf6
Remove erroneous vm deallocation
2015-03-21 17:05:13 -05:00
Derek Parker
8ad5639c5e
Fix C file formatting
2015-03-21 15:05:09 -05:00
Derek Parker
b8693f6d1a
Properly restore vm protections in OS X
2015-03-20 23:48:57 -05:00
Derek Parker
f8a9a410fb
Remove MIG generated exception / message handling
...
This allows greater flexibility for using a port set and determining
whether the wait returned due to a breakpoint or process natural death.
2015-03-20 16:07:26 -05:00
Derek Parker
e616b7fab6
Stop debugged proc on ctrl-c (OS X)
2015-03-13 15:13:41 -05:00
Derek Parker
4729ae828b
Allow arbitrary switching between threads
2015-03-13 14:50:01 -05:00
Derek Parker
9f70f43f5c
Update thread printing, now denotes current thread
...
Also refactored code a bit, removed printing functions from proctl
package and inlined them into command.
2015-03-11 18:08:20 -05:00
Derek Parker
11405314d8
Continue thread properly taking into account suspend_count
2015-03-07 18:27:03 -06:00
Derek Parker
0660fcc09b
Reap child process for status (OS X)
2015-03-06 17:28:53 -06:00
Ivar Gaitan
8b04d877a0
Handle process natural death a bit better
2015-03-06 17:03:08 -06:00
Derek Parker
f39e134d1d
Improve error for HW breakpoint
2015-03-06 08:53:55 -06:00
Derek Parker
0b3cf1cd15
Add command to print active breakpoints
2015-03-06 08:53:54 -06:00
Derek Parker
c4f90625f6
Fix linux build
2015-03-01 11:02:17 -05:00
Derek Parker
562a6fcca0
Fix mach kernal deallocations
2015-03-01 09:46:01 -06:00
Derek Parker
03b17821c8
Inline function
2015-02-28 22:10:39 -06:00
Derek Parker
ac914fe14a
Organize code a bit more
2015-02-28 22:08:42 -06:00
Derek Parker
2b76fee539
Inline function
2015-02-28 22:03:26 -06:00
Derek Parker
9f05f444eb
Cleanup TODOs
2015-02-28 21:53:26 -06:00
Derek Parker
c7cc84fa83
More cleanup
2015-02-28 21:34:55 -06:00
Derek Parker
0ba45f8487
Cleanup
2015-02-28 21:14:22 -06:00
Derek Parker
cd30ca6cb4
Remove defs file
2015-02-28 21:14:13 -06:00
Derek Parker
4d918aeb2c
Handle more kern return values and general cleanup
2015-02-28 10:44:36 -06:00
Derek Parker
b065674fe3
Handle set_pc errors
2015-02-28 10:41:05 -06:00
Derek Parker
636719a4c6
Handle thread_get_state errors
2015-02-28 10:39:21 -06:00
Derek Parker
77725b3d66
Cleanup kernel allocations
2015-02-28 10:35:44 -06:00
Derek Parker
f4ec73bb62
Fix hanging issue on Linux
2015-02-28 09:05:37 -05:00
Derek Parker
27f68abebd
Fix Linux panic
2015-02-27 22:35:26 -05:00
Derek Parker
450e5c4805
Fix linux compile errors
2015-02-27 17:13:35 -06:00
Derek Parker
35a0471fd6
Update more exc files for cond compilation
2015-02-27 15:32:47 -06:00
Derek Parker
fc4469b460
Rename exc files for conditional compilation
2015-02-27 15:31:07 -06:00
Derek Parker
7f52928c03
Cleanup of printing and putsing
2015-02-27 15:27:48 -06:00
Derek Parker
2d2d70641e
(Mostly) working on OS X
2015-02-27 15:03:06 -06:00
Derek Parker
daf5030023
slight cleanup
2015-02-17 12:27:47 -05:00
Derek Parker
4d88d9ed8d
Prefer binary search over tree lookup for FDEs
...
FDEs previously were loaded into a red/black tree and searched. This is
significantly more expensive than a binary search over a slice. Not sure
what I was thinking using a red/black tree - this binary search
implementation is significantly more efficient.
2015-02-04 19:22:39 -06:00
epipho
6b843c18eb
Removed debugging printf
2015-02-04 13:15:10 -05:00
epipho
46b5348455
Comment cleanup. Added info vars reference to docs
2015-02-04 13:15:10 -05:00
epipho
c7fe4e3e88
Added limit to array size (64) and struct member recursion (2) when printing
2015-02-04 13:15:10 -05:00
epipho
fe8e85e341
Start of info vars
2015-02-04 13:15:10 -05:00
epipho
5231b06a6b
Added handler for unknown and void types. Handle nil fn pointers.
2015-02-04 13:15:09 -05:00