Files
martillo-maldito/Cargo.toml
T
midefosandClaude Opus 5.5 13ca4518b4 feat: IPv6 bans, timeout-less set migration, typed errors, clap/thiserror 2
- Detect an existing ipset without timeout support and migrate it in place
  (temporary set + copy members + ipset swap + destroy) without unblocking.
- IPv6: "<set>6" (family inet6) + ip6tables match-set rule; ban/unban pick
  the set by address family. IPv4 keeps working if IPv6 is unavailable.
- Remove unwrap()/panics: MartilloMaldito::new/with_config and every public
  method return Result<_, MartilloError>; ignore multiport/range rules when
  parsing secured ports; handle an empty DOCKER-USER chain.
- Ipset::save_all / save-ipsets for ipset-persistent (/etc/iptables/ipsets).
- structopt -> clap 4, thiserror 1 -> 2. CLI exits 1 on errors.
- Kernel tests skip without CAP_NET_ADMIN; run them with `unshare -rn`.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 01:36:54 +01:00

23 lines
382 B
TOML

[package]
name = "martillo_maldito"
version = "0.3.0"
edition = "2021"
[dependencies]
clap = { version = "4.6", features = ["derive"] }
iptables = "0.5.2"
serde = {version = "1.0.217", features = ["derive"]}
serde_json = "1.0.134"
regex = "1.11.1"
thiserror = "2.0"
[dev-dependencies]
serial_test = "3.2.0"
tempfile = "3.13"
[lib]
name = "martillo_maldito"
path = "src/lib.rs"