Skip to content

Releases: Eugeny/russh

v0.57.0

24 Jan 17:40

Choose a tag to compare

Fixes

  • fdf2925: fixed #625 - rand crate breakage (#628) (Eugene) #628
    • Note that this bumps the internal rand-core dependency. The stable rand-core dependency is still re-exported as russh::keys::ssh_key::rand_core.
  • e265845: Make Config accessor methods for user/port/host public (#620) (Adam Chappell) #620

v0.56.0

22 Dec 23:46

Choose a tag to compare

Changes

Fixes

v0.55.0

02 Dec 17:56

Choose a tag to compare

Changes

Fixes

  • upgrade libcrux-ml-kem since 0.0.3 was yanked (#606) #606 (Gaëtan) / (#608) (Kenny Root) #608
  • 5b0c70f: Fix clippy lints to fix CI (#596) (Lucas Kent) #596
  • 79e76af: Remove unneeded deps (#595) (Lucas Kent) #595
  • 7acf9c5: Resolve warning: macro-expanded 'macro_export' macros from the current crate cannot be referred to by absolute paths (#592) (iamjpotts) #592

v0.54.6

24 Nov 15:15

Choose a tag to compare

Commits

  • 140e482: Add ML-KEM post-quantum hybrid key exchange support (#585) (Kenny Root)

v0.54.5

24 Nov 15:15

Choose a tag to compare

Changes

Fixes

v0.54.4

24 Sep 21:10

Choose a tag to compare

Fixes

v0.54.2

20 Aug 19:32

Choose a tag to compare

Fixes

  • 98b7e91: fixed #558 - zlib compression fails after key renegotiation
  • f0881aa: fixed #500 - Including TTY_OP_END in terminal_modes triggers ‘Packet integrity error’ due to duplicate sentinel

v0.54.1

04 Aug 12:25

Choose a tag to compare

Security fixes

  • 0eb5e40: fixed CVE-2025-54804 - missing overflow check in channel window adjust
    • This vulnerability has allowed a malicious authenticated client or server to trigger a Rust panic in the russh server/client via a checked integer overflow

Fixes

  • 2d0a418: Fix channels being closed prematurely (#554) (Eric Rodrigues Pires) #554

v0.54.0

02 Aug 17:21

Choose a tag to compare

Features

  • 75459ca: Graceful server shutdown (#539)
    • run_on_socket now returns RunningServer instead of an opaque Future.
    • Call RunningServer.handle() to obtain an asynchronous handle.
    • Use RunningServerHandle.shutdown() to request a graceful server shutdown which will send MSG_DISCONNECT to all clients and wait for the sessions to close.
  • make Config Clone (#544) (Philippe Laflamme)
  • add a feature toggle for rsa (#550) (Philippe Laflamme)
  • 43a09c9: Add Config.nodelay option for client (#551) (Tom) #551

Bug Fixes

v0.53.0

01 Jul 21:51

Choose a tag to compare

Major changes

  • c41d4f6: Use aws-lc-rs/ring implementation for AEAD ciphers (#535) (Eric Rodrigues Pires) #535

This improves AES-GCM encryption/decryption performance by 10x and ChaCha20-Poly1305 by at least 2x on commonly used targets.

aws-lc-rs is the default implementation, but you can opt to use ring instead by enabling the ring crate feature. On WASM, you will have to use russh with default-features = false, features = ["ring"] as the default features cannot be controlled per target, and aws-lc-rs does not support WASM.

Fixes

Features