Commit Graph

9 Commits

Author SHA1 Message Date
Michael Mikovsky 49901b6370 Reorganize protocol. 2026-04-24 13:37:30 -06:00
Michael Mikovsky dcf0fe230b Work on implementing the protocol. 2026-04-24 12:32:24 -06:00
Michael Mikovsky fcb3b2be17 feat: complete protocol spec and initial implementation
- Write PROTOCOL.md with full wire format spec and 8 real-world scenario
  analyses (reconnect, multi-operator, large files, AV evasion, router crash,
  malformed packets, future pivoting)

- Rewrite workspace structure:
  - unshell lib: protocol types (PacketHeader, TreeRequest/Response,
    HandshakeMessage/Ack), Transport trait, TcpTransport, Tree routing
  - ush-router: router binary with per-node threads, NodeRegistry with
    longest-prefix path matching, packet relay
  - ush-payload: implant binary with reconnect loop, module tree, InfoModule
  - ush-cli: operator REPL with rustyline, session management, command parser

- Protocol design: two-part rkyv frame [header][payload]; router reads only
  header for routing, payload bytes forwarded opaque

- All code documented with doc comments and examples
- Zero warnings, zero errors across entire workspace
- 32 tests pass (unit tests for tree routing, TCP transport, framing,
  command parsing, node registry)
2026-04-20 23:38:02 -06:00
Michael Mikovsky f3a59f5082 Convert to no_std, add request type 2026-03-17 16:40:05 -06:00
Michael Mikovsky 07e3f83bcf Put logging time behind log_debug 2026-03-04 10:00:06 -07:00
Michael Mikovsky 55d2deef1c Add init checking to PrettyLogger 2026-02-20 15:55:21 -07:00
Michael Mikovsky 6c6625e9ad Make the log macro's definition more consise 2026-02-20 14:34:32 -07:00
Michael Mikovsky 2a18639d84 Rename things to ush for brevity. Add Tree system. 2026-02-09 10:27:15 -07:00
Michael Mikovsky 5d6d746985 Move everything into workspace 2026-01-26 09:13:46 -07:00