Expand description
system.handshake types (SPEC §2.12.6).
Every KLP connection’s first request. Negotiates the protocol version and the agent’s optional features, and returns the OS-derived session info (user SID + console session id + pc_id) the client uses to label its UI and audit-log entries.
Until handshake completes, the agent rejects every other method
with super::error::ErrorKind::InvalidRequest (SPEC §2.12.6
“Handshake 未完了の状態で他 method を呼ぶと -32600 InvalidRequest”).
Modules§
- features
- Well-known feature flag names. New flags are added here so the agent + client + dispatcher all share one source of truth. SPEC §2.12.6 says optional methods MUST be gated via these flags so older clients/agents degrade gracefully.
Structs§
- Handshake
Params system.handshakerequest params.- Handshake
Result system.handshakeresponse result.- Handshake
Session - Session info derived from the OS at connect time, surfaced back
to the client so the UI can label “logged in as
DOMAIN\\alice” without a second round-trip.
Constants§
- PROTOCOL_
V1 - The single protocol version KLP v1 ships with. Listed in
HandshakeParams::protocolby the client; the agent picks the highest mutually-supported version intoHandshakeResult::protocol. If no overlap, the agent returnssuper::error::ErrorKind::StaleProtocol.