alpha
Login
or
Join now
xeiaso.net
/
ircd.rs
Star
1
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Proof of concept mechanical port of ircnet/ircd to Rust as part of a bit about C being insecure for network services
Star
1
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Overview
Issues
Pulls
Pipelines
ircd.rs
/
leveva-iauth
/
at
master
2 folders
1 file
Xe Iaso
perf(iauth): run auth modules concurrently instead of serially
3mo ago
042db04d
src
perf(iauth): run auth modules concurrently instead of serially AuthPipeline::run awaited each module (ident/dnsbl/socks/webproxy) in sequence, each with its own timeout, so worst-case registration latency was the sum of the per-module timeouts instead of the max. Spawn the independent probes on a JoinSet, then fold outcomes by original module index so the ordering semantics (first-Username-wins, Deny short-circuit, NoOpinion/timeout ignored) are byte-for-byte identical.
3 months ago
tests
feat(leveva): add pipe auth module (P11 slice 44) Port mod_pipe.c (oracle iauth-rs) into leveva-iauth as the last denying auth module, completing the dnsbl/socks/webproxy/pipe set. Spawns an operator-configured external program with the client IP + source port appended as separate argv entries (no shell), reads one stdout byte: 'N' denies via the 465 gate, 'Y' allows, anything else abstains. Security hardening over the C module: explicit argv (no injection), config-only command source, stdin(null) + kill_on_drop so a timed-out probe is reaped. Pure classify()/build_argv() isolate the verdict map and argv composition for deterministic unit + proptest fuzzing. Tests: 11 unit + 3 config + 4 proptest + golden_pipe boot. No leveva-integration differential (oracle has no pure verdict fn; Y/N map trivially identical).
4 months ago
Cargo.toml
chore(p12)!: delete the mechanical port + its deployment rigging leveva reached parity, so the strangler fig is complete: delete the faithful mechanical port (ircd-common, ircd-rs), its C-era auth scaffolding (iauth-rs, long since subsumed by the native in-process leveva-iauth), and the oracle differential crate (leveva-integration). The final `cargo test -p leveva-integration` run was skeleton-green against the oracle before deletion. The behavioral guarantees were already carried outside the oracle by leveva's self-contained golden + proptest suite (leveva/leveva-iauth have zero Cargo/use dependency on the deleted crates), so the oracle tests retire with their oracle. Also strip the mechanical port's deployment rigging per request: - docker/Dockerfile.ircd + the `ircd` bake target - docs/k8s/example-network/ (its whole purpose was the now-impossible leveva<->ircd S2S link demo) Workspace is now leveva + leveva-iauth. Build clean, clippy clean, `cargo test -p leveva -p leveva-iauth` green. Everything deleted remains recoverable from git history (P8 final reference-C run is the provenance anchor).
4 months ago