Crate csshw_lib

Crate csshw_lib 

Expand description

Cluster SSH tool for Windows inspired by csshX

Modulesยง

cli
CLI interface
client
Client implementation
daemon
Daemon imlementation
serde
Serialization/Deserialization implemention for windows INPUT_RECORD_0.
utils
Utilities shared by daemon and client.

Structsยง

DefaultRegistry
Default implementation of Registry trait that performs actual Windows registry API calls
ProductionFileSystem
Default implementation of FileSystem trait that performs actual file system operations
WindowsSettingsDefaultTerminalApplicationGuard
Guard storing previous/old DelegationConsole and DelegationTerminal registry values.

Constantsยง

CLSID_CONHOST ๐Ÿ”’
CLSID identifying conhost.exe in the registry.
CLSID_DEFAULT ๐Ÿ”’
CLSID identifying the default configuration in the registry.
DEFAULT_TERMINAL_APP_REGISTRY_PATH ๐Ÿ”’
Registry path where DelegationConsole and DelegationTerminal registry keys are stored.
DELEGATION_CONSOLE ๐Ÿ”’
DelegationConsole registry key.
DELEGATION_TERMINAL ๐Ÿ”’
DelegationTerminal registry key.

Traitsยง

FileSystem
Trait for file system operations to enable mocking in tests
Registry
Trait for registry operations to enable mocking in tests

Functionsยง

create_process
Create process with command line using the provided API (testable version)
get_console_window_handle
Return the Window Handle [HWND] for the foreground window associated with the given process_id.
init_logger
Initialize the logger.
init_logger_with_fs
Initialize the logger with the provided file system operations.
is_launched_from_gui
Detect if application was launched from Windows Explorer (GUI) vs command line using the provided console API.
spawn_console_process
Launch the given console application with the given arguments as a new detached process with its own console window.