fabro/lib/crates
Bryan Helmkamp 125a73aae3
fix(client): reject all obfuscated IPv4 host forms at parse time
Replace the narrow decimal/hex obfuscation check with a general
comparison: if the parsed host is an IPv4 literal and the raw input
host differs from the canonical dotted-quad form, the user supplied
an obfuscated variant (octal, short-form, mixed radix, leading
zeros, decimal integer, hex integer) that url::Url has already
normalized to 127.0.0.1. All such variants are rejected. Test now
covers decimal, hex, octal, two-/three-part short, mixed hex/
decimal, and leading-zero octets.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-20 22:18:44 -04:00
..
fabro-agent refactor(unwrap): clear non-test workspace warnings 2026-04-19 20:56:38 -04:00
fabro-api refactor(cli): rename ServerStoreClient -> Client, fabro_api::Client -> ApiClient 2026-04-20 08:56:09 -04:00
fabro-auth Merge remote-tracking branch 'origin/main' 2026-04-19 20:32:02 -04:00
fabro-checkpoint lint(clippy): disallow blocking std::fs on Tokio paths 2026-04-19 17:22:21 -04:00
fabro-cli refactor(client): dedupe helpers and fix TOCTOU in auth store 2026-04-20 21:44:09 -04:00
fabro-client fix(client): reject all obfuscated IPv4 host forms at parse time 2026-04-20 22:18:44 -04:00
fabro-config refactor: remove CLI client mTLS 2026-04-20 17:37:24 -04:00
fabro-core refactor(unwrap): clean runtime hotspot call sites 2026-04-19 20:48:44 -04:00
fabro-devcontainer refactor(unwrap): clear non-test workspace warnings 2026-04-19 20:56:38 -04:00
fabro-github refactor(server): relocate github helpers and use macros for test context 2026-04-20 08:39:12 -04:00
fabro-graphviz refactor(unwrap): clear non-test workspace warnings 2026-04-19 20:56:38 -04:00
fabro-hooks refactor(unwrap): clear non-test workspace warnings 2026-04-19 20:56:38 -04:00
fabro-http refactor: remove CLI client mTLS 2026-04-20 17:37:24 -04:00
fabro-install lint(clippy): disallow blocking std::fs on Tokio paths 2026-04-19 17:22:21 -04:00
fabro-interview Merge remote-tracking branch 'origin/main' 2026-04-19 20:32:02 -04:00
fabro-llm test(unwrap): clean shared support and workflow fixtures 2026-04-19 21:01:25 -04:00
fabro-macros refactor(settings): stage 6.3b shrink server runtime types + delete Combine 2026-04-09 18:27:46 -04:00
fabro-mcp fix: simplify fabro-http crate and fix correctness issues 2026-04-12 12:20:55 -04:00
fabro-model chore(clippy): require reasons on allow attributes 2026-04-19 20:24:24 -04:00
fabro-oauth Merge remote-tracking branch 'origin/main' 2026-04-20 09:47:47 -04:00
fabro-proc fix(cli): detect zombies in server stop poll loop 2026-04-20 17:39:52 -04:00
fabro-retro refactor(client): extract fabro-client crate 2026-04-20 20:42:20 -04:00
fabro-sandbox refactor(unwrap): clear non-test workspace warnings 2026-04-19 20:56:38 -04:00
fabro-server refactor(client): extract fabro-client crate 2026-04-20 20:42:20 -04:00
fabro-slack refactor(http): centralize reqwest behind fabro-http 2026-04-12 11:48:54 -04:00
fabro-spa Merge remote-tracking branch 'origin/main' 2026-04-20 09:33:08 -04:00
fabro-store refactor(client): extract fabro-client crate 2026-04-20 20:42:20 -04:00
fabro-telemetry Merge remote-tracking branch 'origin/main' 2026-04-19 20:32:02 -04:00
fabro-template refactor(async): lint std::process::Command across all targets 2026-04-12 13:35:57 -04:00
fabro-test test(harness): collapse live_marker_count match into matches! 2026-04-20 16:38:28 -04:00
fabro-tracker refactor(unwrap): clear non-test workspace warnings 2026-04-19 20:56:38 -04:00
fabro-types refactor(client): extract fabro-client crate 2026-04-20 20:42:20 -04:00
fabro-util refactor(unwrap): clear non-test workspace warnings 2026-04-19 20:56:38 -04:00
fabro-validate fmt: apply nightly rustfmt after merge 2026-04-11 13:43:30 -04:00
fabro-vault lint(clippy): disallow blocking std::fs on Tokio paths 2026-04-19 17:22:21 -04:00
fabro-workflow refactor(client): extract fabro-client crate 2026-04-20 20:42:20 -04:00