rea/bridge
Giridhar 6e0d5d64d3
feat(ghidra): admit set_address_name and set_addresses_names (#1635)
* feat(ghidra): admit set_address_name and set_addresses_names

Ghidra sessions rejected the existing naming tools with "operation is not declared by this provider", so agents had to use annotate_native_function, which returns a complete function dossier per rename and cannot name data addresses.

The Java bridge now names a local function entry (namespace-aware, like annotate_native_function) or creates/renames the primary label at any other mapped address, verifying readback. set_addresses_names applies each address in its own transaction and reports per-address booleans. Both are mutating capabilities: excluded from read-only (Windows P0) handshakes and from snapshot replay.

* fix(ghidra): normalize qualified symbol names and reject empty leaves

Share namespace-aware leaf normalization across functions and primary labels. Invalid qualified leaves now return false for naming operations without marking the provider unavailable; function annotations retain typed invalid-input errors.

Extend real CLI/MCP namespace verification with namespaced globals, readback replay, failed-name rollback, mixed batches, and capability checks.

Validation: 75 focused tests and npm run check pass. Ghidra 12.1.4/JDK 21 namespace verification passes on macOS arm64 with unchanged source bytes and complete cleanup. The full host lane passes this workflow before the existing entry-alias fixture fails because the compiler places its interior label at the function entry.

---------

Co-authored-by: morluto <76467478+morluto@users.noreply.github.com>
2026-10-11 04:35:38 +08:00
..
android fix(android): report startup and selector failure causes 2026-10-09 06:49:02 +08:00
ghidra feat(ghidra): admit set_address_name and set_addresses_names (#1635) 2026-10-11 04:35:38 +08:00
mitmproxy fix(domain): preserve prototype-named JSON members through Evidence boundaries (#1049) 2026-10-08 21:32:48 +08:00
native fix(process): stabilize native capture and ownership prerequisites 2026-10-09 06:49:02 +08:00
process fix(process): stabilize native capture and ownership prerequisites 2026-10-09 06:49:02 +08:00
pwndbg feat(native): inspect recorded crashes through pwntools and pwndbg (#1054) 2026-10-08 16:50:31 +08:00
pwntools fix(providers): validate ELF versions and preserve probe cancellation 2026-10-09 00:49:30 +08:00
hopper_bridge.py fix(contracts)!: require observed provider output metadata 2026-10-10 03:52:13 +08:00