Skip to main content

Module model

Module model 

Source

Structs§

Directive
A directive line inside a Host block.
HostBlock
A parsed Host block with its directives.
HostEntry
Convenience view for the TUI — extracted from a HostBlock.
IncludeDirective
An Include directive that references other config files.
IncludedFile
A file resolved from an Include directive.
InheritedHints
Inherited field hints from matching patterns. Each field is Some((value, source_pattern)) when a pattern provides that directive, None otherwise.
PatternEntry
Convenience view for pattern Host blocks in the TUI.
SshConfigFile
Represents the entire SSH config file as a sequence of elements. Preserves the original structure for round-trip fidelity.

Enums§

ConfigElement
A single element in the config file.

Functions§

host_pattern_matches
Check whether a Host pattern matches a given alias. OpenSSH Host keyword matches only against the target alias typed on the command line, never against the resolved HostName.
is_host_pattern
Returns true if the host pattern contains wildcards, character classes, negation or whitespace-separated multi-patterns (*, ?, [], !, space/tab). These are SSH match patterns, not concrete hosts.
proxy_jump_contains_self
Returns true if any hop in a (possibly comma-separated) ProxyJump value matches the given alias. Strips optional user@ prefix and :port suffix from each hop before comparing. Handles IPv6 bracket notation [addr]:port. Used to detect self-referencing loops.
ssh_pattern_match
Match a text string against an SSH host pattern. Supports * (any sequence), ? (single char), [charset] (character class), [!charset]/[^charset] (negated class), [a-z] (ranges) and !pattern (negation).