Ryan Fleury
9262938b2f
raddbg: store connected remote controller address correctly, ui: fix tooltips escaping window
2026-10-07 13:05:08 -07:00
Ryan Fleury
297cb626f5
fix bad msg_size calculation
2026-10-07 12:24:13 -07:00
Ryan Fleury
4f5e795ae9
dbg_server, remote controller connections checkpoint
2026-10-07 12:58:24 -06:00
Ryan Fleury
98467d0868
raddbg: explicit packet headers for ipc; render_opengl: fix bad scissoring; linux_socket: fix not waking up, fix SIGPIPE; dbg_engine: checkpoint on sketching out multi-demon attaching abstraction, machine ID -> demon ID
2026-10-06 18:10:49 -06:00
Ryan Fleury
7da38c5f3b
raddbg_server: adjust split between main / demon thread - main thread can handle many things, like memory & regs reads/writes, but cannot handle ctrl-thread-only operations.
2026-10-02 21:08:49 -07:00
Ryan Fleury
34a0ff4e80
raddbg_server: checkpoint
2026-10-02 20:57:47 -07:00
Ryan Fleury
bf000289db
raddbg: fix potentially stale cfg lookups, do not hash cfg IDs since they are just monotonically increasing
2026-10-02 12:57:30 -06:00
Ryan Fleury
2db9ec1312
fix ub reported by gcc builds
2026-10-02 08:17:23 -07:00
Ryan Fleury
f6b4a38134
dwarf: fix incorrect offset table parsing in cases of rnglists. extra offset field & different interpretation of table entries.
2026-10-01 16:31:18 -06:00
Ryan Fleury
0956d2fa14
linux_demon: never report signal repeats for signals which cannot ever be repeated
2026-10-01 14:22:51 -07:00
Ryan Fleury
53192ff3fa
linux_demon: detecting first vs. second chance signals correctly; feed back in exception events. used for exception event filtering logic
2026-10-01 13:20:16 -06:00
Ryan Fleury
b7ee36e35e
linux_demon: do not report exception repeats on first-chance signals
2026-10-01 13:11:58 -06:00
Ryan Fleury
5acbed46ba
raddbg: adjust default linux signal filtering settings to match lldb's defaults
2026-10-01 12:58:54 -06:00
Ryan Fleury
cc9951b5ef
linux signal codes, user settings to enable breaking on them, feed into debug engine
2026-10-01 11:49:53 -07:00
Ryan Fleury
56073cfff0
linux_window_manager: query default refresh rate via xrandr, rather than assuming 60 (oops!)
2026-10-01 10:47:46 -07:00
Ryan Fleury
a256e5c48a
sketch out linux non-host layer, for mapping numeric exception codes to metadata on debugger frontend. also do not always call XQueryKeymap/XQueryPointer; these are very expensive and we only use them in scenarios where we can take the most recently cached value from events.
2026-10-01 10:33:24 -07:00
Ryan Fleury
8c1c35508a
bump to 30
2026-10-01 09:16:22 -07:00
Ryan Fleury
3ee3ecfeee
do not require git to build correctly; optionally mix in IDs in builds, do not reference git hash without checking in raddbg; do not build/run metaprogram by default in build.sh; also match build.bat behavior of single 'release' arg implying raddbg build
2026-10-01 09:12:29 -07:00
Ryan Fleury
cd41ba199b
win32_socket: fix clang warnings
2026-09-30 14:54:59 -07:00
Ryan Fleury
4195ce4bba
raddbg: bitmap cache on ui thread - no win from async. incompatible with gl.
2026-09-30 12:28:01 -07:00
Ryan Fleury
a2988333a5
linux_sock: meet windows in functionality - send/recv on both client/server
2026-09-30 11:42:03 -07:00
Ryan Fleury
b5c02dd4fa
linux_socket: checkpoint, get accepting/receiving working
2026-09-30 11:29:40 -07:00
Ryan Fleury
50b61822a8
stub out linux sockets
2026-09-30 09:48:45 -07:00
Ryan Fleury
98657d9b38
raddbg: eliminate old ipc mechanism; allow ipc network address override via command line argument
2026-09-30 09:32:02 -07:00
Ryan Fleury
29119335ef
socket: client connections/sends; raddbg: move ipc sender mode to using socket layer
2026-09-30 09:27:47 -07:00
Ryan Fleury
82aaccd945
sock: fix sends, raddbg_core: send ipc results through socket, back to endpoint from which ipc command(s) originated
2026-09-30 08:57:11 -07:00
Ryan Fleury
d2140ace3d
raddbg: allow overriding ipc port from command line
2026-09-30 08:42:15 -07:00
Ryan Fleury
6a52e6deec
sock: bucket socket connection pools / requests by 'session' - one session = one listener port, one pool of connections / io ring buffers - we will want many of these, since for ipc, the debugger wants to act as a server on the UI thread, and for remote, the debugger wants to act as a client on the ctrl thread.
2026-09-30 08:31:54 -07:00
Ryan Fleury
7ee21690c2
ui: fix scroll increment for more consistency with default native windows behavior; linux_window_manager: make consistent with windows scroll events
2026-09-30 08:12:47 -07:00
Ryan Fleury
be3fa56927
base: memory map -> push new ranges to front, rather than end - this makes the common case of iterative retry loops asking for memory, then immediately needing it, faster
2026-09-30 07:56:33 -07:00
Ryan Fleury
00d4a1a56f
dbg_engine: heuristically clear memory map & grab new stack page when advancing to new regions of stack for large unwinds
2026-09-30 07:55:55 -07:00
Ryan Fleury
db645e5c90
build fixes
2026-09-29 21:14:43 -07:00
Ryan Fleury
e270def19f
socket: checkpoint on socket layer / win32 impl; plug into ipc driving
2026-09-29 21:08:34 -07:00
Ryan Fleury
f781622a54
checkpoint on sockets layer
2026-09-29 16:34:18 -07:00
Ryan Fleury
7082c7b67d
linux_demon: thread names
2026-09-29 13:09:41 -06:00
Ryan Fleury
0b91cab00a
linux_demon: PTRACE_EVENT_STOPs can sometimes be reported even if a thread has already hit a trap (e.g. a trap net or breakpoint trap). this would sometimes cause spurious SIGTRAPs after issuing a PTRACE_INTERRUPT - so we need to flag halted threads to not treat that as a 'real' trap. furthermore, even though that trap was hit, it does not guarantee that the debugger would next see a SIGTRAP. that would cause spurious SIGILLs, because we'd resume threads *after* the trap, despite not seeing the trap, so they'd just see a malformed instruction (the bytes subsequent the initial trap). so in those cases, we need to roll such threads back, so that they re-execute the trap, and so that we see a regular SIGTRAP, and handle the trap correctly.
2026-09-29 12:28:05 -06:00
Ryan Fleury
2933143b08
win32_demon: make conflicting trap net / user bp trap behavior identical to linux - always find info for *first* trap in list. second... dbg_engine: store trap net traps *first*, so that trap net behavior is preferred when trap nets conflict with user bp traps.
2026-09-28 10:10:16 -06:00
Ryan Fleury
4e7a6127d8
dbg_engine: process memory cache - always retry on memgen 'tearing', do not enforce size restriction. linux_demon: correctly relativize loaded module paths when needed per the loading process' working directory. raddbg: disasm view, do not skip too far back - can go into unmapped space. eval: file/folder filtering - hoist exact matches to the top.
2026-09-28 09:18:59 -06:00
Ryan Fleury
e7a9c430f8
rdi_from_dwarf: fix incorrect argument slot used in breg<N> conversion
2026-09-28 08:38:30 -06:00
Ryan Fleury
d66094161d
rdi_from_dwarf: do not assume non-zero root tags in each unit
2026-09-28 08:31:05 -06:00
kwy404
1ac8fb5202
base: fix data4 byte order in try_guid_from_string
...
The last two GUID groups were packed into a U64 and copied to data4 in
host byte order, so on little endian data4 came out reversed and
string_from_guid did not round trip (for example /RAD_GUID). Store the
value big endian so data4[0] is the first byte of the fourth group.
2026-09-27 00:20:42 -07:00
Ryan Fleury
2c226d8a4b
selected-thread-only breakpoints; user setting for adding that by default; do this for 'run-to-line' operations
2026-09-25 14:28:54 -06:00
Ryan Fleury
315175e34d
keep debug info status viz, just omit string if it matches the module (usual linux case)
2026-09-25 13:45:31 -06:00
Ryan Fleury
eb845405e0
linux_window_manager: clipboard support
2026-09-25 13:10:08 -06:00
Ryan Fleury
0d93e80f84
linux notes
2026-09-25 11:19:24 -06:00
Ryan Fleury
0317f4c810
linux_demon: correct rebasing / phdr address parsing for both static/dynamic ELFs
2026-09-25 11:15:07 -06:00
Ryan Fleury
bc7434f7ed
linux_demon: do not fail when there is no dynamic loader present
2026-09-25 10:29:16 -06:00
Ryan Fleury
9fdcc88cab
rdi_from_dwarf: correctly use unit_dir only when line table directories are relative; correctly use unit compilation unit name as first file in pre-dwarf-5
2026-09-24 11:37:24 -06:00
Ryan Fleury
31d10c3b4f
rdi_from_dwarf: preserve unit dir in generated source file paths. do not assume relativity to binary, often incorrect
2026-09-24 11:24:42 -06:00
Ryan Fleury
df1de0541a
linux_demon: robustness to clone-then-stop, *or* stop-then-clone
2026-09-24 10:12:22 -06:00