Expand description
libmoshpit - moshpit library
Structs§
- Connection
Reader - A reader over a
ReadHalfandBytesMutbuffer. - Connection
Writer - A writer over a
WriteHalfandBytesMutbuffer. - Emulator
- A VT100/VT220 terminal emulator that tracks screen state.
- Encrypted
KeyPair - A moshpit encrypted key pair. A password is required to decrypt the private key.
- File
Layer - Tracing configuration
- Kex
- The moshpit key exchange result
- KexReader
- The key exchange reader for the moshpit
- KexSender
- The key exchange sender for the moshpit
- KexState
Machine - The moshpit key exchange state machine
- KeyPair
- A moshpit key pair consisting of a private and public key.
- Layer
- Tracing configuration
- Mps
- Used in bartoc configuration to define the bartos instance to connect to
- Overlay
Cell - A cell to be painted on top of the real screen when rendering.
- Overlay
Cursor - Predicted cursor position to be applied after rendering overlay cells.
- Prediction
Engine - Local-echo prediction engine.
- Renderer
- A stateful differential renderer.
- Server
Kex - Extended key exchange for the moshpits side of the exchange
- Tracing
- Tracing configuration
- UdpClient
- UDP client data
- UdpReader
- UDP reader for encrypted frames
- UdpSender
- UDP sender for encrypted frames
- Unencrypted
KeyPair - A moshpit unencrypted key pair consisting of a private and public key.
- Uuid
Wrapper - A
Uuidwrapper that implementsbincode::Encodeandbincode::Decode
Enums§
- AEAD
Cipher - The AEAD cipher algorithms supported by moshpit key generation.
- Display
Preference - How aggressively to display local-echo predictions.
- Encrypted
Frame - A moshpit frame.
- Frame
- A moshpit frame.
- KexEvent
- The key exchange events
- KexMode
- The key exchange mode
- KexState
- The moshpit key exchange state
- Moshpit
Error - Errors that can occur in moshpit
- Terminal
Message - A message for the moshpits psuedo-terminal
Constants§
- MAX_
UDP_ PAYLOAD - Maximum payload size for UDP frames to avoid IP fragmentation. Accounts for ~140 bytes of wire overhead (nonce, seq, HMAC, length, UUID, AEAD tag, bincode) subtracted from a conservative 1400-byte UDP payload target (below 1500-byte Ethernet MTU minus IP/UDP headers).
Traits§
- KexConfig
- Trait for key exchange configuration
- Path
Defaults - Trait to allow default paths to be supplied to
load - Tracing
Config Ext - Extension trait for
TracingConfigto add additional configuration options
Functions§
- clap_
or_ error - Converts an
anyhow::Errorinto a suitable exit code or clap message for a CLI application. - decrypt_
private_ key - Decrypts the provided encrypted private key bytes in place using the
- extract_
public_ key_ bytes - Extract the public key bytes from a moshpit public key reader
- fingerprint
- Generate the fingerprint for the given key bytes
- init_
tracing - Initialize tracing
- is_
exit_ title - Check if a terminal title indicates an exit command
- load
- Load the configuration
- load_
private_ key - Load a moshpit key pair from the provided private key path.
- load_
public_ key - Load a moshpit public key from the provided public key path.
- new_
session_ registry - Create a new, empty
SessionRegistry. - paint_
overlays_ to_ ansi - Emit the ANSI sequences for
overlaysandcursorwithout touching any renderer state. Used by the stdin forwarder to preview predicted keystrokes on top of whatever is currently displayed — without modifying the differential-render baseline. - parse_
server_ destination - Parse the server destination command line option into a
SocketAddr - randomart
- Get the randomart image for the given key bytes
- run_
key_ exchange - Run the client side of the key exchange
- success
- Indicates successful execution of a function, returning exit code 0.
- to_
path_ buf - Convert a string to a
PathBuf - verify_
fingerprint - Verify a public key fingerprint against the provided key bytes
Type Aliases§
- Session
Registry - Minimal session registry used during key exchange.