Ryan Fleury
ecad70ca19
pass through data breakpoint length, more progress on fixes/correctness in first pass
2025-04-11 18:07:00 -07:00
Ryan Fleury
929e68d074
first pass at setting up x64 debug registers for data breakpoints
2025-04-11 17:49:16 -07:00
Martins Mozeiko
0c999d70dc
better error message if CreateProcess fails
2025-04-07 10:42:54 -07:00
Nikita Smith
1c518bfa07
prefix COFF machine enums with "Type"
2025-03-31 22:53:10 -07:00
Ryan Fleury
bca5169447
eliminate manual console creation & needs-console detection; use user-error mechanism for process creation failure
2025-03-31 16:38:18 -07:00
Ryan Fleury
3911a66b30
fill out first pass implementations of raddbg_markup features; thread names, thread colors, format-string output-debug-string helper, attachment-checking
2025-03-28 10:56:41 -07:00
Ryan Fleury
a826afd4d6
merge part 2
2025-03-25 16:30:05 -07:00
Ryan Fleury
c4f4b5ff01
merge
2025-03-25 16:21:51 -07:00
Ryan Fleury
4316325b33
demon win32: only alloc console when launching target if the exe is not a windows gui pe subsystem
2025-03-19 16:08:29 -07:00
Nikita Smith
153bbc7b1d
pass over COFF layer
...
- updated naming convention on structs, enums, and macros to conform with code base style
- moved related structs closer to each other
- moved parser code to separate file
2025-01-20 19:31:52 -08:00
Ryan Fleury
3cd32fa235
correctly prepare paths for windows launches in demon
2024-11-03 14:45:21 -08:00
Ryan Fleury
4769d0a8d4
narrow scope of name resolution for debugger collections; default launching to not attach to child processes, set up msgs to parameterize this
2024-10-28 15:37:28 -07:00
Ryan Fleury
e376ad8113
stdout/stderr/stdin file path overrides for targets
2024-10-17 11:25:47 -07:00
Ryan Fleury
9932a30ef9
entity parameter tree equipment; architecture -> arch
2024-08-29 13:16:50 -07:00
Ryan Fleury
6d30455e76
further progress on eliminating file entities; further entity simplification; set up external identifier resolution map for evaluating 'meta' variables; sketch out generalized entity serialization path
2024-08-13 11:39:25 -07:00
Ryan Fleury
b18e437337
git normalize all files
2024-07-26 11:13:47 -07:00
Martins Mozeiko
ce7c8d5244
avx512 registers & fixes for getting & setting x64 context
2024-07-23 08:43:35 -07:00
Ryan Fleury
1b74fb0760
simplification pass over os core layer; simplification pass over base arena; set up build.sh; stub out new spot for linux os core
2024-07-15 17:23:01 -07:00
Ryan Fleury
b5b5aca691
log win32 demon resume code
2024-06-19 12:07:08 -07:00
Ryan Fleury
435877824a
oh NO... never mind... mystery solved... be VERY CAREFUL ABOUT STATE MACHINES! fixes incorrect non-resets of win32 demon 'exception not handled' state, which was buggily leading to DBG_EXCEPTION_NOT_HANDLED being passed to ContinueDebugEvent
2024-06-19 11:56:47 -07:00
Ryan Fleury
376a7c48a5
pass over logging, include a lot of extra info in ctrl thread log; demon abstraction for target-process memory allocation/protection; switch spoofs to being in allocated page, rather than at bogus address
2024-06-19 11:12:21 -07:00
Ryan Fleury
f6eec680bc
adjust single stepping rule to be robust to non-single-step events; this is still not what the issue is pertaining to the stepping bug...
2024-06-18 17:19:17 -07:00
Ryan Fleury
723c7c5d4d
further tightening up of win32 demon run path; take a few fastpaths on x64; speeds up conditional breakpoints
2024-06-14 09:50:33 -07:00
Ryan Fleury
fb9824dc24
remove unnecessary ctrl log flushes, which seriously bloated the ctrl thread running path
2024-06-14 07:57:46 -07:00
Ryan Fleury
fb6689a74d
always report debug string events earlier in queue
2024-06-13 15:28:56 -07:00
Ryan Fleury
81b45f1a2f
do not broadcast unnecessarily in task system kickoff
2024-06-13 15:18:28 -07:00
Ryan Fleury
d3adfdeced
deduplicate debug string event generation; log ctrl messages
2024-05-31 11:17:59 -07:00
Ryan Fleury
6d4b4b1526
time-based exit path for demon win32 event consumption loop, to not overly-aggressively-buffer things
2024-05-30 07:10:21 -07:00
Ryan Fleury
da54fd1217
majorly improve outputdebugstring performance
2024-05-30 07:06:29 -07:00
Ryan Fleury
e073ff3218
more notes on the multithreaded access violation stuff!
2024-05-29 08:31:24 -07:00
Ryan Fleury
2512d07c72
correctly roll-back late-hits for int3s
2024-05-29 08:08:44 -07:00
Ryan Fleury
9349ac9e72
eliminate weird rollback/re-adjust rules for threads hitting int3s - rollback should only ever happen for temporary traps, e.g. user breakpoints or stepping. the fact that the thread shows *after* the trap later is a visualization issue, not a functionality issue
2024-05-24 08:20:10 -07:00
Ryan Fleury
364a2160af
correctly register jit debugger exe; collect jit_debug_info into dmn win32; notes
2024-05-15 13:25:20 -07:00
Ryan Fleury
3085482e34
expand base layer logging mechanism with bucketing info; make one bucket for passive log collection, another for user-facing errors; always consume user errors at the top-level and display; use user-error mechanism to communicate bad 32-bit app launches from demon
2024-05-14 08:10:02 -07:00
Ryan Fleury
05f2cde2ee
fix clang
2024-05-13 13:10:49 -07:00
Ryan Fleury
9719688bb3
improve query visualization in tabs; don't collapse title before query string
2024-04-13 11:46:55 -07:00
Ryan Fleury
d560f8c734
fix backslash escaping rules in cfg serialization; fix small scrolling (e.g. from trackpad) often being truncated to having no effect; fixed hanging when set-thread-name specifies a non-readable address
2024-04-09 07:37:53 -07:00
Ryan Fleury
4899f1871b
correctly close module file handles on module unloading in new demon layer
2024-03-27 11:19:24 -07:00
Ryan Fleury
aa85b2cdbb
correctly pass unicode environments to launched child processes; also treat unicode command line arguments correctly
2024-03-25 12:57:00 -07:00
Ryan Fleury
e136a67535
demon/win32: correctly report exception repetitions for unhandled exception cases
2024-03-25 11:00:00 -07:00
Ryan Fleury
995804cc78
demon2 -> demon; eliminate original demon layer
2024-03-22 16:33:48 -07:00
Ryan Fleury
4074551a1a
hook up demon2 initialization to base layer entry point
2024-03-05 14:27:40 -08:00
Ryan Fleury
0c436f0d5b
first pass at demon replacement layer; just trimming out old code & cruft & reading & naming pass
2024-03-05 14:17:41 -08:00
Ryan Fleury
7defce94c7
float codeview, msf, pdb layers up as regular codebase layers, and out of converter-specific code; clangify some builds
2024-02-13 09:51:50 -08:00
Ryan Fleury
9ef1b4b021
fix system processes lister fuzzy matching; fix ctrl layer locking modules on detach (demon was not reporting module string!)
2024-02-06 13:59:43 -08:00
Ryan Fleury
d2d3d14c41
demon/win32: roll back on all hit traps, even if explicit. the previous implementation would silently skip threads past explicit traps that they hit, as a way of implicitly storing the fact that trap exceptions had been reported, and the user could continue past them. this resulted in incorrect instruction pointer display in those circumstances. this change adjusts this, so that after a trap exception of any kind, the instruction pointer is ALWAYS rolled back. to ensure that the trap is not repeatedly hit, if the associated exception has already been reported, to allow the user to e.g. step over traps (this is the behavior of Visual Studio), additional state is stored per-thread-entity, which allows a subsequent demon_os_run to adjust RIPs past their previously reported traps before running again.
2024-02-05 10:47:57 -08:00
Ryan Fleury
c700264445
use explicit thread name exception thread ID parameter, when not implicit
2024-01-30 13:11:37 -08:00
Jeff Roberts (Bellevue)
89c5d22f7f
Error on missing app, and 32-bit apps
2024-01-21 21:08:14 -08:00
Ryan Fleury
42993b3fb0
silently filter access violations in asan's shadow address space
2024-01-19 17:47:56 -08:00
Ryan Fleury
d2ec1d6a3a
interpret & visualize __fastfail events correctly
2024-01-14 21:36:39 -08:00