Skip to main content

parse_ssh_version

Function parse_ssh_version 

Source
pub fn parse_ssh_version(version_str: &str) -> Option<(u32, u32, u32)>
Expand description

Parses an OpenSSH version string into a (major, minor, patch) tuple.

Handles formats from ssh -V (written to stderr):

  • OpenSSH_9.6p1, LibreSSL 3.3.6 (macOS/Linux)
  • OpenSSH_for_Windows_8.6p1, LibreSSL 3.4.3 (Windows)

Args:

  • version_str: Raw stderr output from ssh -V.

Usage:

let v = parse_ssh_version("OpenSSH_9.6p1, LibreSSL 3.3.6");
assert_eq!(v, Some((9, 6, 1)));