From 7da8d2141c2d05c595e0533220d5218f99ea5712 Mon Sep 17 00:00:00 2001 From: Nils Andreas Svee Date: Wed, 21 Oct 2026 01:31:32 +0700 Subject: [PATCH] chore(release): irtt-rs 0.9.0 --- CHANGELOG.md | 18 ++++++++++++++++++ Cargo.lock | 2 +- crates/irtt-app/Cargo.toml | 2 +- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e90fbcd..3462f03 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -192,6 +192,24 @@ release. The format is loosely based on ## irtt-rs +### 0.9.0 + +#### Added + +- Client and TUI `--bind-addr IP[:PORT]` selects a local source address and optional UDP port. Omitted ports and port `0` use an ephemeral port; IPv6 addresses with an explicit port use `[ADDR]:PORT`. The bind address must match the target's address family, and fixed ports can conflict across multiple target sockets. +- Client and TUI `--bind-device DEVICE` binds sockets to a network interface on Linux, Android, and Fuchsia. +- Client and TUI `--mark MARK` sets a socket firewall mark for policy routing or firewall rules on Linux, Android, and Fuchsia. It accepts decimal and `0x`-prefixed hexadecimal unsigned 32-bit values. +- Client and TUI `--fib FIB` selects a routing table on FreeBSD, accepting a decimal unsigned 32-bit value. + +#### Fixed + +- Restored CLI compatibility with upstream IRTT for hexadecimal HMAC keys: client, TUI, and server `--hmac`, server `IRTT_SERVER_HMAC`, and client/TUI per-target `@hmac=KEY` accept a lowercase `0x` prefix followed by hexadecimal bytes, with either case allowed for digits. Literal UTF-8 keys remain supported; the HMAC-MD5 algorithm is unchanged. +- Server argument debug output now redacts HMAC keys, matching the client and TUI. Server help hides the `IRTT_SERVER_HMAC` value, and invalid global HMAC keys are rejected during configuration preparation without echoing key material. + +#### Compatibility + +- Keys beginning with literal `0x` are now interpreted as hexadecimal. Empty keys, empty hexadecimal keys, odd-length hexadecimal strings, and invalid hexadecimal digits are rejected. Per-target `@hmac=` continues to disable authentication explicitly. + ### 0.8.0 #### Added diff --git a/Cargo.lock b/Cargo.lock index bd1c593..fce523b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -884,7 +884,7 @@ dependencies = [ [[package]] name = "irtt-rs" -version = "0.8.0" +version = "0.9.0" dependencies = [ "chrono", "clap", diff --git a/crates/irtt-app/Cargo.toml b/crates/irtt-app/Cargo.toml index df09532..4328ac0 100644 --- a/crates/irtt-app/Cargo.toml +++ b/crates/irtt-app/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "irtt-rs" -version = "0.8.0" +version = "0.9.0" description = "IRTT-compatible client, TUI, and server applications" edition.workspace = true license.workspace = true