moo.shell.iac.IacNegotiator

class moo.shell.iac.IacNegotiator(on_ttype=None, on_gmcp=None, on_mssp_request=None)

Per-session capability state and outbound command queue.

The SSH server instantiates one of these per connection. It feeds parsed IAC events in via the handle method, which returns a list of bytes objects to send back on the channel (responses, subnegotiation requests).

Capability flags are exposed on the capabilities attribute for the shell layer to mirror into the per-session settings registry so verbs in Celery can branch on them.

__init__(on_ttype=None, on_gmcp=None, on_mssp_request=None)

Methods

__init__([on_ttype, on_gmcp, on_mssp_request])

handle(event)

Dispatch a parsed IAC event; return reply bytes (possibly empty).

initial_offers()

Return the initial set of IAC commands to send on session start.