Skip to content

SshChannelManager

[Source]

class ref SshChannelManager

Constructors

create

[Source]

new iso create()
: SshChannelManager iso^

Returns


Public Functions

open_channel

[Source]

Allocate local channel ID and create pending state.

fun ref open_channel(
  channel_type: String val)
: U32 val

Parameters

Returns


confirm_channel

[Source]

Confirm a pending channel open.

fun ref confirm_channel(
  local_id: U32 val,
  remote_id: U32 val,
  remote_window: U32 val,
  max_packet_size: U32 val)
: (None val | SshChannelError)

Parameters

  • local_id: U32 val
  • remote_id: U32 val
  • remote_window: U32 val
  • max_packet_size: U32 val

Returns


accept_channel

[Source]

Accept an incoming channel open from remote (server side).

fun ref accept_channel(
  local_id: U32 val,
  remote_id: U32 val,
  remote_window: U32 val,
  max_packet_size: U32 val,
  channel_type: String val)
: U32 val

Parameters

  • local_id: U32 val
  • remote_id: U32 val
  • remote_window: U32 val
  • max_packet_size: U32 val
  • channel_type: String val

Returns


channel_data_send

[Source]

Check window allows sending, return remote channel ID. Caller handles framing.

fun ref channel_data_send(
  local_id: U32 val,
  data_size: USize val)
: (U32 val | SshChannelError)

Parameters

  • local_id: U32 val
  • data_size: USize val

Returns


channel_data_received

[Source]

Decrease local window after receiving data.

fun ref channel_data_received(
  local_id: U32 val,
  data_size: USize val)
: None val

Parameters

  • local_id: U32 val
  • data_size: USize val

Returns


window_adjust

[Source]

Increase remote window for channel.

fun ref window_adjust(
  local_id: U32 val,
  bytes: U32 val)
: None val

Parameters

  • local_id: U32 val
  • bytes: U32 val

Returns


local_window_adjust

[Source]

Increase local window for channel (used when sending WINDOW_ADJUST to remote).

fun ref local_window_adjust(
  local_id: U32 val,
  bytes: U32 val)
: None val

Parameters

  • local_id: U32 val
  • bytes: U32 val

Returns


close_channel

[Source]

Remove channel state.

fun ref close_channel(
  local_id: U32 val)
: None val

Parameters

  • local_id: U32 val

Returns


find_by_remote_id

[Source]

Find local ID for a remote channel ID.

fun ref find_by_remote_id(
  remote_id: U32 val)
: (U32 val | None val)

Parameters

  • remote_id: U32 val

Returns


get

[Source]

fun ref get(
  local_id: U32 val)
: (SshChannelState ref | None val)

Parameters

  • local_id: U32 val

Returns


channel_count

[Source]

fun box channel_count()
: USize val

Returns