struct Interface Several live under one server, so it may answer plaintext on loopback and Noise on the wire at once.
Fields
address | String | Listening address in "host:port" form; port zero picks a free one, which Server.address reports. |
|---|---|---|
listen_descriptor | Optional[Int] | A listening stream socket another owner opened, accepted on instead of binding address. |
device_name | String | A physical device to pin the interface to, like "eth0", on Linux only; empty binds by address. |
security | Security | Encryption for connections accepted here; NOISE_XX also needs peer_authorizer. |
noise_private_key | Optional[SIMD[.uint8, 32]] | The server identity for handshakes, required unless security is NONE. |
noise_peer_key | Optional[SIMD[.uint8, 32]] | The one initiator's static public key a NOISE_KK interface admits. |
peer_authorizer | PeerAuthorizer | Vets each client's authenticated static key before any of its requests is read. |
event_loops | Int | Event loops accepting here; zero means one, or the receive-queue count of a named device. |
connections | Int | Connections open at once across this interface's loops. |
pipelined_requests | Int | Requests one connection may have in flight before the server stops reading it; zero means one. |
max_request_bytes | Int | The largest request head and buffered body; zero takes the largest socket receive buffer. |
reply_directories | List[String] | Directories the path parts of replies to this interface's requests resolve beneath, by position. |
Conforms to
Copyable, Deinitable, Movable