1.5 KiB
1.5 KiB
MTP Connections
Native clients and hosts share the same connection shape after the opening handshake. The client creates the connection; the host receives it from accept().
| Member | Native client | Native host |
|---|---|---|
version |
Compiled client version accepted by the host | Version selected by the registry |
sender |
Sends CommunicationValue frames |
Sends CommunicationValue frames |
receiver |
Receives application frames | Receives application frames |
description |
Optional label sent during setup | Optional label received from the client |
client_id |
Confirmed or assigned ID with crypto |
Authenticated or guest client ID with crypto |
auth_state |
Authentication result with crypto |
Authentication result with crypto |
The host connection also exposes a version-scoped codec and, for an authenticated client, its client_public_key. The native client connection also exposes these methods:
| Method | Behavior |
|---|---|
request |
Sends a frame and waits for a response with the same frame ID, subject to request_timeout. |
get_ping |
Returns the latest matched protocol Ping round-trip duration. |
| Pipe methods | Create, accept, deny, read, write, and close native pipe streams when the pipes feature is enabled. |
Connection lifecycle and keepalive behavior are defined in Protocol Reference. Pipe dispatch rules are in Pipes. Closing or dropping the connection stops its background tasks and closes the underlying QUIC session.